Class PluginModuleTrackerFactory
Creates instances of a PluginModuleTracker using the DefaultPluginModuleTracker implementation.
Instances of PluginModuleTracker keep a cached set of module descriptors that is updated when plugins and plugin modules are enabled or disabled in the plugins system.
IMPORTANT: The set of descriptors returned by the plugin module trackers is a live list that is updated as plugins and plugin modules are enabled or disabled, it is not necessary to further cache the results obtained from a plugin module tracker.
- Since:
- v4.4
- See Also:
-
PluginModuleTracker
-
Constructor Summary
ConstructorsConstructorDescriptionPluginModuleTrackerFactory(com.atlassian.plugin.PluginAccessor pluginAccessor, com.atlassian.plugin.event.PluginEventManager pluginEventManager) -
Method Summary
Modifier and TypeMethodDescription<M,D extends com.atlassian.plugin.ModuleDescriptor<M>>
com.atlassian.plugin.tracker.PluginModuleTracker<M,D> Creates an instance of a plugin module tracker for the specified module descriptor class.<M,D extends com.atlassian.plugin.ModuleDescriptor<M>>
com.atlassian.plugin.tracker.PluginModuleTracker<M,D> create(Class<D> moduleDescriptorClass, com.atlassian.plugin.tracker.PluginModuleTracker.Customizer<M, D> pluginModuleTrackerCustomizer) Creates an instance of a plugin module tracker for the specified module descriptor class.
-
Constructor Details
-
PluginModuleTrackerFactory
public PluginModuleTrackerFactory(com.atlassian.plugin.PluginAccessor pluginAccessor, com.atlassian.plugin.event.PluginEventManager pluginEventManager)
-
-
Method Details
-
create
public <M,D extends com.atlassian.plugin.ModuleDescriptor<M>> com.atlassian.plugin.tracker.PluginModuleTracker<M,D> create(Class<D> moduleDescriptorClass) Creates an instance of a plugin module tracker for the specified module descriptor class.- Type Parameters:
M- The module described by D.D- The class module descriptor to be tracked.- Parameters:
moduleDescriptorClass- The module descriptor class to track.- Returns:
- An instance of a plugin module tracker for the specified module descriptor class.
-
create
public <M,D extends com.atlassian.plugin.ModuleDescriptor<M>> com.atlassian.plugin.tracker.PluginModuleTracker<M,D> create(Class<D> moduleDescriptorClass, com.atlassian.plugin.tracker.PluginModuleTracker.Customizer<M, D> pluginModuleTrackerCustomizer) Creates an instance of a plugin module tracker for the specified module descriptor class.
It takes in a
customizerthat enables the calling code to perform additional operations when a plugin module is added or removed from the module tracker.- Type Parameters:
M- The module described by D.D- The module descriptor to be tracked.- Parameters:
moduleDescriptorClass- The module descriptor class to track.pluginModuleTrackerCustomizer- The customizer to use when module descriptors are added or removed from the module tracker.- Returns:
- An instance of a plugin module tracker for the specified module descriptor class.
- See Also:
-
PluginModuleTracker.Customizer
-