Skip to content

Commit 0e22874

Browse files
committed
Added recognition of List types in CallableYAMLParser
1 parent e24a996 commit 0e22874

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/main/java/it/fulminazzo/yamlparser/parsers/CallableYAMLParser.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
import it.fulminazzo.yamlparser.configuration.IConfiguration;
99
import it.fulminazzo.yamlparser.parsers.annotations.PreventSaving;
1010
import it.fulminazzo.yamlparser.utils.FileUtils;
11-
import org.jetbrains.annotations.NotNull;
1211

1312
import java.lang.reflect.Field;
1413
import java.lang.reflect.Modifier;
14+
import java.util.List;
1515

1616
/**
1717
* Callable YAML parser.
@@ -42,7 +42,11 @@ protected BiFunctionException<IConfiguration, String, T> getLoader() {
4242
for (Field field : ReflectionUtils.getFields(t)) {
4343
if (Modifier.isStatic(field.getModifiers())) continue;
4444
if (field.isAnnotationPresent(PreventSaving.class)) continue;
45-
Object object = section.get(FileUtils.formatStringToYaml(field.getName()), field.getType());
45+
final String path = FileUtils.formatStringToYaml(field.getName());
46+
final Class<?> fieldType = field.getType();
47+
final Object object;
48+
if (List.class.isAssignableFrom(fieldType)) object = section.getObjectList(path);
49+
else object = section.get(path, fieldType);
4650
if (object == null) continue;
4751
field.set(t, object);
4852
}

0 commit comments

Comments
 (0)