org.apache.xml.dtm.ref
Class CustomStringPool
java.lang.Object
org.apache.xml.dtm.ref.DTMStringPool
org.apache.xml.dtm.ref.CustomStringPool
- 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.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
m_stringToInt
final Hashtable m_stringToInt
NULL
public static final int NULL
- See Also:
- Constant Field Values
CustomStringPool
public CustomStringPool()
removeAllElements
public void removeAllElements()
- Overrides:
removeAllElements
in class DTMStringPool
indexToString
public String indexToString(int i)
throws ArrayIndexOutOfBoundsException
- Overrides:
indexToString
in class DTMStringPool
- Returns:
- string whose value is uniquely identified by this integer index.
- Throws:
ArrayIndexOutOfBoundsException
- if index doesn't map to a string.
stringToIndex
public int stringToIndex(String s)
- Overrides:
stringToIndex
in class DTMStringPool
- Returns:
- integer index uniquely identifying the value of this string.