|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.atlassian.confluence.plugins.gadgets.metadata.CachingGadgetsMacroMetadataProvider
public class CachingGadgetsMacroMetadataProvider
An extension of GadgetsMacroMetadataProvider
which caches the results of the getData()
method.
Once the macro metadata is built and cached, this class will request that the low-level caches in the Gadgets-OpenSocial
plugin are flushed. These caches use fearsome amounts of memory and should be flushed if not providing useful information.
This class makes the assumption that all of the other methods in GadgetsMacroMetadataProvider work by invoking getData first.
The cache contains a single entry, which is the collection of MacroMetadata
objects.
The class listens for any GadgetInstalledEvent
or GadgetUninstalledEvent
, and clears the metadata cache.
Constructor Summary | |
---|---|
CachingGadgetsMacroMetadataProvider(com.atlassian.cache.CacheManager cacheManager,
CacheStatisticsManager cacheStatisticsManager,
com.atlassian.gadgets.GadgetSpecProvider gadgetSpecProvider,
com.atlassian.gadgets.directory.spi.ExternalGadgetSpecStore gadgetStore,
com.atlassian.gadgets.directory.spi.SubscribedGadgetFeedStore feedStore,
com.atlassian.gadgets.feed.GadgetFeedReaderFactory gadgetFeedReaderFactory,
com.atlassian.gadgets.spec.GadgetSpecFactory gadgetSpecFactory,
RequestContextBuilder requestContextBuilder,
com.atlassian.sal.api.message.I18nResolver resolver,
com.atlassian.event.api.EventPublisher eventPublisher,
GadgetUsageTracker gadgetUsageTracker)
Public constructor as used by the module descriptor |
Method Summary | |
---|---|
void |
gadgetInstalled(GadgetInstalledEvent event)
|
void |
gadgetUninstalled(GadgetUninstalledEvent event)
|
MacroMetadata |
getByMacroName(String macroName)
Returns the metadata for the named macro if it is known to this provider. |
MacroMetadata |
getByMacroNameAndId(String macroName,
String alternateId)
Returns the metadata for the named macro if it is known to this provider. |
Collection<MacroMetadata> |
getData()
Returns a collection of MacroMetadata for use in the Macro Browser. |
Collection<MacroSummary> |
getSummaries()
Returns a collection of MacroMetadata for use in the Macro Browser. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public CachingGadgetsMacroMetadataProvider(com.atlassian.cache.CacheManager cacheManager, CacheStatisticsManager cacheStatisticsManager, com.atlassian.gadgets.GadgetSpecProvider gadgetSpecProvider, com.atlassian.gadgets.directory.spi.ExternalGadgetSpecStore gadgetStore, com.atlassian.gadgets.directory.spi.SubscribedGadgetFeedStore feedStore, com.atlassian.gadgets.feed.GadgetFeedReaderFactory gadgetFeedReaderFactory, com.atlassian.gadgets.spec.GadgetSpecFactory gadgetSpecFactory, RequestContextBuilder requestContextBuilder, com.atlassian.sal.api.message.I18nResolver resolver, com.atlassian.event.api.EventPublisher eventPublisher, GadgetUsageTracker gadgetUsageTracker)
Method Detail |
---|
public Collection<MacroMetadata> getData()
MacroMetadataProvider
MacroMetadata
for use in the Macro Browser.
This collection need not necessarily be unique.
getData
in interface MacroMetadataProvider
public Collection<MacroSummary> getSummaries()
MacroMetadataProvider
MacroMetadata
for use in the Macro Browser.
This collection need not necessarily be unique. It's just the summaries.
getSummaries
in interface MacroMetadataProvider
public MacroMetadata getByMacroName(String macroName)
MacroMetadataProvider
getByMacroName
in interface MacroMetadataProvider
macroName
- the (simple, unfriendly) name of the macro.
public MacroMetadata getByMacroNameAndId(String macroName, String alternateId)
MacroMetadataProvider
getByMacroNameAndId
in interface MacroMetadataProvider
macroName
- the (simple, unfriendly) name of the macro.alternateId
- additional identification for macros where the macroName is not sufficient. If alternateId
is null, then it should be ignored.
@EventListener public void gadgetInstalled(GadgetInstalledEvent event)
@EventListener public void gadgetUninstalled(GadgetUninstalledEvent event)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |