org.apache.xalan.xsltc.dom
Class MultiDOM

java.lang.Object
  extended by org.apache.xalan.xsltc.dom.MultiDOM
All Implemented Interfaces:
DOM

public final class MultiDOM
extends java.lang.Object
implements DOM


Nested Class Summary
private  class MultiDOM.AxisIterator
           
private  class MultiDOM.NodeValueIterator
          This is a specialised iterator for predicates comparing node or attribute values to variable or parameter values.
 
Field Summary
private  DOM[] _adapters
           
private  Hashtable _documents
           
private  DTMManager _dtmManager
           
private  int _free
           
private  DOMAdapter _main
           
private  int _size
           
private static int INITIAL_SIZE
           
private static int NO_TYPE
           
 
Fields inherited from interface org.apache.xalan.xsltc.DOM
ADAPTIVE_RTF, FIRST_TYPE, NULL, RETURN_CURRENT, RETURN_PARENT, SIMPLE_RTF, TREE_RTF
 
Constructor Summary
MultiDOM(DOM main)
           
 
Method Summary
 int addDOMAdapter(DOMAdapter adapter)
           
private  int addDOMAdapter(DOMAdapter adapter, boolean indexByURI)
           
 void characters(int textNode, SerializationHandler handler)
           
 void copy(DTMAxisIterator nodes, SerializationHandler handler)
           
 void copy(int node, SerializationHandler handler)
           
 int getAttributeNode(int type, int el)
           
 DTMAxisIterator getAxisIterator(int axis)
           
 DTMAxisIterator getChildren(int node)
           
 int getDocument()
           
 int getDocumentMask(java.lang.String uri)
           
 java.lang.String getDocumentURI(int node)
           
 DOM getDOMAdapter(java.lang.String uri)
           
 int getDTMId(int nodeHandle)
           
 DTMManager getDTMManager()
           
 Hashtable getElementsWithIDs()
           
 int getExpandedTypeID(int node)
           
 DTMAxisIterator getIterator()
          Returns singleton iterator containing the document root
 java.lang.String getLanguage(int node)
           
 DOM getMain()
           
 DTMAxisIterator getNamespaceAxisIterator(int axis, int ns)
           
 java.lang.String getNamespaceName(int node)
           
 int getNamespaceType(int node)
           
 int getNodeHandle(int nodeId)
           
 int getNodeIdent(int nodeHandle)
           
 java.lang.String getNodeName(int node)
           
 java.lang.String getNodeNameX(int node)
           
 DTMAxisIterator getNodeValueIterator(DTMAxisIterator iterator, int type, java.lang.String value, boolean op)
           
 int getNSType(int node)
           
 DTMAxisIterator getNthDescendant(int node, int n, boolean includeself)
           
 SerializationHandler getOutputDomBuilder()
          Returns a DOMBuilder class wrapped in a SAX adapter.
 int getParent(int node)
           
 DOM getResultTreeFrag(int initSize, int rtfType)
           
 DOM getResultTreeFrag(int initSize, int rtfType, boolean addToManager)
           
 int getSize()
           
 java.lang.String getStringValue()
           
 java.lang.String getStringValueX(int node)
           
 DTMAxisIterator getTypedAxisIterator(int axis, int type)
           
 DTMAxisIterator getTypedChildren(int type)
           
 java.lang.String getUnparsedEntityURI(java.lang.String entity)
           
 boolean isAttribute(int node)
           
 boolean isElement(int node)
           
 boolean lessThan(int node1, int node2)
           
 java.lang.String lookupNamespace(int node, java.lang.String prefix)
           
 org.w3c.dom.Node makeNode(DTMAxisIterator iter)
           
 org.w3c.dom.Node makeNode(int index)
           
 org.w3c.dom.NodeList makeNodeList(DTMAxisIterator iter)
           
 org.w3c.dom.NodeList makeNodeList(int index)
           
 int nextMask()
           
 DTMAxisIterator orderNodes(DTMAxisIterator source, int node)
           
 void setFilter(StripFilter filter)
           
 void setupMapping(java.lang.String[] names, java.lang.String[] uris, int[] types, java.lang.String[] namespaces)
           
 java.lang.String shallowCopy(int node, SerializationHandler handler)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NO_TYPE

private static final int NO_TYPE
See Also:
Constant Field Values

INITIAL_SIZE

private static final int INITIAL_SIZE
See Also:
Constant Field Values

_adapters

private DOM[] _adapters

_main

private DOMAdapter _main

_dtmManager

private DTMManager _dtmManager

_free

private int _free

_size

private int _size

_documents

private Hashtable _documents
Constructor Detail

MultiDOM

public MultiDOM(DOM main)
Method Detail

nextMask

public int nextMask()

setupMapping

public void setupMapping(java.lang.String[] names,
                         java.lang.String[] uris,
                         int[] types,
                         java.lang.String[] namespaces)
Specified by:
setupMapping in interface DOM

addDOMAdapter

public int addDOMAdapter(DOMAdapter adapter)

addDOMAdapter

private int addDOMAdapter(DOMAdapter adapter,
                          boolean indexByURI)

getDocumentMask

public int getDocumentMask(java.lang.String uri)

getDOMAdapter

public DOM getDOMAdapter(java.lang.String uri)

getDocument

public int getDocument()
Specified by:
getDocument in interface DOM

getDTMManager

public DTMManager getDTMManager()

getIterator

public DTMAxisIterator getIterator()
Returns singleton iterator containing the document root

Specified by:
getIterator in interface DOM

