public final class WebSocketChunkedInput extends java.lang.Object implements ChunkedInput<WebSocketFrame>
ChunkedInput that fetches data chunk by chunk for use with WebSocket chunked transfers.
Each chunk from the input data will be wrapped within a ContinuationWebSocketFrame.
At the end of the input data, ContinuationWebSocketFrame with finalFragment will be written.
| Modifier and Type | Field and Description |
|---|---|
private ChunkedInput<ByteBuf> |
input |
private int |
rsv |
| Constructor and Description |
|---|
WebSocketChunkedInput(ChunkedInput<ByteBuf> input)
Creates a new instance using the specified input.
|
WebSocketChunkedInput(ChunkedInput<ByteBuf> input,
int rsv)
Creates a new instance using the specified input.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Releases the resources associated with the input.
|
boolean |
isEndOfInput()
Return
true if and only if there is no data left in the stream
and the stream has reached at its end. |
long |
length()
Returns the length of the input.
|
long |
progress()
Returns current transfer progress.
|
WebSocketFrame |
readChunk(ByteBufAllocator allocator)
Fetches a chunked data from the stream.
|
WebSocketFrame |
readChunk(ChannelHandlerContext ctx)
Deprecated.
Use
readChunk(ByteBufAllocator).
Fetches a chunked data from the stream. Once this method returns the last chunk
and thus the stream has reached at its end, any subsequent isEndOfInput()
call must return true. |
private final ChunkedInput<ByteBuf> input
private final int rsv
public WebSocketChunkedInput(ChunkedInput<ByteBuf> input)
input - ChunkedInput containing data to writepublic WebSocketChunkedInput(ChunkedInput<ByteBuf> input, int rsv)
input - ChunkedInput containing data to writersv - RSV1, RSV2, RSV3 used for extensionsjava.lang.NullPointerException - if input is nullpublic boolean isEndOfInput()
throws java.lang.Exception
ChunkedInputtrue if and only if there is no data left in the stream
and the stream has reached at its end.isEndOfInput in interface ChunkedInput<WebSocketFrame>true if and only if there is no data left in the stream
and the stream has reached at its end.java.lang.Exceptionpublic void close()
throws java.lang.Exception
close in interface ChunkedInput<WebSocketFrame>java.lang.Exception@Deprecated public WebSocketFrame readChunk(ChannelHandlerContext ctx) throws java.lang.Exception
readChunk(ByteBufAllocator).
Fetches a chunked data from the stream. Once this method returns the last chunk
and thus the stream has reached at its end, any subsequent isEndOfInput()
call must return true.readChunk in interface ChunkedInput<WebSocketFrame>ctx - ChannelHandlerContext context of channelHandlerWebSocketFrame contain chunk of datajava.lang.Exceptionpublic WebSocketFrame readChunk(ByteBufAllocator allocator) throws java.lang.Exception
isEndOfInput()
call must return true.readChunk in interface ChunkedInput<WebSocketFrame>allocator - ByteBufAllocatorWebSocketFrame contain chunk of datajava.lang.Exceptionpublic long length()
ChunkedInputlength in interface ChunkedInput<WebSocketFrame>public long progress()
ChunkedInputprogress in interface ChunkedInput<WebSocketFrame>