org.apache.http.nio.entity

## Class BufferingNHttpEntity

- java.lang.Object
- - org.apache.http.entity.HttpEntityWrapper
  - - org.apache.http.nio.entity.BufferingNHttpEntity

All Implemented Interfaces:
  HttpEntity, ConsumingNHttpEntity

Deprecated.
use (4.2) `BasicAsyncRequestProducer` or `BasicAsyncResponseProducer`

    @NotThreadSafe
    @Deprecated
    public class BufferingNHttpEntity
    extends HttpEntityWrapper
    implements ConsumingNHttpEntity

A `ConsumingNHttpEntity` that consumes content into a buffer. The content can be retrieved as an InputStream via `HttpEntity.getContent()`, or written to an output stream via `HttpEntity.writeTo(OutputStream)`.

Since:
  4.0

### Field Summary

### Fields inherited from class org.apache.http.entity.HttpEntityWrapper

`wrappedEntity`

### Constructor Summary

Constructors
Constructor and Description
`BufferingNHttpEntity(HttpEntity httpEntity, ByteBufferAllocator allocator)` Deprecated.

### Method Summary

Methods
`void` `consumeContent(ContentDecoder decoder, IOControl ioctrl)` Deprecated. Notification that content is available to be read from the decoder.
`void` `finish()` Deprecated. Notification that any resources allocated for reading can be released.
`InputStream` `getContent()` Deprecated. Obtains entity's content as `InputStream`.
`boolean` `isRepeatable()` Deprecated. Tells if the entity is capable of producing its data more than once.
`boolean` `isStreaming()` Deprecated. Tells whether this entity depends on an underlying stream.
`void` `writeTo(OutputStream outstream)` Deprecated. Writes the entity content out to the output stream.

### Methods inherited from class org.apache.http.entity.HttpEntityWrapper

`consumeContent, getContentEncoding, getContentLength, getContentType, isChunked`

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

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

### Methods inherited from interface org.apache.http.HttpEntity

`consumeContent, getContentEncoding, getContentLength, getContentType, isChunked`

### Constructor Detail

#### BufferingNHttpEntity

    public BufferingNHttpEntity(HttpEntity httpEntity,
                        ByteBufferAllocator allocator)

Deprecated.

### Method Detail

#### consumeContent

    public void consumeContent(ContentDecoder decoder,
                      IOControl ioctrl)
                        throws IOException

Deprecated.
Description copied from interface: `ConsumingNHttpEntity`
Notification that content is available to be read from the decoder. `IOControl` instance passed as a parameter to the method can be used to suspend input events if the entity is temporarily unable to allocate more storage to accommodate all incoming content.

Specified by:
  `consumeContent` in interface `ConsumingNHttpEntity`
Parameters:
  `decoder` - content decoder.
  `ioctrl` - I/O control of the underlying connection.
Throws:
  `IOException`

#### finish

    public void finish()

Deprecated.
Description copied from interface: `ConsumingNHttpEntity`
Notification that any resources allocated for reading can be released.

Specified by:
  `finish` in interface `ConsumingNHttpEntity`

#### getContent

    public InputStream getContent()
                           throws IOException

Deprecated.
Obtains entity's content as `InputStream`.

Specified by:
  `getContent` in interface `HttpEntity`
Overrides:
  `getContent` in class `HttpEntityWrapper`
Returns:
  content stream of the entity.
Throws:
  `IllegalStateException` - if content of the entity has not been fully received or has already been consumed.
  `IOException` - if the stream could not be created
See Also:
  `HttpEntity.isRepeatable()`

#### isRepeatable

    public boolean isRepeatable()

Deprecated.
Description copied from interface: `HttpEntity`
Tells if the entity is capable of producing its data more than once. A repeatable entity's getContent() and writeTo(OutputStream) methods can be called more than once whereas a non-repeatable entity's can not.

Specified by:
  `isRepeatable` in interface `HttpEntity`
Overrides:
  `isRepeatable` in class `HttpEntityWrapper`
Returns:
  true if the entity is repeatable, false otherwise.

#### isStreaming

    public boolean isStreaming()

Deprecated.
Description copied from interface: `HttpEntity`
Tells whether this entity depends on an underlying stream. Streamed entities that read data directly from the socket should return `true`. Self-contained entities should return `false`. Wrapping entities should delegate this call to the wrapped entity.

Specified by:
  `isStreaming` in interface `HttpEntity`
Overrides:
  `isStreaming` in class `HttpEntityWrapper`
Returns:
  `true` if the entity content is streamed, `false` otherwise

#### writeTo

    public void writeTo(OutputStream outstream)
                 throws IOException

Deprecated.
Description copied from interface: `HttpEntity`
Writes the entity content out to the output stream.

IMPORTANT: Please note all entity implementations must ensure that all allocated resources are properly deallocated when this method returns.

Specified by:
  `writeTo` in interface `HttpEntity`
Overrides:
  `writeTo` in class `HttpEntityWrapper`
Parameters:
  `outstream` - the output stream to write entity content to
Throws:
  `IOException` - if an I/O error occurs