Class BambooPluginManagerClusterAware
java.lang.Object
com.atlassian.plugin.manager.DefaultPluginManager
com.atlassian.bamboo.plugin.BambooPluginManager
com.atlassian.bamboo.plugin.cluster.BambooPluginManagerClusterAware
- All Implemented Interfaces:
com.atlassian.plugin.PluginAccessor,com.atlassian.plugin.PluginController,com.atlassian.plugin.PluginSystemLifecycle,com.atlassian.plugin.SplitStartupPluginSystemLifecycle
Decorates
BambooPluginManager with awareness of cluster environment.
Main features: - Prevents concurrency problems via cluster locks - Manages situations where plugin events need to propagated in the cluster
- Since:
- 9.5
-
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 -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionBambooPluginManagerClusterAware(com.atlassian.plugin.manager.PluginPersistentStateStore pluginStateStore, SystemPluginLoaderConfiguration loaderConfiguration, List<com.atlassian.plugin.loaders.PluginLoader> extraPluginLoaders, com.atlassian.plugin.ModuleDescriptorFactory moduleDescriptorFactory, com.atlassian.plugin.event.PluginEventManager pluginEventManager, File pluginDirectory, com.atlassian.plugin.metadata.PluginMetadataManager pluginMetadataManager, @NotNull PluginClusterAwareEventListener pluginClusterAwareEventListener, @NotNull BambooClusterLockService bambooClusterLockService) -
Method Summary
Modifier and TypeMethodDescriptionvoiddisablePlugin(String key) voidenablePlugins(String... keys) voidinit()installPlugins(com.atlassian.plugin.PluginArtifact... pluginArtifacts) voiduninstall(com.atlassian.plugin.Plugin plugin) Methods inherited from class com.atlassian.bamboo.plugin.BambooPluginManager
addPlugins, getPlugins, onContextDestroyed, onPluginEnabledMethods inherited from class com.atlassian.plugin.manager.DefaultPluginManager
addDynamicModule, disablePluginInternal, disablePluginModule, disablePluginWithoutPersisting, earlyStartup, enablePluginModule, getClassLoader, getDynamicModules, getDynamicPluginClass, getDynamicResourceAsStream, getEnabledModuleDescriptorsByClass, getEnabledModulesByClass, getEnabledPlugin, getEnabledPluginModule, getEnabledPlugins, getLateStartupEnableRetryProperty, getMinimumPluginVersionsFileProperty, getModuleDescriptors, getModules, getPlugin, getPluginModule, getPluginRestartState, getPlugins, getStartupOverrideFileProperty, getState, isPluginEnabled, isPluginModuleEnabled, isSystemPlugin, lateStartup, newBuilder, notifyModuleDisabled, notifyModuleEnabled, notifyUninstallPlugin, onPluginContainerUnavailable, onPluginModuleAvailable, onPluginModuleUnavailable, onPluginRefresh, onUpdateRequiresRestartState, removeDynamicModule, removeStateFromStore, revertRestartRequiredChange, scanForNewPlugins, setPluginInstaller, shutdown, uninstallNoEvent, uninstallPlugins, unloadPlugin, updatePlugin, warmRestartMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.atlassian.plugin.PluginAccessor
getActiveModuleDescriptorsByClass, getClassLoader, getDynamicModules, getDynamicResourceAsStream, getEnabledModuleDescriptorsByClass, getEnabledModulesByClass, getEnabledPlugin, getEnabledPluginModule, getEnabledPlugins, getModuleDescriptors, getModuleDescriptors, getModules, getModules, getPlugin, getPluginModule, getPluginRestartState, getPlugins, getPlugins, isPluginEnabled, isPluginModuleEnabled, isSystemPluginMethods inherited from interface com.atlassian.plugin.PluginController
addDynamicModule, disablePluginModule, disablePluginWithoutPersisting, enablePluginModule, removeDynamicModule, revertRestartRequiredChange, scanForNewPlugins, uninstallPluginsMethods inherited from interface com.atlassian.plugin.PluginSystemLifecycle
shutdown, warmRestart
-
Field Details
-
PLUGIN_SYSTEM_LOCK_TIMEOUT_SECONDS
public static final long PLUGIN_SYSTEM_LOCK_TIMEOUT_SECONDS
-
-
Constructor Details
-
BambooPluginManagerClusterAware
public BambooPluginManagerClusterAware(com.atlassian.plugin.manager.PluginPersistentStateStore pluginStateStore, SystemPluginLoaderConfiguration loaderConfiguration, List<com.atlassian.plugin.loaders.PluginLoader> extraPluginLoaders, com.atlassian.plugin.ModuleDescriptorFactory moduleDescriptorFactory, com.atlassian.plugin.event.PluginEventManager pluginEventManager, File pluginDirectory, com.atlassian.plugin.metadata.PluginMetadataManager pluginMetadataManager, @NotNull @NotNull PluginClusterAwareEventListener pluginClusterAwareEventListener, @NotNull @NotNull BambooClusterLockService bambooClusterLockService)
-
-
Method Details
-
init
public void init()- Specified by:
initin interfacecom.atlassian.plugin.PluginSystemLifecycle- Overrides:
initin classcom.atlassian.plugin.manager.DefaultPluginManager
-
installPlugins
- Specified by:
installPluginsin interfacecom.atlassian.plugin.PluginController- Overrides:
installPluginsin classcom.atlassian.plugin.manager.DefaultPluginManager
-
uninstall
public void uninstall(com.atlassian.plugin.Plugin plugin) - Specified by:
uninstallin interfacecom.atlassian.plugin.PluginController- Overrides:
uninstallin classcom.atlassian.plugin.manager.DefaultPluginManager
-
enablePlugins
- Specified by:
enablePluginsin interfacecom.atlassian.plugin.PluginController- Overrides:
enablePluginsin classcom.atlassian.plugin.manager.DefaultPluginManager
-
disablePlugin
- Specified by:
disablePluginin interfacecom.atlassian.plugin.PluginController- Overrides:
disablePluginin classBambooPluginManager
-