Class ConfluencePluginManager

java.lang.Object
com.atlassian.plugin.manager.DefaultPluginManager
com.atlassian.confluence.impl.plugin.ConfluencePluginManager
All Implemented Interfaces:
com.atlassian.plugin.PluginAccessor, com.atlassian.plugin.PluginController, com.atlassian.plugin.PluginSystemLifecycle, com.atlassian.plugin.SplitStartupPluginSystemLifecycle, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware

public class ConfluencePluginManager extends com.atlassian.plugin.manager.DefaultPluginManager implements org.springframework.context.ApplicationContextAware
Cluster safe extension of DefaultPluginManager which listens for plugin events fired on other nodes and guarantees that plugin state is consistent across nodes.
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.atlassian.plugin.manager.DefaultPluginManager

    com.atlassian.plugin.manager.DefaultPluginManager.Builder<T extends com.atlassian.plugin.manager.DefaultPluginManager.Builder<?>>

    Nested classes/interfaces inherited from interface com.atlassian.plugin.PluginAccessor

    com.atlassian.plugin.PluginAccessor.Descriptor
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    ConfluencePluginManager(com.atlassian.plugin.manager.DefaultPluginManager.Builder<? extends com.atlassian.plugin.manager.DefaultPluginManager.Builder> builder, com.atlassian.plugin.PluginAccessor pluginAccessor, com.atlassian.event.api.EventPublisher eventPublisher, com.atlassian.plugin.PluginInstaller pluginInstaller)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
     
    protected boolean
    Overridden in SetupPluginManager to return
    invalid @link
    {@link true
    }.
    void
     
    void
    Initialised the plugin system and update local plugin state on clustered plugin events
    void
    setApplicationContext(org.springframework.context.ApplicationContext applicationContext)
     

    Methods inherited from class com.atlassian.plugin.manager.DefaultPluginManager

    addDynamicModule, addPlugins, disablePlugin, disablePluginInternal, disablePluginModule, disablePluginWithoutPersisting, enablePluginModule, enablePlugins, getClassLoader, getDynamicModules, getDynamicPluginClass, getDynamicResourceAsStream, getEnabledModuleDescriptorsByClass, getEnabledModulesByClass, getEnabledPlugin, getEnabledPluginModule, getEnabledPlugins, getLateStartupEnableRetryProperty, getMinimumPluginVersionsFileProperty, getModuleDescriptors, getModules, getPlugin, getPluginModule, getPluginRestartState, getPlugins, getPlugins, getStartupOverrideFileProperty, getState, installPlugins, isPluginEnabled, isPluginModuleEnabled, isSystemPlugin, newBuilder, notifyModuleDisabled, notifyModuleEnabled, notifyUninstallPlugin, onPluginContainerUnavailable, onPluginModuleAvailable, onPluginModuleUnavailable, onPluginRefresh, onUpdateRequiresRestartState, removeDynamicModule, removeStateFromStore, revertRestartRequiredChange, scanForNewPlugins, setPluginInstaller, shutdown, uninstall, uninstallNoEvent, uninstallPlugins, unloadPlugin, updatePlugin, warmRestart

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.atlassian.plugin.PluginAccessor

    getActiveModuleDescriptorsByClass, getModuleDescriptors, getModules, getPlugins
  • Constructor Details

    • ConfluencePluginManager

      protected ConfluencePluginManager(com.atlassian.plugin.manager.DefaultPluginManager.Builder<? extends com.atlassian.plugin.manager.DefaultPluginManager.Builder> builder, com.atlassian.plugin.PluginAccessor pluginAccessor, com.atlassian.event.api.EventPublisher eventPublisher, com.atlassian.plugin.PluginInstaller pluginInstaller)
      Since:
      9.4
  • Method Details

    • init

      public void init() throws com.atlassian.plugin.PluginParseException, com.atlassian.plugin.event.NotificationException
      Specified by:
      init in interface com.atlassian.plugin.PluginSystemLifecycle
      Overrides:
      init in class com.atlassian.plugin.manager.DefaultPluginManager
      Throws:
      com.atlassian.plugin.PluginParseException
      com.atlassian.plugin.event.NotificationException
    • earlyStartup

      public void earlyStartup() throws com.atlassian.plugin.PluginParseException, com.atlassian.plugin.event.NotificationException
      Specified by:
      earlyStartup in interface com.atlassian.plugin.SplitStartupPluginSystemLifecycle
      Overrides:
      earlyStartup in class com.atlassian.plugin.manager.DefaultPluginManager
      Throws:
      com.atlassian.plugin.PluginParseException
      com.atlassian.plugin.event.NotificationException
    • lateStartup

      public void lateStartup() throws com.atlassian.plugin.PluginParseException, com.atlassian.plugin.event.NotificationException
      Specified by:
      lateStartup in interface com.atlassian.plugin.SplitStartupPluginSystemLifecycle
      Overrides:
      lateStartup in class com.atlassian.plugin.manager.DefaultPluginManager
      Throws:
      com.atlassian.plugin.PluginParseException
      com.atlassian.plugin.event.NotificationException
    • isSetupPluginManager

      protected boolean isSetupPluginManager()
      Overridden in SetupPluginManager to return
      invalid @link
      {@link true
      }.
    • onClusterEvent

      @EventListener public void onClusterEvent(ClusterEventWrapper event)
      Initialised the plugin system and update local plugin state on clustered plugin events
      Parameters:
      event - the event being notified
    • 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