public class CollectionPointer extends NodePointer
index, locale, parent, UNKNOWN_NAMESPACE, WHOLE_COLLECTION| Constructor and Description |
|---|
CollectionPointer(NodePointer parent,
Object collection)
Create a new CollectionPointer.
|
CollectionPointer(Object collection,
Locale locale)
Create a new CollectionPointer.
|
| Modifier and Type | Method and Description |
|---|---|
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.
|
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, toStringpublic CollectionPointer(Object collection, Locale locale)
collection - valuelocale - Localepublic CollectionPointer(NodePointer parent, Object collection)
parent - parent NodePointercollection - valuepublic QName getName()
NodePointergetName in class NodePointerpublic Object getBaseValue()
NodePointergetBaseValue in class NodePointerpublic boolean isCollection()
NodePointertrue if the value of the pointer is an array or
a Collection.isCollection in class NodePointerpublic int getLength()
NodePointergetLength in class NodePointerpublic boolean isLeaf()
NodePointerisLeaf in class NodePointerpublic boolean isContainer()
NodePointerisContainer in class NodePointerpublic Object getImmediateNode()
NodePointergetImmediateNode in class NodePointerpublic void setValue(Object value)
NodePointersetValue in interface PointersetValue in class NodePointervalue - the value to setpublic void setIndex(int index)
NodePointersetIndex 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)
NodePointercreatePath in class NodePointercontext - the owning JXPathContextpublic NodePointer createPath(JXPathContext context, Object value)
NodePointercreatePath in class NodePointercontext - the owning JXPathContextvalue - the new value to setpublic NodePointer createChild(JXPathContext context, QName name, int index, Object value)
NodePointercreateChild in class NodePointercontext - the owning JXPathCOntextname - the QName at which a child should be createdindex - child index.value - node value to setpublic NodePointer createChild(JXPathContext context, QName name, int index)
NodePointercreateChild in class NodePointercontext - the owning JXPathCOntextname - the QName at which a child should be createdindex - child index.public NodeIterator childIterator(NodeTest test, boolean reverse, NodePointer startWith)
NodePointerchildIterator in class NodePointertest - NodeTest to filter childrenreverse - specified iteration directionstartWith - the NodePointer to start withpublic NodeIterator attributeIterator(QName name)
NodePointerattributeIterator in class NodePointername - the attribute name to testpublic NodeIterator namespaceIterator()
NodePointernamespaceIterator in class NodePointerpublic NodePointer namespacePointer(String namespace)
NodePointernamespacePointer in class NodePointernamespace - incoming namespacenamespacepublic boolean testNode(NodeTest test)
NodePointertestNode in class NodePointertest - the NodeTest to executepublic int compareChildNodePointers(NodePointer pointer1, NodePointer pointer2)
NodePointercompareChildNodePointers in class NodePointerpointer1 - first pointer to be comparedpointer2 - second pointer to be comparedpublic String asPath()
NodePointerasPath in interface PointerasPath in class NodePointerCopyright © 2001–2015 The Apache Software Foundation. All rights reserved.