org.apache.velocity.util.introspection
Class AbstractChainableUberspector

java.lang.Object
  extended by org.apache.velocity.util.introspection.UberspectImpl
      extended by org.apache.velocity.util.introspection.AbstractChainableUberspector
All Implemented Interfaces:
ChainableUberspector, Uberspect, UberspectLoggable
Direct Known Subclasses:
LinkingUberspector

public abstract class AbstractChainableUberspector
extends UberspectImpl
implements ChainableUberspector

Default implementation of a chainable uberspector that forwards all calls to the wrapped uberspector (when that is possible). It should be used as the base class for all chainable uberspectors.

Since:
1.6
Version:
$Id: $
See Also:
ChainableUberspector

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.velocity.util.introspection.UberspectImpl
UberspectImpl.VelGetterImpl, UberspectImpl.VelMethodImpl, UberspectImpl.VelSetterImpl
 
Field Summary
protected  Uberspect inner
          The wrapped (decorated) uberspector.
 
Fields inherited from class org.apache.velocity.util.introspection.UberspectImpl
introspector, log
 
Constructor Summary
AbstractChainableUberspector()
           
 
Method Summary
 Iterator getIterator(Object obj, Info i)
          To support iterative objects used in a #foreach() loop.
 VelMethod getMethod(Object obj, String methodName, Object[] args, Info i)
          Method
 VelPropertyGet getPropertyGet(Object obj, String identifier, Info i)
          Property getter
 VelPropertySet getPropertySet(Object obj, String identifier, Object arg, Info i)
          Property setter
 void init()
          init - the chainable uberspector is responsible for the initialization of the wrapped uberspector
 void wrap(Uberspect inner)
          Specify the decorated Uberspector
 
Methods inherited from class org.apache.velocity.util.introspection.UberspectImpl
setLog, setRuntimeLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

inner

protected Uberspect inner
The wrapped (decorated) uberspector.

Constructor Detail

AbstractChainableUberspector

public AbstractChainableUberspector()
Method Detail

wrap

public void wrap(Uberspect inner)
Specify the decorated Uberspector

Specified by:
wrap in interface ChainableUberspector
Parameters:
inner - The decorated uberspector.
See Also:
ChainableUberspector.wrap(org.apache.velocity.util.introspection.Uberspect), inner

init

public void init()
          throws Exception
init - the chainable uberspector is responsible for the initialization of the wrapped uberspector

Specified by:
init in interface Uberspect
Overrides:
init in class UberspectImpl
Throws:
Exception
See Also:
Uberspect.init()

getIterator

public Iterator getIterator(Object obj,
                            Info i)
                     throws Exception
To support iterative objects used in a #foreach() loop.

Specified by:
getIterator in interface Uberspect
Overrides:
getIterator in class UberspectImpl
Parameters:
obj - The iterative object.
i - Info about the object's location.
Returns:
An Iterator object.
Throws:
Exception
See Also:
Uberspect.getIterator(java.lang.Object, org.apache.velocity.util.introspection.Info)

getMethod

public VelMethod getMethod(Object obj,
                           String methodName,
                           Object[] args,
                           Info i)
                    throws Exception
Method

Specified by:
getMethod in interface Uberspect
Overrides:
getMethod in class UberspectImpl
Returns:
A Velocity Method.
Throws:
Exception
See Also:
Uberspect.getMethod(java.lang.Object, java.lang.String, java.lang.Object[], org.apache.velocity.util.introspection.Info)

getPropertyGet

public VelPropertyGet getPropertyGet(Object obj,
                                     String identifier,
                                     Info i)
                              throws Exception
Property getter

Specified by:
getPropertyGet in interface Uberspect
Overrides:
getPropertyGet in class UberspectImpl
Returns:
A Velocity Getter Method.
Throws:
Exception
See Also:
Uberspect.getPropertyGet(java.lang.Object, java.lang.String, org.apache.velocity.util.introspection.Info)

getPropertySet

public VelPropertySet getPropertySet(Object obj,
                                     String identifier,
                                     Object arg,
                                     Info i)
                              throws Exception
Property setter

Specified by:
getPropertySet in interface Uberspect
Overrides:
getPropertySet in class UberspectImpl
Returns:
A Velocity Setter method.
Throws:
Exception
See Also:
Uberspect.getPropertySet(java.lang.Object, java.lang.String, java.lang.Object, org.apache.velocity.util.introspection.Info)


Copyright © 2000-2008 The Apache Software Foundation. All Rights Reserved.