UIEventBuilder class

Пакет: com.hypixel.hytale.server.core.ui.builder

Файл: com/hypixel/hytale/server/core/ui/builder/UIEventBuilder.java

Поля (4)

МодификаторыТипИмя
final HytaleLogger LOGGER
String var5
var5
ExtraInfo var6

Методы (1)

МодификаторыВозвратСигнатура
if if(var3 != null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.ui.builder;

class="kw">import com.hypixel.hytale.codec.ExtraInfo;
class="kw">import com.hypixel.hytale.codec.codecs.map.MapCodec;
class="kw">import com.hypixel.hytale.logger.HytaleLogger;
class="kw">import com.hypixel.hytale.protocol.packets.interface_.CustomUIEventBinding;
class="kw">import com.hypixel.hytale.protocol.packets.interface_.CustomUIEventBindingType;
class="kw">import it.unimi.dsi.fastutil.objects.ObjectArrayList;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;

class="kw">public class UIEventBuilder {
   class="kw">public class="kw">static class="kw">final HytaleLogger LOGGER = HytaleLogger.forEnclosingClass();
   class="kw">public class="kw">static class="kw">final CustomUIEventBinding[] EMPTY_EVENT_BINDING_ARRAY = new CustomUIEventBinding[0];
   @Nonnull
   class="kw">private class="kw">final List<CustomUIEventBinding> events = new ObjectArrayList();

   class="kw">public UIEventBuilder() {
   }

   @Nonnull
   class="kw">public UIEventBuilder addEventBinding(CustomUIEventBindingType var1, String var2) {
      class="kw">return this.addEventBinding(var1, var2, null);
   }

   @Nonnull
   class="kw">public UIEventBuilder addEventBinding(CustomUIEventBindingType var1, String var2, boolean var3) {
      class="kw">return this.addEventBinding(var1, var2, null, var3);
   }

   @Nonnull
   class="kw">public UIEventBuilder addEventBinding(CustomUIEventBindingType var1, String var2, EventData var3) {
      class="kw">return this.addEventBinding(var1, var2, var3, true);
   }

   @Nonnull
   class="kw">public UIEventBuilder addEventBinding(CustomUIEventBindingType var1, String var2, @Nullable EventData var3, boolean var4) {
      String var5 = null;
      if (var3 != null) {
         ExtraInfo var6 = ExtraInfo.THREAD_LOCAL.get();
         var5 = MapCodec.STRING_HASH_MAP_CODEC.encode(var3.events(), var6).asDocument().toJson();
         var6.getValidationResults().logOrThrowValidatorExceptions(LOGGER);
      }

      this.events.add(new CustomUIEventBinding(var1, var2, var5, var4));
      class="kw">return this;
   }

   @Nonnull
   class="kw">public CustomUIEventBinding[] getEvents() {
      class="kw">return this.events.toArray(CustomUIEventBinding[]::new);
   }
}