Class DefaultPluginManager
java.lang.Object
org.pf4j.AbstractPluginManager
org.pf4j.DefaultPluginManager
- All Implemented Interfaces:
PluginManager
- Direct Known Subclasses:
JarPluginManager, ZipPluginManager
Default implementation of the
PluginManager interface.
In essence it is a ZipPluginManager plus a JarPluginManager.
So, it can load plugins from jar and zip, simultaneous.
This class is not thread-safe.
-
Field Summary
FieldsFields inherited from class AbstractPluginManager
DEFAULT_PLUGINS_DIR, dependencyResolver, DEVELOPMENT_PLUGINS_DIR, exactVersionAllowed, extensionFactory, extensionFinder, MODE_PROPERTY_NAME, pluginClassLoaders, pluginDescriptorFinder, pluginFactory, pluginLoader, pluginRepository, plugins, PLUGINS_DIR_PROPERTY_NAME, pluginsRoot, pluginStateListeners, pluginStatusProvider, resolvedPlugins, runtimeMode, startedPlugins, systemVersion, unresolvedPlugins, versionManager -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ExtensionFactoryprotected ExtensionFinderprotected PluginDescriptorFinderprotected PluginFactoryprotected PluginLoaderprotected PluginRepositoryprotected PluginStatusProviderprotected VersionManagerprotected voidprotected PluginWrapperloadPluginFromPath(Path pluginPath) Load a plugin from disk.Methods inherited from class AbstractPluginManager
addPluginStateListener, createPluginsRoot, deletePlugin, disablePlugin, enablePlugin, firePluginStateEvent, getExtensionClasses, getExtensionClasses, getExtensionClasses, getExtensionClassNames, getExtensionFactory, getExtensions, getExtensions, getExtensions, getPlugin, getPluginClassLoader, getPluginClassLoaders, getPluginDescriptorFinder, getPluginFactory, getPluginLabel, getPluginLoader, getPlugins, getPlugins, getPluginsRoot, getResolvedPlugins, getRuntimeMode, getStartedPlugins, getSystemVersion, getUnresolvedPlugins, getVersion, getVersionManager, idForPath, isExactVersionAllowed, isPluginDisabled, isPluginValid, loadPlugin, loadPlugins, removePluginStateListener, resolvePlugins, setExactVersionAllowed, setSystemVersion, startPlugin, startPlugins, stopPlugin, stopPlugins, unloadPlugin, validatePluginDescriptor, whichPluginMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface PluginManager
isDevelopment, isNotDevelopment
-
Field Details
-
log
private static final org.slf4j.Logger log -
PLUGINS_DIR_CONFIG_PROPERTY_NAME
- See Also:
-
-
Constructor Details
-
DefaultPluginManager
public DefaultPluginManager() -
DefaultPluginManager
-
-
Method Details
-
createPluginDescriptorFinder
- Specified by:
createPluginDescriptorFinderin classAbstractPluginManager
-
createExtensionFinder
- Specified by:
createExtensionFinderin classAbstractPluginManager
-
createPluginFactory
- Specified by:
createPluginFactoryin classAbstractPluginManager
-
createExtensionFactory
- Specified by:
createExtensionFactoryin classAbstractPluginManager
-
createPluginStatusProvider
- Specified by:
createPluginStatusProviderin classAbstractPluginManager
-
createPluginRepository
- Specified by:
createPluginRepositoryin classAbstractPluginManager
-
createPluginLoader
- Specified by:
createPluginLoaderin classAbstractPluginManager
-
createVersionManager
- Specified by:
createVersionManagerin classAbstractPluginManager
-
initialize
protected void initialize()- Overrides:
initializein classAbstractPluginManager
-
loadPluginFromPath
Load a plugin from disk. If the path is a zip file, first unpack.- Overrides:
loadPluginFromPathin classAbstractPluginManager- Parameters:
pluginPath- plugin location on disk- Returns:
- PluginWrapper for the loaded plugin or null if not loaded
- Throws:
PluginRuntimeException- if problems during load
-