public class DefaultXPath extends Object implements XPath, NodeFilter, Serializable
| Constructor and Description |
|---|
DefaultXPath(String text)
Construct an XPath
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
booleanValueOf(Object context)
Retrieve a boolean-value interpretation of this XPath expression when
evaluated against a given context.
|
Object |
evaluate(Object context)
evaluate evaluates an XPath expression and returns the
result as an Object. |
protected Object |
getCompareValue(Node node)
DOCUMENT ME!
|
org.jaxen.FunctionContext |
getFunctionContext()
DOCUMENT ME!
|
org.jaxen.NamespaceContext |
getNamespaceContext()
DOCUMENT ME!
|
String |
getText()
Retrieve the textual XPath string used to initialize this Object
|
org.jaxen.VariableContext |
getVariableContext()
DOCUMENT ME!
|
protected void |
handleJaxenException(org.jaxen.JaxenException exception) |
boolean |
matches(Node node)
matches returns true if the given node matches the XPath
expression. |
Number |
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 |
parse(String text) |
protected void |
removeDuplicates(List list,
Map sortValues)
Removes items from the list which have duplicate values
|
List |
selectNodes(Object context)
|
List |
selectNodes(Object context,
XPath sortXPath)
|
List |
selectNodes(Object context,
XPath sortXPath,
boolean distinct)
|
Object |
selectObject(Object context)
selectObject evaluates an XPath expression and returns the
result as an Object. |
Node |
selectSingleNode(Object context)
|
void |
setFunctionContext(org.jaxen.FunctionContext functionContext)
Sets the function context to be used when evaluating XPath expressions
|
void |
setNamespaceContext(org.jaxen.NamespaceContext namespaceContext)
Sets the namespace context to be used when evaluating XPath expressions
|
void |
setNamespaceURIs(Map 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 expressions
|
void |
sort(List list)
sort sorts the given List of Nodes using this XPath
expression as a Comparator. |
void |
sort(List list,
boolean distinct)
sort sorts the given List of Nodes using this XPath
expression as a Comparatorand optionally removing duplicates. |
protected void |
sort(List list,
Map sortValues)
Sorts the list based on the sortValues for each node
|
String |
toString() |
String |
valueOf(Object context)
valueOf evaluates this XPath expression and returns the
textual representation of the results using the XPath string() function. |
public DefaultXPath(String text) throws InvalidXPathException
text - DOCUMENT ME!InvalidXPathException - DOCUMENT ME!public String getText()
public org.jaxen.FunctionContext getFunctionContext()
XPathgetFunctionContext in interface XPathpublic void setFunctionContext(org.jaxen.FunctionContext functionContext)
XPathsetFunctionContext in interface XPathfunctionContext - DOCUMENT ME!public org.jaxen.NamespaceContext getNamespaceContext()
XPathgetNamespaceContext in interface XPathpublic void setNamespaceURIs(Map map)
XPathSets 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);
setNamespaceURIs in interface XPathmap - the map containing the namespace mappingspublic void setNamespaceContext(org.jaxen.NamespaceContext namespaceContext)
XPathsetNamespaceContext in interface XPathnamespaceContext - DOCUMENT ME!public org.jaxen.VariableContext getVariableContext()
XPathgetVariableContext in interface XPathpublic void setVariableContext(org.jaxen.VariableContext variableContext)
XPathsetVariableContext in interface XPathvariableContext - DOCUMENT ME!public List selectNodes(Object context)
XPath
selectNodes performs this XPath expression on the given
Nodeor Listof Nodes instances appending all
the results together into a single list.
selectNodes in interface XPathcontext - is either a node or a list of nodes on which to evalute the
XPathpublic List selectNodes(Object context, XPath sortXPath)
XPath
selectNodes evaluates the XPath expression on the given
Nodeor Listof Nodes and returns the result as
a List of Node s sorted by the sort XPath
expression.
selectNodes in interface XPathcontext - is either a node or a list of nodes on which to evalute the
XPathsortXPath - is the XPath expression to sort byNode instancespublic List selectNodes(Object context, XPath sortXPath, boolean distinct)
XPath
selectNodes evaluates the XPath expression on the given
Nodeor Listof Nodes and returns the result as
a List of Node s sorted by the sort XPath
expression.
selectNodes in interface XPathcontext - 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 resultNode instancespublic Node selectSingleNode(Object context)
XPath
selectSingleNode evaluates this XPath expression on the
given Nodeor Listof Nodes and returns the
result as a single Node instance.
selectSingleNode in interface XPathcontext - is either a node or a list of nodes on which to evalute the
XPathNode instancepublic String valueOf(Object context)
XPath
valueOf evaluates this XPath expression and returns the
textual representation of the results using the XPath string() function.
public Number numberValueOf(Object context)
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.
numberValueOf in interface XPathcontext - is either a node or a list of nodes on which to evalute the
XPathpublic boolean booleanValueOf(Object context)
XPath
The boolean-value of the expression is determined per the
boolean(..) core function as defined in the XPath
specification. This means that an expression that selects zero nodes will
return false, while an expression that selects
one-or-more nodes will return true.
booleanValueOf in interface XPathcontext - The node, nodeset or Context object for evaluation. This value
can be nullpublic void sort(List list)
sort sorts the given List of Nodes using this XPath
expression as a Comparator.
public void sort(List list, boolean distinct)
sort sorts the given List of Nodes using this XPath
expression as a Comparatorand optionally removing duplicates.
public boolean matches(Node node)
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.
matches in interface NodeFiltermatches in interface XPathnode - DOCUMENT ME!protected void sort(List list, Map sortValues)
list - DOCUMENT ME!sortValues - DOCUMENT ME!protected void removeDuplicates(List list, Map sortValues)
list - DOCUMENT ME!sortValues - DOCUMENT ME!protected Object getCompareValue(Node node)
node - DOCUMENT ME!protected static org.jaxen.XPath parse(String text)
protected void setNSContext(Object context)
protected void handleJaxenException(org.jaxen.JaxenException exception)
throws XPathException
XPathExceptionCopyright © 2012 JBoss by Red Hat. All Rights Reserved.