See: Description
| Interface | Description |
|---|---|
| ByteChunk.ByteInputChannel |
Input interface, used when the buffer is empty
Same as java.nio.channel.ReadableByteChannel
|
| ByteChunk.ByteOutputChannel |
Same as java.nio.channel.WritableByteChannel.
|
| 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 | Description |
|---|---|
| Ascii |
This class implements some basic ASCII character handling functions.
|
| B2CConverter |
NIO based character decoder.
|
| 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.
|
| 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.
|
| UriUtil |
Utility class for working with URIs and URLs.
|
| Utf8Decoder |
Decodes bytes to UTF-8.
|
| Utf8Encoder |
Encodes characters as bytes using UTF-8.
|
| Enum | Description |
|---|---|
| UEncoder.SafeCharsSet |
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 important: 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.
Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.