Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.http.impl.nio.codecs
Class AbstractContentDecoder

    java.lang.Object
      org.apache.http.impl.nio.codecs.AbstractContentDecoder

All Implemented Interfaces:
  ContentDecoder

Direct Known Subclasses:
  ChunkDecoder, IdentityDecoder, LengthDelimitedDecoder

    public abstract class AbstractContentDecoder

extends Object
implements ContentDecoder

Abstract `ContentDecoder` that serves as a base for all content decoder implementations.

Since:
  4.0

Field Summary
`protected SessionInputBuffer` | `buffer`
`protected ReadableByteChannel` | `channel`
`protected boolean` | `completed`
`protected HttpTransportMetricsImpl` | `metrics`

Constructor Summary
`AbstractContentDecoder(ReadableByteChannel channel, SessionInputBuffer buffer, HttpTransportMetricsImpl metrics)` Creates an instance of this class.

Method Summary
`protected int` | `fillBufferFromChannel()` Reads from the channel to the session buffer.
`boolean` | `isCompleted()` Returns `true` if the entity has been received in its entirety.
`protected int` | `readFromChannel(ByteBuffer dst)` Reads from the channel to the destination.
`protected int` | `readFromChannel(ByteBuffer dst, int limit)` Reads from the channel to the destination.
`protected void` | `setCompleted()` Sets the completed status of this decoder to true.
`void` | `setCompleted(boolean completed)` Sets the completed status of this decoder.

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.nio.ContentDecoder
`read`

Field Detail

### channel

    protected final ReadableByteChannel channel

### buffer

    protected final SessionInputBuffer buffer

### metrics

    protected final HttpTransportMetricsImpl metrics

### completed

    protected boolean completed

Constructor Detail

### AbstractContentDecoder

    public AbstractContentDecoder(ReadableByteChannel channel,
                                  SessionInputBuffer buffer,
                                  HttpTransportMetricsImpl metrics)

  Creates an instance of this class.

  Parameters:
    `channel` - the source channel.
    `buffer` - the session input buffer that can be used to store session data for intermediate processing.
    `metrics` - Transport metrics of the underlying HTTP transport.

Method Detail

### isCompleted

    public boolean isCompleted()

  Description copied from interface: `ContentDecoder`
  Returns `true` if the entity has been received in its entirety.

  Specified by:
    `isCompleted` in interface `ContentDecoder`
  Returns:
    `true` if all the content has been consumed, `false` otherwise.

### setCompleted

    public void setCompleted(boolean completed)

  Sets the completed status of this decoder. Normally this is not necessary (the decoder will automatically complete when the underlying channel returns EOF). It is useful to mark the decoder as completed if you have some other means to know all the necessary data has been read and want to reuse the underlying connection for more messages.

  Parameters:
    `completed` - the completed status of this decoder.
  Since:
    4.4.11

### setCompleted

    protected void setCompleted()

  Sets the completed status of this decoder to true. Normally this is not necessary (the decoder will automatically complete when the underlying channel returns EOF). It is useful to mark the decoder as completed if you have some other means to know all the necessary data has been read and want to reuse the underlying connection for more messages.

  Since:
    4.4.11

### readFromChannel

    protected int readFromChannel(ByteBuffer dst)
                           throws IOException

  Reads from the channel to the destination.

  Parameters:
    `dst` - destination.
  Returns:
    number of bytes transferred.
  Throws:
    `IOException`
  Since:
    4.3

### fillBufferFromChannel

    protected int fillBufferFromChannel()
                                 throws IOException

  Reads from the channel to the session buffer.

  Returns:
    number of bytes transferred.
  Throws:
    `IOException`
  Since:
    4.3

### readFromChannel

    protected int readFromChannel(ByteBuffer dst,
                                  int limit)
                           throws IOException

  Reads from the channel to the destination.

  Parameters:
    `dst` - destination.
    `limit` - max number of bytes to transfer.
  Returns:
    number of bytes transferred.
  Throws:
    `IOException`
  Since:
    4.3

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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