Class SRSCachingInterceptor
- java.lang.Object
 - 
- org.apache.tapestry5.internal.services.assets.DelegatingSRS
 - 
- org.apache.tapestry5.internal.services.assets.SRSCachingInterceptor
 
 
 
- 
- All Implemented Interfaces:
 StreamableResourceSource
- Direct Known Subclasses:
 SRSCompressedCachingInterceptor
public class SRSCachingInterceptor extends DelegatingSRS
An interceptor for theStreamableResourceSourceservice that handles caching of content. 
- 
- 
Field Summary
- 
Fields inherited from class org.apache.tapestry5.internal.services.assets.DelegatingSRS
delegate 
 - 
 
- 
Constructor Summary
Constructors Constructor Description SRSCachingInterceptor(StreamableResourceSource delegate, ResourceChangeTracker tracker) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanenableCache(StreamableResourceProcessing processing)Returns true unless the processing isStreamableResourceProcessing.FOR_AGGREGATION.StreamableResourcegetStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies)Converts a Resource (which must be non-null and exist) into a streamable resource, along with some additional optional behaviors.protected booleanisCacheable(StreamableResource resource)Always returns true; a subclass may extend this to only cache the resource in some circumstances.- 
Methods inherited from class org.apache.tapestry5.internal.services.assets.DelegatingSRS
fileExtensionsForContentType 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
SRSCachingInterceptor
public SRSCachingInterceptor(StreamableResourceSource delegate, ResourceChangeTracker tracker)
 
 - 
 
- 
Method Detail
- 
getStreamableResource
public StreamableResource getStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies) throws IOException
Description copied from interface:StreamableResourceSourceConverts a Resource (which must be non-null and exist) into a streamable resource, along with some additional optional behaviors.- Specified by:
 getStreamableResourcein interfaceStreamableResourceSource- Overrides:
 getStreamableResourcein classDelegatingSRS- Parameters:
 baseResource- the resource to convertprocessing- defines additional processing after the resource has been read and possibly transformeddependencies- Passed to anyResourceTransformerto track additional dependencies of the base resource- Returns:
 - the contents of the Resource, possibly transformed, in a streamable format.
 - Throws:
 IOException- if the resource does not exist or a URL for the content is not available
 
- 
isCacheable
protected boolean isCacheable(StreamableResource resource)
Always returns true; a subclass may extend this to only cache the resource in some circumstances.- Parameters:
 resource-- Returns:
 - true to cache the resource
 
 
- 
enableCache
protected boolean enableCache(StreamableResourceProcessing processing)
Returns true unless the processing isStreamableResourceProcessing.FOR_AGGREGATION. Subclasses may override. When the cache is not enabled, the request is passed on to the interceptor'sDelegatingSRS.delegate, and no attempt is made to read or update this interceptor's cache.- Since:
 - 5.3.5
 
 
 - 
 
 -