Class PluginClusterAwareEventListener
java.lang.Object
com.atlassian.bamboo.plugin.cluster.PluginClusterAwareEventListener
Stateful service that handles plugin events in a cluster environment.
It starts disabled by default and enable()
can be
used to start handling plugin events.
- Since:
- 9.5
-
Constructor Summary
ConstructorDescriptionPluginClusterAwareEventListener
(@NotNull com.atlassian.plugin.event.PluginEventManager pluginEventManager) Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoid
onPluginDisabled
(com.atlassian.plugin.event.events.PluginDisabledEvent event) Monitors plugin disabling and ask other nodes to disable the same plugin, making sure all nodes have the same capabilities enabled.void
onPluginEnabled
(com.atlassian.plugin.event.events.PluginEnabledEvent event) Monitors plugin enabling and ask other nodes to enable the same plugin, making sure all nodes have the same capabilities enabled.void
onPluginInstalled
(com.atlassian.plugin.event.events.PluginInstalledEvent event) Monitors plugin installation and ask other nodes to install the same plugin, making sure all nodes have the same capabilities enabled.void
onPluginUninstalled
(com.atlassian.plugin.event.events.PluginUninstalledEvent event) Monitors plugin removal and ask other nodes to uninstall the same plugin, making sure all nodes have the same capabilities enabled.void
onPluginUpgraded
(com.atlassian.plugin.event.events.PluginUpgradedEvent event) Monitors plugin upgrading and ask other nodes to upgrade the same plugin, making sure all nodes have the same capabilities enabled.void
void
runWithoutEventListening
(@NotNull Runnable runnable) Immediately executes some logic with NO plugin event handling.
-
Constructor Details
-
PluginClusterAwareEventListener
@Inject public PluginClusterAwareEventListener(@NotNull @NotNull com.atlassian.plugin.event.PluginEventManager pluginEventManager) Constructor- Parameters:
pluginEventManager
- used to register the new instance as a listener to plugin events- Since:
- 9.5
-
-
Method Details
-
postConstruct
@PostConstruct public void postConstruct() -
onPluginInstalled
public void onPluginInstalled(com.atlassian.plugin.event.events.PluginInstalledEvent event) Monitors plugin installation and ask other nodes to install the same plugin, making sure all nodes have the same capabilities enabled.- Parameters:
event
- the event- Since:
- 9.5
-
onPluginUninstalled
public void onPluginUninstalled(com.atlassian.plugin.event.events.PluginUninstalledEvent event) Monitors plugin removal and ask other nodes to uninstall the same plugin, making sure all nodes have the same capabilities enabled.- Parameters:
event
- the event- Since:
- 9.5
-
onPluginEnabled
public void onPluginEnabled(com.atlassian.plugin.event.events.PluginEnabledEvent event) Monitors plugin enabling and ask other nodes to enable the same plugin, making sure all nodes have the same capabilities enabled.- Parameters:
event
- the event- Since:
- 9.5
-
onPluginDisabled
public void onPluginDisabled(com.atlassian.plugin.event.events.PluginDisabledEvent event) Monitors plugin disabling and ask other nodes to disable the same plugin, making sure all nodes have the same capabilities enabled.- Parameters:
event
- the event- Since:
- 9.5
-
onPluginUpgraded
public void onPluginUpgraded(com.atlassian.plugin.event.events.PluginUpgradedEvent event) Monitors plugin upgrading and ask other nodes to upgrade the same plugin, making sure all nodes have the same capabilities enabled.- Parameters:
event
- the event- Since:
- 9.5
-
runWithoutEventListening
Immediately executes some logic with NO plugin event handling. All plugin events originating from the other nodes are handled through this method, so the 'synchronized' is crucial here.- Parameters:
runnable
- the logic to be executed.
-