Package org.jaxen.dom4j
Class DocumentNavigator
java.lang.Object
org.jaxen.DefaultNavigator
org.jaxen.dom4j.DocumentNavigator
- All Implemented Interfaces:
Serializable
,NamedAccessNavigator
,Navigator
Interface for navigating around the DOM4J object model.
This class is not intended for direct usage, but is used by the Jaxen engine during evaluation.
- Author:
- bob mcwhirter, Stephen Colebourne
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAttributeAxisIterator
(Object contextNode) Retrieve anIterator
matching theattribute
XPath axis.getAttributeAxisIterator
(Object contextNode, String localName, String namespacePrefix, String namespaceURI) Retrieves anIterator
over the attribute elements that match the supplied name.getAttributeName
(Object obj) Retrieve the local name of the given attribute node.Retrieve the namespace URI of the given attribute node.getAttributeQName
(Object obj) Retrieve the qualified name of the given attribute node.Retrieve the string-value of an attribute node.getChildAxisIterator
(Object contextNode) ThrowsUnsupportedAxisException
.getChildAxisIterator
(Object contextNode, String localName, String namespacePrefix, String namespaceURI) Retrieves anIterator
over the child elements that match the supplied name.Retrieve the string-value of a comment node.getDocument
(String uri) Default implementation that always returns null.getDocumentNode
(Object contextNode) Returns null.getElementName
(Object obj) Retrieve the local name of the given element node.Retrieve the namespace URI of the given element node.getElementQName
(Object obj) Retrieve the qualified name of the given element node.Retrieve the string-value of an element node.static Navigator
Retrieve the singleton instance of thisDocumentNavigator
.getNamespaceAxisIterator
(Object contextNode) ThrowsUnsupportedAxisException
.getNamespacePrefix
(Object obj) Retrieve the namespace prefix of a namespace node.Retrieve the string-value of a namespace node.short
getNodeType
(Object node) Returns a number that identifies the type of node that the given object represents in this navigator.getParentAxisIterator
(Object contextNode) ThrowsUnsupportedAxisException
.getParentNode
(Object contextNode) Default inefficient implementation.Returns null.Returns null.org.dom4j.io.SAXReader
getTextStringValue
(Object obj) Retrieve the string-value of a text node.boolean
isAttribute
(Object obj) Returns whether the given object is an attribute node.boolean
Returns whether the given object is a comment node.boolean
isDocument
(Object obj) Returns whether the given object is a document node.boolean
Returns whether the given object is an element node.boolean
isNamespace
(Object obj) Returns whether the given object is a namespace node.boolean
Returns whether the given object is a processing-instruction node.boolean
Returns whether the given object is a text node.parseXPath
(String xpath) Returns a parsed form of the given XPath string, which will be suitable for queries on DOM4J documents.void
setSAXReader
(org.dom4j.io.SAXReader reader) translateNamespacePrefixToUri
(String prefix, Object context) Returns null.Methods inherited from class org.jaxen.DefaultNavigator
getAncestorAxisIterator, getAncestorOrSelfAxisIterator, getDescendantAxisIterator, getDescendantOrSelfAxisIterator, getElementById, getFollowingAxisIterator, getFollowingSiblingAxisIterator, getPrecedingAxisIterator, getPrecedingSiblingAxisIterator, getSelfAxisIterator
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jaxen.Navigator
getAncestorAxisIterator, getAncestorOrSelfAxisIterator, getDescendantAxisIterator, getDescendantOrSelfAxisIterator, getElementById, getFollowingAxisIterator, getFollowingSiblingAxisIterator, getPrecedingAxisIterator, getPrecedingSiblingAxisIterator, getSelfAxisIterator
-
Constructor Details
-
DocumentNavigator
public DocumentNavigator()
-
-
Method Details
-
getInstance
Retrieve the singleton instance of thisDocumentNavigator
. -
isElement
Description copied from interface:Navigator
Returns whether the given object is an element node. -
isComment
Description copied from interface:Navigator
Returns whether the given object is a comment node. -
isText
Description copied from interface:Navigator
Returns whether the given object is a text node. -
isAttribute
Description copied from interface:Navigator
Returns whether the given object is an attribute node.- Specified by:
isAttribute
in interfaceNavigator
- Parameters:
obj
- the object to test- Returns:
true
if the object is an attribute node, elsefalse
-
isProcessingInstruction
Description copied from interface:Navigator
Returns whether the given object is a processing-instruction node.- Specified by:
isProcessingInstruction
in interfaceNavigator
- Parameters:
obj
- the object to test- Returns:
true
if the object is a processing-instruction node, elsefalse
-
isDocument
Description copied from interface:Navigator
Returns whether the given object is a document node. A document node is the node that is selected by the XPath expression/
.- Specified by:
isDocument
in interfaceNavigator
- Parameters:
obj
- the object to test- Returns:
true
if the object is a document node, elsefalse
-
isNamespace
Description copied from interface:Navigator
Returns whether the given object is a namespace node.- Specified by:
isNamespace
in interfaceNavigator
- Parameters:
obj
- the object to test- Returns:
true
if the object is a namespace node, elsefalse
-
getElementName
Description copied from interface:Navigator
Retrieve the local name of the given element node.- Specified by:
getElementName
in interfaceNavigator
- Parameters:
obj
- the context element node- Returns:
- the local name of the element node
-
getElementNamespaceUri
Description copied from interface:Navigator
Retrieve the namespace URI of the given element node.- Specified by:
getElementNamespaceUri
in interfaceNavigator
- Parameters:
obj
- the context element node- Returns:
- the namespace URI of the element node
-
getElementQName
Description copied from interface:Navigator
Retrieve the qualified name of the given element node.- Specified by:
getElementQName
in interfaceNavigator
- Parameters:
obj
- the context element node- Returns:
- the qualified name of the element node
-
getAttributeName
Description copied from interface:Navigator
Retrieve the local name of the given attribute node.- Specified by:
getAttributeName
in interfaceNavigator
- Parameters:
obj
- the context attribute node- Returns:
- the local name of the attribute node
-
getAttributeNamespaceUri
Description copied from interface:Navigator
Retrieve the namespace URI of the given attribute node.- Specified by:
getAttributeNamespaceUri
in interfaceNavigator
- Parameters:
obj
- the context attribute node- Returns:
- the namespace URI of the attribute node
-
getAttributeQName
Description copied from interface:Navigator
Retrieve the qualified name of the given attribute node.- Specified by:
getAttributeQName
in interfaceNavigator
- Parameters:
obj
- the context attribute node- Returns:
- the qualified name of the attribute node
-
getChildAxisIterator
Description copied from class:DefaultNavigator
ThrowsUnsupportedAxisException
. Subclasses should override this method.- Specified by:
getChildAxisIterator
in interfaceNavigator
- Overrides:
getChildAxisIterator
in classDefaultNavigator
- Parameters:
contextNode
- the node to start from- Returns:
- never returns
-
getChildAxisIterator
public Iterator getChildAxisIterator(Object contextNode, String localName, String namespacePrefix, String namespaceURI) Retrieves anIterator
over the child elements that match the supplied name.- Specified by:
getChildAxisIterator
in interfaceNamedAccessNavigator
- Parameters:
contextNode
- the origin context nodelocalName
- the local name of the children to return, always presentnamespacePrefix
- the prefix of the namespace of the children to returnnamespaceURI
- the uri of the namespace of the children to return- Returns:
- an Iterator that traverses the named children, or null if none
-
getParentAxisIterator
Description copied from class:DefaultNavigator
ThrowsUnsupportedAxisException
. Subclasses should override this method.- Specified by:
getParentAxisIterator
in interfaceNavigator
- Overrides:
getParentAxisIterator
in classDefaultNavigator
- Parameters:
contextNode
- the node to start from- Returns:
- never returns
-
getAttributeAxisIterator
Description copied from class:DefaultNavigator
Retrieve anIterator
matching theattribute
XPath axis.- Specified by:
getAttributeAxisIterator
in interfaceNavigator
- Overrides:
getAttributeAxisIterator
in classDefaultNavigator
- Parameters:
contextNode
- the original context node- Returns:
- an Iterator capable of traversing the axis, not null
-
getAttributeAxisIterator
public Iterator getAttributeAxisIterator(Object contextNode, String localName, String namespacePrefix, String namespaceURI) Retrieves anIterator
over the attribute elements that match the supplied name.- Specified by:
getAttributeAxisIterator
in interfaceNamedAccessNavigator
- Parameters:
contextNode
- the origin context nodelocalName
- the local name of the attributes to return, always presentnamespacePrefix
- the prefix of the namespace of the attributes to returnnamespaceURI
- the URI of the namespace of the attributes to return- Returns:
- an Iterator that traverses the named attributes, not null
-
getNamespaceAxisIterator
Description copied from class:DefaultNavigator
ThrowsUnsupportedAxisException
. Subclasses that support the namespace axis must override this method.- Specified by:
getNamespaceAxisIterator
in interfaceNavigator
- Overrides:
getNamespaceAxisIterator
in classDefaultNavigator
- Parameters:
contextNode
- the node to start from- Returns:
- never returns
-
getDocumentNode
Description copied from class:DefaultNavigator
Returns null.- Specified by:
getDocumentNode
in interfaceNavigator
- Overrides:
getDocumentNode
in classDefaultNavigator
- Parameters:
contextNode
- the node to start from- Returns:
- null
- See Also:
-
parseXPath
Returns a parsed form of the given XPath string, which will be suitable for queries on DOM4J documents.- Specified by:
parseXPath
in interfaceNavigator
- Parameters:
xpath
- the XPath expression- Returns:
- a new XPath expression object
- Throws:
SAXPathException
- if the string is not a syntactically correct XPath expression- See Also:
-
getParentNode
Description copied from class:DefaultNavigator
Default inefficient implementation. Subclasses should override this method.- Specified by:
getParentNode
in interfaceNavigator
- Overrides:
getParentNode
in classDefaultNavigator
- Parameters:
contextNode
- the node whose parent to return- Returns:
- the parent node
- See Also:
-
getTextStringValue
Description copied from interface:Navigator
Retrieve the string-value of a text node. This must not be null and should not be the empty string. The XPath data model does not allow empty text nodes.- Specified by:
getTextStringValue
in interfaceNavigator
- Parameters:
obj
- the text node- Returns:
- the string-value of the node
-
getElementStringValue
Description copied from interface:Navigator
Retrieve the string-value of an element node. This may be the empty string if the element is empty, but must not be null.- Specified by:
getElementStringValue
in interfaceNavigator
- Parameters:
obj
- the comment node.- Returns:
- the string-value of the node.
-
getAttributeStringValue
Description copied from interface:Navigator
Retrieve the string-value of an attribute node. This should be the XML 1.0 normalized attribute value. This may be the empty string but must not be null.- Specified by:
getAttributeStringValue
in interfaceNavigator
- Parameters:
obj
- the attribute node- Returns:
- the string-value of the node
-
getNamespaceStringValue
Description copied from interface:Navigator
Retrieve the string-value of a namespace node. This is generally the namespace URI. This may be the empty string but must not be null.- Specified by:
getNamespaceStringValue
in interfaceNavigator
- Parameters:
obj
- the namespace node- Returns:
- the string-value of the node
-
getNamespacePrefix
Description copied from interface:Navigator
Retrieve the namespace prefix of a namespace node.- Specified by:
getNamespacePrefix
in interfaceNavigator
- Parameters:
obj
- the namespace node- Returns:
- the prefix associated with the node
-
getCommentStringValue
Description copied from interface:Navigator
Retrieve the string-value of a comment node. This may be the empty string if the comment is empty, but must not be null.- Specified by:
getCommentStringValue
in interfaceNavigator
- Parameters:
obj
- the comment node- Returns:
- the string-value of the node
-
translateNamespacePrefixToUri
Description copied from class:DefaultNavigator
Returns null.- Specified by:
translateNamespacePrefixToUri
in interfaceNavigator
- Overrides:
translateNamespacePrefixToUri
in classDefaultNavigator
- Parameters:
prefix
- the prefix to translatecontext
- the node to start from- Returns:
- null
- See Also:
-
getNodeType
Description copied from class:DefaultNavigator
Returns a number that identifies the type of node that the given object represents in this navigator.- Specified by:
getNodeType
in interfaceNavigator
- Overrides:
getNodeType
in classDefaultNavigator
- Parameters:
node
- ????- Returns:
- ????
- See Also:
-
getDocument
Description copied from class:DefaultNavigator
Default implementation that always returns null. Override in subclass if the subclass can load documents.- Specified by:
getDocument
in interfaceNavigator
- Overrides:
getDocument
in classDefaultNavigator
- Parameters:
uri
- the URL of the document to load- Returns:
- null
- Throws:
FunctionCallException
- if an error occurs while loading the URL; e.g. an I/O error or the document is malformed
-
getProcessingInstructionTarget
Description copied from class:DefaultNavigator
Returns null.- Specified by:
getProcessingInstructionTarget
in interfaceNavigator
- Overrides:
getProcessingInstructionTarget
in classDefaultNavigator
- Parameters:
obj
- the node to start from- Returns:
- null
-
getProcessingInstructionData
Description copied from class:DefaultNavigator
Returns null.- Specified by:
getProcessingInstructionData
in interfaceNavigator
- Overrides:
getProcessingInstructionData
in classDefaultNavigator
- Parameters:
obj
- the node to start from- Returns:
- null
-
getSAXReader
public org.dom4j.io.SAXReader getSAXReader() -
setSAXReader
public void setSAXReader(org.dom4j.io.SAXReader reader)
-