public class UserMacroPluginMacroManager extends Object implements MacroManager
A MacroManager responsible for keeping track of user macros loaded via the plugin subsystem. Listens for
PluginModuleEnabledEvent and
PluginModuleDisabledEvent to register
GenericVelocityMacros with itself.
All macros will be wrapped in a LazyLoadingMacroWrapper.
| Constructor and Description |
|---|
UserMacroPluginMacroManager(com.atlassian.event.api.EventPublisher eventPublisher) |
| Modifier and Type | Method and Description |
|---|---|
com.atlassian.util.concurrent.LazyReference<Macro> |
createLazyMacroReference(com.atlassian.plugin.ModuleDescriptor<?> moduleDescriptor)
Macros are lazy loaded to avoid plugin module ordering problems like CONF-13386.
|
Macro |
getMacroByName(String macroName)
Gives the
Macro registered with the
given name, or null if there is none registered with the manager. |
void |
pluginModuleDisabled(com.atlassian.plugin.event.events.PluginModuleDisabledEvent event) |
void |
pluginModuleEnabled(com.atlassian.plugin.event.events.PluginModuleEnabledEvent event) |
void |
registerMacro(String name,
Macro macro)
Registers a new macro with the given name.
|
void |
setPluginEventManager(com.atlassian.plugin.event.PluginEventManager pluginEventManager) |
void |
unregisterMacro(String name)
Unregisters the macro with the given name.
|
public UserMacroPluginMacroManager(com.atlassian.event.api.EventPublisher eventPublisher)
public Macro getMacroByName(@Nonnull String macroName)
MacroManagerMacro registered with the
given name, or null if there is none registered with the manager.getMacroByName in interface MacroManagermacroName - The macro to get.public void registerMacro(@Nonnull String name, @Nonnull Macro macro)
MacroManagerregisterMacro in interface MacroManagername - the name to register the macro under. For example, 'code'.macro - the macro to registerpublic void unregisterMacro(@Nonnull String name)
MacroManagerunregisterMacro in interface MacroManagername - the name of the macro to unregister. For example, 'code'.public void pluginModuleEnabled(com.atlassian.plugin.event.events.PluginModuleEnabledEvent event)
public void pluginModuleDisabled(com.atlassian.plugin.event.events.PluginModuleDisabledEvent event)
public com.atlassian.util.concurrent.LazyReference<Macro> createLazyMacroReference(com.atlassian.plugin.ModuleDescriptor<?> moduleDescriptor)
MacroManagercreateLazyMacroReference in interface MacroManagermoduleDescriptor - describes the macro we are creating a lazy reference to.public void setPluginEventManager(com.atlassian.plugin.event.PluginEventManager pluginEventManager)
Copyright © 2003–2017 Atlassian. All rights reserved.