public class CustomStringPool extends DTMStringPool
CustomStringPool is an example of appliction provided data structure for a DTM implementation to hold symbol references, e.g. elelment names. It will follow the DTMDStringPool interface and use two simple methods indexToString(int i) and stringToIndex(Sring s) to map between a set of string values and a set of integer index values. Therefore, an application may improve DTM processing speed by substituting the DTM symbol resolution tables with application specific quick symbol resolution tables.
%REVIEW% The only difference between this an DTMStringPool seems to be that it uses a java.lang.Hashtable full of Integers rather than implementing its own hashing. Joe deliberately avoided that approach when writing DTMStringPool, since it is both much more memory-hungry and probably slower -- especially in JDK 1.1.x, where Hashtable is synchronized. We need to either justify this implementation or discard it.Status: In progress, under discussion.
| Modifier and Type | Field and Description |
|---|---|
static int |
NULL |
| Constructor and Description |
|---|
CustomStringPool() |
| Modifier and Type | Method and Description |
|---|---|
String |
indexToString(int i) |
void |
removeAllElements() |
int |
stringToIndex(String s) |
_mainpublic static final int NULL
public void removeAllElements()
removeAllElements in class DTMStringPoolpublic String indexToString(int i) throws ArrayIndexOutOfBoundsException
indexToString in class DTMStringPoolArrayIndexOutOfBoundsException - if index doesn't map to a string.public int stringToIndex(String s)
stringToIndex in class DTMStringPoolCopyright © 2018–2021 mhoffrogge. All rights reserved.