org.apache.http.client.cache

## Interface ResourceFactory

- All Known Implementing Classes:
    FileResourceFactory, HeapResourceFactory

      public interface ResourceFactory

  Generates `Resource` instances for handling cached HTTP response bodies.
  Since:
    4.1

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Resource` | `copy(String requestId, Resource resource)` Clones an existing `Resource`.
    `Resource` | `generate(String requestId, InputStream inStream, InputLimit limit)` Creates a `Resource` from a given response body.

- - ### Method Detail

    - #### generate

          Resource generate(String requestId,
                          InputStream inStream,
                          InputLimit limit)
                            throws IOException

      Creates a `Resource` from a given response body.
      Parameters:
        `requestId` - a unique identifier for this particular response body
        `inStream` - the original `InputStream` containing the response body of the origin HTTP response.
        `limit` - maximum number of bytes to consume of the response body; if this limit is reached before the response body is fully consumed, mark the limit has having been reached and return a `Resource` containing the data read to that point.
      Returns:
        a `Resource` containing however much of the response body was successfully read.
      Throws:
        `IOException`

    - #### copy

          Resource copy(String requestId,
                      Resource resource)
                        throws IOException

      Clones an existing `Resource`.
      Parameters:
        `requestId` - unique identifier provided to associate with the cloned response body.
        `resource` - the original response body to clone.
      Returns:
        the `Resource` copy
      Throws:
        `IOException`

Copyright © 1999–2022 The Apache Software Foundation. All rights reserved.