An abstract implementation of the PluginRegistration interface that can be
extended and filled with the relevant data by overriding the BasePluginRegistration.initialize()
method.
The return value of this method defines if the first entry in the found
plugins should be returned as default if no explicit alias name has been
provided in the configuration settings.
Returns all plugins that can be found via the PluginRegistration mechanism
for the underlying interface definition using the given class loader as
preferred class loader for the Java ServiceLoader lookup.
Returns the first non-null classloader from the following order:
suggestedClassLoaders
The current thread's context class loader
the class loader of this class
the system class loader
or throws an IllegalStateException if no classloader can be found.
Returns the instance that is specified by class name configuration parameter
or indirectly by the alias name optionally defined in the alias configuration parameter.
Returns the instance that is specified by class name configuration parameter
or indirectly by the alias name optionally defined in the alias configuration parameter.
Load the class definitions from all PluginRegistration implementing classes
that can be found via Java service loader mechanism in the given classloader's
hierarchy.
Load the class definitions from all PluginRegistration implementing classes
that can be found via Java service loader mechanism using the classloader of
this class.
Plugin Utility Classes
A component that supports automatic collection of plugins from all
elements in the classpath that comply to a specified interface/class.
The responsibility of this class is to detect all properties files with a
specific name on a given classpath and load the defined classes that fit to
a given class/interface into a class regitry.
An abstract class that implements the generic logic to load a configured
implementation class for a specific interface through different variants
of loading mechanisms.