java.lang.Object
com.sun.faces.application.resource.ResourceManager
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
-
Constructor Summary
ConstructorDescriptionResourceManager
(ResourceCache cache) ResourceManager
(Map<String, Object> appMap, ResourceCache cache) Constructs a newResourceManager
. -
Method Summary
Modifier and TypeMethodDescriptionfindResource
(String libraryName, String resourceName, String contentType, boolean isViewResource, FacesContext ctx) findResource
(String libraryName, String resourceName, String contentType, FacesContext ctx) findViewResource
(String resourceName, String contentType, FacesContext facesContext) getViewResources
(FacesContext facesContext, String path, int maxDepth, ResourceVisitOption... options) boolean
isContractsResource
(String path)
-
Constructor Details
-
ResourceManager
-
ResourceManager
Constructs a newResourceManager
. Note: if the currentProjectStage
isProjectStage.Development
caching orResourceInfo
instances will not occur.- Parameters:
appMap
- the application mapcache
- the resource cache
-
-
Method Details
-
findResource
public ResourceInfo findResource(String libraryName, String resourceName, String contentType, FacesContext ctx) Attempt to lookup a
ResourceInfo
based on the specifiedlibraryName
andresourceName
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 resourcecontentType
- the content type of the resource. This will be used to determine if the resource is compressablectx
- theFacesContext
for the current request- Returns:
- a
ResourceInfo
if a resource if found matching the provided arguments, otherwise, returnnull
-
findViewResource
public ResourceInfo findViewResource(String resourceName, String contentType, FacesContext facesContext) -
findResource
public ResourceInfo findResource(String libraryName, String resourceName, String contentType, boolean isViewResource, FacesContext ctx) -
getViewResources
public Stream<String> getViewResources(FacesContext facesContext, String path, int maxDepth, ResourceVisitOption... options) -
getBaseContractsPath
-
isContractsResource
-