Class LinkingUberspector
java.lang.Object
org.apache.velocity.util.introspection.UberspectImpl
org.apache.velocity.util.introspection.AbstractChainableUberspector
org.apache.velocity.util.introspection.LinkingUberspector
- All Implemented Interfaces:
ChainableUberspector, Uberspect, RuntimeServicesAware
When the introspector.uberspect.class configuration property contains several uberspector class names, it means those uberspectors will be chained. When an uberspector in the list other than the leftmost does not implement ChainableUberspector, then this utility class is used to provide a basic default chaining where the first non-null result is kept for each introspection call.
- Since:
- 1.6
- Version:
- $Id: LinkingUberspector.java 10959 2008-07-01 00:12:29Z sdumitriu $
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class UberspectImpl
UberspectImpl.VelGetterImpl, UberspectImpl.VelMethodImpl, UberspectImpl.VelSetterImpl -
Field Summary
Fields inherited from class AbstractChainableUberspector
innerFields inherited from class UberspectImpl
conversionHandler, introspector, log, rsvc -
Constructor Summary
ConstructorsConstructorDescriptionLinkingUberspector(Uberspect left, Uberspect right) Constructor that takes the two uberspectors to link -
Method Summary
Modifier and TypeMethodDescriptiongetIterator(Object obj, Info i) To support iterative objects used in a#foreach()loop.MethodgetPropertyGet(Object obj, String identifier, Info i) Property gettergetPropertySet(Object obj, String identifier, Object arg, Info i) Property settervoidinit()init - the chainable uberspector is responsible for the initialization of the wrapped uberspectorMethods inherited from class AbstractChainableUberspector
wrapMethods inherited from class UberspectImpl
getConversionHandler, setLog, setRuntimeServices
-
Constructor Details
-
LinkingUberspector
-
-
Method Details
-
init
public void init()init - the chainable uberspector is responsible for the initialization of the wrapped uberspectorInit both wrapped uberspectors
- Specified by:
initin interfaceUberspect- Overrides:
initin classAbstractChainableUberspector- See Also:
-
getIterator
To support iterative objects used in a#foreach()loop.- Specified by:
getIteratorin interfaceUberspect- Overrides:
getIteratorin classAbstractChainableUberspector- Parameters:
obj- The iterative object.i- Info about the object's location.- Returns:
- An
Iteratorobject. - See Also:
-
getMethod
-
getPropertyGet
Property getter- Specified by:
getPropertyGetin interfaceUberspect- Overrides:
getPropertyGetin classAbstractChainableUberspector- Parameters:
obj-identifier-i-- Returns:
- A Velocity Getter Method.
- See Also:
-
getPropertySet
Property setter- Specified by:
getPropertySetin interfaceUberspect- Overrides:
getPropertySetin classAbstractChainableUberspector- Parameters:
obj-identifier-arg-i-- Returns:
- A Velocity Setter method.
- See Also:
-