Class Introspector
- java.lang.Object
-
- org.apache.velocity.util.introspection.IntrospectorBase
-
- org.apache.velocity.util.introspection.Introspector
-
- Direct Known Subclasses:
SecureIntrospectorImpl
public class Introspector extends IntrospectorBase
This basic function of this class is to return a Method object for a particular class given the name of a method and the parameters to the method in the form of an Object[] The first time the Introspector sees a class it creates a class method map for the class in question. Basically the class method map is a Hastable where Method objects are keyed by a concatenation of the method name and the names of classes that make up the parameters. For example, a method with the following signature: public void method(String a, StringBuffer b) would be mapped by the key: "method" + "java.lang.String" + "java.lang.StringBuffer" This mapping is performed for all the methods in a class and stored for- Version:
- $Id$
- Author:
- Jason van Zyl, Bob McWhirter, Attila Szegedi, Paulo Gaspar, Henning P. Schmiedehausen
-
-
Field Summary
-
Fields inherited from class org.apache.velocity.util.introspection.IntrospectorBase
log
-
-
Constructor Summary
Constructors Constructor Description Introspector(org.slf4j.Logger log)
Introspector(org.slf4j.Logger log, TypeConversionHandler conversionHandler)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Method
getMethod(Class<?> c, String name, Object[] params)
Gets the method defined byname
andparams
for the Classc
.-
Methods inherited from class org.apache.velocity.util.introspection.IntrospectorBase
getField, getIntrospectorCache
-
-
-
-
Constructor Detail
-
Introspector
public Introspector(org.slf4j.Logger log)
- Parameters:
log
- A Logger object to use for the introspector.- Since:
- 1.5
-
Introspector
public Introspector(org.slf4j.Logger log, TypeConversionHandler conversionHandler)
- Parameters:
log
- A Logger object to use for the introspector.conversionHandler
- conversion handler- Since:
- 2.0
-
-
Method Detail
-
getMethod
public Method getMethod(Class<?> c, String name, Object[] params) throws IllegalArgumentException
Gets the method defined byname
andparams
for the Classc
.- Overrides:
getMethod
in classIntrospectorBase
- Parameters:
c
- Class in which the method search is taking placename
- Name of the method being searched forparams
- An array of Objects (not Classes) that describe the the parameters- Returns:
- The desired Method object.
- Throws:
IllegalArgumentException
- When the parameters passed in can not be used for introspection.
-
-