public abstract class AbstractContentDecoder extends Object implements ContentDecoder
ContentDecoder
that serves as a base for all content
decoder implementations.Modifier and Type | Field and Description |
---|---|
protected boolean |
completed |
Constructor and Description |
---|
AbstractContentDecoder(ReadableByteChannel channel,
SessionInputBuffer buffer,
BasicHttpTransportMetrics metrics)
Creates an instance of this class.
|
Modifier and Type | Method and Description |
---|---|
protected SessionInputBuffer |
buffer() |
protected ReadableByteChannel |
channel() |
protected int |
fillBufferFromChannel()
Reads from the channel to the session buffer.
|
List<? extends Header> |
getTrailers()
Returns content trailers if available
|
boolean |
isCompleted()
Returns
true if the entity has been received in its
entirety. |
protected BasicHttpTransportMetrics |
metrics() |
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.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
read
public AbstractContentDecoder(ReadableByteChannel channel, SessionInputBuffer buffer, BasicHttpTransportMetrics metrics)
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.protected ReadableByteChannel channel()
protected SessionInputBuffer buffer()
protected BasicHttpTransportMetrics metrics()
public boolean isCompleted()
ContentDecoder
true
if the entity has been received in its
entirety.isCompleted
in interface ContentDecoder
true
if all the content has been consumed,
false
otherwise.public void setCompleted(boolean completed)
completed
- the completed status of this decoder.protected void setCompleted()
protected int readFromChannel(ByteBuffer dst) throws IOException
dst
- destination.IOException
- If an I/O error occurs.protected int fillBufferFromChannel() throws IOException
-1
if the channel has reached end-of-stream.IOException
- If an I/O error occurs.protected int readFromChannel(ByteBuffer dst, int limit) throws IOException
dst
- destination.limit
- max number of bytes to transfer.-1
if the channel has reached end-of-stream.IOException
- If an I/O error occurs.public List<? extends Header> getTrailers()
ContentDecoder
getTrailers
in interface ContentDecoder
Copyright © 2005–2021 The Apache Software Foundation. All rights reserved.