org.apache.xml.dtm.ref
Class ExpandedNameTable

java.lang.Object
  |
  +--org.apache.xml.dtm.ref.ExpandedNameTable

public class ExpandedNameTable
extends java.lang.Object

This is a default implementation of a table that manages mappings from expanded names to expandedNameIDs. %REVIEW% Note that this is not really a separate table, or a separate pool. Instead, it's an access method build on top of the existing pools, using three pieces of information: the index numbers for a node's namespaceURI, localName, and node type, which are combined to yield a composite index number. %TBD% startup sequence -- how this gets access to the appropriate string pools in the DTMDocument/stylesheet.


Field Summary
static int ATTRIBUTE
           
static int CDATA_SECTION
           
static int COMMENT
           
static int DOCUMENT
           
static int DOCUMENT_FRAGMENT
           
static int DOCUMENT_TYPE
           
static int ELEMENT
           
static int ENTITY
           
static int ENTITY_REFERENCE
           
static int NAMESPACE
           
static int NOTATION
           
static int PROCESSING_INSTRUCTION
           
static int TEXT
           
 
Constructor Summary
ExpandedNameTable()
          Create an expanded name table that uses private string pool lookup.
ExpandedNameTable(DTMStringPool locNamesPool, DTMStringPool namespaceNames)
          Constructor ExpandedNameTable
 
Method Summary
 int getExpandedTypeID(int type)
          Given a type, return an expanded name ID.Any additional nodes that are created that have this expanded name will use this ID.
 int getExpandedTypeID(java.lang.String namespace, java.lang.String localName, int type)
          Given an expanded name, return an ID.
 java.lang.String getLocalName(int ExpandedNameID)
          Given an expanded-name ID, return the local name part.
 int getLocalNameID(int ExpandedNameID)
          Given an expanded-name ID, return the local name ID.
 java.lang.String getNamespace(int ExpandedNameID)
          Given an expanded-name ID, return the namespace URI part.
 int getNamespaceID(int ExpandedNameID)
          Given an expanded-name ID, return the namespace URI ID.
 short getType(int ExpandedNameID)
          Given an expanded-name ID, return the local name ID.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ELEMENT

public static final int ELEMENT

ATTRIBUTE

public static final int ATTRIBUTE

TEXT

public static final int TEXT

CDATA_SECTION

public static final int CDATA_SECTION

ENTITY_REFERENCE

public static final int ENTITY_REFERENCE

ENTITY

public static final int ENTITY

PROCESSING_INSTRUCTION

public static final int PROCESSING_INSTRUCTION

COMMENT

public static final int COMMENT

DOCUMENT

public static final int DOCUMENT

DOCUMENT_TYPE

public static final int DOCUMENT_TYPE

DOCUMENT_FRAGMENT

public static final int DOCUMENT_FRAGMENT

NOTATION

public static final int NOTATION

NAMESPACE

public static final int NAMESPACE
Constructor Detail

ExpandedNameTable

public ExpandedNameTable()
Create an expanded name table that uses private string pool lookup.

ExpandedNameTable

public ExpandedNameTable(DTMStringPool locNamesPool,
                         DTMStringPool namespaceNames)
Constructor ExpandedNameTable
Parameters:
locNamesPool - Local element names lookup.
namespaceNames - Namespace values lookup.
Method Detail

getExpandedTypeID

public int getExpandedTypeID(java.lang.String namespace,
                             java.lang.String localName,
                             int type)
Given an expanded name, return an ID. If the expanded-name does not exist in the internal tables, the entry will be created, and the ID will be returned. Any additional nodes that are created that have this expanded name will use this ID.
Parameters:
namespace -  
localName -  
Returns:
the expanded-name id of the node.

getExpandedTypeID

public int getExpandedTypeID(int type)
Given a type, return an expanded name ID.Any additional nodes that are created that have this expanded name will use this ID.
Parameters:
namespace -  
localName -  
Returns:
the expanded-name id of the node.

getLocalName

public java.lang.String getLocalName(int ExpandedNameID)
Given an expanded-name ID, return the local name part.
Parameters:
ExpandedNameID - an ID that represents an expanded-name.
Returns:
String Local name of this node, or null if the node has no name.

getLocalNameID

public final int getLocalNameID(int ExpandedNameID)
Given an expanded-name ID, return the local name ID.
Parameters:
ExpandedNameID - an ID that represents an expanded-name.
Returns:
The id of this local name.

getNamespace

public java.lang.String getNamespace(int ExpandedNameID)
Given an expanded-name ID, return the namespace URI part.
Parameters:
ExpandedNameID - an ID that represents an expanded-name.
Returns:
String URI value of this node's namespace, or null if no namespace was resolved.

getNamespaceID

public final int getNamespaceID(int ExpandedNameID)
Given an expanded-name ID, return the namespace URI ID.
Parameters:
ExpandedNameID - an ID that represents an expanded-name.
Returns:
The id of this namespace.

getType

public final short getType(int ExpandedNameID)
Given an expanded-name ID, return the local name ID.
Parameters:
ExpandedNameID - an ID that represents an expanded-name.
Returns:
The id of this local name.


Copyright © 2002 Apache XML Project. All Rights Reserved.