| Modifier and Type | Class and Description |
|---|---|
| private static enum | HpackDecoder.
HTTP/2 header types. |
| private static class |
| Modifier and Type | Field and Description |
|---|---|
| private static final Http2Exception | |
| private static final Http2Exception | |
| private static final Http2Exception | |
| private static final Http2Exception | |
| private long | |
| private final HpackDynamicTable | |
| private final HpackHuffmanDecoder | |
| private static final Http2Exception | |
| private static final Http2Exception | |
| private static final Http2Exception | |
| private long | |
| private boolean | |
| private long | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final byte | |
| private static final Http2Exception |
| Access | Constructor and Description |
|---|---|
| pack-priv | HpackDecoder(long
This is the only setting that can be configured before notifying the peer.
This is because SETTINGS_MAX_HEADER_LIST_SIZE
allows a lower than advertised limit from being enforced, and the default limit is unlimited
(which is dangerous). maxHeaderListSize)Create a new instance. |
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv void | decode(int streamId, Buffer in, Http2Headers headers, boolean validateHeaders)
Decode the header block into header fields. |
| private void | |
| pack-priv static int | decodeULE128(Buffer in, int result)
Unsigned Little Endian Base 128 Variable-Length Integer Encoding Visible for testing only! |
| pack-priv static long | decodeULE128(Buffer in, long result)
Unsigned Little Endian Base 128 Variable-Length Integer Encoding Visible for testing only! |
| pack-priv HpackHeaderField | |
| private HpackHeaderField | |
| pack-priv long | |
| pack-priv long | |
| private void | insertHeader(HpackDecoder.
|
| pack-priv int | |
| private static IllegalArgumentException | |
| private AsciiString | |
| private AsciiString | |
| private void | |
| pack-priv void | |
| pack-priv void | |
| pack-priv long |
| DECODE_ILLEGAL_INDEX_VALUE | back to summary |
|---|---|
| private static final Http2Exception DECODE_ILLEGAL_INDEX_VALUE | |
| DECODE_ULE_128_DECOMPRESSION_EXCEPTION | back to summary |
|---|---|
| private static final Http2Exception DECODE_ULE_128_DECOMPRESSION_EXCEPTION | |
| DECODE_ULE_128_TO_INT_DECOMPRESSION_EXCEPTION | back to summary |
|---|---|
| private static final Http2Exception DECODE_ULE_128_TO_INT_DECOMPRESSION_EXCEPTION | |
| DECODE_ULE_128_TO_LONG_DECOMPRESSION_EXCEPTION | back to summary |
|---|---|
| private static final Http2Exception DECODE_ULE_128_TO_LONG_DECOMPRESSION_EXCEPTION | |
| encoderMaxDynamicTableSize | back to summary |
|---|---|
| private long encoderMaxDynamicTableSize | |
| hpackDynamicTable | back to summary |
|---|---|
| private final HpackDynamicTable hpackDynamicTable | |
| huffmanDecoder | back to summary |
|---|---|
| private final HpackHuffmanDecoder huffmanDecoder | |
| INDEX_HEADER_ILLEGAL_INDEX_VALUE | back to summary |
|---|---|
| private static final Http2Exception INDEX_HEADER_ILLEGAL_INDEX_VALUE | |
| INVALID_MAX_DYNAMIC_TABLE_SIZE | back to summary |
|---|---|
| private static final Http2Exception INVALID_MAX_DYNAMIC_TABLE_SIZE | |
| MAX_DYNAMIC_TABLE_SIZE_CHANGE_REQUIRED | back to summary |
|---|---|
| private static final Http2Exception MAX_DYNAMIC_TABLE_SIZE_CHANGE_REQUIRED | |
| maxDynamicTableSize | back to summary |
|---|---|
| private long maxDynamicTableSize | |
| maxDynamicTableSizeChangeRequired | back to summary |
|---|---|
| private boolean maxDynamicTableSizeChangeRequired | |
| maxHeaderListSize | back to summary |
|---|---|
| private long maxHeaderListSize | |
| READ_HEADER_REPRESENTATION | back to summary |
|---|---|
| private static final byte READ_HEADER_REPRESENTATION | |
| READ_INDEXED_HEADER | back to summary |
|---|---|
| private static final byte READ_INDEXED_HEADER | |
| READ_INDEXED_HEADER_NAME | back to summary |
|---|---|
| private static final byte READ_INDEXED_HEADER_NAME | |
| READ_LITERAL_HEADER_NAME | back to summary |
|---|---|
| private static final byte READ_LITERAL_HEADER_NAME | |
| READ_LITERAL_HEADER_NAME_LENGTH | back to summary |
|---|---|
| private static final byte READ_LITERAL_HEADER_NAME_LENGTH | |
| READ_LITERAL_HEADER_NAME_LENGTH_PREFIX | back to summary |
|---|---|
| private static final byte READ_LITERAL_HEADER_NAME_LENGTH_PREFIX | |
| READ_LITERAL_HEADER_VALUE | back to summary |
|---|---|
| private static final byte READ_LITERAL_HEADER_VALUE | |
| READ_LITERAL_HEADER_VALUE_LENGTH | back to summary |
|---|---|
| private static final byte READ_LITERAL_HEADER_VALUE_LENGTH | |
| READ_LITERAL_HEADER_VALUE_LENGTH_PREFIX | back to summary |
|---|---|
| private static final byte READ_LITERAL_HEADER_VALUE_LENGTH_PREFIX | |
| READ_MAX_DYNAMIC_TABLE_SIZE | back to summary |
|---|---|
| private static final byte READ_MAX_DYNAMIC_TABLE_SIZE | |
| READ_NAME_ILLEGAL_INDEX_VALUE | back to summary |
|---|---|
| private static final Http2Exception READ_NAME_ILLEGAL_INDEX_VALUE | |
| HpackDecoder | back to summary |
|---|---|
| pack-priv HpackDecoder(long maxHeaderListSize) Create a new instance.
| |
| HpackDecoder | back to summary |
|---|---|
| pack-priv HpackDecoder(long maxHeaderListSize, int maxHeaderTableSize) Exposed Used for testing only! Default values used in the initial settings frame are overridden intentionally for testing but violate the RFC if used outside the scope of testing. | |
| decode | back to summary |
|---|---|
| pack-priv void decode(int streamId, Buffer in, Http2Headers headers, boolean validateHeaders) throws Http2Exception Decode the header block into header fields.
This method assumes the entire header block is contained in | |
| decode | back to summary |
|---|---|
| private void decode(Buffer in, HpackDecoder. | |
| decodeULE128 | back to summary |
|---|---|
| pack-priv static int decodeULE128(Buffer in, int result) throws Http2Exception Unsigned Little Endian Base 128 Variable-Length Integer Encoding Visible for testing only! | |
| decodeULE128 | back to summary |
|---|---|
| pack-priv static long decodeULE128(Buffer in, long result) throws Http2Exception Unsigned Little Endian Base 128 Variable-Length Integer Encoding Visible for testing only! | |
| getHeaderField | back to summary |
|---|---|
| pack-priv HpackHeaderField getHeaderField(int index) Return the header field at the given index. Exposed for testing. | |
| getIndexedHeader | back to summary |
|---|---|
| private HpackHeaderField getIndexedHeader(int index) throws Http2Exception | |
| getMaxHeaderListSize | back to summary |
|---|---|
| pack-priv long getMaxHeaderListSize() | |
| getMaxHeaderTableSize | back to summary |
|---|---|
| pack-priv long getMaxHeaderTableSize() Return the maximum table size. This is the maximum size allowed by both the encoder and the decoder. | |
| insertHeader | back to summary |
|---|---|
| private void insertHeader(HpackDecoder. | |
| length | back to summary |
|---|---|
| pack-priv int length() Return the number of header fields in the dynamic table. Exposed for testing. | |
| notEnoughDataException | back to summary |
|---|---|
| private static IllegalArgumentException notEnoughDataException(Buffer in) | |
| readName | back to summary |
|---|---|
| private AsciiString readName(int index) throws Http2Exception | |
| readStringLiteral | back to summary |
|---|---|
| private AsciiString readStringLiteral(Buffer in, int length, boolean huffmanEncoded) throws Http2Exception | |
| setDynamicTableSize | back to summary |
|---|---|
| private void setDynamicTableSize(long dynamicTableSize) throws Http2Exception | |
| setMaxHeaderListSize | back to summary |
|---|---|
| pack-priv void setMaxHeaderListSize(long maxHeaderListSize) throws Http2Exception | |
| setMaxHeaderTableSize | back to summary |
|---|---|
| pack-priv void setMaxHeaderTableSize(long maxHeaderTableSize) throws Http2Exception Set the maximum table size. If this is below the maximum size of the dynamic table used by the encoder, the beginning of the next header block MUST signal this change. | |
| size | back to summary |
|---|---|
| pack-priv long size() Return the size of the dynamic table. Exposed for testing. | |
| Modifier and Type | Field and Description |
|---|---|
| public static final HpackDecoder. | |
| public static final HpackDecoder. | |
| public static final HpackDecoder. |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public static HpackDecoder. | |
| public static HpackDecoder. |
| REGULAR_HEADER | back to summary |
|---|---|
| public static final HpackDecoder. | |
| REQUEST_PSEUDO_HEADER | back to summary |
|---|---|
| public static final HpackDecoder. | |
| RESPONSE_PSEUDO_HEADER | back to summary |
|---|---|
| public static final HpackDecoder. | |
| HeaderType | back to summary |
|---|---|
| private HeaderType() | |
| valueOf | back to summary |
|---|---|
| public static HpackDecoder. | |
| values | back to summary |
|---|---|
| public static HpackDecoder. | |
| Modifier and Type | Field and Description |
|---|---|
| private boolean | |
| private final Http2Headers | |
| private long | |
| private final long | |
| private HpackDecoder. | |
| private final int | |
| private final boolean | |
| private Http2Exception |
| Access | Constructor and Description |
|---|---|
| pack-priv | Http2HeadersSink(int streamId, Http2Headers headers, long maxHeaderListSize, boolean validateHeaders)
|
| Modifier and Type | Method and Description |
|---|---|
| pack-priv void | |
| pack-priv void | |
| private static HpackDecoder. |
| exceededMaxLength | back to summary |
|---|---|
| private boolean exceededMaxLength | |
| headers | back to summary |
|---|---|
| private final Http2Headers headers | |
| headersLength | back to summary |
|---|---|
| private long headersLength | |
| maxHeaderListSize | back to summary |
|---|---|
| private final long maxHeaderListSize | |
| previousType | back to summary |
|---|---|
| private HpackDecoder. | |
| streamId | back to summary |
|---|---|
| private final int streamId | |
| validateHeaders | back to summary |
|---|---|
| private final boolean validateHeaders | |
| validationException | back to summary |
|---|---|
| private Http2Exception validationException | |
| Http2HeadersSink | back to summary |
|---|---|
| pack-priv Http2HeadersSink(int streamId, Http2Headers headers, long maxHeaderListSize, boolean validateHeaders) | |
| appendToHeaderList | back to summary |
|---|---|
| pack-priv void appendToHeaderList(AsciiString name, AsciiString value) | |
| finish | back to summary |
|---|---|
| pack-priv void finish() throws Http2Exception | |
| validateHeader | back to summary |
|---|---|
| private static HpackDecoder. | |