org.apache.commons.jxpath.ri.model.beans

Class PropertyPointer

Implemented Interfaces:
Cloneable, Comparable, Pointer, Serializable
Known Direct Subclasses:
BeanPropertyPointer, DynaBeanPropertyPointer, DynamicPropertyPointer, NullPropertyPointer

public abstract class PropertyPointer
extends NodePointer

A pointer allocated by a PropertyOwnerPointer to represent the value of a property of the parent object.
Version:
$Revision: 1.14 $ $Date: 2004/04/04 22:06:36 $
Author:
Dmitri Plotnikov

Field Summary

static int
UNSPECIFIED_PROPERTY
protected Object
bean
protected int
propertyIndex

Fields inherited from class org.apache.commons.jxpath.ri.model.NodePointer

UNKNOWN_NAMESPACE, WHOLE_COLLECTION, index, locale, parent

Constructor Summary

PropertyPointer(NodePointer parent)
Takes a javabean, a descriptor of a property of that object and an offset within that property (starting with 0).

Method Summary

int
compareChildNodePointers(NodePointer pointer1, NodePointer pointer2)
NodePointer
createChild(JXPathContext context, QName name, int index)
NodePointer
createChild(JXPathContext context, QName name, int index, Object value)
NodePointer
createPath(JXPathContext context)
NodePointer
createPath(JXPathContext context, Object value)
boolean
equals(Object object)
Object
getBean()
Object
getImmediateNode()
NodePointer
getImmediateValuePointer()
Returns a NodePointer that can be used to access the currently selected property value.
int
getLength()
If the property contains a collection, then the length of that collection, otherwise - 1.
QName
getName()
abstract int
getPropertyCount()
int
getPropertyIndex()
abstract String
getPropertyName()
abstract String[]
getPropertyNames()
int
hashCode()
boolean
isActual()
protected abstract boolean
isActualProperty()
boolean
isCollection()
boolean
isLeaf()
void
setPropertyIndex(int index)
abstract void
setPropertyName(String propertyName)

Methods inherited from class org.apache.commons.jxpath.ri.model.NodePointer

asPath, attributeIterator, childIterator, clone, compareChildNodePointers, compareTo, createAttribute, createChild, createChild, createPath, createPath, getBaseValue, getDefaultNamespaceURI, getImmediateNode, getImmediateParentPointer, getImmediateValuePointer, getIndex, getLength, getLocale, getName, getNamespaceResolver, getNamespaceURI, getNamespaceURI, getNode, getNodeValue, getParent, getPointerByID, getPointerByKey, getRootNode, getValue, getValuePointer, isActual, isAttribute, isCollection, isContainer, isDefaultNamespace, isLanguage, isLeaf, isNode, isRoot, namespaceIterator, namespacePointer, newChildNodePointer, newNodePointer, printPointerChain, remove, setAttribute, setIndex, setNamespaceResolver, setValue, testNode, toString

Field Details

UNSPECIFIED_PROPERTY

public static final int UNSPECIFIED_PROPERTY

bean

protected Object bean

propertyIndex

protected int propertyIndex

Constructor Details

PropertyPointer

public PropertyPointer(NodePointer parent)
Takes a javabean, a descriptor of a property of that object and an offset within that property (starting with 0).

Method Details

compareChildNodePointers

public int compareChildNodePointers(NodePointer pointer1,
                                    NodePointer pointer2)
Overrides:
compareChildNodePointers in interface NodePointer

createChild

public NodePointer createChild(JXPathContext context,
                               QName name,
                               int index)
Overrides:
createChild in interface NodePointer

createChild

public NodePointer createChild(JXPathContext context,
                               QName name,
                               int index,
                               Object value)
Overrides:
createChild in interface NodePointer

createPath

public NodePointer createPath(JXPathContext context)
Overrides:
createPath in interface NodePointer

createPath

public NodePointer createPath(JXPathContext context,
                              Object value)
Overrides:
createPath in interface NodePointer

equals

public boolean equals(Object object)

getBean

public Object getBean()

getImmediateNode

public Object getImmediateNode()
Overrides:
getImmediateNode in interface NodePointer

getImmediateValuePointer

public NodePointer getImmediateValuePointer()
Returns a NodePointer that can be used to access the currently selected property value.
Overrides:
getImmediateValuePointer in interface NodePointer

getLength

public int getLength()
If the property contains a collection, then the length of that collection, otherwise - 1.
Overrides:
getLength in interface NodePointer

getName

public QName getName()
Overrides:
getName in interface NodePointer

getPropertyCount

public abstract int getPropertyCount()

getPropertyIndex

public int getPropertyIndex()

getPropertyName

public abstract String getPropertyName()

getPropertyNames

public abstract String[] getPropertyNames()

hashCode

public int hashCode()

isActual

public boolean isActual()
Overrides:
isActual in interface NodePointer

isActualProperty

protected abstract boolean isActualProperty()

isCollection

public boolean isCollection()
Overrides:
isCollection in interface NodePointer

isLeaf

public boolean isLeaf()
Overrides:
isLeaf in interface NodePointer

setPropertyIndex

public void setPropertyIndex(int index)

setPropertyName

public abstract void setPropertyName(String propertyName)