|
||||||||||
| 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
org.apache.commons.jxpath.ri.model.beans.NullElementPointer
public class NullElementPointer
Used when there is a need to construct a Pointer for a collection element that does not exist. For example, if the path is "foo[3]", but the collection "foo" only has one element or is empty or is null, the NullElementPointer can be used to capture this situation without putting a regular NodePointer into an invalid state. Just create a NullElementPointer with index 2 (= 3 - 1) and a "foo" pointer as the parent.
| Field Summary |
|---|
| Fields inherited from class org.apache.commons.jxpath.ri.model.NodePointer |
|---|
index, locale, parent, UNKNOWN_NAMESPACE, WHOLE_COLLECTION |
| Constructor Summary | |
|---|---|
NullElementPointer(NodePointer parent,
int index)
Create a new NullElementPointer. |
|
| Method Summary | |
|---|---|
String |
asPath()
Returns an XPath that maps to this Pointer. |
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. |
PropertyPointer |
getPropertyPointer()
Get the property pointer for this. |
NodePointer |
getValuePointer()
If this pointer manages a transparent container, like a variable, this method returns the pointer to the contents. |
int |
hashCode()
|
boolean |
isActual()
An actual pointer points to an existing part of an object graph, even if it is null. |
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 |
void |
setValue(Object value)
Converts the value to the required type and changes the corresponding object to that value. |
| Methods inherited from class org.apache.commons.jxpath.ri.model.beans.CollectionPointer |
|---|
attributeIterator, childIterator, compareChildNodePointers, createChild, createChild, namespaceIterator, namespacePointer, setIndex, testNode |
| 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, 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 NullElementPointer(NodePointer parent,
int index)
parent - parent pointerindex - int| Method Detail |
|---|
public QName getName()
NodePointer
getName in class CollectionPointerpublic Object getBaseValue()
NodePointer
getBaseValue in class CollectionPointerpublic Object getImmediateNode()
NodePointer
getImmediateNode in class CollectionPointerpublic boolean isLeaf()
NodePointer
isLeaf in class CollectionPointerpublic boolean isCollection()
NodePointertrue if the value of the pointer is an array or
a Collection.
isCollection in class CollectionPointerpublic PropertyPointer getPropertyPointer()
public 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 CollectionPointerpublic void setValue(Object value)
NodePointer
setValue in interface PointersetValue in class CollectionPointervalue - the value to setpublic boolean isActual()
NodePointer
isActual in class NodePointerpublic boolean isContainer()
NodePointer
isContainer in class CollectionPointerpublic NodePointer createPath(JXPathContext context)
NodePointer
createPath in class CollectionPointercontext - the owning JXPathContext
public NodePointer createPath(JXPathContext context,
Object value)
NodePointer
createPath in class CollectionPointercontext - the owning JXPathContextvalue - the new value to set
public int hashCode()
hashCode in class CollectionPointerpublic boolean equals(Object object)
equals in class CollectionPointerpublic int getLength()
NodePointer
getLength in class CollectionPointerpublic String asPath()
NodePointer
asPath in interface PointerasPath in class CollectionPointer
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||