Package io.netty.handler.codec.spdy
Class SpdyHeaderBlockRawDecoder
- java.lang.Object
-
- io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder
-
- io.netty.handler.codec.spdy.SpdyHeaderBlockRawDecoder
-
- Direct Known Subclasses:
SpdyHeaderBlockZlibDecoder
public class SpdyHeaderBlockRawDecoder extends SpdyHeaderBlockDecoder
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
SpdyHeaderBlockRawDecoder.State
-
Field Summary
Fields Modifier and Type Field Description private ByteBuf
cumulation
private int
headerSize
private int
length
private static int
LENGTH_FIELD_SIZE
private int
maxHeaderSize
private java.lang.String
name
private int
numHeaders
private SpdyHeaderBlockRawDecoder.State
state
-
Constructor Summary
Constructors Constructor Description SpdyHeaderBlockRawDecoder(SpdyVersion spdyVersion, int maxHeaderSize)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
decode(ByteBufAllocator alloc, ByteBuf headerBlock, SpdyHeadersFrame frame)
Decodes a SPDY Header Block, adding the Name/Value pairs to the given Headers frame.protected void
decodeHeaderBlock(ByteBuf headerBlock, SpdyHeadersFrame frame)
(package private) void
end()
(package private) void
endHeaderBlock(SpdyHeadersFrame frame)
private static int
readLengthField(ByteBuf buffer)
private void
releaseBuffer()
-
Methods inherited from class io.netty.handler.codec.spdy.SpdyHeaderBlockDecoder
newInstance
-
-
-
-
Field Detail
-
LENGTH_FIELD_SIZE
private static final int LENGTH_FIELD_SIZE
- See Also:
- Constant Field Values
-
maxHeaderSize
private final int maxHeaderSize
-
state
private SpdyHeaderBlockRawDecoder.State state
-
cumulation
private ByteBuf cumulation
-
headerSize
private int headerSize
-
numHeaders
private int numHeaders
-
length
private int length
-
name
private java.lang.String name
-
-
Constructor Detail
-
SpdyHeaderBlockRawDecoder
public SpdyHeaderBlockRawDecoder(SpdyVersion spdyVersion, int maxHeaderSize)
-
-
Method Detail
-
readLengthField
private static int readLengthField(ByteBuf buffer)
-
decode
void decode(ByteBufAllocator alloc, ByteBuf headerBlock, SpdyHeadersFrame frame) throws java.lang.Exception
Description copied from class:SpdyHeaderBlockDecoder
Decodes a SPDY Header Block, adding the Name/Value pairs to the given Headers frame. If the header block is malformed, the Headers frame will be marked as invalid. A stream error with status code PROTOCOL_ERROR must be issued in response to an invalid frame.- Specified by:
decode
in classSpdyHeaderBlockDecoder
- Parameters:
alloc
- theByteBufAllocator
which can be used to allocate newByteBuf
sheaderBlock
- the HeaderBlock to decodeframe
- the Headers frame that receives the Name/Value pairs- Throws:
java.lang.Exception
- If the header block is malformed in a way that prevents any future decoding of any other header blocks, an exception will be thrown. A session error with status code PROTOCOL_ERROR must be issued.
-
decodeHeaderBlock
protected void decodeHeaderBlock(ByteBuf headerBlock, SpdyHeadersFrame frame) throws java.lang.Exception
- Throws:
java.lang.Exception
-
endHeaderBlock
void endHeaderBlock(SpdyHeadersFrame frame) throws java.lang.Exception
- Specified by:
endHeaderBlock
in classSpdyHeaderBlockDecoder
- Throws:
java.lang.Exception
-
end
void end()
- Specified by:
end
in classSpdyHeaderBlockDecoder
-
releaseBuffer
private void releaseBuffer()
-
-