Class RtspMessageDecoder
- java.lang.Object
-
- org.jboss.netty.channel.SimpleChannelUpstreamHandler
-
- org.jboss.netty.handler.codec.frame.FrameDecoder
-
- org.jboss.netty.handler.codec.replay.ReplayingDecoder<HttpMessageDecoder.State>
-
- org.jboss.netty.handler.codec.http.HttpMessageDecoder
-
- org.jboss.netty.handler.codec.rtsp.RtspMessageDecoder
-
- All Implemented Interfaces:
ChannelHandler,ChannelUpstreamHandler,LifeCycleAwareChannelHandler
- Direct Known Subclasses:
RtspRequestDecoder,RtspResponseDecoder
public abstract class RtspMessageDecoder extends HttpMessageDecoder
DecodesChannelBuffers into RTSP messages represented inHttpMessages.Parameters that prevents excessive memory consumption
Name Meaning maxInitialLineLengthThe maximum length of the initial line (e.g. "SETUP / RTSP/1.0"or"RTSP/1.0 200 OK") If the length of the initial line exceeds this value, aTooLongFrameExceptionwill be raised.maxHeaderSizeThe maximum length of all headers. If the sum of the length of each header exceeds this value, a TooLongFrameExceptionwill be raised.maxContentLengthThe maximum length of the content. If the content length exceeds this value, a TooLongFrameExceptionwill be raised.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.jboss.netty.handler.codec.http.HttpMessageDecoder
HttpMessageDecoder.State
-
Nested classes/interfaces inherited from interface org.jboss.netty.channel.ChannelHandler
ChannelHandler.Sharable
-
-
Field Summary
Fields Modifier and Type Field Description private DecoderEmbedder<HttpMessage>aggregator-
Fields inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder
cumulation, DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedRtspMessageDecoder()Creates a new instance with the defaultmaxInitialLineLength (4096},maxHeaderSize (8192), andmaxContentLength (8192).protectedRtspMessageDecoder(int maxInitialLineLength, int maxHeaderSize, int maxContentLength)Creates a new instance with the specified parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.Objectdecode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, HttpMessageDecoder.State state)Decodes the received packets so far into a frame.protected booleanisContentAlwaysEmpty(HttpMessage msg)-
Methods inherited from class org.jboss.netty.handler.codec.http.HttpMessageDecoder
createMessage, isDecodingRequest
-
Methods inherited from class org.jboss.netty.handler.codec.replay.ReplayingDecoder
checkpoint, checkpoint, cleanup, decode, decodeLast, decodeLast, getState, internalBuffer, messageReceived, setState
-
Methods inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder
actualReadableBytes, afterAdd, afterRemove, appendToCumulation, beforeAdd, beforeRemove, channelClosed, channelDisconnected, exceptionCaught, extractFrame, getMaxCumulationBufferCapacity, getMaxCumulationBufferComponents, isUnfold, newCumulationBuffer, replace, setMaxCumulationBufferCapacity, setMaxCumulationBufferComponents, setUnfold, unfoldAndFireMessageReceived, updateCumulation
-
Methods inherited from class org.jboss.netty.channel.SimpleChannelUpstreamHandler
channelBound, channelConnected, channelInterestChanged, channelOpen, channelUnbound, childChannelClosed, childChannelOpen, handleUpstream, writeComplete
-
-
-
-
Field Detail
-
aggregator
private final DecoderEmbedder<HttpMessage> aggregator
-
-
Constructor Detail
-
RtspMessageDecoder
protected RtspMessageDecoder()
Creates a new instance with the defaultmaxInitialLineLength (4096},maxHeaderSize (8192), andmaxContentLength (8192).
-
RtspMessageDecoder
protected RtspMessageDecoder(int maxInitialLineLength, int maxHeaderSize, int maxContentLength)Creates a new instance with the specified parameters.
-
-
Method Detail
-
decode
protected java.lang.Object decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, HttpMessageDecoder.State state) throws java.lang.Exception
Description copied from class:ReplayingDecoderDecodes the received packets so far into a frame.- Overrides:
decodein classHttpMessageDecoder- Parameters:
ctx- the context of this handlerchannel- the current channelbuffer- the cumulative buffer of received packets so far. Note that the buffer might be empty, which means you should not make an assumption that the buffer contains at least one byte in your decoder implementation.state- the current decoder state (nullif unused)- Returns:
- the decoded frame
- Throws:
java.lang.Exception
-
isContentAlwaysEmpty
protected boolean isContentAlwaysEmpty(HttpMessage msg)
- Overrides:
isContentAlwaysEmptyin classHttpMessageDecoder
-
-