org.apache.http.nio.util

## Interface ContentInputBuffer

All Known Implementing Classes:
  SharedInputBuffer, SimpleInputBuffer

    public interface ContentInputBuffer

Generic content input buffer.

Since:
  4.0

### Method Summary

Methods
`int` `consumeContent(ContentDecoder decoder)` Deprecated. (4.3) use implementation specific methods.
`int` `read()` Reads one byte from this buffer.
`int` `read(byte[] b, int off, int len)` Reads up to `len` bytes of data from this buffer into an array of bytes.
`void` `reset()` Resets the buffer by clearing its state and stored content.

### Method Detail

#### consumeContent

    @Deprecated
    int consumeContent(ContentDecoder decoder)
                       throws IOException

Deprecated. (4.3) use implementation specific methods.
Reads content from the given `ContentDecoder` and stores it in this buffer.

Parameters:
  `decoder` - the content decoder.
Returns:
  number of bytes read.
Throws:
  `IOException` - in case of an I/O error.

#### reset

    void reset()

Resets the buffer by clearing its state and stored content.

#### read

    int read(byte[] b,
           int off,
           int len)
             throws IOException

Reads up to `len` bytes of data from this buffer into an array of bytes. The exact number of bytes read depends how many bytes are stored in the buffer.

If `off` is negative, or `len` is negative, or `off+len` is greater than the length of the array `b`, this method can throw a runtime exception. The exact type of runtime exception thrown by this method depends on implementation. This method returns `-1` if the end of content stream has been reached.

Parameters:
  `b` - the buffer into which the data is read.
  `off` - the start offset in array `b` at which the data is written.
  `len` - the maximum number of bytes to read.
Returns:
  the total number of bytes read into the buffer, or `-1` if there is no more data because the end of the stream has been reached.
Throws:
  `IOException` - if an I/O error occurs.

#### read

    int read()
             throws IOException

Reads one byte from this buffer. If the buffer is empty this method can throw a runtime exception. The exact type of runtime exception thrown by this method depends on implementation. This method returns `-1` if the end of content stream has been reached.

Returns:
  one byte
Throws:
  `IOException`