Skip to content

Commit 1310fbb

Browse files
committed
MCR-3642 do not require required instances for implicit classes in collections
1 parent 79fb4d2 commit 1310fbb

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

mycore-base/src/main/java/org/mycore/common/config/MCRConfigurableInstanceHelper.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -851,8 +851,8 @@ private static abstract class Source<A extends Annotation, V> {
851851

852852
public abstract V get(MCRInstanceConfiguration configuration, Target<?> target);
853853

854-
public final Set<Option> createOptions(Class<?> valueClass, boolean required) {
855-
return required && Modifier.isFinal(valueClass.getModifiers())
854+
public final Set<Option> createOptions(Class<?> valueClass) {
855+
return Modifier.isFinal(valueClass.getModifiers())
856856
? ADD_IMPLICIT_CLASS_PROPERTIES : NO_OPTIONS;
857857
}
858858

@@ -1366,7 +1366,7 @@ public Object get(MCRInstanceConfiguration configuration, Target<?> target) {
13661366
}
13671367
}
13681368

1369-
Set<Option> options = createOptions(annotation.valueClass(), annotation.required());
1369+
Set<Option> options = createOptions(annotation.valueClass());
13701370
Object instance = getInstance(annotation.valueClass(), nestedConfiguration, options);
13711371

13721372
if (!annotation.valueClass().isAssignableFrom(instance.getClass())) {
@@ -1443,7 +1443,7 @@ public Map<String, Object> get(MCRInstanceConfiguration configuration, Target<?>
14431443
+ getExampleName(configuration, "B") + ", ...");
14441444
}
14451445

1446-
Set<Option> options = createOptions(annotation.valueClass(), annotation.required());
1446+
Set<Option> options = createOptions(annotation.valueClass());
14471447
Map<String, Object> instanceMap = nestedConfigurationMap.entrySet().stream()
14481448
.collect(Collectors.toMap(Map.Entry::getKey,
14491449
entry -> getInstance(annotation.valueClass(), entry.getValue(), options)));
@@ -1539,7 +1539,7 @@ public List<Object> get(MCRInstanceConfiguration configuration, Target<?> target
15391539
+ getExampleName(configuration, "2") + ", ...");
15401540
}
15411541

1542-
Set<Option> options = createOptions(annotation.valueClass(), annotation.required());
1542+
Set<Option> options = createOptions(annotation.valueClass());
15431543
List<Object> instanceList = nestedConfigurationList.stream()
15441544
.map(c -> (Object) getInstance(annotation.valueClass(), c, options)).toList();
15451545

0 commit comments

Comments
 (0)