org.apache.hc.core5.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

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `complete(List<? extends Header> trailers)` 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(List<? extends Header> trailers)
                 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.

Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.