|
Apache Tomcat 7.0.28 | ||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
ByteChunk.ByteInputChannel | Input interface, used when the buffer is empty Same as java.nio.channel.ReadableByteChannel |
ByteChunk.ByteOutputChannel | Same as java.nio.channel.WrittableByteChannel. |
CharChunk.CharInputChannel | |
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 | |
---|---|
Ascii | This class implements some basic ASCII character handling functions. |
B2CConverter | Efficient conversion of bytes to character . |
ByteChunk | This class is used to represent a chunk of bytes, and utilities to manipulate byte[]. |
C2BConverter | Efficient conversion of character to bytes. |
CharChunk | Utilities to manipulate char chunks. |
Constants | String constants for the file package. |
HexUtils | Tables useful when converting byte arrays to and from strings of hexadecimal digits. |
MessageBytes | This class is used to represent a subarray of bytes in an HTTP message. |
MessageBytes.MessageBytesFactory | |
StringCache | This class implements a String cache for ByteChunk and CharChunk. |
StringCache.ByteEntry | |
StringCache.CharEntry | |
UDecoder | All URL decoding happens here. |
UEncoder | Efficient implementation for encoders. |
Encoding is a critical operation for performance. There are few tricks in this package - the C2B and B2C converters are caching a ISReader/OSWriter and keep everything allocated to do the conversions in any VM without any garbage.
This package must accomodate future extensions and additional converters ( most imporant: the nio.charset, which should be detected and used if available ). Also, we do have one hand-written UTF8Decoder, and other tuned encoders could be added.
My benchmarks ( I'm costin :-) show only small differences between C2B, B2C and hand-written codders/decoders, so UTF8Decoder may be disabled.
|
Apache Tomcat 7.0.28 | ||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |