# Class CacheRequest

java.lang.Object
java.net.CacheRequest

public abstract class CacheRequest extends Object
Represents channels for storing resources in the ResponseCache. Instances of such a class provide an OutputStream object which is called by protocol handlers to store the resource data into the cache, and also an abort() method which allows a cache store operation to be interrupted and abandoned. If an IOException is encountered while reading the response or writing to the cache, the current cache store operation will be aborted.

Since:
  1.5

## Constructor Summary

Constructors
Constructor
Description
`CacheRequest()`
Constructor for subclasses to call.

## Method Summary

Modifier and Type
Method
Description
`abstract void`
`abort()`
Aborts the attempt to cache the response.
`abstract OutputStream`
`getBody()`
Returns an OutputStream to which the response body can be written.

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`boolean`
`equals(Object obj)`
Indicates whether some other object is "equal to" this one.
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`String`
`toString()`
Returns a string representation of the object.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### CacheRequest

public CacheRequest()
Constructor for subclasses to call.

## Method Details

### getBody

public abstract OutputStream getBody() throws IOException
Returns an OutputStream to which the response body can be written.

Returns:
  an OutputStream to which the response body can be written
Throws:
  `IOException` - if an I/O error occurs while writing the response body

### abort

public abstract void abort()
Aborts the attempt to cache the response. If an IOException is encountered while reading the response or writing to the cache, the current cache store operation will be abandoned.