first commit
Build AsminVoicechat / prepare-release (push) Successful in 14s
Build AsminVoicechat / build-and-test (17) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (18) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (19) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (20) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (21) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (22) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (23) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (24) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (25) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (26) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (27-ea) (push) Canceled after 0s
Build AsminVoicechat / build-and-test (16) (push) Canceled after 38s

This commit is contained in:
asminme committed 2026-10-24 15:18:03 +02:00
commit bbccd4a815
454 files changed
+45050

No files matched your search

@@ -0,0 +1,855 @@
/*
* Decompiled with CFR 0.152.
*/
package de.maxhenkel.voicechat.org.json;
import de.maxhenkel.voicechat.org.json.JSONException;
import de.maxhenkel.voicechat.org.json.JSONObject;
import de.maxhenkel.voicechat.org.json.JSONParserConfiguration;
import de.maxhenkel.voicechat.org.json.JSONPointer;
import de.maxhenkel.voicechat.org.json.JSONPointerException;
import de.maxhenkel.voicechat.org.json.JSONString;
import de.maxhenkel.voicechat.org.json.JSONTokener;
import de.maxhenkel.voicechat.org.json.StringBuilderWriter;
import java.io.IOException;
import java.io.Writer;
import java.lang.reflect.Array;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
public class JSONArray
implements Iterable<Object> {
private final ArrayList<Object> myArrayList;
public JSONArray() {
this.myArrayList = new ArrayList();
}
public JSONArray(JSONTokener x) throws JSONException {
this(x, x.getJsonParserConfiguration());
}
public JSONArray(JSONTokener x, JSONParserConfiguration jsonParserConfiguration) throws JSONException {
this();
boolean isInitial;
boolean bl = isInitial = x.getPrevious() == '\u0000';
if (x.nextClean() != '[') {
throw x.syntaxError("A JSONArray text must start with '['");
}
char nextChar = x.nextClean();
if (nextChar == '\u0000') {
throw x.syntaxError("Expected a ',' or ']'");
}
if (nextChar == ',' && jsonParserConfiguration.isStrictMode()) {
throw x.syntaxError("Array content starts with a ','");
}
if (nextChar != ']') {
x.back();
do {
if (x.nextClean() == ',') {
x.back();
this.myArrayList.add(JSONObject.NULL);
continue;
}
x.back();
this.myArrayList.add(x.nextValue());
} while (!JSONArray.checkForSyntaxError(x, jsonParserConfiguration, isInitial));
return;
}
if (isInitial && jsonParserConfiguration.isStrictMode() && x.nextClean() != '\u0000') {
throw x.syntaxError("Strict mode error: Unparsed characters found at end of input text");
}
}
private static boolean checkForSyntaxError(JSONTokener x, JSONParserConfiguration jsonParserConfiguration, boolean isInitial) {
switch (x.nextClean()) {
case '\u0000': {
throw x.syntaxError("Expected a ',' or ']'");
}
case ',': {
char nextChar = x.nextClean();
if (nextChar == '\u0000') {
throw x.syntaxError("Expected a ',' or ']'");
}
if (nextChar == ']') {
if (jsonParserConfiguration.isStrictMode()) {
throw x.syntaxError("Strict mode error: Expected another array element");
}
return true;
}
if (nextChar == ',') {
if (jsonParserConfiguration.isStrictMode()) {
throw x.syntaxError("Strict mode error: Expected a valid array element");
}
return true;
}
x.back();
break;
}
case ']': {
if (isInitial && jsonParserConfiguration.isStrictMode() && x.nextClean() != '\u0000') {
throw x.syntaxError("Strict mode error: Unparsed characters found at end of input text");
}
return true;
}
default: {
throw x.syntaxError("Expected a ',' or ']'");
}
}
return false;
}
public JSONArray(String source) throws JSONException {
this(source, new JSONParserConfiguration());
}
public JSONArray(String source, JSONParserConfiguration jsonParserConfiguration) throws JSONException {
this(new JSONTokener(source, jsonParserConfiguration), jsonParserConfiguration);
}
public JSONArray(Collection<?> collection) {
this(collection, 0, new JSONParserConfiguration());
}
public JSONArray(Collection<?> collection, JSONParserConfiguration jsonParserConfiguration) {
this(collection, 0, jsonParserConfiguration);
}
JSONArray(Collection<?> collection, int recursionDepth, JSONParserConfiguration jsonParserConfiguration) {
if (recursionDepth > jsonParserConfiguration.getMaxNestingDepth()) {
throw new JSONException("JSONArray has reached recursion depth limit of " + jsonParserConfiguration.getMaxNestingDepth());
}
if (collection == null) {
this.myArrayList = new ArrayList();
} else {
this.myArrayList = new ArrayList(collection.size());
this.addAll(collection, true, recursionDepth, jsonParserConfiguration);
}
}
public JSONArray(Iterable<?> iter) {
this();
if (iter == null) {
return;
}
this.addAll(iter, true);
}
public JSONArray(JSONArray array) {
this.myArrayList = array == null ? new ArrayList() : new ArrayList<Object>(array.myArrayList);
}
public JSONArray(Object array) throws JSONException {
this();
if (!array.getClass().isArray()) {
throw new JSONException("JSONArray initial value should be a string or collection or array.");
}
this.addAll(array, true, 0);
}
public JSONArray(int initialCapacity) throws JSONException {
if (initialCapacity < 0) {
throw new JSONException("JSONArray initial capacity cannot be negative.");
}
this.myArrayList = new ArrayList(initialCapacity);
}
@Override
public Iterator<Object> iterator() {
return this.myArrayList.iterator();
}
public Object get(int index) throws JSONException {
Object object = this.opt(index);
if (object == null) {
throw new JSONException("JSONArray[" + index + "] not found.");
}
return object;
}
public boolean getBoolean(int index) throws JSONException {
Object object = this.get(index);
if (Boolean.FALSE.equals(object) || object instanceof String && "false".equalsIgnoreCase((String)object)) {
return false;
}
if (Boolean.TRUE.equals(object) || object instanceof String && "true".equalsIgnoreCase((String)object)) {
return true;
}
throw JSONArray.wrongValueFormatException(index, "boolean", object, null);
}
public double getDouble(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof Number) {
return ((Number)object).doubleValue();
}
try {
return Double.parseDouble(object.toString());
}
catch (Exception e) {
throw JSONArray.wrongValueFormatException(index, "double", object, e);
}
}
public float getFloat(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof Number) {
return ((Number)object).floatValue();
}
try {
return Float.parseFloat(object.toString());
}
catch (Exception e) {
throw JSONArray.wrongValueFormatException(index, "float", object, e);
}
}
public Number getNumber(int index) throws JSONException {
Object object = this.get(index);
try {
if (object instanceof Number) {
return (Number)object;
}
return JSONObject.stringToNumber(object.toString());
}
catch (Exception e) {
throw JSONArray.wrongValueFormatException(index, "number", object, e);
}
}
public <E extends Enum<E>> E getEnum(Class<E> clazz, int index) throws JSONException {
E val = this.optEnum(clazz, index);
if (val == null) {
throw JSONArray.wrongValueFormatException(index, "enum of type " + JSONObject.quote(clazz.getSimpleName()), this.opt(index), null);
}
return val;
}
public BigDecimal getBigDecimal(int index) throws JSONException {
Object object = this.get(index);
BigDecimal val = JSONObject.objectToBigDecimal(object, null);
if (val == null) {
throw JSONArray.wrongValueFormatException(index, "BigDecimal", object, null);
}
return val;
}
public BigInteger getBigInteger(int index) throws JSONException {
Object object = this.get(index);
BigInteger val = JSONObject.objectToBigInteger(object, null);
if (val == null) {
throw JSONArray.wrongValueFormatException(index, "BigInteger", object, null);
}
return val;
}
public int getInt(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof Number) {
return ((Number)object).intValue();
}
try {
return Integer.parseInt(object.toString());
}
catch (Exception e) {
throw JSONArray.wrongValueFormatException(index, "int", object, e);
}
}
public JSONArray getJSONArray(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof JSONArray) {
return (JSONArray)object;
}
throw JSONArray.wrongValueFormatException(index, "JSONArray", object, null);
}
public JSONObject getJSONObject(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof JSONObject) {
return (JSONObject)object;
}
throw JSONArray.wrongValueFormatException(index, "JSONObject", object, null);
}
public long getLong(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof Number) {
return ((Number)object).longValue();
}
try {
return Long.parseLong(object.toString());
}
catch (Exception e) {
throw JSONArray.wrongValueFormatException(index, "long", object, e);
}
}
public String getString(int index) throws JSONException {
Object object = this.get(index);
if (object instanceof String) {
return (String)object;
}
throw JSONArray.wrongValueFormatException(index, "String", object, null);
}
public boolean isNull(int index) {
return JSONObject.NULL.equals(this.opt(index));
}
public String join(String separator) throws JSONException {
int len = this.length();
if (len == 0) {
return "";
}
StringBuilder sb = new StringBuilder(JSONObject.valueToString(this.myArrayList.get(0)));
for (int i = 1; i < len; ++i) {
sb.append(separator).append(JSONObject.valueToString(this.myArrayList.get(i)));
}
return sb.toString();
}
public int length() {
return this.myArrayList.size();
}
public void clear() {
this.myArrayList.clear();
}
public Object opt(int index) {
return index < 0 || index >= this.length() ? null : this.myArrayList.get(index);
}
public boolean optBoolean(int index) {
return this.optBoolean(index, false);
}
public boolean optBoolean(int index, boolean defaultValue) {
try {
return this.getBoolean(index);
}
catch (Exception e) {
return defaultValue;
}
}
public Boolean optBooleanObject(int index) {
return this.optBooleanObject(index, false);
}
public Boolean optBooleanObject(int index, Boolean defaultValue) {
try {
return this.getBoolean(index);
}
catch (Exception e) {
return defaultValue;
}
}
public double optDouble(int index) {
return this.optDouble(index, Double.NaN);
}
public double optDouble(int index, double defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.doubleValue();
}
public Double optDoubleObject(int index) {
return this.optDoubleObject(index, Double.NaN);
}
public Double optDoubleObject(int index, Double defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.doubleValue();
}
public float optFloat(int index) {
return this.optFloat(index, Float.NaN);
}
public float optFloat(int index, float defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.floatValue();
}
public Float optFloatObject(int index) {
return this.optFloatObject(index, Float.valueOf(Float.NaN));
}
public Float optFloatObject(int index, Float defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return Float.valueOf(val.floatValue());
}
public int optInt(int index) {
return this.optInt(index, 0);
}
public int optInt(int index, int defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.intValue();
}
public Integer optIntegerObject(int index) {
return this.optIntegerObject(index, 0);
}
public Integer optIntegerObject(int index, Integer defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.intValue();
}
public <E extends Enum<E>> E optEnum(Class<E> clazz, int index) {
return this.optEnum(clazz, index, null);
}
public <E extends Enum<E>> E optEnum(Class<E> clazz, int index, E defaultValue) {
try {
Object val = this.opt(index);
if (JSONObject.NULL.equals(val)) {
return defaultValue;
}
if (clazz.isAssignableFrom(val.getClass())) {
Enum myE = (Enum)val;
return (E)myE;
}
return Enum.valueOf(clazz, val.toString());
}
catch (IllegalArgumentException e) {
return defaultValue;
}
catch (NullPointerException e) {
return defaultValue;
}
}
public BigInteger optBigInteger(int index, BigInteger defaultValue) {
Object val = this.opt(index);
return JSONObject.objectToBigInteger(val, defaultValue);
}
public BigDecimal optBigDecimal(int index, BigDecimal defaultValue) {
Object val = this.opt(index);
return JSONObject.objectToBigDecimal(val, defaultValue);
}
public JSONArray optJSONArray(int index) {
return this.optJSONArray(index, null);
}
public JSONArray optJSONArray(int index, JSONArray defaultValue) {
Object object = this.opt(index);
return object instanceof JSONArray ? (JSONArray)object : defaultValue;
}
public JSONObject optJSONObject(int index) {
return this.optJSONObject(index, null);
}
public JSONObject optJSONObject(int index, JSONObject defaultValue) {
Object object = this.opt(index);
return object instanceof JSONObject ? (JSONObject)object : defaultValue;
}
public long optLong(int index) {
return this.optLong(index, 0L);
}
public long optLong(int index, long defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.longValue();
}
public Long optLongObject(int index) {
return this.optLongObject(index, 0L);
}
public Long optLongObject(int index, Long defaultValue) {
Number val = this.optNumber(index, null);
if (val == null) {
return defaultValue;
}
return val.longValue();
}
public Number optNumber(int index) {
return this.optNumber(index, null);
}
public Number optNumber(int index, Number defaultValue) {
Object val = this.opt(index);
if (JSONObject.NULL.equals(val)) {
return defaultValue;
}
if (val instanceof Number) {
return (Number)val;
}
if (val instanceof String) {
try {
return JSONObject.stringToNumber((String)val);
}
catch (Exception e) {
return defaultValue;
}
}
return defaultValue;
}
public String optString(int index) {
return this.optString(index, "");
}
public String optString(int index, String defaultValue) {
Object object = this.opt(index);
return JSONObject.NULL.equals(object) ? defaultValue : object.toString();
}
public JSONArray put(boolean value) {
return this.put(value ? Boolean.TRUE : Boolean.FALSE);
}
public JSONArray put(Collection<?> value) {
return this.put(new JSONArray(value));
}
public JSONArray put(double value) throws JSONException {
return this.put((Object)value);
}
public JSONArray put(float value) throws JSONException {
return this.put(Float.valueOf(value));
}
public JSONArray put(int value) {
return this.put((Object)value);
}
public JSONArray put(long value) {
return this.put((Object)value);
}
public JSONArray put(Map<?, ?> value) {
return this.put(new JSONObject(value));
}
public JSONArray put(Object value) {
JSONObject.testValidity(value);
this.myArrayList.add(value);
return this;
}
public JSONArray put(int index, boolean value) throws JSONException {
return this.put(index, value ? Boolean.TRUE : Boolean.FALSE);
}
public JSONArray put(int index, Collection<?> value) throws JSONException {
return this.put(index, new JSONArray(value));
}
public JSONArray put(int index, double value) throws JSONException {
return this.put(index, (Object)value);
}
public JSONArray put(int index, float value) throws JSONException {
return this.put(index, Float.valueOf(value));
}
public JSONArray put(int index, int value) throws JSONException {
return this.put(index, (Object)value);
}
public JSONArray put(int index, long value) throws JSONException {
return this.put(index, (Object)value);
}
public JSONArray put(int index, Map<?, ?> value) throws JSONException {
this.put(index, new JSONObject(value, new JSONParserConfiguration()));
return this;
}
public JSONArray put(int index, Map<?, ?> value, JSONParserConfiguration jsonParserConfiguration) throws JSONException {
this.put(index, new JSONObject(value, jsonParserConfiguration));
return this;
}
public JSONArray put(int index, Object value) throws JSONException {
if (index < 0) {
throw new JSONException("JSONArray[" + index + "] not found.");
}
if (index < this.length()) {
JSONObject.testValidity(value);
this.myArrayList.set(index, value);
return this;
}
if (index == this.length()) {
return this.put(value);
}
this.myArrayList.ensureCapacity(index + 1);
while (index != this.length()) {
this.myArrayList.add(JSONObject.NULL);
}
return this.put(value);
}
public JSONArray putAll(Collection<?> collection) {
this.addAll(collection, false);
return this;
}
public JSONArray putAll(Iterable<?> iter) {
this.addAll(iter, false);
return this;
}
public JSONArray putAll(JSONArray array) {
this.myArrayList.addAll(array.myArrayList);
return this;
}
public JSONArray putAll(Object array) throws JSONException {
this.addAll(array, false);
return this;
}
public Object query(String jsonPointer) {
return this.query(new JSONPointer(jsonPointer));
}
public Object query(JSONPointer jsonPointer) {
return jsonPointer.queryFrom(this);
}
public Object optQuery(String jsonPointer) {
return this.optQuery(new JSONPointer(jsonPointer));
}
public Object optQuery(JSONPointer jsonPointer) {
try {
return jsonPointer.queryFrom(this);
}
catch (JSONPointerException e) {
return null;
}
}
public Object remove(int index) {
return index >= 0 && index < this.length() ? this.myArrayList.remove(index) : null;
}
public boolean similar(Object other) {
if (!(other instanceof JSONArray)) {
return false;
}
int len = this.length();
if (len != ((JSONArray)other).length()) {
return false;
}
for (int i = 0; i < len; ++i) {
Object valueOther;
Object valueThis = this.myArrayList.get(i);
if (valueThis == (valueOther = ((JSONArray)other).myArrayList.get(i))) continue;
if (valueThis == null) {
return false;
}
if (this.isSimilar(valueThis, valueOther)) continue;
return false;
}
return true;
}
private boolean isSimilar(Object valueThis, Object valueOther) {
return !(valueThis instanceof JSONObject ? !((JSONObject)valueThis).similar(valueOther) : (valueThis instanceof JSONArray ? !((JSONArray)valueThis).similar(valueOther) : (valueThis instanceof Number && valueOther instanceof Number ? !JSONObject.isNumberSimilar((Number)valueThis, (Number)valueOther) : (valueThis instanceof JSONString && valueOther instanceof JSONString ? !((JSONString)valueThis).toJSONString().equals(((JSONString)valueOther).toJSONString()) : !valueThis.equals(valueOther)))));
}
public JSONObject toJSONObject(JSONArray names) throws JSONException {
if (names == null || names.isEmpty() || this.isEmpty()) {
return null;
}
JSONObject jo = new JSONObject(names.length());
for (int i = 0; i < names.length(); ++i) {
jo.put(names.getString(i), this.opt(i));
}
return jo;
}
public String toString() {
try {
return this.toString(0);
}
catch (Exception e) {
return null;
}
}
public String toString(int indentFactor) throws JSONException {
int initialSize = this.myArrayList.size() * 2;
StringBuilderWriter sw = new StringBuilderWriter(Math.max(initialSize, 16));
return this.write(sw, indentFactor, 0).toString();
}
public Writer write(Writer writer) throws JSONException {
return this.write(writer, 0, 0);
}
public Writer write(Writer writer, int indentFactor, int indent) throws JSONException {
try {
boolean needsComma = false;
int length = this.length();
writer.write(91);
if (length == 1) {
this.writeArrayAttempt(writer, indentFactor, indent, 0);
} else if (length != 0) {
int newIndent = indent + indentFactor;
for (int i = 0; i < length; ++i) {
if (needsComma) {
writer.write(44);
}
if (indentFactor > 0) {
writer.write(10);
}
JSONObject.indent(writer, newIndent);
this.writeArrayAttempt(writer, indentFactor, newIndent, i);
needsComma = true;
}
if (indentFactor > 0) {
writer.write(10);
}
JSONObject.indent(writer, indent);
}
writer.write(93);
return writer;
}
catch (IOException e) {
throw new JSONException(e);
}
}
private void writeArrayAttempt(Writer writer, int indentFactor, int indent, int i) {
try {
JSONObject.writeValue(writer, this.myArrayList.get(i), indentFactor, indent);
}
catch (Exception e) {
throw new JSONException("Unable to write JSONArray value at index: " + i, e);
}
}
public List<Object> toList() {
ArrayList<Object> results = new ArrayList<Object>(this.myArrayList.size());
for (Object element : this.myArrayList) {
if (element == null || JSONObject.NULL.equals(element)) {
results.add(null);
continue;
}
if (element instanceof JSONArray) {
results.add(((JSONArray)element).toList());
continue;
}
if (element instanceof JSONObject) {
results.add(((JSONObject)element).toMap());
continue;
}
results.add(element);
}
return results;
}
public boolean isEmpty() {
return this.myArrayList.isEmpty();
}
private void addAll(Collection<?> collection, boolean wrap, int recursionDepth, JSONParserConfiguration jsonParserConfiguration) {
this.myArrayList.ensureCapacity(this.myArrayList.size() + collection.size());
if (wrap) {
for (Object o : collection) {
this.put(JSONObject.wrap(o, recursionDepth + 1, jsonParserConfiguration));
}
} else {
for (Object o : collection) {
this.put(o);
}
}
}
private void addAll(Iterable<?> iter, boolean wrap) {
if (wrap) {
for (Object o : iter) {
this.put(JSONObject.wrap(o));
}
} else {
for (Object o : iter) {
this.put(o);
}
}
}
private void addAll(Object array, boolean wrap) throws JSONException {
this.addAll(array, wrap, 0);
}
private void addAll(Object array, boolean wrap, int recursionDepth) {
this.addAll(array, wrap, recursionDepth, new JSONParserConfiguration());
}
private void addAll(Object array, boolean wrap, int recursionDepth, JSONParserConfiguration jsonParserConfiguration) throws JSONException {
if (array.getClass().isArray()) {
int length = Array.getLength(array);
this.myArrayList.ensureCapacity(this.myArrayList.size() + length);
if (wrap) {
for (int i = 0; i < length; ++i) {
this.put(JSONObject.wrap(Array.get(array, i), recursionDepth + 1, jsonParserConfiguration));
}
} else {
for (int i = 0; i < length; ++i) {
this.put(Array.get(array, i));
}
}
} else if (array instanceof JSONArray) {
this.myArrayList.addAll(((JSONArray)array).myArrayList);
} else if (array instanceof Collection) {
this.addAll((Collection)array, wrap, recursionDepth, jsonParserConfiguration);
} else if (array instanceof Iterable) {
this.addAll((Iterable)array, wrap);
} else {
throw new JSONException("JSONArray initial value should be a string or collection or array.");
}
}
private static JSONException wrongValueFormatException(int idx, String valueType, Object value, Throwable cause) {
if (value == null) {
return new JSONException("JSONArray[" + idx + "] is not a " + valueType + " (null).", cause);
}
if (value instanceof Map || value instanceof Iterable || value instanceof JSONObject) {
return new JSONException("JSONArray[" + idx + "] is not a " + valueType + " (" + value.getClass() + ").", cause);
}
return new JSONException("JSONArray[" + idx + "] is not a " + valueType + " (" + value.getClass() + " : " + value + ").", cause);
}
}