From cef6cf0fd29c3c281adb8d593553605f59881534 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Thu, 31 Dec 2020 12:51:25 +0300 Subject: [PATCH] A little bit refactor --- .../ru/betterend/config/ConfigKeeper.java | 3 +- .../java/ru/betterend/config/ConfigKey.java | 4 +-- .../java/ru/betterend/config/PathConfig.java | 32 +++++++++++-------- 3 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/main/java/ru/betterend/config/ConfigKeeper.java b/src/main/java/ru/betterend/config/ConfigKeeper.java index 9a6c073f..cdc10b84 100644 --- a/src/main/java/ru/betterend/config/ConfigKeeper.java +++ b/src/main/java/ru/betterend/config/ConfigKeeper.java @@ -46,7 +46,6 @@ public final class ConfigKeeper { for (String group: path) { JsonElement element = obj.get(group); if (element == null || !element.isJsonObject()) { - changed = true; element = new JsonObject(); obj.add(group, element); } @@ -57,7 +56,7 @@ public final class ConfigKeeper { String paramKey = key.getEntry(); paramKey += " [default: " + entry.getDefault() + "]"; - changed = entry.setLocation(obj, paramKey) || changed; + this.changed = entry.setLocation(obj, paramKey); } private > void storeValue(E entry, T value) { diff --git a/src/main/java/ru/betterend/config/ConfigKey.java b/src/main/java/ru/betterend/config/ConfigKey.java index 02606ca4..ad977fdb 100644 --- a/src/main/java/ru/betterend/config/ConfigKey.java +++ b/src/main/java/ru/betterend/config/ConfigKey.java @@ -8,7 +8,7 @@ public class ConfigKey { private final boolean root; public ConfigKey(String entry, String... path) { - validate(entry, path); + this.validate(entry); this.path = path; this.entry = entry; this.root = path.length == 0 || (path.length == 1 && path[0].isEmpty()); @@ -74,7 +74,7 @@ public class ConfigKey { return String.format("%s:%s", p, entry); } - private void validate(String entry, String... path) { + private void validate(String entry) { if (entry == null) { throw new NullPointerException("Config key must be not null!"); } diff --git a/src/main/java/ru/betterend/config/PathConfig.java b/src/main/java/ru/betterend/config/PathConfig.java index 85b99a72..06b98be0 100644 --- a/src/main/java/ru/betterend/config/PathConfig.java +++ b/src/main/java/ru/betterend/config/PathConfig.java @@ -19,6 +19,10 @@ public class PathConfig extends Config { return new ConfigKey(key, category.split("\\.")); } + protected ConfigKey createKey(String key) { + return new ConfigKey(key, ""); + } + @Nullable public > E getEntry(String category, String key, Class type) { return this.getEntry(createKey(category, key), type); @@ -88,58 +92,58 @@ public class PathConfig extends Config { // From Root public String getStringRoot(String key, String defaultValue) { - return this.getString(createKey("", key), defaultValue); + return this.getString(createKey(key), defaultValue); } public String getStringRoot(String key) { - return this.getString(createKey("", key)); + return this.getString(createKey(key)); } public boolean setStringRoot(String key, String value) { - return this.setString(createKey("", key), value); + return this.setString(createKey(key), value); } public int getIntRoot(String key, int defaultValue) { - return this.getInt(createKey("", key), defaultValue); + return this.getInt(createKey(key), defaultValue); } public int getIntRoot(String key) { - return this.getInt(createKey("", key)); + return this.getInt(createKey(key)); } public boolean setIntRoot(String key, int value) { - return this.setInt(createKey("", key), value); + return this.setInt(createKey(key), value); } public boolean setRangedIntRoot(String key, int value) { - return this.setRanged(createKey("", key), value, IntegerRange.class); + return this.setRanged(createKey(key), value, IntegerRange.class); } public boolean setRangedFloatRoot(String key, float value) { - return this.setRanged(createKey("", key), value, FloatRange.class); + return this.setRanged(createKey(key), value, FloatRange.class); } public float getFloatRoot(String key, float defaultValue) { - return this.getFloat(createKey("", key), defaultValue); + return this.getFloat(createKey(key), defaultValue); } public float getFloatRoot(String key) { - return this.getFloat(createKey("", key)); + return this.getFloat(createKey(key)); } public boolean setFloatRoot(String key, float value) { - return this.setFloat(createKey("", key), value); + return this.setFloat(createKey(key), value); } public boolean getBooleanRoot(String key, boolean defaultValue) { - return this.getBoolean(createKey("", key), defaultValue); + return this.getBoolean(createKey(key), defaultValue); } public boolean getBooleanRoot(String key) { - return this.getBoolean(createKey("", key)); + return this.getBoolean(createKey(key)); } public boolean setBooleanRoot(String key, boolean value) { - return this.setBoolean(createKey("", key), value); + return this.setBoolean(createKey(key), value); } }