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
An interceptor for the
StreamableResourceSource
service that handles caching of content.-
Field Summary
Fields inherited from class org.apache.tapestry5.internal.services.assets.DelegatingSRS
delegate
-
Constructor Summary
ConstructorsConstructorDescriptionSRSCachingInterceptor
(StreamableResourceSource delegate, ResourceChangeTracker tracker) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
enableCache
(StreamableResourceProcessing processing) Returns true unless the processing isStreamableResourceProcessing.FOR_AGGREGATION
.getStreamableResource
(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 boolean
isCacheable
(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 Details
-
SRSCachingInterceptor
-
-
Method Details
-
getStreamableResource
public StreamableResource getStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies) throws IOException Description copied from interface:StreamableResourceSource
Converts a Resource (which must be non-null and exist) into a streamable resource, along with some additional optional behaviors.- Specified by:
getStreamableResource
in interfaceStreamableResourceSource
- Overrides:
getStreamableResource
in classDelegatingSRS
- Parameters:
baseResource
- the resource to convertprocessing
- defines additional processing after the resource has been read and possibly transformeddependencies
- Passed to anyResourceTransformer
to 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
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
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
-