diff --git a/src/main/java/ru/betterend/config/ConfigKeeper.java b/src/main/java/ru/betterend/config/ConfigKeeper.java index f763aea4..20b110c4 100644 --- a/src/main/java/ru/betterend/config/ConfigKeeper.java +++ b/src/main/java/ru/betterend/config/ConfigKeeper.java @@ -210,8 +210,14 @@ public final class ConfigKeeper { public static class EnumEntry> extends Entry { + private final Type type; + public EnumEntry(T defaultValue) { super(defaultValue); + TypeToken token = new TypeToken(){ + private static final long serialVersionUID = 1L; + }; + this.type = token.getType(); } @Override @@ -257,7 +263,6 @@ public final class ConfigKeeper { public static abstract class Entry { protected final T defaultValue; - protected final Type type; protected Consumer writer; protected Supplier reader; @@ -266,7 +271,6 @@ public final class ConfigKeeper { public Entry (T defaultValue) { this.defaultValue = defaultValue; - this.type = new EntryType().getType(); } protected void setWriter(Consumer writer) { @@ -277,10 +281,6 @@ public final class ConfigKeeper { this.reader = reader; } - public Type getType() { - return this.type; - } - public T getValue() { return this.reader.get(); } @@ -296,9 +296,5 @@ public final class ConfigKeeper { public void setDefault() { this.setValue(defaultValue); } - - protected class EntryType extends TypeToken { - private static final long serialVersionUID = 1L; - } } } diff --git a/src/main/java/ru/betterend/config/ConfigKey.java b/src/main/java/ru/betterend/config/ConfigKey.java index d037ddfa..5c7ed7bc 100644 --- a/src/main/java/ru/betterend/config/ConfigKey.java +++ b/src/main/java/ru/betterend/config/ConfigKey.java @@ -69,6 +69,11 @@ public class ConfigKey { return true; } + @Override + public String toString() { + return String.format("%s:%s:%s", owner, category, entry); + } + private void validate(String owner, String category, String entry) { if (owner == null) { throw new NullPointerException("Failed to create ConfigKey: 'owner' can't be null.");