JsonTypeHandler class
Пакет: com.hypixel.hytale.builtin.asseteditor.assettypehandler
Файл: com/hypixel/hytale/builtin/asseteditor/assettypehandler/JsonTypeHandler.java
extends: AssetTypeHandler
Поля (5)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
HytaleLogger |
LOGGER |
|
String |
var2 |
|
char[] |
var3 |
|
BsonDocument |
var6 |
|
|
var6 |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
public |
AssetTypeHandler.AssetLoadResult |
loadAssetFromDocumentAssetTypeHandler.AssetLoadResult loadAssetFromDocument(AssetPath var1, Path var2, BsonDocument var3, EditorClient var4) |
abstract abstract |
AssetTypeHandler.AssetLoadResult |
loadAssetFromDocumentAssetTypeHandler.AssetLoadResult loadAssetFromDocument(AssetPath var1, Path var2, BsonDocument var3, AssetUpdateQuery var4, EditorClient var5) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.asseteditor.assettypehandler;
class="kw">import com.hypixel.hytale.assetstore.AssetUpdateQuery;
class="kw">import com.hypixel.hytale.builtin.asseteditor.AssetPath;
class="kw">import com.hypixel.hytale.builtin.asseteditor.EditorClient;
class="kw">import com.hypixel.hytale.codec.util.RawJsonReader;
class="kw">import com.hypixel.hytale.logger.HytaleLogger;
class="kw">import com.hypixel.hytale.protocol.packets.asseteditor.AssetEditorAssetType;
class="kw">import java.nio.charset.StandardCharsets;
class="kw">import java.nio.file.Path;
class="kw">import java.util.logging.Level;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.bson.BsonDocument;
class="kw">public class="kw">abstract class JsonTypeHandler class="kw">extends AssetTypeHandler {
class="kw">private class="kw">static class="kw">final HytaleLogger LOGGER = HytaleLogger.forEnclosingClass();
class="kw">protected JsonTypeHandler(@Nonnull AssetEditorAssetType var1) {
super(var1);
}
@Override
class="kw">public AssetTypeHandler.AssetLoadResult loadAsset(AssetPath var1, Path var2, byte[] var3, AssetUpdateQuery var4, EditorClient var5) {
BsonDocument var6;
try {
var6 = BsonDocument.parse(new String(var3, StandardCharsets.UTF_8));
} catch (Exception var8) {
((HytaleLogger.Api)LOGGER.at(Level.WARNING).withCause(var8)).log("Failed to parse JSON for %s", var1);
class="kw">return AssetTypeHandler.AssetLoadResult.ASSETS_UNCHANGED;
}
class="kw">return this.loadAssetFromDocument(var1, var2, var6, var4, var5);
}
class="kw">public class="kw">abstract AssetTypeHandler.AssetLoadResult loadAssetFromDocument(
AssetPath var1, Path var2, BsonDocument var3, AssetUpdateQuery var4, EditorClient var5
);
class="kw">public AssetTypeHandler.AssetLoadResult loadAssetFromDocument(AssetPath var1, Path var2, BsonDocument var3, EditorClient var4) {
class="kw">return this.loadAssetFromDocument(var1, var2, var3, this.getDefaultUpdateQuery(), var4);
}
@Override
class="kw">public boolean isValidData(@Nonnull byte[] var1) {
try {
String var2 = new String(var1, StandardCharsets.UTF_8);
char[] var3 = var2.toCharArray();
RawJsonReader.validateBsonDocument(new RawJsonReader(var3));
class="kw">return true;
} catch (Exception var4) {
class="kw">return false;
}
}
}