|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.dom4j.xpath.DefaultXPath
Default implementation of XPath
which uses the
Jaxen project.
Constructor Summary | |
DefaultXPath(java.lang.String text)
Construct an XPath |
Method Summary | |
boolean |
booleanValueOf(java.lang.Object context)
Retrieve a boolean-value interpretation of this XPath expression when evaluated against a given context. |
java.lang.Object |
evaluate(java.lang.Object context)
evaluate evaluates an XPath expression and returns
the result as an Object . |
protected java.lang.Object |
getCompareValue(Node node)
|
org.jaxen.FunctionContext |
getFunctionContext()
|
org.jaxen.NamespaceContext |
getNamespaceContext()
|
java.lang.String |
getText()
Retrieve the textual XPath string used to initialize this Object |
org.jaxen.VariableContext |
getVariableContext()
|
protected void |
handleJaxenException(org.jaxen.JaxenException e)
|
boolean |
matches(Node node)
matches returns true if the given node matches
the XPath expression. |
java.lang.Number |
numberValueOf(java.lang.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(java.lang.String text)
|
protected void |
removeDuplicates(java.util.List list,
java.util.Map sortValues)
Removes items from the list which have duplicate values |
java.util.List |
selectNodes(java.lang.Object context)
selectNodes performs this XPath expression
on the given Node or List of Node s
instances appending all the results together into a single list. |
java.util.List |
selectNodes(java.lang.Object context,
XPath sortXPath)
selectNodes evaluates the XPath expression
on the given Node or List of Node s
and returns the result as a List of
Node s sorted by the sort XPath expression. |
java.util.List |
selectNodes(java.lang.Object context,
XPath sortXPath,
boolean distinct)
selectNodes evaluates the XPath expression
on the given Node or List of Node s
and returns the result as a List of
Node s sorted by the sort XPath expression. |
java.lang.Object |
selectObject(java.lang.Object context)
selectObject evaluates an XPath expression and returns
the result as an Object . |
Node |
selectSingleNode(java.lang.Object context)
selectSingleNode evaluates this XPath expression
on the given Node or List of Node s
and returns the result as a single Node instance. |
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(java.util.Map map)
Sets the current NamespaceContext from a Map where the keys are the String namespace prefixes and the values are the namespace URIs For example. |
protected void |
setNSContext(java.lang.Object context)
|
void |
setVariableContext(org.jaxen.VariableContext variableContext)
Sets the variable context to be used when evaluating XPath expressions |
void |
sort(java.util.List list)
sort sorts the given List of Nodes
using this XPath expression as a Comparator . |
void |
sort(java.util.List list,
boolean distinct)
sort sorts the given List of Nodes
using this XPath expression as a Comparator
and optionally removing duplicates. |
protected void |
sort(java.util.List list,
java.util.Map sortValues)
Sorts the list based on the sortValues for each node |
java.lang.String |
toString()
|
java.lang.String |
valueOf(java.lang.Object context)
valueOf evaluates this XPath expression
and returns the textual representation of the results using the
XPath string() function. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public DefaultXPath(java.lang.String text) throws InvalidXPathException
Method Detail |
public java.lang.String toString()
public java.lang.String getText()
getText
in interface XPath
public org.jaxen.FunctionContext getFunctionContext()
getFunctionContext
in interface XPath
public void setFunctionContext(org.jaxen.FunctionContext functionContext)
XPath
setFunctionContext
in interface XPath
public org.jaxen.NamespaceContext getNamespaceContext()
getNamespaceContext
in interface XPath
public void setNamespaceURIs(java.util.Map map)
XPath
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 XPath
public void setNamespaceContext(org.jaxen.NamespaceContext namespaceContext)
XPath
setNamespaceContext
in interface XPath
public org.jaxen.VariableContext getVariableContext()
getVariableContext
in interface XPath
public void setVariableContext(org.jaxen.VariableContext variableContext)
XPath
setVariableContext
in interface XPath
public java.lang.Object evaluate(java.lang.Object context)
XPath
evaluate
evaluates an XPath expression and returns
the result as an Object
. The object returned can
either be a List
of Node
instances, a Node
instance, a String
or a Number
instance depending on
the XPath expression.
evaluate
in interface XPath
context
- is either a node or a list of nodes on which to
evalute the XPath
List
of Node
instances, a Node
instance, a String
or a Number
instance depending on
the XPath expression.public java.lang.Object selectObject(java.lang.Object context)
XPath
selectObject
evaluates an XPath expression and returns
the result as an Object
. The object returned can
either be a List
of Node
instances, a Node
instance, a String
or a Number
instance depending on
the XPath expression.
selectObject
in interface XPath
context
- is either a node or a list of nodes on which to
evalute the XPath
List
of Node
instances, a Node
instance, a String
or a Number
instance depending on
the XPath expression.public java.util.List selectNodes(java.lang.Object context)
XPath
selectNodes
performs this XPath expression
on the given Node
or List
of Node
s
instances appending all the results together into a single list.
selectNodes
in interface XPath
context
- is either a node or a list of nodes on which to
evalute the XPath
public java.util.List selectNodes(java.lang.Object context, XPath sortXPath)
XPath
selectNodes
evaluates the XPath expression
on the given Node
or List
of Node
s
and returns the result as a List
of
Node
s sorted by the sort XPath expression.
selectNodes
in interface XPath
context
- is either a node or a list of nodes on which to
evalute the XPathsortXPath
- is the XPath expression to sort by
Node
instancespublic java.util.List selectNodes(java.lang.Object context, XPath sortXPath, boolean distinct)
XPath
selectNodes
evaluates the XPath expression
on the given Node
or List
of Node
s
and returns the result as a List
of
Node
s sorted by the sort XPath expression.
selectNodes
in interface XPath
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
Node
instancespublic Node selectSingleNode(java.lang.Object context)
XPath
selectSingleNode
evaluates this XPath expression
on the given Node
or List
of Node
s
and returns the result as a single Node
instance.
selectSingleNode
in interface XPath
context
- is either a node or a list of nodes on which to
evalute the XPath
Node
instancepublic java.lang.String valueOf(java.lang.Object context)
XPath
valueOf
evaluates this XPath expression
and returns the textual representation of the results using the
XPath string() function.
valueOf
in interface XPath
context
- is either a node or a list of nodes on which to
evalute the XPath
public java.lang.Number numberValueOf(java.lang.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 XPath
context
- is either a node or a list of nodes on which to
evalute the XPath
public boolean booleanValueOf(java.lang.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 XPath
context
- The node, nodeset or Context object for evaluation. This value can be null
public void sort(java.util.List list)
sort
sorts the given List of Nodes
using this XPath expression as a Comparator
.
sort
in interface XPath
list
- is the list of Nodes to sortpublic void sort(java.util.List list, boolean distinct)
sort
sorts the given List of Nodes
using this XPath expression as a Comparator
and optionally removing duplicates.
sort
in interface XPath
list
- is the list of Nodes to sortdistinct
- if true then duplicate values (using the sortXPath for
comparisions) will be removed from the Listpublic 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 XPath
protected void sort(java.util.List list, java.util.Map sortValues)
protected void removeDuplicates(java.util.List list, java.util.Map sortValues)
protected java.lang.Object getCompareValue(Node node)
protected static org.jaxen.XPath parse(java.lang.String text)
protected void setNSContext(java.lang.Object context)
protected void handleJaxenException(org.jaxen.JaxenException e) throws XPathException
XPathException
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |