public class SRSCachingInterceptor extends DelegatingSRS
StreamableResourceSource
service that handles caching of content.delegate
Constructor and Description |
---|
SRSCachingInterceptor(StreamableResourceSource delegate,
ResourceChangeTracker tracker) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
enableCache(StreamableResourceProcessing processing)
Returns true unless the processing is
StreamableResourceProcessing.FOR_AGGREGATION . |
StreamableResource |
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.
|
fileExtensionsForContentType
public SRSCachingInterceptor(StreamableResourceSource delegate, ResourceChangeTracker tracker)
public StreamableResource getStreamableResource(Resource baseResource, StreamableResourceProcessing processing, ResourceDependencies dependencies) throws IOException
StreamableResourceSource
getStreamableResource
in interface StreamableResourceSource
getStreamableResource
in class DelegatingSRS
baseResource
- the resource to convertprocessing
- defines additional processing after the resource has been read and possibly transformeddependencies
- Passed to any ResourceTransformer
to track additional dependencies of the base resourceIOException
- if the resource does not exist or a URL for the content is not availableprotected boolean isCacheable(StreamableResource resource)
resource
- protected boolean enableCache(StreamableResourceProcessing processing)
StreamableResourceProcessing.FOR_AGGREGATION
.
Subclasses may override. When the cache is not enabled, the request is passed on to the interceptor's
DelegatingSRS.delegate
, and no attempt is made to read or update this interceptor's cache.5.6.3 - Copyright © 2003-2021 The Apache Software Foundation.