Package io.netty.handler.codec.http2
Class DefaultHttp2FrameReader.HeadersBlockBuilder
- java.lang.Object
-
- io.netty.handler.codec.http2.DefaultHttp2FrameReader.HeadersBlockBuilder
-
- Enclosing class:
- DefaultHttp2FrameReader
protected class DefaultHttp2FrameReader.HeadersBlockBuilder extends java.lang.Object
Utility class to help with construction of the headers block that may potentially span multiple frames.
-
-
Field Summary
Fields Modifier and Type Field Description private ByteBuf
headerBlock
-
Constructor Summary
Constructors Modifier Constructor Description protected
HeadersBlockBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
addFragment(ByteBuf fragment, int len, ByteBufAllocator alloc, boolean endOfHeaders)
Adds a fragment to the block.(package private) void
close()
Closes this builder and frees any resources.(package private) Http2Headers
headers()
Builds the headers from the completed headers block.private void
headerSizeExceeded()
The local header size maximum has been exceeded while accumulating bytes.
-
-
-
Field Detail
-
headerBlock
private ByteBuf headerBlock
-
-
Method Detail
-
headerSizeExceeded
private void headerSizeExceeded() throws Http2Exception
The local header size maximum has been exceeded while accumulating bytes.- Throws:
Http2Exception
- A connection error indicating too much data has been received.
-
addFragment
final void addFragment(ByteBuf fragment, int len, ByteBufAllocator alloc, boolean endOfHeaders) throws Http2Exception
Adds a fragment to the block.- Parameters:
fragment
- the fragment of the headers block to be added.alloc
- allocator for new blocks if needed.endOfHeaders
- flag indicating whether the current frame is the end of the headers. This is used for an optimization for when the first fragment is the full block. In that case, the buffer is used directly without copying.- Throws:
Http2Exception
-
headers
Http2Headers headers() throws Http2Exception
Builds the headers from the completed headers block. After this is called, this builder should not be called again.- Throws:
Http2Exception
-
close
void close()
Closes this builder and frees any resources.
-
-