com.atlassian.confluence.plugin.webresource
Class DefaultConfluenceWebResourceManager

java.lang.Object
  extended by com.atlassian.plugin.webresource.WebResourceManagerImpl
      extended by com.atlassian.confluence.plugin.webresource.DefaultConfluenceWebResourceManager
All Implemented Interfaces:
ConfluenceWebResourceManager, com.atlassian.plugin.webresource.WebResourceManager

public class DefaultConfluenceWebResourceManager
extends com.atlassian.plugin.webresource.WebResourceManagerImpl
implements ConfluenceWebResourceManager


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.atlassian.plugin.webresource.WebResourceManager
com.atlassian.plugin.webresource.WebResourceManager.IncludeMode
 
Field Summary
 
Fields inherited from class com.atlassian.plugin.webresource.WebResourceManagerImpl
batchingConfiguration, dependencyResolver, pluginResourceLocator, webResourceFormatters, webResourceIntegration
 
Fields inherited from interface com.atlassian.plugin.webresource.WebResourceManager
DELAYED_INCLUDE_MODE, INLINE_INCLUDE_MODE
 
Constructor Summary
DefaultConfluenceWebResourceManager(com.atlassian.plugin.webresource.PluginResourceLocator pluginResourceLocator, com.atlassian.plugin.webresource.WebResourceIntegration webResourceIntegration, com.atlassian.plugin.webresource.WebResourceUrlProvider webResourceUrlProvider, com.atlassian.plugin.webresource.ResourceBatchingConfiguration batchingConfiguration, ThemeManager themeManager, StylesheetManager stylesheetManager, CssResourceCounterManager cssResourceCounterManager, com.atlassian.plugin.PluginAccessor pluginAccessor, ResourceAccessor resourceAccessor, SettingsManager settingsManager, Counter pluginCounter)
           
 
Method Summary
 String getAdminCssResources()
           
 String getCssResources()
          Delegates to getCssResources(null)
 String getCssResources(String spaceKey)
          Returns the HTML output of WebResourceManager.includeResources(Writer, UrlMode, WebResourceFilter), which includes references to all the delayed CSS resources requested by WebResourceManager.requireResource(String).
 String getEditorCssResources(String spaceKey)
           
 String getGlobalCssResourcePrefix()
          Get the resource prefix for the global CSS file.
 String getJsResources()
          Returns the HTML output of WebResourceManager.includeResources(Writer, UrlMode, WebResourceFilter), which includes references to all the delayed Javascript resources requested by WebResourceManager.requireResource(String).
 Map<String,String> getMetadata()
          Returns the map of key-value pairs added via ConfluenceWebResourceManager.putMetadata(String, String).
 String getResourceContent(String resourceName)
          Gets the content of a resource specified.
 String getResources()
          Returns the HTML output of WebResourceManager.includeResources(java.io.Writer), which includes references to all the delayed Javascript and CSS resources requested by WebResourceManager.requireResource(String).
 String getResourceTags(String resourceName)
           
 String getResourceTagsForAdditionalContextsHtml(List<String> contexts)
          Get the resource tags that would be necessary for the supplied List of extra contexts.
 String getSpaceCssPrefix(String spaceKey)
          Get the resource prefix for a particular space's CSS file.
 String getThemeJsResources(String spaceKey)
          Returns the script tags for the theme specific javascript resources.
 boolean putMetadata(String key, String value)
          Adds key-value String pairs to a map to be rendered later.
 void requireResource(String resourceName)
          Wraps the parent method to provide logging.
 
Methods inherited from class com.atlassian.plugin.webresource.WebResourceManagerImpl
executeInNewContext, getRequiredResources, getRequiredResources, getRequiredResources, getResourceTags, getResourceTagsForAdditionalContexts, getResourceTagsForAdditionalContexts, getStaticPluginResource, getStaticPluginResource, getStaticPluginResource, getStaticPluginResource, getStaticPluginResourcePrefix, getStaticResourcePrefix, getStaticResourcePrefix, getStaticResourcePrefix, getStaticResourcePrefix, includeResources, includeResources, includeResources, includeResources, requireResource, requireResource, requireResourcesForContext, setIncludeMode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.confluence.plugin.webresource.ConfluenceWebResourceManager
requireResourcesForContext
 
