public class HttpChunkAggregator extends SimpleChannelUpstreamHandler implements LifeCycleAwareChannelHandler
ChannelHandler
that aggregates an HttpMessage
and its following HttpChunk
s into a single HttpMessage
with
no following HttpChunk
s. It is useful when you don't want to take
care of HTTP messages whose transfer encoding is 'chunked'. Insert this
handler after HttpMessageDecoder
in the ChannelPipeline
:
ChannelPipeline
p = ...; ... p.addLast("decoder", newHttpRequestDecoder
()); p.addLast("aggregator", newHttpChunkAggregator
(1048576)); ... p.addLast("encoder", newHttpResponseEncoder
()); p.addLast("handler", new HttpRequestHandler());
ChannelHandler.Sharable
限定符和类型 | 字段和说明 |
---|---|
static int |
DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS |
构造器和说明 |
---|
HttpChunkAggregator(int maxContentLength)
Creates a new instance.
|
限定符和类型 | 方法和说明 |
---|---|
void |
afterAdd(ChannelHandlerContext ctx) |
void |
afterRemove(ChannelHandlerContext ctx) |
protected void |
appendToCumulation(ChannelBuffer input) |
void |
beforeAdd(ChannelHandlerContext ctx) |
void |
beforeRemove(ChannelHandlerContext ctx) |
int |
getMaxCumulationBufferComponents()
Returns the maximum number of components in the cumulation buffer.
|
void |
messageReceived(ChannelHandlerContext ctx,
MessageEvent e)
Invoked when a message object (e.g:
ChannelBuffer ) was received
from a remote peer. |
void |
setMaxCumulationBufferComponents(int maxCumulationBufferComponents)
Sets the maximum number of components in the cumulation buffer.
|
channelBound, channelClosed, channelConnected, channelDisconnected, channelInterestChanged, channelOpen, channelUnbound, childChannelClosed, childChannelOpen, exceptionCaught, handleUpstream, writeComplete
public static final int DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS
public HttpChunkAggregator(int maxContentLength)
maxContentLength
- the maximum length of the aggregated content.
If the length of the aggregated content exceeds this value,
a TooLongFrameException
will be raised.public final int getMaxCumulationBufferComponents()
DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS
.public final void setMaxCumulationBufferComponents(int maxCumulationBufferComponents)
DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS
and its minimum allowed value is 2
.public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws java.lang.Exception
SimpleChannelUpstreamHandler
ChannelBuffer
) was received
from a remote peer.messageReceived
在类中 SimpleChannelUpstreamHandler
java.lang.Exception
protected void appendToCumulation(ChannelBuffer input)
public void beforeAdd(ChannelHandlerContext ctx) throws java.lang.Exception
beforeAdd
在接口中 LifeCycleAwareChannelHandler
java.lang.Exception
public void afterAdd(ChannelHandlerContext ctx) throws java.lang.Exception
afterAdd
在接口中 LifeCycleAwareChannelHandler
java.lang.Exception
public void beforeRemove(ChannelHandlerContext ctx) throws java.lang.Exception
beforeRemove
在接口中 LifeCycleAwareChannelHandler
java.lang.Exception
public void afterRemove(ChannelHandlerContext ctx) throws java.lang.Exception
afterRemove
在接口中 LifeCycleAwareChannelHandler
java.lang.Exception