Package org.apache.http.impl.nio.codecs
Class ChunkDecoder
java.lang.Object
org.apache.http.impl.nio.codecs.AbstractContentDecoder
org.apache.http.impl.nio.codecs.ChunkDecoder
- All Implemented Interfaces:
ContentDecoder
Implements chunked transfer coding. The content is received in small chunks.
Entities transferred using this encoder can be of unlimited length.
- Since:
- 4.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate long
private static final int
private final MessageConstraints
private boolean
private boolean
private Header[]
private CharArrayBuffer
private long
private static final int
private static final int
private int
private final List
<CharArrayBuffer> Fields inherited from class org.apache.http.impl.nio.codecs.AbstractContentDecoder
buffer, channel, completed, metrics
-
Constructor Summary
ConstructorsConstructorDescriptionChunkDecoder
(ReadableByteChannel channel, SessionInputBuffer buffer, MessageConstraints constraints, HttpTransportMetricsImpl metrics) ChunkDecoder
(ReadableByteChannel channel, SessionInputBuffer buffer, HttpTransportMetricsImpl metrics) -
Method Summary
Modifier and TypeMethodDescriptionHeader[]
private void
private void
int
read
(ByteBuffer dst) Reads a portion of content from the underlying channelprivate void
toString()
Methods inherited from class org.apache.http.impl.nio.codecs.AbstractContentDecoder
fillBufferFromChannel, isCompleted, readFromChannel, readFromChannel, setCompleted, setCompleted
-
Field Details
-
READ_CONTENT
private static final int READ_CONTENT- See Also:
-
READ_FOOTERS
private static final int READ_FOOTERS- See Also:
-
COMPLETED
private static final int COMPLETED- See Also:
-
state
private int state -
endOfChunk
private boolean endOfChunk -
endOfStream
private boolean endOfStream -
lineBuf
-
chunkSize
private long chunkSize -
pos
private long pos -
constraints
-
trailerBufs
-
-
Constructor Details
-
ChunkDecoder
public ChunkDecoder(ReadableByteChannel channel, SessionInputBuffer buffer, MessageConstraints constraints, HttpTransportMetricsImpl metrics) - Since:
- 4.4
-
ChunkDecoder
public ChunkDecoder(ReadableByteChannel channel, SessionInputBuffer buffer, HttpTransportMetricsImpl metrics)
-
-
Method Details
-
readChunkHead
- Throws:
IOException
-
parseHeader
- Throws:
IOException
-
read
Description copied from interface:ContentDecoder
Reads a portion of content from the underlying channel- Parameters:
dst
- The buffer into which entity content is to be transferred- Returns:
- The number of bytes read, possibly zero, or -1 if the channel has reached end-of-stream
- Throws:
IOException
- if I/O error occurs while reading content
-
toString
-