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);
}
}