public final class HttpClientCodec extends CombinedChannelDuplexHandler<HttpResponseDecoder,HttpRequestEncoder>
HttpRequestEncoder
and HttpResponseDecoder
which enables easier client side HTTP implementation. HttpClientCodec
provides additional state management for HEAD and CONNECT
requests, which HttpResponseDecoder
lacks. Please refer to
HttpResponseDecoder
to learn what additional state management needs
to be done for HEAD and CONNECT and why
HttpResponseDecoder
can not handle it by itself.
If the Channel
is closed and there are missing responses,
a PrematureChannelClosureException
is thrown.HttpServerCodec
Modifier and Type | Class and Description |
---|---|
private class |
HttpClientCodec.Decoder |
private class |
HttpClientCodec.Encoder |
ChannelHandler.Sharable
Modifier and Type | Field and Description |
---|---|
private boolean |
done
If true, decoding stops (i.e.
|
private boolean |
failOnMissingResponse |
private java.util.Queue<HttpMethod> |
queue
A queue that is used for correlating a request and a response.
|
private java.util.concurrent.atomic.AtomicLong |
requestResponseCounter |
Constructor and Description |
---|
HttpClientCodec()
Creates a new instance with the default decoder options
(
maxInitialLineLength (4096 }, maxHeaderSize (8192) , and
maxChunkSize (8192) ). |
HttpClientCodec(int maxInitialLineLength,
int maxHeaderSize,
int maxChunkSize)
Creates a new instance with the specified decoder options.
|
HttpClientCodec(int maxInitialLineLength,
int maxHeaderSize,
int maxChunkSize,
boolean failOnMissingResponse)
Creates a new instance with the specified decoder options.
|
HttpClientCodec(int maxInitialLineLength,
int maxHeaderSize,
int maxChunkSize,
boolean failOnMissingResponse,
boolean validateHeaders)
Creates a new instance with the specified decoder options.
|
HttpClientCodec(int maxInitialLineLength,
int maxHeaderSize,
int maxChunkSize,
boolean failOnMissingResponse,
boolean validateHeaders,
int initialBufferSize)
Creates a new instance with the specified decoder options.
|
Modifier and Type | Method and Description |
---|---|
boolean |
isSingleDecode() |
void |
setSingleDecode(boolean singleDecode) |
bind, channelActive, channelInactive, channelRead, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, close, connect, deregister, disconnect, exceptionCaught, flush, handlerAdded, handlerRemoved, inboundHandler, init, outboundHandler, read, removeInboundHandler, removeOutboundHandler, userEventTriggered, write
isSharable
private final java.util.Queue<HttpMethod> queue
private boolean done
private final java.util.concurrent.atomic.AtomicLong requestResponseCounter
private final boolean failOnMissingResponse
public HttpClientCodec()
maxInitialLineLength (4096
}, maxHeaderSize (8192)
, and
maxChunkSize (8192)
).public HttpClientCodec(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize)
public HttpClientCodec(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean failOnMissingResponse)
public HttpClientCodec(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean failOnMissingResponse, boolean validateHeaders)
public HttpClientCodec(int maxInitialLineLength, int maxHeaderSize, int maxChunkSize, boolean failOnMissingResponse, boolean validateHeaders, int initialBufferSize)