Class PluginLoader
- java.lang.Object
-
- org.mockito.internal.configuration.plugins.PluginLoader
-
class PluginLoader extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private PluginInitializer
initializer
private DefaultMockitoPlugins
plugins
-
Constructor Summary
Constructors Constructor Description PluginLoader(DefaultMockitoPlugins plugins, PluginInitializer initializer)
PluginLoader(PluginSwitch pluginSwitch)
PluginLoader(PluginSwitch pluginSwitch, java.lang.String... alias)
Adds an alias for a class name to this plugin loader.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) <PreferredT,AlternateType>
java.lang.ObjectloadPlugin(java.lang.Class<PreferredT> preferredPluginType, java.lang.Class<AlternateType> alternatePluginType)
Scans the classpath for givenpreferredPluginType
.(package private) <T> T
loadPlugin(java.lang.Class<T> pluginType)
Scans the classpath for given pluginType.(package private) <T> java.util.List<T>
loadPlugins(java.lang.Class<T> pluginType)
Scans the classpath for givenpluginType
and returns a list of its instances.
-
-
-
Field Detail
-
plugins
private final DefaultMockitoPlugins plugins
-
initializer
private final PluginInitializer initializer
-
-
Constructor Detail
-
PluginLoader
PluginLoader(DefaultMockitoPlugins plugins, PluginInitializer initializer)
-
PluginLoader
PluginLoader(PluginSwitch pluginSwitch)
-
PluginLoader
PluginLoader(PluginSwitch pluginSwitch, java.lang.String... alias)
Adds an alias for a class name to this plugin loader. Instead of the fully qualified type name, the alias can be used as a convenience name for a known plugin. This avoids exposing API that is explicitly marked as internal through the package name. Without such aliases, we would need to make internal packages part of the API, not by code but by configuration file.
-
-
Method Detail
-
loadPlugin
<T> T loadPlugin(java.lang.Class<T> pluginType)
Scans the classpath for given pluginType. If not found, default class is used.
-
loadPlugin
<PreferredT,AlternateType> java.lang.Object loadPlugin(java.lang.Class<PreferredT> preferredPluginType, java.lang.Class<AlternateType> alternatePluginType)
Scans the classpath for givenpreferredPluginType
. If not found scan foralternatePluginType
. If neither a preferred or alternate plugin is found, default to default class ofpreferredPluginType
.- Returns:
- An object of either
preferredPluginType
oralternatePluginType
-
loadPlugins
<T> java.util.List<T> loadPlugins(java.lang.Class<T> pluginType)
Scans the classpath for givenpluginType
and returns a list of its instances.- Returns:
- An list of
pluginType
or an empty list if none was found.
-
-