Class DefaultXPath
java.lang.Object
org.dom4j.xpath.DefaultXPath
- All Implemented Interfaces:
Serializable, NodeFilter, XPath
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate org.jaxen.NamespaceContext
private String
private org.jaxen.XPath
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
booleanValueOf
(Object context) Retrieve a boolean-value interpretation of this XPath expression when evaluated against a given context.evaluate
evaluates an XPath expression and returns the result as anObject
.protected Object
getCompareValue
(Node node) DOCUMENT ME!org.jaxen.FunctionContext
DOCUMENT ME!org.jaxen.NamespaceContext
DOCUMENT ME!getText()
Retrieve the textual XPath string used to initialize this Objectorg.jaxen.VariableContext
DOCUMENT ME!protected void
handleJaxenException
(org.jaxen.JaxenException exception) boolean
matches
returns true if the given node matches the XPath expression.numberValueOf
(Object context) numberValueOf
evaluates an XPath expression and returns the numeric value of the XPath expression if the XPath expression results is a number, or null if the result is not a number.protected static org.jaxen.XPath
protected void
Removes items from the list which have duplicate valuesselectNodes
(Object context) selectNodes
(Object context, XPath sortXPath) selectNodes
(Object context, XPath sortXPath, boolean distinct) selectObject
(Object context) selectObject
evaluates an XPath expression and returns the result as anObject
.selectSingleNode
(Object context) void
setFunctionContext
(org.jaxen.FunctionContext functionContext) Sets the function context to be used when evaluating XPath expressionsvoid
setNamespaceContext
(org.jaxen.NamespaceContext namespaceContext) Sets the namespace context to be used when evaluating XPath expressionsvoid
setNamespaceURIs
(Map<String, String> map) Sets the current NamespaceContext from a Map where the keys are the String namespace prefixes and the values are the namespace URIs.protected void
setNSContext
(Object context) void
setVariableContext
(org.jaxen.VariableContext variableContext) Sets the variable context to be used when evaluating XPath expressionsvoid
sort
sorts the given List of Nodes using this XPath expression as aComparator
.void
sort
sorts the given List of Nodes using this XPath expression as aComparator
and optionally removing duplicates.protected void
Sorts the list based on the sortValues for each nodetoString()
valueOf
evaluates this XPath expression and returns the textual representation of the results using the XPath string() function.
-
Field Details
-
text
-
xpath
private org.jaxen.XPath xpath -
namespaceContext
private org.jaxen.NamespaceContext namespaceContext
-
-
Constructor Details
-
DefaultXPath
Construct an XPath- Parameters:
text
- DOCUMENT ME!- Throws:
InvalidXPathException
- DOCUMENT ME!
-
-
Method Details
-
toString
-
getText
-
getFunctionContext
public org.jaxen.FunctionContext getFunctionContext()Description copied from interface:XPath
DOCUMENT ME!- Specified by:
getFunctionContext
in interfaceXPath
- Returns:
- the current function context
-
setFunctionContext
public void setFunctionContext(org.jaxen.FunctionContext functionContext) Description copied from interface:XPath
Sets the function context to be used when evaluating XPath expressions- Specified by:
setFunctionContext
in interfaceXPath
- Parameters:
functionContext
- DOCUMENT ME!
-
getNamespaceContext
public org.jaxen.NamespaceContext getNamespaceContext()Description copied from interface:XPath
DOCUMENT ME!- Specified by:
getNamespaceContext
in interfaceXPath
- Returns:
- the current namespace context
-
setNamespaceURIs
Description copied from interface:XPath
Sets the current NamespaceContext from a Map where the keys are the String namespace prefixes and the values are the namespace URIs. For example:Map uris = new HashMap(); uris.put("SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/"); uris.put("m", "urn:xmethodsBabelFish"); XPath xpath = document .createXPath("SOAP-ENV:Envelope/SOAP-ENV:Body/m:BabelFish"); xpath.setNamespaceURIs(uris); Node babelfish = xpath.selectSingleNode(document);
- Specified by:
setNamespaceURIs
in interfaceXPath
- Parameters:
map
- the map containing the namespace mappings
-
setNamespaceContext
public void setNamespaceContext(org.jaxen.NamespaceContext namespaceContext) Description copied from interface:XPath
Sets the namespace context to be used when evaluating XPath expressions- Specified by:
setNamespaceContext
in interfaceXPath
- Parameters:
namespaceContext
- DOCUMENT ME!
-
getVariableContext
public org.jaxen.VariableContext getVariableContext()Description copied from interface:XPath
DOCUMENT ME!- Specified by:
getVariableContext
in interfaceXPath
- Returns:
- the current variable context
-
setVariableContext
public void setVariableContext(org.jaxen.VariableContext variableContext) Description copied from interface:XPath
Sets the variable context to be used when evaluating XPath expressions- Specified by:
setVariableContext
in interfaceXPath
- Parameters:
variableContext
- DOCUMENT ME!
-
evaluate
-
selectObject
-
selectNodes
Description copied from interface:XPath
selectNodes
performs this XPath expression on the givenNode
orList
ofNode
s instances appending all the results together into a single list.- Specified by:
selectNodes
in interfaceXPath
- Parameters:
context
- is either a node or a list of nodes on which to evalute the XPath- Returns:
- the results of all the XPath evaluations as a single list
-
selectNodes
Description copied from interface:XPath
selectNodes
evaluates the XPath expression on the givenNode
orList
ofNode
s and returns the result as aList
ofNode
s sorted by the sort XPath expression.- Specified by:
selectNodes
in interfaceXPath
- Parameters:
context
- is either a node or a list of nodes on which to evalute the XPathsortXPath
- is the XPath expression to sort by- Returns:
- a list of
Node
instances
-
selectNodes
Description copied from interface:XPath
selectNodes
evaluates the XPath expression on the givenNode
orList
ofNode
s and returns the result as aList
ofNode
s sorted by the sort XPath expression.- Specified by:
selectNodes
in interfaceXPath
- Parameters:
context
- is either a node or a list of nodes on which to evalute the XPathsortXPath
- is the XPath expression to sort bydistinct
- specifies whether or not duplicate values of the sort expression are allowed. If this parameter is true then only distinct sort expressions values are included in the result- Returns:
- a list of
Node
instances
-
selectSingleNode
Description copied from interface:XPath
selectSingleNode
evaluates this XPath expression on the givenNode
orList
ofNode
s and returns the result as a singleNode
instance.- Specified by:
selectSingleNode
in interfaceXPath
- Parameters:
context
- is either a node or a list of nodes on which to evalute the XPath- Returns:
- a single matching
Node
instance
-
valueOf
Description copied from interface:XPath
valueOf
evaluates this XPath expression and returns the textual representation of the results using the XPath string() function. -
numberValueOf
Description copied from interface:XPath
numberValueOf
evaluates an XPath expression and returns the numeric value of the XPath expression if the XPath expression results is a number, or null if the result is not a number.- Specified by:
numberValueOf
in interfaceXPath
- Parameters:
context
- is either a node or a list of nodes on which to evalute the XPath- Returns:
- the numeric result of the XPath expression or null if the result is not a number.
-
booleanValueOf
Description copied from interface:XPath
Retrieve a boolean-value interpretation of this XPath expression when evaluated against a given context. The boolean-value of the expression is determined per theboolean(..)
core function as defined in the XPath specification. This means that an expression that selects zero nodes will returnfalse
, while an expression that selects one-or-more nodes will returntrue
.- Specified by:
booleanValueOf
in interfaceXPath
- Parameters:
context
- The node, nodeset or Context object for evaluation. This value can be null- Returns:
- The boolean-value interpretation of this expression.
-
sort
sort
sorts the given List of Nodes using this XPath expression as aComparator
. -
sort
sort
sorts the given List of Nodes using this XPath expression as aComparator
and optionally removing duplicates. -
matches
Description copied from interface:XPath
matches
returns true if the given node matches the XPath expression. To be more precise when evaluating this XPath expression on the given node the result set must include the node.- Specified by:
matches
in interfaceNodeFilter
- Specified by:
matches
in interfaceXPath
- Parameters:
node
- DOCUMENT ME!- Returns:
- true if the given node matches this XPath expression
-
sort
-
removeDuplicates
-
getCompareValue
-
parse
-
setNSContext
-
handleJaxenException
- Throws:
XPathException
-