Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.scopemvc.model.beans
Class Accessor  view Accessor download Accessor.java

java.lang.Object
  extended byorg.scopemvc.model.beans.Accessor

final class Accessor
extends java.lang.Object

Describes a single JavaBeans accessor. Since this includes indexed properties, it might represent access into an ordered Collection, consuming two Selectors: a String one to describes the Collection and an int one to fetch the member of the List. eg "customers.0" can be traversed in one step if the parent model JavaBean has a getCustomer(int) method. Handles java.util.List and Object[] for int indexed properties.

Version:
$Revision: 1.6 $ $Date: 2002/01/26 09:46:20 $

Field Summary
(package private)  java.beans.PropertyDescriptor descriptor
           
(package private)  boolean isGetterIndexed
           
private static org.apache.commons.logging.Log LOG
           
(package private)  java.lang.Object model
           
private  java.lang.Object[] params
           
(package private)  org.scopemvc.core.Selector selector
           
 
Constructor Summary
(package private) Accessor(java.lang.Object inModel, org.scopemvc.core.Selector inSelector)
          Make sure to call findProperty before traverseProperty.
 
Method Summary
(package private)  void findProperty()
          Find the next property and populate the descriptor.
(package private)  boolean isAtTerminal()
          Next traversal is over the terminal property? Depends on prior call to findProperty().
 java.lang.String toString()
          Convert this Object to a human-readable String.
(package private)  void traverseProperty()
          Burrows down through the next accessor to the next one.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

LOG

private static final org.apache.commons.logging.Log LOG

model

java.lang.Object model

selector

org.scopemvc.core.Selector selector

descriptor

java.beans.PropertyDescriptor descriptor

isGetterIndexed

boolean isGetterIndexed

params

private java.lang.Object[] params
Constructor Detail

Accessor

Accessor(java.lang.Object inModel,
         org.scopemvc.core.Selector inSelector)
Make sure to call findProperty before traverseProperty.

Method Detail

isAtTerminal

boolean isAtTerminal()
Next traversal is over the terminal property? Depends on prior call to findProperty().


findProperty

void findProperty()
            throws java.lang.Exception
Find the next property and populate the descriptor. descriptor == null if next selector is IntIndexed (ie access property through java.util.List or Object[]), else either a PropertyDescriptor or an IndexedPropertyDescriptor.


traverseProperty

void traverseProperty()
                throws java.lang.Exception
Burrows down through the next accessor to the next one. If the property we return is an int-indexed property (ie accessed property from java.util.List or Object[]) then the PropertyDescriptor will be null.


toString

public java.lang.String toString()
Description copied from class: java.lang.Object
Convert this Object to a human-readable String. There are no limits placed on how long this String should be or what it should contain. We suggest you make it as intuitive as possible to be able to place it into System.out.println() 55 and such.

It is typical, but not required, to ensure that this method never completes abruptly with a java.lang.RuntimeException.

This method will be called when performing string concatenation with this object. If the result is null, string concatenation will instead use "null".

The default implementation returns getClass().getName() + "@" + Integer.toHexString(hashCode()).