Interface ResourceStreamer
-
- All Known Implementing Classes:
ResourceStreamerImpl
public interface ResourceStreamer
Responsible for streaming the contents of a resource to the client. This is sometimes a simpleResource
(often from theModuleDispatcher
, or more frequently an asset represented as aStreamableResource
(viaAssetDispatcher
,AssetRequestHandler
, andStreamableResourceSource
). As of 5.4, the ResourceStreamer handles ETag support, as well as validation of the checksum (provided in the URL).- Since:
- 5.1.0.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
ResourceStreamer.Options
Used to customize the behavior ofstreamResource(org.apache.tapestry5.commons.Resource, java.lang.String, java.util.Set)
.
-
Field Summary
Fields Modifier and Type Field Description static java.util.Set<ResourceStreamer.Options>
DEFAULT_OPTIONS
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
streamResource(Resource resource, java.lang.String providedChecksum, java.util.Set<ResourceStreamer.Options> options)
Streams the content of the resource to the client (or sends an alternative response such asHttpServletResponse.SC_NOT_MODIFIED
).boolean
streamResource(StreamableResource resource, java.lang.String providedChecksum, java.util.Set<ResourceStreamer.Options> options)
Streams a resource that has been assembled elsewhere.
-
-
-
Field Detail
-
DEFAULT_OPTIONS
static final java.util.Set<ResourceStreamer.Options> DEFAULT_OPTIONS
-
-
Method Detail
-
streamResource
boolean streamResource(Resource resource, java.lang.String providedChecksum, java.util.Set<ResourceStreamer.Options> options) throws java.io.IOException
Streams the content of the resource to the client (or sends an alternative response such asHttpServletResponse.SC_NOT_MODIFIED
). Encapsulates logic for compression and for caching.- Parameters:
resource
- to streamprovidedChecksum
- checksum from URL (or null/blank to not validate against checksum, which is normal for modules)options
- enable or disable certain features- Throws:
java.io.IOException
- See Also:
StreamableResourceSource
-
streamResource
boolean streamResource(StreamableResource resource, java.lang.String providedChecksum, java.util.Set<ResourceStreamer.Options> options) throws java.io.IOException
Streams a resource that has been assembled elsewhere. The StreamableResource may reflect either a normal or a compressed stream, depending on the type of resource and the capabilities of the client.- Parameters:
resource
- content to streamprovidedChecksum
- checksum provided (in the URL) to validate against the StreamableResource.getChecksum() actual checksum} for the resource, may be null/blank to not validate against the checksumoptions
- enable or disable certain features- Returns:
- true if the request was handled (even if sending a
HttpServletResponse.SC_NOT_MODIFIED
response), or false if the request was not handled (because the provided checksum did not match the actual checksum). - Throws:
java.io.IOException
- Since:
- 5.4
-
-