java.lang.ObjectXPath
JaxenXPath
class JaxenXPath
A non-public concrete XPath implementation for Jaxen.
Nested Class Summary | |
---|---|
private class |
JaxenXPath.NSContext
|
Field Summary | |
---|---|
private java.lang.Object |
currentContext
The current context for XPath expression evaluation. |
private static java.lang.String |
CVS_ID
|
private org.jaxen.jdom.JDOMXPath |
xPath
The compiled XPath object to select nodes. |
Constructor Summary | |
---|---|
JaxenXPath(java.lang.String expr)
Creates a new XPath wrapper object, compiling the specified XPath expression. |
Method Summary | |
---|---|
void |
addNamespace(Namespace namespace)
Adds a namespace definition to the list of namespaces known of this XPath expression. |
boolean |
equals(java.lang.Object o)
|
java.lang.String |
getXPath()
Returns the wrapped XPath expression as a string. |
int |
hashCode()
|
java.lang.Number |
numberValueOf(java.lang.Object context)
Returns the number value of the first item selected by applying the wrapped XPath expression to the given context. |
java.util.List |
selectNodes(java.lang.Object context)
Evaluates the wrapped XPath expression and returns the list of selected items. |
java.lang.Object |
selectSingleNode(java.lang.Object context)
Evaluates the wrapped XPath expression and returns the first entry in the list of selected nodes (or atomics). |
void |
setVariable(java.lang.String name,
java.lang.Object value)
Defines an XPath variable and sets its value. |
private void |
setXPath(java.lang.String expr)
Compiles and sets the XPath expression wrapped by this object. |
java.lang.String |
toString()
|
java.lang.String |
valueOf(java.lang.Object context)
Returns the string value of the first node selected by applying the wrapped XPath expression to the given context. |
Methods inherited from class XPath |
---|
addNamespace, newInstance, selectNodes, selectSingleNode, setXPathClass, writeReplace |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
private static final java.lang.String CVS_ID
private transient org.jaxen.jdom.JDOMXPath xPath
private java.lang.Object currentContext
Constructor Detail |
---|
public JaxenXPath(java.lang.String expr) throws JDOMException
expr
- the XPath expression to wrap.
JDOMException
- if the XPath expression is invalid.Method Detail |
---|
public java.util.List selectNodes(java.lang.Object context) throws JDOMException
selectNodes
in class XPath
context
- the node to use as context for evaluating
the XPath expression.
Element
,
Attribute
, Text
, CDATA
,
Comment
, ProcessingInstruction
, Boolean,
Double, or String.
JDOMException
- if the evaluation of the XPath
expression on the specified context
failed.public java.lang.Object selectSingleNode(java.lang.Object context) throws JDOMException
selectSingleNode
in class XPath
context
- the node to use as context for evaluating
the XPath expression.
Element
,
Attribute
, Text
, CDATA
,
Comment
, ProcessingInstruction
, Boolean,
Double, String, or null
if no item was selected.
JDOMException
- if the evaluation of the XPath
expression on the specified context
failed.public java.lang.String valueOf(java.lang.Object context) throws JDOMException
valueOf
in class XPath
context
- the element to use as context for evaluating
the XPath expression.
JDOMException
- if the XPath expression is invalid or
its evaluation on the specified context
failed.public java.lang.Number numberValueOf(java.lang.Object context) throws JDOMException
numberValueOf
in class XPath
context
- the element to use as context for evaluating
the XPath expression.
null
if no node was selected or the
special value Double.NaN
(Not-a-Number) if the selected value can not be
converted into a number value.
JDOMException
- if the XPath expression is invalid or
its evaluation on the specified context
failed.public void setVariable(java.lang.String name, java.lang.Object value) throws java.lang.IllegalArgumentException
setVariable
in class XPath
name
- the variable name.value
- the variable value.
java.lang.IllegalArgumentException
- if name
is not
a valid XPath variable name
or if the value type is not
supported by the underlying
implementationpublic void addNamespace(Namespace namespace)
Note: In XPath, there is no such thing as a 'default namespace'. The empty prefix always resolves to the empty namespace URI.
addNamespace
in class XPath
namespace
- the namespace.public java.lang.String getXPath()
getXPath
in class XPath
private void setXPath(java.lang.String expr) throws JDOMException
expr
- the XPath expression to wrap.
JDOMException
- if the XPath expression is invalid.public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object