Class Resource

java.lang.Object
org.apache.hc.client5.http.cache.Resource
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
FileResource, HeapResource

@Contract(threading=SAFE) public abstract class Resource extends Object implements Serializable
Represents a disposable system resource used for handling cached response bodies.

Implementations of this interface are expected to be threading-safe.

Since:
4.1
See Also:
  • Constructor Details

    • Resource

      public Resource()
  • Method Details

    • getInputStream

      public InputStream getInputStream() throws ResourceIOException
      Returns resource content as an InputStream.
      Throws:
      ResourceIOException
    • get

      public abstract byte[] get() throws ResourceIOException
      Returns resource content as a byte array.

      Please note for memory efficiency some resource implementations may return a reference to the underlying byte array. The returned value should be treated as immutable.

      Throws:
      ResourceIOException
      Since:
      5.0
    • length

      public abstract long length()
      Returns the length in bytes of the response body.
    • dispose

      public abstract void dispose()
      Indicates the system no longer needs to keep this response body and any system resources associated with it may be reclaimed.