Class SpringBootPluginManager

java.lang.Object
org.pf4j.AbstractPluginManager
org.pf4j.DefaultPluginManager
org.laxture.sbp.SpringBootPluginManager
All Implemented Interfaces:
org.pf4j.PluginManager, org.springframework.beans.factory.Aware, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware

public class SpringBootPluginManager extends org.pf4j.DefaultPluginManager implements org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.InitializingBean
PluginManager to hold the main ApplicationContext
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
     

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

    Constructors
    Constructor
    Description
     
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    This method load, start plugins and inject extensions in Spring
    protected org.pf4j.ExtensionFactory
     
    protected org.pf4j.PluginRepository
     
    org.springframework.context.ApplicationContext
     
    org.pf4j.PluginDescriptorFinder
     
    org.pf4j.PluginRepository
     
     
     
     
    boolean
     
    boolean
     
    boolean
     
    void
     
    void
    presetProperties(Map<String,Object> presetProperties)
     
    void
     
    void
    reloadPlugins(boolean restartStartedOnly)
     
    org.pf4j.PluginState
     
    org.pf4j.PluginState
     
    void
     
    void
    setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
     
    void
    setAutoStartPlugin(boolean autoStartPlugin)
     
    void
    setMainApplicationStarted(boolean mainApplicationStarted)
     
    void
    setProfiles(String[] profiles)
     
    org.pf4j.PluginState
    startPlugin(String pluginId)
     
    void
     
    org.pf4j.PluginState
    stopPlugin(String pluginId)
     
    void
     

    Methods inherited from class org.pf4j.DefaultPluginManager

    createExtensionFinder, createPluginDescriptorFinder, createPluginFactory, createPluginLoader, createPluginStatusProvider, createVersionManager, initialize, loadPluginFromPath

    Methods inherited from class org.pf4j.AbstractPluginManager

    addPluginStateListener, checkPluginId, createPluginsRoot, createPluginWrapper, deletePlugin, disablePlugin, enablePlugin, firePluginStateEvent, getExtensionClasses, getExtensionClasses, getExtensionClasses, getExtensionClasses, getExtensionClassNames, getExtensionFactory, getExtensions, getExtensions, getExtensions, getExtensions, getPlugin, getPluginClassLoader, getPluginClassLoaders, getPluginFactory, getPluginLabel, getPluginLoader, getPlugins, getPlugins, getPluginsRoot, getPluginsRoots, getResolvedPlugins, getRuntimeMode, getStartedPlugins, getSystemVersion, getUnresolvedPlugins, getVersion, getVersionManager, idForPath, isExactVersionAllowed, isPluginDisabled, isPluginValid, loadPlugin, loadPlugins, removePluginStateListener, resolvePlugins, setExactVersionAllowed, setSystemVersion, stopPlugin, unloadPlugin, unloadPlugin, unloadPlugins, 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 Details

  • Constructor Details

    • SpringBootPluginManager

      public SpringBootPluginManager()
    • SpringBootPluginManager

      public SpringBootPluginManager(Path pluginsRoot)
  • Method Details

    • createExtensionFactory

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

      public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException
      Specified by:
      setApplicationContext in interface org.springframework.context.ApplicationContextAware
      Throws:
      org.springframework.beans.BeansException
    • getPluginDescriptorFinder

      public org.pf4j.PluginDescriptorFinder getPluginDescriptorFinder()
      Overrides:
      getPluginDescriptorFinder in class org.pf4j.AbstractPluginManager
    • createPluginRepository

      protected org.pf4j.PluginRepository createPluginRepository()
      Overrides:
      createPluginRepository in class org.pf4j.DefaultPluginManager
    • getPluginRepository

      public org.pf4j.PluginRepository getPluginRepository()
    • setAutoStartPlugin

      public void setAutoStartPlugin(boolean autoStartPlugin)
    • isAutoStartPlugin

      public boolean isAutoStartPlugin()
    • setMainApplicationStarted

      public void setMainApplicationStarted(boolean mainApplicationStarted)
    • setProfiles

      public void setProfiles(String[] profiles)
    • getProfiles

      public String[] getProfiles()
    • presetProperties

      public void presetProperties(Map<String,Object> presetProperties)
    • presetProperties

      public void presetProperties(String name, Object value)
    • getPresetProperties

      public Map<String,Object> getPresetProperties()
    • getMainApplicationContext

      public org.springframework.context.ApplicationContext getMainApplicationContext()
    • isMainApplicationStarted

      public boolean isMainApplicationStarted()
    • afterPropertiesSet

      public void afterPropertiesSet()
      This method load, start plugins and inject extensions in Spring
      Specified by:
      afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
    • getPluginStartingError

      public PluginStartingError getPluginStartingError(String pluginId)
    • isLoading

      public boolean isLoading()
    • releaseLoadingLock

      public void releaseLoadingLock()
    • startPlugins

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

      public org.pf4j.PluginState startPlugin(String pluginId)
      Specified by:
      startPlugin in interface org.pf4j.PluginManager
      Overrides:
      startPlugin in class org.pf4j.AbstractPluginManager
    • stopPlugins

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

      public org.pf4j.PluginState stopPlugin(String pluginId)
      Specified by:
      stopPlugin in interface org.pf4j.PluginManager
      Overrides:
      stopPlugin in class org.pf4j.AbstractPluginManager
    • restartPlugins

      public void restartPlugins()
    • restartPlugin

      public org.pf4j.PluginState restartPlugin(String pluginId)
    • reloadPlugins

      public void reloadPlugins(boolean restartStartedOnly)
    • reloadPlugins

      public org.pf4j.PluginState reloadPlugins(String pluginId)