MaxDepthExceededException class

Пакет: com.hypixel.hytale.server.core.util

Файл: com/hypixel/hytale/server/core/util/DepthLimitedJsonReader.java

extends: RuntimeException

Поля (1)

МодификаторыТипИмя
private final int maxDepth

Методы (2)

МодификаторыВозвратСигнатура
public int getMaxDepthpublic int getMaxDepth()
abstract super super("JSON nesting exceeded the maximum allowed depth of " + var1)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.util;

class="kw">import javax.annotation.Nonnull;
class="kw">import org.bson.json.JsonReader;

class="kw">public class="kw">final class DepthLimitedJsonReader class="kw">extends JsonReader {
   class="kw">private class="kw">final int maxDepth;
   class="kw">private int depth;

   class="kw">public DepthLimitedJsonReader(@Nonnull String var1, int var2) {
      super(var1);
      this.maxDepth = var2;
   }

   class="kw">public void readStartDocument() {
      this.enter();
      super.readStartDocument();
   }

   class="kw">public void readStartArray() {
      this.enter();
      super.readStartArray();
   }

   class="kw">public void readEndDocument() {
      super.readEndDocument();
      this.depth--;
   }

   class="kw">public void readEndArray() {
      super.readEndArray();
      this.depth--;
   }

   class="kw">private void enter() {
      if (++this.depth > this.maxDepth) {
         throw new DepthLimitedJsonReader.MaxDepthExceededException(this.maxDepth);
      }
   }

   class="kw">public class="kw">static class="kw">final class MaxDepthExceededException class="kw">extends RuntimeException {
      class="kw">private class="kw">final int maxDepth;

      class="kw">public MaxDepthExceededException(int var1) {
         super("JSON nesting exceeded the maximum allowed depth of " + var1);
         this.maxDepth = var1;
      }

      class="kw">public int getMaxDepth() {
         class="kw">return this.maxDepth;
      }
   }
}