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