Package org.apache.coyote.http2
Class HPackHuffman
- java.lang.Object
-
- org.apache.coyote.http2.HPackHuffman
-
public class HPackHuffman extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classHPackHuffman.HuffmanCode
-
Field Summary
Fields Modifier and Type Field Description protected static StringManagersm
-
Constructor Summary
Constructors Constructor Description HPackHuffman()
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static voiddecode(java.nio.ByteBuffer data, int length, java.lang.StringBuilder target)Deprecated.Will be removed in Tomcat 12.static voiddecode(java.nio.ByteBuffer data, int length, java.lang.StringBuilder target, boolean isFieldName)Decodes a huffman encoded string into the target StringBuilder.static booleanencode(java.nio.ByteBuffer buffer, java.lang.String toEncode)Encodes the given string into the buffer.static booleanencode(java.nio.ByteBuffer buffer, java.lang.String toEncode, boolean forceLowercase)Deprecated.Unused.
-
-
-
Field Detail
-
sm
protected static final StringManager sm
-
-
Method Detail
-
decode
@Deprecated public static void decode(java.nio.ByteBuffer data, int length, java.lang.StringBuilder target) throws org.apache.coyote.http2.HpackExceptionDeprecated.Will be removed in Tomcat 12. Usedecode(ByteBuffer, int, StringBuilder, boolean)Decodes a huffman encoded string into the target StringBuilder. There must be enough space left in the buffer for this method to succeed.- Parameters:
data- The byte bufferlength- The length of data from the buffer to decodetarget- The target for the decompressed data- Throws:
org.apache.coyote.http2.HpackException- If the Huffman encoded value in HPACK headers did not end with EOS padding
-
decode
public static void decode(java.nio.ByteBuffer data, int length, java.lang.StringBuilder target, boolean isFieldName) throws org.apache.coyote.http2.HpackExceptionDecodes a huffman encoded string into the target StringBuilder. There must be enough space left in the buffer for this method to succeed.- Parameters:
data- The byte bufferlength- The length of data from the buffer to decodetarget- The target for the decompressed dataisFieldName-trueif a field name is being decoded (names have a more restrictive set of allowed characters than field values)- Throws:
org.apache.coyote.http2.HpackException- If the Huffman encoded value in HPACK headers did not end with EOS padding
-
encode
@Deprecated public static boolean encode(java.nio.ByteBuffer buffer, java.lang.String toEncode, boolean forceLowercase)Deprecated.Unused. This method will be removed in Tomcat 12 onwards.Encodes the given string into the buffer. If there is not enough space in the buffer, or the encoded version is bigger than the original it will return false and not modify the buffers position.- Parameters:
buffer- The buffer to encode intotoEncode- The string to encodeforceLowercase- If the string should be encoded in lower case- Returns:
- true if encoding succeeded
-
encode
public static boolean encode(java.nio.ByteBuffer buffer, java.lang.String toEncode)Encodes the given string into the buffer. If there is not enough space in the buffer, or the encoded version is bigger than the original it will return false and not modify the buffers position.- Parameters:
buffer- The buffer to encode intotoEncode- The string to encode- Returns:
- true if encoding succeeded
-
-