DepthLimitedJsonReader class
Пакет: com.hypixel.hytale.server.core.util
Файл: com/hypixel/hytale/server/core/util/DepthLimitedJsonReader.java
extends: JsonReader
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
final |
int |
maxDepth |
|
private final int |
maxDepth |
Методы (10)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
public |
MaxDepthExceededExceptionpublic MaxDepthExceededException(int var1) |
private |
void |
entervoid enter() |
|
public int |
getMaxDepthpublic int getMaxDepth() |
|
|
if if(++this.depth > this.maxDepth) |
public |
void |
readEndArrayvoid readEndArray() |
public |
void |
readEndDocumentvoid readEndDocument() |
public |
void |
readStartArrayvoid readStartArray() |
public |
void |
readStartDocumentvoid readStartDocument() |
abstract |
|
super super(var1) |
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;
}
}
}