Package org.apache.tomcat.util.buf
Buffers and Encodings
This package contains buffers and utils to perform encoding/decoding of buffers. That includes byte to char conversions, URL encodings, etc.Encoding is a critical operation for performance. There are few tricks in this package - the C2B and B2C converters are caching an ISReader/OSWriter and keep everything allocated to do the conversions in any VM without any garbage.
This package must accommodate future extensions and additional converters.
-
Interface Summary Interface Description ByteChunk.ByteInputChannel Input interface, used when the buffer is empty.ByteChunk.ByteOutputChannel When we need more space we'll either grow the buffer ( up to the limit ) or send it to a channel.CharChunk.CharInputChannel Input interface, used when the buffer is empty.CharChunk.CharOutputChannel When we need more space we'll either grow the buffer ( up to the limit ) or send it to a channel. -
Class Summary Class Description AbstractChunk Base class for the *Chunk implementation to reduce duplication.Ascii This class implements some basic ASCII character handling functions.Asn1Parser This is a very basic ASN.1 parser that provides the limited functionality required by Tomcat.Asn1Writer B2CConverter NIO based character decoder.ByteBufferHolder Simple wrapper for aByteBuffer
that remembers if the buffer has been flipped or not.ByteBufferUtils ByteChunk This class is used to represent a chunk of bytes, and utilities to manipulate byte[].C2BConverter NIO based character encoder.CharChunk Utilities to manipulate char chunks.CharsetCache CharsetUtil HexUtils Tables useful when converting byte arrays to and from strings of hexadecimal digits.MessageBytes This class is used to represent a sub array of bytes in an HTTP message.StringCache This class implements a String cache for ByteChunk and CharChunk.StringCache.ByteEntry StringCache.CharEntry StringUtils Utility methods to build a separated list from a given set (not java.util.Set) of inputs and return that list as a string or append it to an existing StringBuilder.ToStringUtil Utility class used to provide String representations of objects.UDecoder All URL decoding happens here.UEncoder Efficient implementation of a UTF-8 encoder.UriUtil Utility class for working with URIs and URLs.Utf8Encoder Encodes characters as bytes using UTF-8. -
Enum Summary Enum Description EncodedSolidusHandling UEncoder.SafeCharsSet -
Exception Summary Exception Description ByteChunk.BufferOverflowException