Class PropertyIterator
- java.lang.Object
-
- org.apache.commons.jxpath.ri.model.beans.PropertyIterator
-
- All Implemented Interfaces:
NodeIterator
- Direct Known Subclasses:
BeanAttributeIterator
,DynamicPropertyIterator
public class PropertyIterator extends java.lang.Object implements NodeIterator
Iterates property values of an object pointed at with aPropertyOwnerPointer
. Examples of such objects are JavaBeans and objects with Dynamic Properties.- Version:
- $Revision: 652845 $ $Date: 2008-05-02 12:46:46 -0500 (Fri, 02 May 2008) $
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
empty
private boolean
includeStart
private java.lang.String
name
private int
position
private PropertyPointer
propertyNodePointer
private boolean
reverse
private int
startIndex
private int
startPropertyIndex
private boolean
targetReady
-
Constructor Summary
Constructors Constructor Description PropertyIterator(PropertyOwnerPointer pointer, java.lang.String name, boolean reverse, NodePointer startWith)
Create a new PropertyIterator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private int
getLength()
Computes length for the current pointer - ignores any exceptions.NodePointer
getNodePointer()
Get the NodePointer at the current position.int
getPosition()
Get the current iterator position.protected NodePointer
getPropertyPointer()
Get the property pointer.protected void
prepareForIndividualProperty(java.lang.String name)
Prepare for an individual property.void
reset()
Reset property iteration.boolean
setPosition(int position)
Set the new current position.private boolean
setPositionAllProperties(int position)
Set position for all propertiesprivate boolean
setPositionIndividualProperty(int position)
Set position for an individual property.
-
-
-
Field Detail
-
empty
private boolean empty
-
reverse
private boolean reverse
-
name
private java.lang.String name
-
startIndex
private int startIndex
-
targetReady
private boolean targetReady
-
position
private int position
-
propertyNodePointer
private PropertyPointer propertyNodePointer
-
startPropertyIndex
private int startPropertyIndex
-
includeStart
private boolean includeStart
-
-
Constructor Detail
-
PropertyIterator
public PropertyIterator(PropertyOwnerPointer pointer, java.lang.String name, boolean reverse, NodePointer startWith)
Create a new PropertyIterator.- Parameters:
pointer
- owning pointername
- property namereverse
- iteration orderstartWith
- beginning pointer
-
-
Method Detail
-
getPropertyPointer
protected NodePointer getPropertyPointer()
Get the property pointer.- Returns:
- NodePointer
-
reset
public void reset()
Reset property iteration.
-
getNodePointer
public NodePointer getNodePointer()
Description copied from interface:NodeIterator
Get the NodePointer at the current position.- Specified by:
getNodePointer
in interfaceNodeIterator
- Returns:
- NodePointer
-
getPosition
public int getPosition()
Description copied from interface:NodeIterator
Get the current iterator position.- Specified by:
getPosition
in interfaceNodeIterator
- Returns:
- int position
-
setPosition
public boolean setPosition(int position)
Description copied from interface:NodeIterator
Set the new current position.- Specified by:
setPosition
in interfaceNodeIterator
- Parameters:
position
- the position to set- Returns:
true
if there is a node atposition
.
-
setPositionIndividualProperty
private boolean setPositionIndividualProperty(int position)
Set position for an individual property.- Parameters:
position
- int position- Returns:
- whether this was a valid position
-
setPositionAllProperties
private boolean setPositionAllProperties(int position)
Set position for all properties- Parameters:
position
- int position- Returns:
- whether this was a valid position
-
prepareForIndividualProperty
protected void prepareForIndividualProperty(java.lang.String name)
Prepare for an individual property.- Parameters:
name
- property name
-
getLength
private int getLength()
Computes length for the current pointer - ignores any exceptions.- Returns:
- length
-
-