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
DecodesChannelBuffer
s into RTSP messages represented inHttpMessage
s.Parameters that prevents excessive memory consumption
Name Meaning maxInitialLineLength
The 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, aTooLongFrameException
will be raised.maxHeaderSize
The maximum length of all headers. If the sum of the length of each header exceeds this value, a TooLongFrameException
will be raised.maxContentLength
The maximum length of the content. If the content length exceeds this value, a TooLongFrameException
will 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 inherited from class org.jboss.netty.handler.codec.frame.FrameDecoder
cumulation, DEFAULT_MAX_COMPOSITEBUFFER_COMPONENTS
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
RtspMessageDecoder()
Creates a new instance with the defaultmaxInitialLineLength (4096
},maxHeaderSize (8192)
, andmaxContentLength (8192)
.protected
RtspMessageDecoder(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 Object
decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, HttpMessageDecoder.State state)
Decodes the received packets so far into a frame.protected boolean
isContentAlwaysEmpty(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
-
-
-
-
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 Object decode(ChannelHandlerContext ctx, Channel channel, ChannelBuffer buffer, HttpMessageDecoder.State state) throws Exception
Description copied from class:ReplayingDecoder
Decodes the received packets so far into a frame.- Overrides:
decode
in 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 (null
if unused)- Returns:
- the decoded frame
- Throws:
Exception
-
isContentAlwaysEmpty
protected boolean isContentAlwaysEmpty(HttpMessage msg)
- Overrides:
isContentAlwaysEmpty
in classHttpMessageDecoder
-
-