public class GeneralLegacyIndexCodes
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
(package private) static class |
GeneralLegacyIndexCodes.CharHandler
Base class for the handlers which hold the text index character encoding
information.
|
private static class |
GeneralLegacyIndexCodes.Codes |
private static class |
GeneralLegacyIndexCodes.ExtCodes |
private static class |
GeneralLegacyIndexCodes.ExtraCodesStream
Extension of ByteStream which keeps track of an additional char count and
the length of any "unprintable" code prefix.
|
private static class |
GeneralLegacyIndexCodes.InternationalCharHandler
CharHandler for Type.INTERNATIONAL
|
private static class |
GeneralLegacyIndexCodes.InternationalExtCharHandler
CharHandler for Type.INTERNATIONAL_EXT
|
private static class |
GeneralLegacyIndexCodes.SimpleCharHandler
CharHandler for Type.SIMPLE
|
(package private) static class |
GeneralLegacyIndexCodes.Type
Enum which classifies the types of char encoding strategies used when
creating text index entries.
|
private static class |
GeneralLegacyIndexCodes.UnprintableCharHandler
CharHandler for Type.UNPRINTABLE
|
private static class |
GeneralLegacyIndexCodes.UnprintableExtCharHandler
CharHandler for Type.UNPRINTABLE_EXT
|
| Modifier and Type | Field and Description |
|---|---|
private static java.lang.String |
CODES_FILE |
(package private) static byte |
CRAZY_CODE_1 |
(package private) static byte |
CRAZY_CODE_2 |
(package private) static byte |
CRAZY_CODE_START |
(package private) static byte[] |
CRAZY_CODES_SUFFIX |
(package private) static byte |
CRAZY_CODES_UNPRINT_SUFFIX |
(package private) static byte |
END_EXTRA_TEXT |
(package private) static byte |
END_TEXT |
private static java.lang.String |
EXT_CODES_FILE |
(package private) static char |
FIRST_CHAR |
(package private) static char |
FIRST_EXT_CHAR |
(package private) static GeneralLegacyIndexCodes |
GEN_LEG_INSTANCE |
(package private) static GeneralLegacyIndexCodes.CharHandler |
IGNORED_CHAR_HANDLER
shared CharHandler instance for Type.IGNORED
|
(package private) static byte |
INTERNATIONAL_EXTRA_PLACEHOLDER |
(package private) static char |
LAST_CHAR |
(package private) static char |
LAST_EXT_CHAR |
(package private) static int |
MAX_TEXT_INDEX_CHAR_LENGTH |
(package private) static GeneralLegacyIndexCodes.CharHandler |
SURROGATE_CHAR_HANDLER
alternate shared CharHandler instance for "surrogate" chars (which we do
not handle)
|
(package private) static int |
UNPRINTABLE_COUNT_MULTIPLIER |
(package private) static int |
UNPRINTABLE_COUNT_START |
(package private) static byte |
UNPRINTABLE_MIDFIX |
(package private) static int |
UNPRINTABLE_OFFSET_FLAGS |
| Constructor and Description |
|---|
GeneralLegacyIndexCodes() |
| Modifier and Type | Method and Description |
|---|---|
(package private) static int |
asUnsignedChar(char c)
Returns an the char value converted to an unsigned char value.
|
private static byte[] |
codesToBytes(java.lang.String codes,
boolean required)
Converts a string of hex encoded bytes to a byte[], optionally throwing
an exception if no codes are given.
|
(package private) GeneralLegacyIndexCodes.CharHandler |
getCharHandler(char c)
Returns the CharHandler for the given character.
|
(package private) static GeneralLegacyIndexCodes.CharHandler[] |
loadCodes(java.lang.String codesFilePath,
char firstChar,
char lastChar)
Loads the CharHandlers for the given range of characters from the
resource file with the given name.
|
private static GeneralLegacyIndexCodes.CharHandler |
parseCodes(java.util.Map<java.lang.String,GeneralLegacyIndexCodes.Type> prefixMap,
java.lang.String codeLine)
Returns a CharHandler parsed from the given line from an index codes
file.
|
private static GeneralLegacyIndexCodes.CharHandler |
parseInternationalCodes(java.lang.String[] codeStrings)
Returns an InternationalCharHandler parsed from the given index code
strings.
|
private static GeneralLegacyIndexCodes.CharHandler |
parseInternationalExtCodes(java.lang.String[] codeStrings)
Returns a InternationalExtCharHandler parsed from the given index code
strings.
|
private static GeneralLegacyIndexCodes.CharHandler |
parseSimpleCodes(java.lang.String[] codeStrings)
Returns a SimpleCharHandler parsed from the given index code strings.
|
private static GeneralLegacyIndexCodes.CharHandler |
parseUnprintableCodes(java.lang.String[] codeStrings)
Returns a UnprintableCharHandler parsed from the given index code
strings.
|
private static GeneralLegacyIndexCodes.CharHandler |
parseUnprintableExtCodes(java.lang.String[] codeStrings)
Returns a UnprintableExtCharHandler parsed from the given index code
strings.
|
private static boolean |
trimExtraCodes(ByteUtil.ByteStream extraCodes,
byte minTrimCode,
byte maxTrimCode)
Trims any bytes in the given range off of the end of the given stream,
returning whether or not there are any bytes left in the given stream
after trimming.
|
private static void |
writeCrazyCodes(ByteUtil.ByteStream crazyCodes,
ByteUtil.ByteStream bout)
Encode the given crazy code bytes into the given byte stream.
|
private static void |
writeExtraCodes(int charOffset,
byte[] bytes,
byte extraCodeModifier,
GeneralLegacyIndexCodes.ExtraCodesStream extraCodes)
Encodes the given extra code info in the given stream.
|
(package private) void |
writeNonNullIndexTextValue(java.lang.Object value,
ByteUtil.ByteStream bout,
boolean isAscending)
Converts an index value for a text column into the entry value (which
is based on a variety of nifty codes).
|
private static void |
writeUnprintableCodes(int charOffset,
byte[] bytes,
ByteUtil.ByteStream unprintableCodes,
GeneralLegacyIndexCodes.ExtraCodesStream extraCodes)
Encodes the given unprintable char codes in the given stream.
|
static final int MAX_TEXT_INDEX_CHAR_LENGTH
static final byte END_TEXT
static final byte END_EXTRA_TEXT
static final int UNPRINTABLE_COUNT_START
static final int UNPRINTABLE_COUNT_MULTIPLIER
static final int UNPRINTABLE_OFFSET_FLAGS
static final byte UNPRINTABLE_MIDFIX
static final byte INTERNATIONAL_EXTRA_PLACEHOLDER
static final byte CRAZY_CODE_START
static final byte CRAZY_CODE_1
static final byte CRAZY_CODE_2
static final byte[] CRAZY_CODES_SUFFIX
static final byte CRAZY_CODES_UNPRINT_SUFFIX
private static final java.lang.String CODES_FILE
private static final java.lang.String EXT_CODES_FILE
static final GeneralLegacyIndexCodes.CharHandler IGNORED_CHAR_HANDLER
static final GeneralLegacyIndexCodes.CharHandler SURROGATE_CHAR_HANDLER
static final char FIRST_CHAR
static final char LAST_CHAR
static final char FIRST_EXT_CHAR
static final char LAST_EXT_CHAR
static final GeneralLegacyIndexCodes GEN_LEG_INSTANCE
GeneralLegacyIndexCodes.CharHandler getCharHandler(char c)
static GeneralLegacyIndexCodes.CharHandler[] loadCodes(java.lang.String codesFilePath, char firstChar, char lastChar)
private static GeneralLegacyIndexCodes.CharHandler parseCodes(java.util.Map<java.lang.String,GeneralLegacyIndexCodes.Type> prefixMap, java.lang.String codeLine)
private static GeneralLegacyIndexCodes.CharHandler parseSimpleCodes(java.lang.String[] codeStrings)
private static GeneralLegacyIndexCodes.CharHandler parseInternationalCodes(java.lang.String[] codeStrings)
private static GeneralLegacyIndexCodes.CharHandler parseUnprintableCodes(java.lang.String[] codeStrings)
private static GeneralLegacyIndexCodes.CharHandler parseUnprintableExtCodes(java.lang.String[] codeStrings)
private static GeneralLegacyIndexCodes.CharHandler parseInternationalExtCodes(java.lang.String[] codeStrings)
private static byte[] codesToBytes(java.lang.String codes,
boolean required)
static int asUnsignedChar(char c)
void writeNonNullIndexTextValue(java.lang.Object value,
ByteUtil.ByteStream bout,
boolean isAscending)
throws java.io.IOException
java.io.IOExceptionprivate static void writeExtraCodes(int charOffset,
byte[] bytes,
byte extraCodeModifier,
GeneralLegacyIndexCodes.ExtraCodesStream extraCodes)
throws java.io.IOException
java.io.IOExceptionprivate static boolean trimExtraCodes(ByteUtil.ByteStream extraCodes, byte minTrimCode, byte maxTrimCode) throws java.io.IOException
java.io.IOExceptionprivate static void writeUnprintableCodes(int charOffset,
byte[] bytes,
ByteUtil.ByteStream unprintableCodes,
GeneralLegacyIndexCodes.ExtraCodesStream extraCodes)
throws java.io.IOException
java.io.IOExceptionprivate static void writeCrazyCodes(ByteUtil.ByteStream crazyCodes, ByteUtil.ByteStream bout) throws java.io.IOException
java.io.IOException