Package org.apache.tapestry5.internal.services

## Class ResourceStreamerImpl

- java.lang.Object
- - org.apache.tapestry5.internal.services.ResourceStreamerImpl

- All Implemented Interfaces:
    `ResourceStreamer`

      public class ResourceStreamerImpl
      extends java.lang.Object
      implements ResourceStreamer

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.tapestry5.internal.services.ResourceStreamer

      `ResourceStreamer.Options`

  - ### Field Summary

    - ### Fields inherited from interface org.apache.tapestry5.internal.services.ResourceStreamer

      `DEFAULT_OPTIONS`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ResourceStreamerImpl​(Request request, Response response, StreamableResourceSource streamableResourceSource, OperationTracker tracker, boolean productionMode, ResourceChangeTracker resourceChangeTracker, java.lang.String omitExpirationCacheControlHeader, AssetFactory classpathAssetFactory, AssetFactory contextAssetFactory)` |

  - ### Method Summary

    All Methods Instance Methods Concrete 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 as `HttpServletResponse.SC_NOT_MODIFIED`).
    `boolean` | `streamResource​(Resource resource, StreamableResource streamable, java.lang.String providedChecksum, java.util.Set<ResourceStreamer.Options> options)` |
    `boolean` | `streamResource​(StreamableResource streamable, java.lang.String providedChecksum, java.util.Set<ResourceStreamer.Options> options)` | Streams a resource that has been assembled elsewhere.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ResourceStreamerImpl

          public ResourceStreamerImpl​(Request request,
                                      Response response,
                                      StreamableResourceSource streamableResourceSource,
                                      OperationTracker tracker,
                                      @Symbol("tapestry.production-mode")
                                      boolean productionMode,
                                      ResourceChangeTracker resourceChangeTracker,
                                      @Symbol("tapestry.omit-expiration-cache-control-header")
                                      java.lang.String omitExpirationCacheControlHeader,
                                      @InjectService("ClasspathAssetFactory")
                                      AssetFactory classpathAssetFactory,
                                      @InjectService("ContextAssetFactory")
                                      AssetFactory contextAssetFactory)

  - ### Method Detail

    - #### streamResource

          public boolean streamResource​(Resource resource,
                                        java.lang.String providedChecksum,
                                        java.util.Set<ResourceStreamer.Options> options)
                                 throws java.io.IOException

      Description copied from interface: `ResourceStreamer`
      Streams the content of the resource to the client (or sends an alternative response such as `HttpServletResponse.SC_NOT_MODIFIED`). Encapsulates logic for compression and for caching.
      Specified by:
        `streamResource` in interface `ResourceStreamer`
      Parameters:
        `resource` - to stream
        `providedChecksum` - 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

          public boolean streamResource​(StreamableResource streamable,
                                        java.lang.String providedChecksum,
                                        java.util.Set<ResourceStreamer.Options> options)
                                 throws java.io.IOException

      Description copied from interface: `ResourceStreamer`
      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.
      Specified by:
        `streamResource` in interface `ResourceStreamer`
      Parameters:
        `streamable` - content to stream
        `providedChecksum` - 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 checksum
        `options` - 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`

    - #### streamResource

          public boolean streamResource​(Resource resource,
                                        StreamableResource streamable,
                                        java.lang.String providedChecksum,
                                        java.util.Set<ResourceStreamer.Options> options)
                                 throws java.io.IOException

      Throws:
        `java.io.IOException`