StoredCodec class
Пакет: com.hypixel.hytale.codec.store
Файл: com/hypixel/hytale/codec/store/StoredCodec.java
implements: Codec<T>
Поля (5)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
CodecKey<T> |
key |
|
Codec |
var2 |
|
Codec |
var3 |
|
Codec |
var3 |
|
Codec |
var3 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("Failed to find codec for " + this.key) |
|
|
if if(var3 == null) |
|
|
if if(var3 == null) |
|
|
if if(var3 == null) |
|
|
if if(var2 == null) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.codec.store;
class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.ExtraInfo;
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.util.RawJsonReader;
class="kw">import java.io.IOException;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">import org.bson.BsonValue;
class="kw">public class StoredCodec<T> class="kw">implements Codec<T> {
class="kw">private class="kw">final CodecKey<T> key;
class="kw">public StoredCodec(CodecKey<T> var1) {
this.key = var1;
}
@Override
class="kw">public T decode(BsonValue var1, @Nonnull ExtraInfo var2) {
Codec var3 = var2.getCodecStore().getCodec(this.key);
if (var3 == null) {
throw new IllegalArgumentException("Failed to find codec for " + this.key);
} else {
class="kw">return var3.decode(var1, var2);
}
}
@Override
class="kw">public BsonValue encode(T var1, @Nonnull ExtraInfo var2) {
Codec var3 = var2.getCodecStore().getCodec(this.key);
if (var3 == null) {
throw new IllegalArgumentException("Failed to find codec for " + this.key);
} else {
class="kw">return var3.encode(var1, var2);
}
}
@Nullable
@Override
class="kw">public T decodeJson(@Nonnull RawJsonReader var1, ExtraInfo var2) class="kw">throws IOException {
Codec var3 = var2.getCodecStore().getCodec(this.key);
if (var3 == null) {
throw new IllegalArgumentException("Failed to find codec for " + this.key);
} else {
class="kw">return var3.decodeJson(var1, var2);
}
}
@Nonnull
@Override
class="kw">public Schema toSchema(@Nonnull SchemaContext var1) {
Codec var2 = CodecStore.STATIC.getCodec(this.key);
if (var2 == null) {
throw new IllegalArgumentException("Failed to find codec for " + this.key);
} else {
class="kw">return var1.refDefinition(var2);
}
}
}