Skip to content

Commit 570c8b0

Browse files
committed
replace default config warnings with crashes
1 parent cc803ac commit 570c8b0

File tree

10 files changed

+19
-111
lines changed

10 files changed

+19
-111
lines changed

src/main/java/com/falsepattern/lib/internal/impl/config/fields/AConfigField.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,16 @@ public abstract class AConfigField<T> {
4646
protected final String comment;
4747
private boolean uninitialized;
4848

49+
public static RuntimeException noDefault(Field field, String annotation) {
50+
return new RuntimeException("The field "
51+
+ field.getName()
52+
+ " in class "
53+
+ field.getDeclaringClass().getName()
54+
+ " has no "
55+
+ annotation
56+
+ " annotation!");
57+
}
58+
4959
protected AConfigField(Field field, Configuration configuration, String category, Property.Type type) {
5060
this(field, configuration, category, type, false);
5161
}

src/main/java/com/falsepattern/lib/internal/impl/config/fields/BooleanConfigField.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -43,19 +43,7 @@ public BooleanConfigField(Field field, Configuration configuration, String categ
4343
primitive = field.getType().isPrimitive();
4444
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultBoolean.class))
4545
.map(Config.DefaultBoolean::value)
46-
.orElseGet(() -> {
47-
Share.LOG.warn("The field "
48-
+ field.getName()
49-
+ " in class "
50-
+ field.getDeclaringClass().getName()
51-
+ " has no DefaultBoolean annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
52-
try {
53-
return field.getType().isPrimitive() ? field.getBoolean(null)
54-
: (Boolean) field.get(null);
55-
} catch (IllegalAccessException e) {
56-
throw new RuntimeException(e);
57-
}
58-
});
46+
.orElseThrow(() -> noDefault(field, "DefaultBoolean"));
5947
property.setDefaultValue(defaultValue);
6048
if (!property.isBooleanValue()) {
6149
setToDefault();

src/main/java/com/falsepattern/lib/internal/impl/config/fields/BooleanListConfigField.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -42,18 +42,7 @@ public BooleanListConfigField(Field field, Configuration configuration, String c
4242
super(field, configuration, category, Property.Type.BOOLEAN);
4343
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultBooleanList.class))
4444
.map(Config.DefaultBooleanList::value)
45-
.orElseGet(() -> {
46-
Share.LOG.warn("The field "
47-
+ field.getName()
48-
+ " in class "
49-
+ field.getDeclaringClass().getName()
50-
+ " has no DefaultBooleanList annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
51-
try {
52-
return (boolean[]) field.get(null);
53-
} catch (IllegalAccessException e) {
54-
throw new RuntimeException(e);
55-
}
56-
});
45+
.orElseThrow(() -> noDefault(field, "DefaultBooleanList"));
5746
property.setDefaultValues(defaultValue);
5847
if (!property.isBooleanList()) {
5948
setToDefault();

src/main/java/com/falsepattern/lib/internal/impl/config/fields/DoubleConfigField.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -49,19 +49,7 @@ public DoubleConfigField(Field field, Configuration configuration, String catego
4949
max = range.map(Config.RangeDouble::max).orElse(Double.MAX_VALUE);
5050
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultDouble.class))
5151
.map(Config.DefaultDouble::value)
52-
.orElseGet(() -> {
53-
Share.LOG.warn("The field "
54-
+ field.getName()
55-
+ " in class "
56-
+ field.getDeclaringClass().getName()
57-
+ " has no DefaultDouble annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
58-
try {
59-
return field.getType().isPrimitive() ? field.getInt(null)
60-
: (Double) field.get(null);
61-
} catch (IllegalAccessException e) {
62-
throw new RuntimeException(e);
63-
}
64-
});
52+
.orElseThrow(() -> noDefault(field, "DefaultDouble"));
6553
property.setDefaultValue(defaultValue);
6654
property.setMinValue(min);
6755
property.setMaxValue(max);

src/main/java/com/falsepattern/lib/internal/impl/config/fields/DoubleListConfigField.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,18 +48,7 @@ public DoubleListConfigField(Field field, Configuration configuration, String ca
4848
max = range.map(Config.RangeDouble::max).orElse(Double.MAX_VALUE);
4949
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultDoubleList.class))
5050
.map(Config.DefaultDoubleList::value)
51-
.orElseGet(() -> {
52-
Share.LOG.warn("The field "
53-
+ field.getName()
54-
+ " in class "
55-
+ field.getDeclaringClass().getName()
56-
+ " has no DefaultDoubleList annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
57-
try {
58-
return (double[]) field.get(null);
59-
} catch (IllegalAccessException e) {
60-
throw new RuntimeException(e);
61-
}
62-
});
51+
.orElseThrow(() -> noDefault(field, "DefaultDoubleList"));
6352
property.setDefaultValues(defaultValue);
6453
property.setMinValue(min);
6554
property.setMaxValue(max);

src/main/java/com/falsepattern/lib/internal/impl/config/fields/EnumConfigField.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -62,18 +62,7 @@ public EnumConfigField(Field field, Configuration configuration, String category
6262
+ defName
6363
+ "\" was not found in enum "
6464
+ enumClass.getName())))
65-
.orElseGet(() -> {
66-
Share.LOG.warn("The field "
67-
+ field.getName()
68-
+ " in class "
69-
+ field.getDeclaringClass().getName()
70-
+ " has no DefaultEnum annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
71-
try {
72-
return enumClass.cast(field.get(null));
73-
} catch (IllegalAccessException e) {
74-
throw new RuntimeException(e);
75-
}
76-
});
65+
.orElseThrow(() -> noDefault(field, "DefaultEnum"));
7766
maxLength = enumNameMap.keySet().stream().mapToInt(String::length).max().orElse(0);
7867
property.setDefaultValue(defaultValue.name());
7968
property.setValidValues(enumNameMap.keySet().toArray(new String[0]));

src/main/java/com/falsepattern/lib/internal/impl/config/fields/IntConfigField.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -49,19 +49,7 @@ public IntConfigField(Field field, Configuration configuration, String category)
4949
max = range.map(Config.RangeInt::max).orElse(Integer.MAX_VALUE);
5050
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultInt.class))
5151
.map(Config.DefaultInt::value)
52-
.orElseGet(() -> {
53-
Share.LOG.warn("The field "
54-
+ field.getName()
55-
+ " in class "
56-
+ field.getDeclaringClass().getName()
57-
+ " has no DefaultInt annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
58-
try {
59-
return field.getType().isPrimitive() ? field.getInt(null)
60-
: (Integer) field.get(null);
61-
} catch (IllegalAccessException e) {
62-
throw new RuntimeException(e);
63-
}
64-
});
52+
.orElseThrow(() -> noDefault(field, "DefaultInt"));
6553
property.setDefaultValue(defaultValue);
6654
property.setMinValue(min);
6755
property.setMaxValue(max);

src/main/java/com/falsepattern/lib/internal/impl/config/fields/IntListConfigField.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,18 +48,7 @@ public IntListConfigField(Field field, Configuration configuration, String categ
4848
max = range.map(Config.RangeInt::max).orElse(Integer.MAX_VALUE);
4949
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultIntList.class))
5050
.map(Config.DefaultIntList::value)
51-
.orElseGet(() -> {
52-
Share.LOG.warn("The field "
53-
+ field.getName()
54-
+ " in class "
55-
+ field.getDeclaringClass().getName()
56-
+ " has no DefaultIntList annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
57-
try {
58-
return (int[]) field.get(null);
59-
} catch (IllegalAccessException e) {
60-
throw new RuntimeException(e);
61-
}
62-
});
51+
.orElseThrow(() -> noDefault(field, "DefaultIntList"));
6352
property.setDefaultValues(defaultValue);
6453
property.setMinValue(min);
6554
property.setMaxValue(max);

src/main/java/com/falsepattern/lib/internal/impl/config/fields/StringConfigField.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,18 +48,7 @@ public StringConfigField(Field field, Configuration configuration, String catego
4848
.orElse(null);
4949
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultString.class))
5050
.map(Config.DefaultString::value)
51-
.orElseGet(() -> {
52-
Share.LOG.warn("The field "
53-
+ field.getName()
54-
+ " in class "
55-
+ field.getDeclaringClass().getName()
56-
+ " has no DefaultString annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
57-
try {
58-
return (String) field.get(null);
59-
} catch (IllegalAccessException e) {
60-
throw new RuntimeException(e);
61-
}
62-
});
51+
.orElseThrow(() -> noDefault(field, "DefaultString"));
6352
maxLength = Optional.ofNullable(field.getAnnotation(Config.StringMaxLength.class))
6453
.map(Config.StringMaxLength::value)
6554
.orElse(256);

src/main/java/com/falsepattern/lib/internal/impl/config/fields/StringListConfigField.java

Lines changed: 1 addition & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,18 +48,7 @@ public StringListConfigField(Field field, Configuration configuration, String ca
4848
.orElse(null);
4949
defaultValue = Optional.ofNullable(field.getAnnotation(Config.DefaultStringList.class))
5050
.map(Config.DefaultStringList::value)
51-
.orElseGet(() -> {
52-
Share.LOG.warn("The field "
53-
+ field.getName()
54-
+ " in class "
55-
+ field.getDeclaringClass().getName()
56-
+ " has no DefaultStringList annotation!\nThis will be a crash in FalsePatternLib 0.11, update your code!");
57-
try {
58-
return (String[]) field.get(null);
59-
} catch (IllegalAccessException e) {
60-
throw new RuntimeException(e);
61-
}
62-
});
51+
.orElseThrow(() -> noDefault(field, "DefaultStringList"));
6352
maxStringLength = Optional.ofNullable(field.getAnnotation(Config.StringMaxLength.class))
6453
.map(Config.StringMaxLength::value)
6554
.orElse(256);

0 commit comments

Comments
 (0)