Class PluginManager

  • All Implemented Interfaces:
    org.pf4j.PluginManager

    public class PluginManager
    extends org.pf4j.JarPluginManager
    • Field Summary

      • Fields inherited from class org.pf4j.DefaultPluginManager

        PLUGINS_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, pluginsRoots, pluginStateListeners, pluginStatusProvider, resolvedPlugins, runtimeMode, startedPlugins, systemVersion, unresolvedPlugins, versionManager
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.pf4j.ExtensionFactory createExtensionFactory()  
      protected org.pf4j.PluginDescriptorFinder createPluginDescriptorFinder()  
      protected org.pf4j.PluginFactory createPluginFactory()  
      protected org.pf4j.PluginLoader createPluginLoader()  
      <T> List<T> getConfiguredExtensions​(Class<T> type)  
      <T> List<T> getExtensions​(Class<T> type)  
      <T> List<T> getExtensions​(Class<T> type, org.jdom2.Element root)
      plugins can use this method to load other plugins
      static PluginManager getInstance()  
      <T> List<Task<T>> getTasks​(Class<T> type)  
      static void resetInstance()  
      void unloadPlugins()  
      • Methods inherited from class org.pf4j.JarPluginManager

        createPluginRepository
      • Methods inherited from class org.pf4j.DefaultPluginManager

        createExtensionFinder, createPluginStatusProvider, createVersionManager, initialize, loadPluginFromPath
      • Methods inherited from class org.pf4j.AbstractPluginManager

        addPluginStateListener, checkPluginId, createPluginsRoot, deletePlugin, disablePlugin, enablePlugin, firePluginStateEvent, getExtensionClasses, getExtensionClasses, getExtensionClasses, getExtensionClasses, getExtensionClassNames, getExtensionFactory, getExtensions, getExtensions, getExtensions, getPlugin, getPluginClassLoader, getPluginClassLoaders, getPluginDescriptorFinder, getPluginFactory, getPluginLabel, getPluginLoader, getPlugins, getPlugins, getPluginsRoot, getPluginsRoots, getResolvedPlugins, getRuntimeMode, getStartedPlugins, getSystemVersion, getUnresolvedPlugins, getVersion, getVersionManager, idForPath, isExactVersionAllowed, isPluginDisabled, isPluginValid, loadPlugin, loadPlugins, removePluginStateListener, resolvePlugins, setExactVersionAllowed, setSystemVersion, startPlugin, startPlugins, stopPlugin, stopPlugin, stopPlugins, unloadPlugin, unloadPlugin, validatePluginDescriptor, whichPlugin
      • Methods inherited from interface org.pf4j.PluginManager

        isDevelopment, isNotDevelopment
    • Method Detail

      • createPluginFactory

        protected org.pf4j.PluginFactory createPluginFactory()
        Overrides:
        createPluginFactory in class org.pf4j.DefaultPluginManager
      • createPluginLoader

        protected org.pf4j.PluginLoader createPluginLoader()
        Overrides:
        createPluginLoader in class org.pf4j.JarPluginManager
      • createPluginDescriptorFinder

        protected org.pf4j.PluginDescriptorFinder createPluginDescriptorFinder()
        Overrides:
        createPluginDescriptorFinder in class org.pf4j.JarPluginManager
      • createExtensionFactory

        protected org.pf4j.ExtensionFactory createExtensionFactory()
        Overrides:
        createExtensionFactory in class org.pf4j.DefaultPluginManager
      • resetInstance

        public static void resetInstance()
      • getConfiguredExtensions

        public <T> List<T> getConfiguredExtensions​(Class<T> type)
      • getExtensions

        public <T> List<T> getExtensions​(Class<T> type)
        Specified by:
        getExtensions in interface org.pf4j.PluginManager
        Overrides:
        getExtensions in class org.pf4j.AbstractPluginManager
      • getExtensions

        public <T> List<T> getExtensions​(Class<T> type,
                                         org.jdom2.Element root)
        plugins can use this method to load other plugins
        Type Parameters:
        T -
        Parameters:
        type -
        root - root element inside which plugins may be nested
        Returns:
        list of declared extensions or an empty list if none were found
      • getTasks

        public <T> List<Task<T>> getTasks​(Class<T> type)
      • unloadPlugins

        public void unloadPlugins()
        Specified by:
        unloadPlugins in interface org.pf4j.PluginManager
        Overrides:
        unloadPlugins in class org.pf4j.AbstractPluginManager