com.atlassian.confluence.util.velocity
Class ConfluenceVelocityResourceManager
java.lang.Object
com.atlassian.confluence.util.velocity.ConfigurableResourceManager
com.atlassian.confluence.util.velocity.ConfluenceVelocityResourceManager
- All Implemented Interfaces:
- org.apache.velocity.runtime.resource.ResourceManager
- Direct Known Subclasses:
- CompatibleVelocityResourceManager
public class ConfluenceVelocityResourceManager
- extends ConfigurableResourceManager
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.
Field Summary |
protected static org.apache.log4j.Category |
log
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
log
protected static final org.apache.log4j.Category log
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
(WebWork velocity manager), we can't enforce singleton use via a factory method.
setCacheFactory
public static void setCacheFactory(com.atlassian.cache.CacheFactory cacheFactory)
initialize
public void initialize(org.apache.velocity.runtime.RuntimeServices runtimeServices)
throws Exception
- Description copied from class:
ConfigurableResourceManager
- Initialize the ResourceManager.
- Specified by:
initialize
in interface org.apache.velocity.runtime.resource.ResourceManager
- Overrides:
initialize
in class ConfigurableResourceManager
- 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,
ExtendedProperties config)
- Description copied from class:
ConfigurableResourceManager
- Template 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:
postProcessLoader
in class ConfigurableResourceManager
- 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
protected ConfigurableResourceManager.ResourceFactory getResourceFactory()
- Description copied from class:
ConfigurableResourceManager
Template 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:
getResourceFactory
in class ConfigurableResourceManager
- Returns:
- resource factory to use for this resource manager
- See Also:
ConfigurableResourceManager.DefaultResourceFactory