Package org.eclipse.jetty.http2.hpack
Class HpackDecoder
java.lang.Object
org.eclipse.jetty.http2.hpack.HpackDecoder
Hpack Decoder
This is not thread safe and may only be called by 1 thread at a time.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final MetaDataBuilderprivate final HpackContextprivate final org.eclipse.jetty.http.compression.HuffmanDecoderprivate final org.eclipse.jetty.http.compression.NBitIntegerDecoderprivate intstatic final org.eclipse.jetty.http.HttpField.LongValueHttpFieldstatic final org.eclipse.jetty.util.log.Logger -
Constructor Summary
ConstructorsConstructorDescriptionHpackDecoder(int maxHeaderSize) HpackDecoder(int localMaxDynamicTableSize, int maxHeaderSize) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionorg.eclipse.jetty.http.MetaDatadecode(ByteBuffer buffer) intintprivate StringhuffmanDecode(ByteBuffer buffer, int length) private intintegerDecode(ByteBuffer buffer, int prefix) voidsetLocalMaxDynamicTableSize(int maxTableSizeLimit) Deprecated.voidsetMaxHeaderListSize(int maxHeaderListSize) voidsetMaxTableCapacity(int maxTableCapacity) Sets the limit for the capacity of the dynamic header table.static StringtoISO88591String(ByteBuffer buffer, int length) toString()
-
Field Details
-
LOG
public static final org.eclipse.jetty.util.log.Logger LOG -
CONTENT_LENGTH_0
public static final org.eclipse.jetty.http.HttpField.LongValueHttpField CONTENT_LENGTH_0 -
_context
-
_builder
-
_huffmanDecoder
private final org.eclipse.jetty.http.compression.HuffmanDecoder _huffmanDecoder -
_integerDecoder
private final org.eclipse.jetty.http.compression.NBitIntegerDecoder _integerDecoder -
_maxTableCapacity
private int _maxTableCapacity
-
-
Constructor Details
-
HpackDecoder
Deprecated. -
HpackDecoder
public HpackDecoder(int maxHeaderSize) - Parameters:
maxHeaderSize- The maximum allowed size of a decoded headers block, expressed as total of all name and value bytes, plus 32 bytes per field
-
-
Method Details
-
getHpackContext
-
getMaxTableCapacity
public int getMaxTableCapacity() -
setMaxTableCapacity
public void setMaxTableCapacity(int maxTableCapacity) Sets the limit for the capacity of the dynamic header table.
This value acts as a limit for the values received from the remote peer via the HPACK dynamic table size update instruction.
After calling this method, a SETTINGS frame must be sent to the other peer, containing the
SETTINGS_HEADER_TABLE_SIZEsetting with the value passed as argument to this method.- Parameters:
maxTableCapacity- the limit for capacity of the dynamic header table
-
setLocalMaxDynamicTableSize
Deprecated.usesetMaxTableCapacity(int)instead- Parameters:
maxTableSizeLimit- the local dynamic table max size
-
getMaxHeaderListSize
public int getMaxHeaderListSize() -
setMaxHeaderListSize
public void setMaxHeaderListSize(int maxHeaderListSize) -
decode
public org.eclipse.jetty.http.MetaData decode(ByteBuffer buffer) throws HpackException.SessionException, HpackException.StreamException -
integerDecode
-
huffmanDecode
private String huffmanDecode(ByteBuffer buffer, int length) throws HpackException.CompressionException -
toISO88591String
-
toString
-
setMaxTableCapacity(int)instead