LocalizableString class
Пакет: com.hypixel.hytale.server.core.ui
Файл: com/hypixel/hytale/server/core/ui/LocalizableString.java
Поля (3)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
LocalizableString.LocalizableStringCodec |
CODEC |
|
LocalizableString |
var1 |
|
LocalizableString |
var2 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public |
LocalizableStringCodecpublic LocalizableStringCodec() |
|
public LocalizableString |
decodepublic LocalizableString decode(BsonValue var1, @Nonnull ExtraInfo var2) |
|
public BsonValue |
encodepublic BsonValue encode(@Nonnull LocalizableString var1, @Nonnull ExtraInfo var2) |
abstract |
return |
fromMessageIdreturn fromMessageId(var0, null) |
|
public Schema |
toSchemapublic Schema toSchema(@Nonnull SchemaContext var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.ui;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.ExtraInfo;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import com.hypixel.hytale.codec.codecs.map.MapCodec;
class="kw">import com.hypixel.hytale.codec.schema.SchemaContext;
class="kw">import com.hypixel.hytale.codec.schema.config.Schema;
class="kw">import com.hypixel.hytale.codec.schema.config.StringSchema;
class="kw">import java.util.Map;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.bson.BsonString;
class="kw">import org.bson.BsonValue;
class="kw">public class LocalizableString {
class="kw">public class="kw">static class="kw">final LocalizableString.LocalizableStringCodec CODEC = new LocalizableString.LocalizableStringCodec();
class="kw">public class="kw">static class="kw">final BuilderCodec<LocalizableString> MESSAGE_OBJECT_CODEC = BuilderCodec.builder(LocalizableString.class, LocalizableString::new)
.addField(new KeyedCodec<>("MessageId", Codec.STRING), (var0, var1) -> var0.messageId = var1, var0 -> var0.messageId)
.addField(new KeyedCodec<>("MessageParams", MapCodec.STRING_HASH_MAP_CODEC), (var0, var1) -> var0.messageParams = var1, var0 -> var0.messageParams)
.build();
class="kw">private String stringValue;
class="kw">private String messageId;
class="kw">private Map<String, String> messageParams;
class="kw">public LocalizableString() {
}
@Nonnull
class="kw">public class="kw">static LocalizableString fromString(String var0) {
LocalizableString var1 = new LocalizableString();
var1.stringValue = var0;
class="kw">return var1;
}
@Nonnull
class="kw">public class="kw">static LocalizableString fromMessageId(String var0) {
class="kw">return fromMessageId(var0, null);
}
@Nonnull
class="kw">public class="kw">static LocalizableString fromMessageId(String var0, Map<String, String> var1) {
LocalizableString var2 = new LocalizableString();
var2.messageId = var0;
var2.messageParams = var1;
class="kw">return var2;
}
class="kw">public class="kw">static class LocalizableStringCodec class="kw">implements Codec<LocalizableString> {
class="kw">public LocalizableStringCodec() {
}
class="kw">public LocalizableString decode(BsonValue var1, @Nonnull ExtraInfo var2) {
class="kw">return var1 class="kw">instanceof BsonString
? LocalizableString.fromString(var1.asString().getValue())
: LocalizableString.MESSAGE_OBJECT_CODEC.decode(var1, var2);
}
@Nonnull
class="kw">public BsonValue encode(@Nonnull LocalizableString var1, @Nonnull ExtraInfo var2) {
class="kw">return (BsonValue)(var1.stringValue != null ? new BsonString(var1.stringValue) : LocalizableString.MESSAGE_OBJECT_CODEC.encode(var1, var2));
}
@Nonnull
@Override
class="kw">public Schema toSchema(@Nonnull SchemaContext var1) {
class="kw">return Schema.anyOf(new StringSchema(), LocalizableString.MESSAGE_OBJECT_CODEC.toSchema(var1));
}
}
}