Methods inherited from interface com.atlassian.plugin.webresource.WebResourceManager
executeInNewContext, getRequiredResources, getRequiredResources, getRequiredResources, getResourceTags, getStaticPluginResource, getStaticPluginResource, getStaticPluginResource, getStaticPluginResource, getStaticPluginResourcePrefix, getStaticResourcePrefix, getStaticResourcePrefix, getStaticResourcePrefix, getStaticResourcePrefix, includeResources, includeResources, includeResources, includeResources, requireResource, requireResource, setIncludeMode
 

Constructor Detail

DefaultConfluenceWebResourceManager

public DefaultConfluenceWebResourceManager(com.atlassian.plugin.webresource.PluginResourceLocator pluginResourceLocator,
                                           com.atlassian.plugin.webresource.WebResourceIntegration webResourceIntegration,
                                           com.atlassian.plugin.webresource.WebResourceUrlProvider webResourceUrlProvider,
                                           com.atlassian.plugin.webresource.ResourceBatchingConfiguration batchingConfiguration,
                                           ThemeManager themeManager,
                                           StylesheetManager stylesheetManager,
                                           CssResourceCounterManager cssResourceCounterManager,
                                           com.atlassian.plugin.PluginAccessor pluginAccessor,
                                           ResourceAccessor resourceAccessor,
                                           SettingsManager settingsManager,
                                           Counter pluginCounter)
Method Detail

getResources

public String getResources()
Description copied from interface: ConfluenceWebResourceManager
Returns the HTML output of WebResourceManager.includeResources(java.io.Writer), which includes references to all the delayed Javascript and CSS resources requested by WebResourceManager.requireResource(String). This is a convenience method for velocity templates and is equivalent to calling includeResources with UrlMode.AUTO and DefaultWebResourceFilter.

Specified by:
getResources in interface ConfluenceWebResourceManager

getCssResources

public String getCssResources()
Description copied from interface: ConfluenceWebResourceManager
Delegates to getCssResources(null)

Specified by:
getCssResources in interface ConfluenceWebResourceManager
See Also:
ConfluenceWebResourceManager.getCssResources(String)

getCssResources

public String getCssResources(String spaceKey)
Description copied from interface: ConfluenceWebResourceManager
Returns the HTML output of WebResourceManager.includeResources(Writer, UrlMode, WebResourceFilter), which includes references to all the delayed CSS resources requested by WebResourceManager.requireResource(String). This method should only be called once for each request. Multiple calls to this method will result with null being returned. This is a convenience method for velocity templates and is equivalent to calling includeResources with

Specified by:
getCssResources in interface ConfluenceWebResourceManager
Parameters:
spaceKey - spaceKey if null global theme is used. UrlMode.AUTO and CssWebResource.

getJsResources

public String getJsResources()
Description copied from interface: ConfluenceWebResourceManager
Returns the HTML output of WebResourceManager.includeResources(Writer, UrlMode, WebResourceFilter), which includes references to all the delayed Javascript resources requested by WebResourceManager.requireResource(String). This method should only be called once for each request. Multiple calls to this method will result with null being returned. This is a convenience method for velocity templates and is equivalent to calling includeResources with UrlMode.AUTO and JavascriptWebResource.

Specified by:
getJsResources in interface ConfluenceWebResourceManager

getThemeJsResources

public String getThemeJsResources(String spaceKey)
Description copied from interface: ConfluenceWebResourceManager
Returns the script tags for the theme specific javascript resources. If spaceKey is null or invalid, the globally configured theme resources are returned.

