org.apache.http.nio

## Interface ContentEncoder

All Known Subinterfaces:
  FileContentEncoder

All Known Implementing Classes:
  AbstractContentEncoder, ChunkEncoder, IdentityEncoder, LengthDelimitedEncoder

    public interface ContentEncoder

Abstract HTTP content encoder. HTTP content encoders can be used to apply the required coding transformation and write entity content to the underlying channel in small chunks.

Since:
  4.0

### Method Summary

Methods
`void` `complete()` Terminates the content stream.
`boolean` `isCompleted()` Returns `true` if the entity has been transferred in its entirety.
`int` `write(ByteBuffer src)` Writes a portion of entity content to the underlying channel.

### Method Detail

#### write

    int write(ByteBuffer src)
              throws IOException

Writes a portion of entity content to the underlying channel.

Parameters:
  `src` - The buffer from which content is to be retrieved
Returns:
  The number of bytes read, possibly zero
Throws:
  `IOException` - if I/O error occurs while writing content

#### complete

    void complete()
                  throws IOException

Terminates the content stream.

Throws:
  `IOException` - if I/O error occurs while writing content

#### isCompleted

    boolean isCompleted()

Returns `true` if the entity has been transferred in its entirety.

Returns:
  `true` if all the content has been produced, `false` otherwise.