|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.commons.jxpath.ri.model.NodePointer
org.apache.commons.jxpath.ri.model.beans.CollectionPointer
public class CollectionPointer
Transparent pointer to a collection (array or Collection).
| Field Summary |
|---|
| Fields inherited from class org.apache.commons.jxpath.ri.model.NodePointer |
|---|
index, locale, parent, UNKNOWN_NAMESPACE, WHOLE_COLLECTION |
| Constructor Summary | |
|---|---|
CollectionPointer(NodePointer parent,
Object collection)
Create a new CollectionPointer. |
|
CollectionPointer(Object collection,
Locale locale)
Create a new CollectionPointer. |
|
| Method Summary | |
|---|---|
String |
asPath()
Returns an XPath that maps to this Pointer. |
NodeIterator |
attributeIterator(QName name)
Returns a NodeIterator that iterates over all attributes of the current node matching the supplied node name (could have a wildcard). |
NodeIterator |
childIterator(NodeTest test,
boolean reverse,
NodePointer startWith)
Returns a NodeIterator that iterates over all children or all children that match the given NodeTest, starting with the specified one. |
int |
compareChildNodePointers(NodePointer pointer1,
NodePointer pointer2)
Compares two child NodePointers and returns a positive number, zero or a positive number according to the order of the pointers. |
NodePointer |
createChild(JXPathContext context,
QName name,
int index)
Called by a child pointer when it needs to create a parent object for a non-existent collection element. |
NodePointer |
createChild(JXPathContext context,
QName name,
int index,
Object value)
Called by a child pointer if that child needs to assign the value supplied in the createPath(context, value) call to a non-existent node. |
NodePointer |
createPath(JXPathContext context)
Called by a child pointer when it needs to create a parent object. |
NodePointer |
createPath(JXPathContext context,
Object value)
Called directly by JXPathContext. |
boolean |
equals(Object object)
|
Object |
getBaseValue()
Returns the value represented by the pointer before indexing. |
Object |
getImmediateNode()
Returns the object the pointer points to; does not convert it to a "canonical" type. |
int |
getLength()
If the pointer represents a collection (or collection element), returns the length of the collection. |
QName |
getName()
Returns the name of this node. |
NodePointer |
getValuePointer()
If this pointer manages a transparent container, like a variable, this method returns the pointer to the contents. |
int |
hashCode()
|
boolean |
isCollection()
Returns true if the value of the pointer is an array or
a Collection. |
boolean |
isContainer()
If true, this node is auxiliary and can only be used as an intermediate in the chain of pointers. |
boolean |
isLeaf()
If true, this node does not have children |
NodeIterator |
namespaceIterator()
Returns a NodeIterator that iterates over all namespaces of the value currently pointed at. |
NodePointer |
namespacePointer(String namespace)
Returns a NodePointer for the specified namespace. |
void |
setIndex(int index)
Set the index of this NodePointer. |
void |
setValue(Object value)
Converts the value to the required type and changes the corresponding object to that value. |
boolean |
testNode(NodeTest test)
Checks if this Pointer matches the supplied NodeTest. |
| Methods inherited from class org.apache.commons.jxpath.ri.model.NodePointer |
|---|
clone, compareTo, createAttribute, escape, getAbstractFactory, getDefaultNamespaceURI, getImmediateParentPointer, getImmediateValuePointer, getIndex, getLocale, getNamespaceResolver, getNamespaceURI, getNamespaceURI, getNode, getNodeSetByKey, getNodeValue, getParent, getPointerByID, getPointerByKey, getRootNode, getValue, isActual, isAttribute, isDefaultNamespace, isLanguage, isNode, isRoot, newChildNodePointer, newNodePointer, printPointerChain, remove, setAttribute, setNamespaceResolver, toString |
| Methods inherited from class java.lang.Object |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public CollectionPointer(Object collection,
Locale locale)
collection - valuelocale - Locale
public CollectionPointer(NodePointer parent,
Object collection)
parent - parent NodePointercollection - value| Method Detail |
|---|
public QName getName()
NodePointer
getName in class NodePointerpublic Object getBaseValue()
NodePointer
getBaseValue in class NodePointerpublic boolean isCollection()
NodePointertrue if the value of the pointer is an array or
a Collection.
isCollection in class NodePointerpublic int getLength()
NodePointer
getLength in class NodePointerpublic boolean isLeaf()
NodePointer
isLeaf in class NodePointerpublic boolean isContainer()
NodePointer
isContainer in class NodePointerpublic Object getImmediateNode()
NodePointer
getImmediateNode in class NodePointerpublic void setValue(Object value)
NodePointer
setValue in interface PointersetValue in class NodePointervalue - the value to setpublic void setIndex(int index)
NodePointer
setIndex in class NodePointerindex - intpublic NodePointer getValuePointer()
NodePointergetValuePointer() directly. Override the
getImmediateValuePointer() method instead. The
getValuePointer() method is calls
getImmediateValuePointer() and, if the result is not
this, invokes getValuePointer() recursively.
The idea here is to open all nested containers. Let's say we have a
container within a container within a container. The
getValuePointer() method should then open all those
containers and return the pointer to the ultimate contents. It does so
with the above recursion.
getValuePointer in class NodePointerpublic NodePointer createPath(JXPathContext context)
NodePointer
createPath in class NodePointercontext - the owning JXPathContext
public NodePointer createPath(JXPathContext context,
Object value)
NodePointer
createPath in class NodePointercontext - the owning JXPathContextvalue - the new value to set
public NodePointer createChild(JXPathContext context,
QName name,
int index,
Object value)
NodePointer
createChild in class NodePointercontext - the owning JXPathCOntextname - the QName at which a child should be createdindex - child index.value - node value to set
public NodePointer createChild(JXPathContext context,
QName name,
int index)
NodePointer
createChild in class NodePointercontext - the owning JXPathCOntextname - the QName at which a child should be createdindex - child index.
public int hashCode()
hashCode in class Objectpublic boolean equals(Object object)
equals in class Object
public NodeIterator childIterator(NodeTest test,
boolean reverse,
NodePointer startWith)
NodePointer
childIterator in class NodePointertest - NodeTest to filter childrenreverse - specified iteration directionstartWith - the NodePointer to start with
public NodeIterator attributeIterator(QName name)
NodePointer
attributeIterator in class NodePointername - the attribute name to test
public NodeIterator namespaceIterator()
NodePointer
namespaceIterator in class NodePointerpublic NodePointer namespacePointer(String namespace)
NodePointer
namespacePointer in class NodePointernamespace - incoming namespace
namespacepublic boolean testNode(NodeTest test)
NodePointer
testNode in class NodePointertest - the NodeTest to execute
public int compareChildNodePointers(NodePointer pointer1,
NodePointer pointer2)
NodePointer
compareChildNodePointers in class NodePointerpointer1 - first pointer to be comparedpointer2 - second pointer to be compared
public String asPath()
NodePointer
asPath in interface PointerasPath in class NodePointer
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||