Class 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.
    • Constructor Detail

      • 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 Detail

      • 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,
                                                                                               org.apache.commons.collections.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 process
        config - Configured properties for the resource loader
        Returns:
        final resource loader instance to be used at runtime. Must not be null.