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

java.lang.Object
  |
  +--org.apache.commons.jxpath.ri.model.NodePointer
        |
        +--org.apache.commons.jxpath.ri.model.beans.PropertyPointer
              |
              +--org.apache.commons.jxpath.ri.model.beans.BeanPropertyPointer
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable, Pointer, java.io.Serializable

public class BeanPropertyPointer
extends PropertyPointer

Pointer pointing to a property of a JavaBean.

Version:
$Revision: 1.13 $ $Date: 2003/03/11 00:59:24 $
Author:
Dmitri Plotnikov
See Also:
Serialized Form

Fields inherited from class org.apache.commons.jxpath.ri.model.beans.PropertyPointer
bean, propertyIndex, UNSPECIFIED_PROPERTY
 
Fields inherited from class org.apache.commons.jxpath.ri.model.NodePointer
index, locale, parent, UNKNOWN_NAMESPACE, WHOLE_COLLECTION
 
Constructor Summary
BeanPropertyPointer(NodePointer parent, JXPathBeanInfo beanInfo)
           
 
Method Summary
 NodePointer createPath(JXPathContext context)
          Called by a child pointer when it needs to create a parent object.
 java.lang.Object getBaseValue()
          The value of the currently selected property.
 java.lang.Object getImmediateNode()
          If index == WHOLE_COLLECTION, the value of the property, otherwise the value of the index'th element of the collection represented by the property.
 int getLength()
          If the property contains a collection, then the length of that collection, otherwise - 1.
 int getPropertyCount()
          Number of the bean's properties.
protected  java.beans.PropertyDescriptor[] getPropertyDescriptors()
           
 java.lang.String getPropertyName()
          Name of the currently selected property.
 java.lang.String[] getPropertyNames()
          Names of all properties, sorted alphabetically
protected  boolean isActualProperty()
           
 boolean isCollection()
          Returns true if the value of the pointer is an array or a Collection.
 boolean isContainer()
          This type of node is auxiliary.
 void remove()
          Remove the node of the object graph this pointer points to.
 void setIndex(int index)
           
 void setPropertyIndex(int index)
          Selects a property by its offset in the alphabetically sorted list.
 void setPropertyName(java.lang.String propertyName)
          Select a property by name
 void setValue(java.lang.Object value)
          If index == WHOLE_COLLECTION, change the value of the property, otherwise change the value of the index'th element of the collection represented by the property.
 
Methods inherited from class org.apache.commons.jxpath.ri.model.beans.PropertyPointer
compareChildNodePointers, createChild, createChild, createPath, equals, getBean, getImmediateValuePointer, getName, getPropertyIndex, hashCode, isActual, isLeaf
 
Methods inherited from class org.apache.commons.jxpath.ri.model.NodePointer
asPath, attributeIterator, childIterator, clone, compareTo, createAttribute, getDefaultNamespaceURI, getExpandedName, getIndex, getLocale, getNamespaceURI, getNamespaceURI, getNode, getNodeValue, getParent, getPointerByID, getPointerByKey, getRootNode, getValue, getValuePointer, isAttribute, isDefaultNamespace, isLanguage, isNode, isRoot, namespaceIterator, namespacePointer, newChildNodePointer, newNodePointer, printPointerChain, setAttribute, testNode, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BeanPropertyPointer

public BeanPropertyPointer(NodePointer parent,
                           JXPathBeanInfo beanInfo)
Method Detail

isContainer

public boolean isContainer()
This type of node is auxiliary.
Overrides:
isContainer in class NodePointer

getPropertyCount

public int getPropertyCount()
Number of the bean's properties.
Overrides:
getPropertyCount in class PropertyPointer

getPropertyNames

public java.lang.String[] getPropertyNames()
Names of all properties, sorted alphabetically
Overrides:
getPropertyNames in class PropertyPointer

setPropertyName

public void setPropertyName(java.lang.String propertyName)
Select a property by name
Overrides:
setPropertyName in class PropertyPointer

setPropertyIndex

public void setPropertyIndex(int index)
Selects a property by its offset in the alphabetically sorted list.
Overrides:
setPropertyIndex in class PropertyPointer

getBaseValue

public java.lang.Object getBaseValue()
The value of the currently selected property.
Overrides:
getBaseValue in class NodePointer

setIndex

public void setIndex(int index)
Overrides:
setIndex in class NodePointer

getImmediateNode

public java.lang.Object getImmediateNode()
If index == WHOLE_COLLECTION, the value of the property, otherwise the value of the index'th element of the collection represented by the property. If the property is not a collection, index should be zero and the value will be the property itself.
Overrides:
getImmediateNode in class PropertyPointer

isActualProperty

protected boolean isActualProperty()
Overrides:
isActualProperty in class PropertyPointer

isCollection

public boolean isCollection()
Description copied from class: NodePointer
Returns true if the value of the pointer is an array or a Collection.
Overrides:
isCollection in class PropertyPointer

getLength

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

setValue

public void setValue(java.lang.Object value)
If index == WHOLE_COLLECTION, change the value of the property, otherwise change the value of the index'th element of the collection represented by the property.
Overrides:
setValue in class NodePointer

createPath

public NodePointer createPath(JXPathContext context)
Description copied from class: NodePointer
Called by a child pointer when it needs to create a parent object. Must create an object described by this pointer and return a new pointer that properly describes the new object.
Overrides:
createPath in class PropertyPointer
See Also:
PropertyPointer.createPath(JXPathContext)

remove

public void remove()
Description copied from class: NodePointer
Remove the node of the object graph this pointer points to.
Overrides:
remove in class NodePointer

getPropertyName

public java.lang.String getPropertyName()
Name of the currently selected property.
Overrides:
getPropertyName in class PropertyPointer

getPropertyDescriptors

protected java.beans.PropertyDescriptor[] getPropertyDescriptors()


Copyright © 2001-2003 Apache Software Foundation. All Rights Reserved.