Class Overview
Content encoder that cuts off after a defined number of bytes. This class
is used to send content of HTTP messages where the end of the content entity
is determined by the value of the Content-Length header
.
Entities transferred using this stream can be maximum MAX_VALUE
long.
This decoder is optimized to transfer data directly from
a FileChannel
to the underlying I/O session's channel whenever
possible avoiding intermediate buffering in the session buffer.
Summary
Public Methods |
String
|
toString()
|
long
|
transfer(FileChannel src, long position, long count)
Transfers a portion of entity content from the given file channel
to the underlying network channel.
|
int
|
write(ByteBuffer src)
Writes a portion of entity content to the underlying channel.
|
Public Constructors
Public Methods
public
long
transfer
(FileChannel src, long position, long count)
Transfers a portion of entity content from the given file channel
to the underlying network channel.
Parameters
src
| the source FileChannel to transfer data from. |
position
| The position within the file at which the transfer is to begin;
must be non-negative |
count
| The maximum number of bytes to be transferred; must be
non-negative |
Returns
- The number of bytes, possibly zero,
that were actually transferred
public
int
write
(ByteBuffer src)
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