getStringValue

public java.lang.String getStringValue()
Specified by:
getStringValue in interface DOM

getChildren

public DTMAxisIterator getChildren(int node)
Specified by:
getChildren in interface DOM

getTypedChildren

public DTMAxisIterator getTypedChildren(int type)
Specified by:
getTypedChildren in interface DOM

getAxisIterator

public DTMAxisIterator getAxisIterator(int axis)
Specified by:
getAxisIterator in interface DOM

getTypedAxisIterator

public DTMAxisIterator getTypedAxisIterator(int axis,
                                            int type)
Specified by:
getTypedAxisIterator in interface DOM

getNthDescendant

public DTMAxisIterator getNthDescendant(int node,
                                        int n,
                                        boolean includeself)
Specified by:
getNthDescendant in interface DOM

getNodeValueIterator

public DTMAxisIterator getNodeValueIterator(DTMAxisIterator iterator,
                                            int type,
                                            java.lang.String value,
                                            boolean op)
Specified by:
getNodeValueIterator in interface DOM

getNamespaceAxisIterator

public DTMAxisIterator getNamespaceAxisIterator(int axis,
                                                int ns)
Specified by:
getNamespaceAxisIterator in interface DOM

orderNodes

public DTMAxisIterator orderNodes(DTMAxisIterator source,
                                  int node)
Specified by:
orderNodes in interface DOM

getExpandedTypeID

public int getExpandedTypeID(int node)
Specified by:
getExpandedTypeID in interface DOM

getNamespaceType

public int getNamespaceType(int node)
Specified by:
getNamespaceType in interface DOM

getNSType

public int getNSType(int node)
Specified by:
getNSType in interface DOM

getParent

public int getParent(int node)
Specified by:
getParent in interface DOM

getAttributeNode

public int getAttributeNode(int type,
                            int el)
Specified by:
getAttributeNode in interface DOM

getNodeName

public java.lang.String getNodeName(int node)
Specified by:
getNodeName in interface DOM

getNodeNameX

public java.lang.String getNodeNameX(int node)
Specified by:
getNodeNameX in interface DOM

getNamespaceName

public java.lang.String getNamespaceName(int node)
Specified by:
getNamespaceName in interface DOM

getStringValueX

public java.lang.String getStringValueX(int node)
Specified by:
getStringValueX in interface DOM

copy

public void copy(int node,
                 SerializationHandler handler)
          throws TransletException
Specified by:
copy in interface DOM
Throws:
TransletException

copy

public void copy(DTMAxisIterator nodes,
                 SerializationHandler handler)
          throws TransletException
Specified by:
copy in interface DOM
Throws:
TransletException

shallowCopy

public java.lang.String shallowCopy(int node,
                                    SerializationHandler handler)
                             throws TransletException
Specified by:
shallowCopy in interface DOM
Throws:
TransletException

lessThan

public boolean lessThan(int node1,
                        int node2)
Specified by:
lessThan in interface DOM

characters

public void characters(int textNode,
                       SerializationHandler handler)
                throws TransletException
Specified by:
characters in interface DOM
Throws:
TransletException

setFilter

public void setFilter(StripFilter filter)
Specified by:
setFilter in interface DOM

makeNode

public org.w3c.dom.Node makeNode(int index)
Specified by:
makeNode in interface DOM

makeNode

public org.w3c.dom.Node makeNode(DTMAxisIterator iter)
Specified by:
makeNode in interface DOM

makeNodeList

public org.w3c.dom.NodeList makeNodeList(int index)
Specified by:
makeNodeList in interface DOM

makeNodeList

public org.w3c.dom.NodeList makeNodeList(DTMAxisIterator iter)
Specified by:
makeNodeList in interface DOM

getLanguage

public java.lang.String getLanguage(int node)
Specified by:
getLanguage in interface DOM

getSize

public int getSize()
Specified by:
getSize in interface DOM

getDocumentURI

public java.lang.String getDocumentURI(int node)
Specified by:
getDocumentURI in interface DOM

isElement

public boolean isElement(int node)
Specified by:
isElement in interface DOM

isAttribute

public boolean isAttribute(int node)
Specified by:
isAttribute in interface DOM

getDTMId

public int getDTMId(int nodeHandle)

getNodeIdent

public int getNodeIdent(int nodeHandle)
Specified by:
getNodeIdent in interface DOM

getNodeHandle

public int getNodeHandle(int nodeId)
Specified by:
getNodeHandle in interface DOM

getResultTreeFrag

public DOM getResultTreeFrag(int initSize,
                             int rtfType)
Specified by:
getResultTreeFrag in interface DOM

getResultTreeFrag

public DOM getResultTreeFrag(int initSize,
                             int rtfType,
                             boolean addToManager)
Specified by:
getResultTreeFrag in interface DOM

getMain

public DOM getMain()

getOutputDomBuilder

public SerializationHandler getOutputDomBuilder()
Returns a DOMBuilder class wrapped in a SAX adapter.

Specified by:
getOutputDomBuilder in interface DOM

lookupNamespace

public java.lang.String lookupNamespace(int node,
                                        java.lang.String prefix)
                                 throws TransletException
Specified by:
lookupNamespace in interface DOM
Throws:
TransletException

getUnparsedEntityURI

public java.lang.String getUnparsedEntityURI(java.lang.String entity)
Specified by:
getUnparsedEntityURI in interface DOM

getElementsWithIDs

public Hashtable getElementsWithIDs()
Specified by:
getElementsWithIDs in interface DOM