Class ConfluenceVelocityResourceManager
java.lang.Object
com.atlassian.confluence.velocity.ConfigurableResourceManager
com.atlassian.confluence.util.velocity.ConfluenceVelocityResourceManager
- All Implemented Interfaces:
org.apache.velocity.runtime.resource.ResourceManager
- Direct Known Subclasses:
CompatibleVelocityResourceManager
Specialisation that allows for a hot swappable ResourceCache. Also allows resource loaders to be configured
as source of space decoration resources via the decorator.provider boolean property. Any resource loader
not configured to be a space decorator provider will be wrapped and answer null for space decoration resources.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classThis factory will return template that can be used to detect the presence of HTML in the template if requiredNested classes/interfaces inherited from class com.atlassian.confluence.velocity.ConfigurableResourceManager
ConfigurableResourceManager.ResourceFactory -
Field Summary
Fields inherited from class com.atlassian.confluence.velocity.ConfigurableResourceManager
globalCache, log, RESOURCE_CONTENT, RESOURCE_TEMPLATE, resourceLoaders, rsvc -
Constructor Summary
ConstructorsConstructorDescriptionEverytime this is called, the resource manager singleton is replaced with the newly provided instance. -
Method Summary
Modifier and TypeMethodDescriptionTemplate method for provisioning aConfigurableResourceManager.ResourceFactory.voidinitialize(org.apache.velocity.runtime.RuntimeServices runtimeServices) Initialize the ResourceManager.protected org.apache.velocity.runtime.resource.loader.ResourceLoaderpostProcessLoader(org.apache.velocity.runtime.resource.loader.ResourceLoader loader, org.apache.commons.collections.ExtendedProperties config) Template method to allow subclasses to post process and possibly wrap a resource loader before it is added to the loader list.static voidsetCacheFactory(com.atlassian.cache.CacheFactory cacheFactory) static voidsetCacheFactory(com.atlassian.vcache.VCacheFactory cacheFactory) Deprecated.Methods inherited from class com.atlassian.confluence.velocity.ConfigurableResourceManager
getLoaderNameForResource, getResource, loadResource, refreshResource
-
Constructor Details
-
ConfluenceVelocityResourceManager
public ConfluenceVelocityResourceManager()Everytime this is called, the resource manager singleton is replaced with the newly provided instance. There should only ever be one of these created but as we don't have control over the creating code (Struts velocity manager), we can't enforce singleton use via a factory method.
-
-
Method Details
-
setCacheFactory
public static void setCacheFactory(com.atlassian.cache.CacheFactory cacheFactory) -
setCacheFactory
Deprecated.since 7.20 usesetCacheFactory(CacheFactory) -
initialize
public void initialize(org.apache.velocity.runtime.RuntimeServices runtimeServices) throws Exception Description copied from class:ConfigurableResourceManagerInitialize the ResourceManager.- Specified by:
initializein interfaceorg.apache.velocity.runtime.resource.ResourceManager- Overrides:
initializein classConfigurableResourceManager- Parameters:
runtimeServices- The Runtime Services object which is associated with this Resource Manager.- Throws:
Exception
-
postProcessLoader
protected org.apache.velocity.runtime.resource.loader.ResourceLoader postProcessLoader(org.apache.velocity.runtime.resource.loader.ResourceLoader loader, org.apache.commons.collections.ExtendedProperties config) Description copied from class:ConfigurableResourceManagerTemplate method to allow subclasses to post process and possibly wrap a resource loader before it is added to the loader list. This implementation does nothing.- Overrides:
postProcessLoaderin classConfigurableResourceManager- Parameters:
loader- Resource loader to processconfig- Configured properties for the resource loader- Returns:
- final resource loader instance to be used at runtime. Must not be null.
-
getResourceFactory
Description copied from class:ConfigurableResourceManagerTemplate method for provisioning a
ConfigurableResourceManager.ResourceFactory. Subclasses may customise this factory where necessary.This implementation returns a strategy that delegates to the default Velocity resource factory methods.
- Overrides:
getResourceFactoryin classConfigurableResourceManager- Returns:
- resource factory to use for this resource manager
- See Also:
-
ConfigurableResourceManager.DefaultResourceFactory
-
setCacheFactory(CacheFactory)