Specified by:
getThemeJsResources in interface ConfluenceWebResourceManager

getResourceTags

public String getResourceTags(String resourceName)
Specified by:
getResourceTags in interface com.atlassian.plugin.webresource.WebResourceManager
Overrides:
getResourceTags in class com.atlassian.plugin.webresource.WebResourceManagerImpl

getResourceTagsForAdditionalContextsHtml

public String getResourceTagsForAdditionalContextsHtml(List<String> contexts)
Description copied from interface: ConfluenceWebResourceManager
Get the resource tags that would be necessary for the supplied List of extra contexts. That is, return the resource tags for these requested contexts but exclude any contexts that have already been required (ConfluenceWebResourceManager.requireResourcesForContext(String)).

A typical use for this would be to store the resources to be loaded if you want to dynamically add a new context to a rendered page. For example, you might want to dynamically load the Editor (therefore the 'editor' context) from a 'viewpage' context and this method will let you store the resources required on the page as it is rendered in its original state.

Specified by:
getResourceTagsForAdditionalContextsHtml in interface ConfluenceWebResourceManager
Parameters:
contexts - the extra contexts to return resource tags for
Returns:
the HTML tags for the required extra resources (an empty String if there are none required)

requireResource

public void requireResource(String resourceName)
Wraps the parent method to provide logging.

Specified by:
requireResource in interface com.atlassian.plugin.webresource.WebResourceManager
Overrides:
requireResource in class com.atlassian.plugin.webresource.WebResourceManagerImpl

getGlobalCssResourcePrefix

public String getGlobalCssResourcePrefix()
Description copied from interface: ConfluenceWebResourceManager
Get the resource prefix for the global CSS file. This prefix should be updated every time there is a change to the global theme or colour scheme.

Specified by:
getGlobalCssResourcePrefix in interface ConfluenceWebResourceManager

getSpaceCssPrefix

public String getSpaceCssPrefix(String spaceKey)
Description copied from interface: ConfluenceWebResourceManager
Get the resource prefix for a particular space's CSS file. This prefix should be updated every time there is a change to the space's theme or colour scheme.

Specified by:
getSpaceCssPrefix in interface ConfluenceWebResourceManager
Parameters:
spaceKey - the key of the space we're viewing the CSS for, or null for the global CSS.

getResourceContent

public String getResourceContent(String resourceName)
Description copied from interface: ConfluenceWebResourceManager
Gets the content of a resource specified.

Specified by:
getResourceContent in interface ConfluenceWebResourceManager
Parameters:
resourceName - The fully qualified plugin name and resource to include (eg confluence.web.resources:legacy-styles)
Returns:
the content of the resource

putMetadata

public boolean putMetadata(String key,
                           String value)
Description copied from interface: ConfluenceWebResourceManager
Adds key-value String pairs to a map to be rendered later.

Specified by:
putMetadata in interface ConfluenceWebResourceManager
Parameters:
key - a unique key to store the value against
value - an HTML-safe string
Returns:
true if metadata added to map successfully

getMetadata

public Map<String,String> getMetadata()
Description copied from interface: ConfluenceWebResourceManager
Returns the map of key-value pairs added via ConfluenceWebResourceManager.putMetadata(String, String). Should report an error if called more than once in a request.

Specified by:
getMetadata in interface ConfluenceWebResourceManager

getAdminCssResources

public String getAdminCssResources()
Specified by:
getAdminCssResources in interface ConfluenceWebResourceManager
Returns:
the CSS for the admin pages. This should not include any custom/dangerous/user configured CSS

getEditorCssResources

public String getEditorCssResources(String spaceKey)
Specified by:
getEditorCssResources in interface ConfluenceWebResourceManager
Parameters:
spaceKey - space key to allow custom styling. Can be null to use global configured theme.
Returns:
link tags for all the CSS used by the editor iframe.


Copyright © 2003-2012 Atlassian. All Rights Reserved.