org.exolab.adaptx.xml.dom2xpn
Class DocumentWrapperXPathNode

java.lang.Object
  extended by org.exolab.adaptx.xpath.XPathNode
      extended by org.exolab.adaptx.xml.dom2xpn.DocumentWrapperXPathNode
All Implemented Interfaces:
java.io.Serializable

public class DocumentWrapperXPathNode
extends XPathNode

An XPathNode wrapper for DOM Element nodes, used by the implementation of XPathNode for the W3C DOM API

Version:
$Revision: 3830 $ $Date: 2003-09-09 00:44:41 -0400 (Tue, 09 Sep 2003) $
Author:
Keith Visco
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.exolab.adaptx.xpath.XPathNode
ATTRIBUTE, COMMENT, ELEMENT, NAMESPACE, PI, ROOT, TEXT
 
Constructor Summary
DocumentWrapperXPathNode(org.w3c.dom.Document document)
          Creates a new DocumentWrapperXPathNode
 
Method Summary
 java.lang.String getAttribute(java.lang.String uri, java.lang.String local)
          Returns the value of the named attribute, or null if the node has no such attribute.
 XPathNode getFirstAttribute()
          Returns the first in a list of attribute nodes, or null if the node has no attributes.
 XPathNode getFirstChild()
          Returns the first child node of this node, or null if the node has no children.
 XPathNode getFirstNamespace()
          Returns the first in a list of namespace nodes, or null if the node has no namespaces.
 java.lang.String getLocalName()
          Returns the local name of the node.
 java.lang.String getNamespacePrefix(java.lang.String uri)
          Returns the namespace prefix associated with this namespace URI, as defined in the context of this node.
 java.lang.String getNamespaceURI()
          Returns the namespace URI the node.
 java.lang.String getNamespaceURI(java.lang.String prefix)
          Returns the namespace URI associated with this namespace prefix, as defined in the context of this node.
 XPathNode getNext()
          Returns the next sibling node in document order, or null if this node is the last node.
 int getNodeType()
          Returns the type of this node.
 XPathNode getParentNode()
          Returns the parent node, or null if the node has no parent.
 XPathNode getPrevious()
          Returns the previous sibling node in document order, or null if this node is the first node.
 XPathNode getRootNode()
          Returns the root node.
 java.lang.String getStringValue()
          Returns the string value of the node.
 boolean hasChildNodes()
          Returns true if this node has any child nodes.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DocumentWrapperXPathNode

public DocumentWrapperXPathNode(org.w3c.dom.Document document)
Creates a new DocumentWrapperXPathNode

Parameters:
document - the Document that this XPathNode wraps. This must not be null.
Method Detail

getNodeType

public int getNodeType()
Returns the type of this node.

Returns:
The type of this node

getLocalName

public java.lang.String getLocalName()
Returns the local name of the node. Returns the local name of an element or attribute, the prefix of a namespace node, the target of a processing instruction, or null for all other node types.

Returns:
The local name of the node, or null if the node has no name

getNamespaceURI

public java.lang.String getNamespaceURI()
Returns the namespace URI the node. Returns the namespace URI of an element, attribute or namespace node, or null for all other node types.

Returns:
The namespace URI of the node, or null if the node has no namespace URI

getRootNode

public XPathNode getRootNode()
Returns the root node.

Returns:
The root node

getStringValue

public java.lang.String getStringValue()
Returns the string value of the node. The string value of a text node or an attribute node is it's text value. The string value of an element or a root node is the concatenation of the string value of all its child nodes. The string value of a namespace node is its namespace URI. The string value of a processing instruction is the instruction, and the string value of a comment is the comment text.

Returns:
The string value of the node

getNamespaceURI

public java.lang.String getNamespaceURI(java.lang.String prefix)
Returns the namespace URI associated with this namespace prefix, as defined in the context of this node. Returns null if the prefix is undefined. Returns empty if the prefix is defined and associated with no namespace. This method is valid only for element nodes.

Parameters:
prefix - The namespace prefix
Returns:
The namespace URI, or null

getNamespacePrefix

public java.lang.String getNamespacePrefix(java.lang.String uri)
Returns the namespace prefix associated with this namespace URI, as defined in the context of this node. Returns null if no prefix is defined for this namespace URI. Returns an empty string if the default prefix is associated with this namespace URI. This method is valid only for element nodes.

Parameters:
uri - The namespace URI
Returns:
The namespace prefix, or null

getFirstChild

public XPathNode getFirstChild()
Returns the first child node of this node, or null if the node has no children. Child nodes are only returned for an element or root node.

Returns:
The first child node of this node, or null

hasChildNodes

public boolean hasChildNodes()
Returns true if this node has any child nodes.

Returns:
True if this node has any child nodes.

getNext

public XPathNode getNext()
Returns the next sibling node in document order, or null if this node is the last node. This method is value for any node except the root node.

Specified by:
getNext in class XPathNode
Returns:
The next sibling node in document order, or null

getPrevious

public XPathNode getPrevious()
Returns the previous sibling node in document order, or null if this node is the first node. This method can is valid for any node except the root node.

Specified by:
getPrevious in class XPathNode
Returns:
The previous sibling node in document order, or null

getFirstAttribute

public XPathNode getFirstAttribute()
Returns the first in a list of attribute nodes, or null if the node has no attributes. This method is valid only for the element node.

Specified by:
getFirstAttribute in class XPathNode
Returns:
The first in a list of attribute nodes, or null

getAttribute

public java.lang.String getAttribute(java.lang.String uri,
                                     java.lang.String local)
Returns the value of the named attribute, or null if the node has no such attribute. If the argument uri is null, the node's namespace URI will be used. This method is valid only for the element node.

Specified by:
getAttribute in class XPathNode
Parameters:
uri - The attribute's namespace URI, or null
local - The attribute's local name
Returns:
The attribute's value, or null if no such attribute exists

getFirstNamespace

public XPathNode getFirstNamespace()
Returns the first in a list of namespace nodes, or null if the node has no namespaces. This method is valid only for the element node.

Specified by:
getFirstNamespace in class XPathNode
Returns:
The first in a list of namespace nodes, or null

getParentNode

public XPathNode getParentNode()
Returns the parent node, or null if the node has no parent. This method is valid on all node types except the root node. Attribute and namespace nodes have the element as their parent node.

Specified by:
getParentNode in class XPathNode
Returns:
The parent node, or null