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 |
---|---|
java.lang.String |
indexToString(int i) |
void |
removeAllElements() |
int |
stringToIndex(java.lang.String s) |
main
public static final int NULL
public void removeAllElements()
removeAllElements
in class DTMStringPool
public java.lang.String indexToString(int i) throws java.lang.ArrayIndexOutOfBoundsException
indexToString
in class DTMStringPool
java.lang.ArrayIndexOutOfBoundsException
- if index doesn't map to a string.public int stringToIndex(java.lang.String s)
stringToIndex
in class DTMStringPool
Copyright ? 2005 Apache XML Project. All Rights Reserved.