NVelocity.Util.Introspection
Class Introspector

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

Field Summary
string CACHEDUMP_MSG
         define a public string so that it can be looked for if interested

Fields inherited from class NVelocity.Util.Introspection.IntrospectorBase
cachedClassNames, classMethodMaps

Constructor Summary
Introspector(NVelocity.Runtime.RuntimeServices r)
         Recieves our RuntimeServices object

Method Summary
void clearCache()
         Clears the classmap and classname caches, and logs that we did so
System.Reflection.MethodInfo getMethod(System.Type c, string name, object[] params_Renamed)
         Gets the method defined by
name
and
params
for the Class
c
.
System.Reflection.PropertyInfo getProperty(System.Type c, string name)
         Gets the method defined by
name
and
params
for the Class
c
.

Methods inherited from class NVelocity.Util.Introspection.IntrospectorBase
createClassMap

Methods inherited from class System.Object
Equals, Finalize, GetHashCode, GetType, MemberwiseClone, ToString


Field Detail

CACHEDUMP_MSG

public string CACHEDUMP_MSG

define a public string so that it can be looked for if interested

Constructor Detail

Introspector

public Introspector(NVelocity.Runtime.RuntimeServices r)

Recieves our RuntimeServices object

Method Detail

clearCache

protected internal void clearCache()

Clears the classmap and classname caches, and logs that we did so


getMethod

public System.Reflection.MethodInfo getMethod(System.Type c,
                                              string name,
                                              object[] params_Renamed)

Gets the method defined by

name
and
params
for the Class
c
.

Parameters:
c - Class in which the method search is taking place
name - Name of the method being searched for
params - An array of Objects (not Classes) that describe the the parameters
Returns:
The desired Method object.

getProperty

public System.Reflection.PropertyInfo getProperty(System.Type c,
                                                  string name)

Gets the method defined by

name
and
params
for the Class
c
.

Parameters:
c - Class in which the method search is taking place
name - Name of the method being searched for
params - An array of Objects (not Classes) that describe the the parameters
Returns:
The desired Method object.