diff --git a/mycore-base/src/main/java/org/mycore/common/config/MCRConfigurableInstanceHelper.java b/mycore-base/src/main/java/org/mycore/common/config/MCRConfigurableInstanceHelper.java index bba78b98f0..e49448ac33 100644 --- a/mycore-base/src/main/java/org/mycore/common/config/MCRConfigurableInstanceHelper.java +++ b/mycore-base/src/main/java/org/mycore/common/config/MCRConfigurableInstanceHelper.java @@ -18,47 +18,15 @@ package org.mycore.common.config; -import java.lang.annotation.Annotation; -import java.lang.reflect.Constructor; -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.lang.reflect.Modifier; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.EnumSet; -import java.util.HashMap; -import java.util.LinkedList; -import java.util.List; -import java.util.Locale; -import java.util.Map; -import java.util.Objects; import java.util.Optional; import java.util.Set; -import java.util.SortedMap; -import java.util.TreeMap; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentMap; -import java.util.concurrent.atomic.AtomicBoolean; -import java.util.function.Supplier; -import java.util.function.ToIntFunction; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.mycore.common.MCRClassTools; -import org.mycore.common.config.annotation.MCRConfigurationProxy; -import org.mycore.common.config.annotation.MCRFactory; -import org.mycore.common.config.annotation.MCRInstance; -import org.mycore.common.config.annotation.MCRInstanceList; -import org.mycore.common.config.annotation.MCRInstanceMap; -import org.mycore.common.config.annotation.MCRPostConstruction; -import org.mycore.common.config.annotation.MCRProperty; -import org.mycore.common.config.annotation.MCRPropertyList; -import org.mycore.common.config.annotation.MCRPropertyMap; -import org.mycore.common.config.annotation.MCRRawProperties; -import org.mycore.common.config.annotation.MCRSentinel; +import org.mycore.common.config.MCRInstanceConfiguration.Option; +import org.mycore.common.config.MCRInstanceConfiguration.Options; +import org.mycore.common.config.instantiator.MCRInstantiator; +import org.mycore.common.config.instantiator.MCRInstantiatorUtils; import jakarta.inject.Singleton; @@ -67,21 +35,11 @@ * * @author Sebastian Hofmann */ -@SuppressWarnings({ "PMD.AvoidDuplicateLiterals", "PMD.SingleMethodSingleton", - "PMD.MCR.Singleton.MethodModifiers", "PMD.MCR.Singleton.MethodReturnType", - "PMD.MCR.Singleton.ClassModifiers", "PMD.MCR.Singleton.PrivateConstructor", - "PMD.MCR.Singleton.NonPrivateConstructors", -}) -class MCRConfigurableInstanceHelper { - - private static final Logger LOGGER = LogManager.getLogger(); - - public static final Set