From a32481fcdd23324224fc0606170dc3bc4c36ea25 Mon Sep 17 00:00:00 2001 From: ezTxmMC Date: Sat, 24 Aug 2024 17:52:40 +0200 Subject: [PATCH] optimized and fixed jsonobject and jsonarray --- .../eztxm/ezlib/config/object/JsonArray.java | 49 ++++++++++++------- .../eztxm/ezlib/config/object/JsonObject.java | 17 ++++--- 2 files changed, 39 insertions(+), 27 deletions(-) diff --git a/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonArray.java b/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonArray.java index 811b1a4..519b3c7 100644 --- a/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonArray.java +++ b/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonArray.java @@ -1,33 +1,37 @@ package de.eztxm.ezlib.config.object; -import de.eztxm.ezlib.config.JsonConfig; +import lombok.Getter; +import org.jetbrains.annotations.NotNull; import org.json.JSONArray; import org.json.JSONException; -public class JsonArray { - private final JsonConfig jsonConfig; +import java.util.Iterator; + +@Getter +public class JsonArray implements Iterable { private final JSONArray jsonArray; - public JsonArray(JsonConfig jsonConfig, Object object) { - this.jsonConfig = jsonConfig; + public JsonArray(Object object) { this.jsonArray = (JSONArray) object; } - public JsonArray(JsonConfig jsonConfig, JSONArray jsonArray) { - this.jsonConfig = jsonConfig; + public JsonArray(JSONArray jsonArray) { this.jsonArray = jsonArray; } - public void add(String value) { + public JsonArray() { + this.jsonArray = new JSONArray(); + } + + public void add(Object value) { this.jsonArray.put(value); - jsonConfig.save(); } - public void remove(String value) { - for (int i = 0; i < jsonArray.length(); i++) { - String currentString = jsonArray.getString(i); + public void remove(Object value) { + for (int i = 0; i < this.jsonArray.length(); i++) { + String currentString = this.jsonArray.getString(i); if (currentString.equals(value)) { - jsonArray.remove(i); + this.jsonArray.remove(i); break; } } @@ -36,10 +40,10 @@ public void remove(String value) { public ObjectConverter get(String key) { try { Object object = null; - for (int i = 0; i < jsonArray.length(); i++) { - String currentString = jsonArray.getString(i); + for (int i = 0; i < this.jsonArray.length(); i++) { + String currentString = this.jsonArray.getString(i); if (currentString.equals(key)) { - object = jsonArray.get(i); + object = this.jsonArray.get(i); break; } } @@ -52,10 +56,10 @@ public ObjectConverter get(String key) { public Object getAsObject(String key) { try { Object object = null; - for (int i = 0; i < jsonArray.length(); i++) { - String currentString = jsonArray.getString(i); + for (int i = 0; i < this.jsonArray.length(); i++) { + String currentString = this.jsonArray.getString(i); if (currentString.equals(key)) { - object = jsonArray.get(i); + object = this.jsonArray.get(i); break; } } @@ -64,4 +68,11 @@ public Object getAsObject(String key) { return null; } } + + @NotNull + @Override + public Iterator iterator() { + return this.jsonArray.iterator(); + } + } diff --git a/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonObject.java b/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonObject.java index 11e0667..9ddbe91 100644 --- a/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonObject.java +++ b/ezlib-config-json/src/main/java/de/eztxm/ezlib/config/object/JsonObject.java @@ -1,31 +1,31 @@ package de.eztxm.ezlib.config.object; -import de.eztxm.ezlib.config.JsonConfig; +import lombok.Getter; import org.json.JSONException; import org.json.JSONObject; +@Getter public class JsonObject { - private final JsonConfig jsonConfig; private final JSONObject jsonObject; - public JsonObject(JsonConfig jsonConfig, Object object) { - this.jsonConfig = jsonConfig; + public JsonObject(Object object) { this.jsonObject = (JSONObject) object; } - public JsonObject(JsonConfig jsonConfig, JSONObject jsonObject) { - this.jsonConfig = jsonConfig; + public JsonObject(JSONObject jsonObject) { this.jsonObject = jsonObject; } + public JsonObject() { + this.jsonObject = new JSONObject(); + } + public void set(String key, String value) { this.jsonObject.put(key, value); - jsonConfig.save(); } public void remove(String key) { this.jsonObject.remove(key); - jsonConfig.save(); } public ObjectConverter get(String key) { @@ -44,4 +44,5 @@ public Object getAsObject(String key) { return null; } } + }