Class ResourceManager


  • public class ResourceManager
    extends Object
    This class is used to lookup ResourceInfo instances and cache any that are successfully looked up to reduce the computational overhead with the scanning/version checking.
    Since:
    2.0
    • Method Detail

      • findResource

        public ResourceInfo findResource​(String libraryName,
                                         String resourceName,
                                         String contentType,
                                         FacesContext ctx)

        Attempt to lookup a ResourceInfo based on the specified libraryName and resourceName

        Implementation Note: Synchronization is necessary when looking up compressed resources. This ensures the atomicity of the content being compressed. As such, the cost of doing this is low as once the resource is in the cache, the lookup won't be performed again until the cache is cleared. That said, it's not a good idea to have caching disabled in a production environment if leveraging compression. If the resource isn't compressable, then we don't worry about creating a few extra copies of ResourceInfo until the cache is populated.

        Parameters:
        libraryName - the name of the library (if any)
        resourceName - the name of the resource
        contentType - the content type of the resource. This will be used to determine if the resource is compressable
        ctx - the FacesContext for the current request
        Returns:
        a ResourceInfo if a resource if found matching the provided arguments, otherwise, return null