net.sf.morph.reflect.reflectors
Class BaseContainerReflector

java.lang.Object
  extended by net.sf.morph.reflect.reflectors.BaseReflector
      extended by net.sf.morph.reflect.reflectors.BaseContainerReflector
All Implemented Interfaces:
net.sf.composite.Component, ContainerReflector, DecoratedReflector, Reflector
Direct Known Subclasses:
ArrayReflector, CollectionReflector, EnumerationReflector, IteratorReflector

public abstract class BaseContainerReflector
extends BaseReflector
implements ContainerReflector

Convenient base class for ContainerReflectors. Validates arguments and takes care of logging and exception handling. All types of ContainerReflectors can use this class as a Base, because all methods defined on subinterfaces of ContainerReflector are supported by this base class. Note, however, that this class only states that it implements ContainerReflector so that subclasses can choose which interfaces they wish to expose.

Since:
Nov 20, 2004
Author:
Matt Sgarlata

Field Summary
 
Fields inherited from class net.sf.morph.reflect.reflectors.BaseReflector
log
 
Constructor Summary
BaseContainerReflector()
           
 
Method Summary
protected abstract  java.lang.Class getContainedTypeImpl(java.lang.Class clazz)
          Implementation of ContainerReflector.getContainedType(Class).
protected abstract  java.util.Iterator getIteratorImpl(java.lang.Object container)
          Implementation of ContainerReflector.getIterator(Object).
 
Methods inherited from class net.sf.morph.reflect.reflectors.BaseReflector
add, addImpl, checkIndex, checkIsReflectable, createWrapperInvocationHandler, get, get, getContainedType, getImpl, getImpl, getIterator, getPropertyNames, getPropertyNamesImpl, getReflectableCallCache, getReflectableClasses, getReflectableClassesImpl, getReflectorName, getSize, getSizeImpl, getType, getTypeImpl, getWrapper, getWrapperImpl, initialize, initializeImpl, isCachingIsReflectableCalls, isInitialized, isPerformingLogging, isReadable, isReadableImpl, isReflectable, isReflectable, isReflectableImpl, isReflectableImpl, isStrictlyTyped, isValidIndex, isWrappingRuntimeExceptions, isWriteable, isWriteableImpl, newInstance, newInstanceImpl, newInstanceImpl, set, set, setCachingIsReflectableCalls, setImpl, setImpl, setInitialized, setReflectableCallCache, setReflectorName, toString
 
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.ContainerReflector
getContainedType, getIterator
 
Methods inherited from interface net.sf.morph.reflect.Reflector
getReflectableClasses, getWrapper
 

Constructor Detail

BaseContainerReflector

public BaseContainerReflector()
Method Detail

getContainedTypeImpl

protected abstract java.lang.Class getContainedTypeImpl(java.lang.Class clazz)
                                                 throws java.lang.Exception
Description copied from class: BaseReflector
Implementation of ContainerReflector.getContainedType(Class).

Overrides:
getContainedTypeImpl in class BaseReflector
Throws:
java.lang.Exception

getIteratorImpl

protected abstract java.util.Iterator getIteratorImpl(java.lang.Object container)
                                               throws java.lang.Exception
Description copied from class: BaseReflector
Implementation of ContainerReflector.getIterator(Object).

Overrides:
getIteratorImpl in class BaseReflector
Throws:
java.lang.Exception


Copyright © 2004-2008.