Class PluginSystem

java.lang.Object
org.pf4j.AbstractPluginManager
org.pf4j.DefaultPluginManager
org.correomqtt.plugin.manager.PluginSystem
All Implemented Interfaces:
org.pf4j.PluginManager

public class PluginSystem
extends org.pf4j.DefaultPluginManager
  • 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, pluginsRoot, pluginStateListeners, pluginStatusProvider, resolvedPlugins, runtimeMode, startedPlugins, systemVersion, unresolvedPlugins, versionManager
  • Method Summary

    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> 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 PluginSystem getInstance()  
    <T> List<Task<T>> getTasks​(Class<T> type)  

    Methods inherited from class org.pf4j.DefaultPluginManager

    createExtensionFinder, createPluginRepository, createPluginStatusProvider, createVersionManager, initialize, loadPluginFromPath

    Methods inherited from class org.pf4j.AbstractPluginManager

    addPluginStateListener, createPluginsRoot, deletePlugin, disablePlugin, enablePlugin, firePluginStateEvent, getExtensionClasses, getExtensionClasses, getExtensionClasses, getExtensionClassNames, getExtensionFactory, 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
  • Method Details

    • 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.DefaultPluginManager
    • createPluginDescriptorFinder

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

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

      public static PluginSystem getInstance()
    • 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)