|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.morph.reflect.reflectors.BaseReflector net.sf.morph.reflect.reflectors.BaseBeanReflector net.sf.morph.reflect.reflectors.ResultSetReflector
public class ResultSetReflector
Exposes the information in a ResultSet. This reflector can function both as a container reflector and as a bean reflector. When functionining a container reflector, this reflector exposes the rows in a ResultSet. As a bean reflector, this reflector exposes the column names from a particular row of a ResultSet as properties. The column names are always converted to all lowercase.
Note: Code from the getImpl(Object, String)
method was taken from
Spring's JdbcUtils
class.
Field Summary |
---|
Fields inherited from class net.sf.morph.reflect.reflectors.BaseReflector |
---|
log |
Fields inherited from interface net.sf.morph.reflect.BeanReflector |
---|
IMPLICIT_PROPERTY_CLASS, IMPLICIT_PROPERTY_PROPERTY_NAMES, IMPLICIT_PROPERTY_THIS |
Fields inherited from interface net.sf.morph.reflect.SizableReflector |
---|
IMPLICIT_PROPERTY_SIZE |
Constructor Summary | |
---|---|
ResultSetReflector()
|
Method Summary | |
---|---|
protected java.lang.Class |
getContainedTypeImpl(java.lang.Class clazz)
Implementation of ContainerReflector.getContainedType(Class) . |
protected java.lang.Object |
getImpl(java.lang.Object bean,
java.lang.String propertyName)
NOTE: Code copied here from Spring's JdbcUtils class. |
protected java.util.Iterator |
getIteratorImpl(java.lang.Object container)
Implementation of ContainerReflector.getIterator(Object) . |
protected java.lang.String[] |
getPropertyNamesImpl(java.lang.Object bean)
Template method must be overridden. |
protected java.lang.Class[] |
getReflectableClassesImpl()
Implementation of Reflector.getReflectableClasses() . |
protected java.lang.Class |
getTypeImpl(java.lang.Object bean,
java.lang.String propertyName)
Template method must be overridden. |
boolean |
isStrictlyTyped()
Indicates whether this reflector is strictly typed. |
protected boolean |
isWriteableImpl(java.lang.Object bean,
java.lang.String propertyName)
Implementation of BeanReflector.isWriteable(Object, String) . |
protected void |
setImpl(java.lang.Object bean,
java.lang.String propertyName,
java.lang.Object value)
Template method must be overridden. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface net.sf.morph.reflect.BeanReflector |
---|
get, getPropertyNames, getType, isReadable, isWriteable, set |
Methods inherited from interface net.sf.morph.reflect.SizableReflector |
---|
getSize |
Methods inherited from interface net.sf.morph.reflect.ContainerReflector |
---|
getContainedType, getIterator |
Constructor Detail |
---|
public ResultSetReflector()
Method Detail |
---|
protected java.lang.Class getContainedTypeImpl(java.lang.Class clazz) throws java.lang.Exception
BaseReflector
ContainerReflector.getContainedType(Class)
.
getContainedTypeImpl
in class BaseReflector
java.lang.Exception
protected java.util.Iterator getIteratorImpl(java.lang.Object container) throws java.lang.Exception
BaseReflector
ContainerReflector.getIterator(Object)
.
getIteratorImpl
in class BaseReflector
java.lang.Exception
protected java.lang.String[] getPropertyNamesImpl(java.lang.Object bean) throws java.lang.Exception
BaseBeanReflector
BeanReflector.getPropertyNames(Object)
.
Implementation automatically provided for
IndexedContainerReflectors. For other reflectors, throws an
UnsupportedOperationException.
getPropertyNamesImpl
in class BaseBeanReflector
java.lang.Exception
protected java.lang.Class getTypeImpl(java.lang.Object bean, java.lang.String propertyName) throws java.lang.Exception
BaseBeanReflector
BeanReflector.getType(Object, String)
.
Default implementation provided. For IndexedContainerReflectors,
returns the type by calling
ContainerReflector.getContainedType(Class)
.
For other reflectors, checks the type of the property by calling
BaseReflector.get(Object, String)
.
getTypeImpl
in class BaseBeanReflector
java.lang.Exception
protected boolean isWriteableImpl(java.lang.Object bean, java.lang.String propertyName) throws java.lang.Exception
BaseReflector
BeanReflector.isWriteable(Object, String)
.
Default implementation assumes that all readable properties are also
writeable. One exception to this is when this reflector is an
IndexedContainerReflector but not a MutableIndexedContainerReflector, in
which case no properties are considered writeable.
isWriteableImpl
in class BaseReflector
java.lang.Exception
protected java.lang.Object getImpl(java.lang.Object bean, java.lang.String propertyName) throws java.lang.Exception
JdbcUtils
class.
getImpl
in class BaseBeanReflector
java.lang.Exception
protected void setImpl(java.lang.Object bean, java.lang.String propertyName, java.lang.Object value) throws java.lang.Exception
BaseBeanReflector
BeanReflector.set(Object, String, Object)
.
Implementation automatically provided for
MutableIndexedContainerReflectors. For other reflectors, throws an
UnsupportedOperationException.
setImpl
in class BaseBeanReflector
java.lang.Exception
protected java.lang.Class[] getReflectableClassesImpl() throws java.lang.Exception
BaseReflector
Reflector.getReflectableClasses()
.
getReflectableClassesImpl
in class BaseReflector
java.lang.Exception
public boolean isStrictlyTyped()
BaseReflector
BaseReflector.getType(Object, String)
method will throw
an exception if the requested property name is not a valid property
of the object. Default implementation returns false
.
isStrictlyTyped
in class BaseReflector
false
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |