Package org.pf4j
Class DefaultPluginManager
- java.lang.Object
-
- org.pf4j.AbstractPluginManager
-
- org.pf4j.DefaultPluginManager
-
- All Implemented Interfaces:
PluginManager
- Direct Known Subclasses:
JarPluginManager,ZipPluginManager
public class DefaultPluginManager extends AbstractPluginManager
Default implementation of thePluginManagerinterface. In essence it is aZipPluginManagerplus aJarPluginManager. So, it can load plugins from jar and zip, simultaneous.This class is not thread-safe.
-
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.Loggerlogstatic java.lang.StringPLUGINS_DIR_CONFIG_PROPERTY_NAME-
Fields inherited from class org.pf4j.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 Constructor Description DefaultPluginManager()DefaultPluginManager(java.nio.file.Path pluginsRoot)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ExtensionFactorycreateExtensionFactory()protected ExtensionFindercreateExtensionFinder()protected PluginDescriptorFindercreatePluginDescriptorFinder()protected PluginFactorycreatePluginFactory()protected PluginLoadercreatePluginLoader()protected PluginRepositorycreatePluginRepository()protected PluginStatusProvidercreatePluginStatusProvider()protected VersionManagercreateVersionManager()protected voidinitialize()protected PluginWrapperloadPluginFromPath(java.nio.file.Path pluginPath)Load a plugin from disk.-
Methods inherited from class org.pf4j.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, whichPlugin
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.pf4j.PluginManager
isDevelopment, isNotDevelopment
-
-
-
-
Field Detail
-
log
private static final org.slf4j.Logger log
-
PLUGINS_DIR_CONFIG_PROPERTY_NAME
public static final java.lang.String PLUGINS_DIR_CONFIG_PROPERTY_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
createPluginDescriptorFinder
protected PluginDescriptorFinder createPluginDescriptorFinder()
- Specified by:
createPluginDescriptorFinderin classAbstractPluginManager
-
createExtensionFinder
protected ExtensionFinder createExtensionFinder()
- Specified by:
createExtensionFinderin classAbstractPluginManager
-
createPluginFactory
protected PluginFactory createPluginFactory()
- Specified by:
createPluginFactoryin classAbstractPluginManager
-
createExtensionFactory
protected ExtensionFactory createExtensionFactory()
- Specified by:
createExtensionFactoryin classAbstractPluginManager
-
createPluginStatusProvider
protected PluginStatusProvider createPluginStatusProvider()
- Specified by:
createPluginStatusProviderin classAbstractPluginManager
-
createPluginRepository
protected PluginRepository createPluginRepository()
- Specified by:
createPluginRepositoryin classAbstractPluginManager
-
createPluginLoader
protected PluginLoader createPluginLoader()
- Specified by:
createPluginLoaderin classAbstractPluginManager
-
createVersionManager
protected VersionManager createVersionManager()
- Specified by:
createVersionManagerin classAbstractPluginManager
-
initialize
protected void initialize()
- Overrides:
initializein classAbstractPluginManager
-
loadPluginFromPath
protected PluginWrapper loadPluginFromPath(java.nio.file.Path pluginPath)
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
-
-