Introspector (Velocity 1.4 API)
Keywords: org.apache.velocity.util.introspection.Introspector class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.velocity.util.introspection
Class Introspector

    java.lang.Object
      org.apache.velocity.util.introspection.IntrospectorBase
          org.apache.velocity.util.introspection.Introspector

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: Introspector.java,v 1.21.4.1 2004/03/03 23:23:08 geirm Exp $
Author:
  Jason van Zyl, Bob McWhirter, Attila Szegedi, Paulo Gaspar

Field Summary
`static java.lang.String` | `CACHEDUMP_MSG` define a public string so that it can be looked for if interested
`private RuntimeLogger` | `rlog` our engine runtime services

Fields inherited from class org.apache.velocity.util.introspection.IntrospectorBase
`cachedClassNames, classMethodMaps`

Constructor Summary
`Introspector(RuntimeLogger logger)` Recieves our RuntimeServices object

Method Summary
`protected void` | `clearCache()` Clears the classmap and classname caches, and logs that we did so
`java.lang.reflect.Method` | `getMethod(java.lang.Class c, java.lang.String name, java.lang.Object[] params)` Gets the method defined by `name` and `params` for the Class `c`.

Methods inherited from class org.apache.velocity.util.introspection.IntrospectorBase
`createClassMap`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### CACHEDUMP_MSG

    public static final java.lang.String CACHEDUMP_MSG

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

  See Also:
    Constant Field Values

### rlog

    private RuntimeLogger rlog

  our engine runtime services

Constructor Detail

### Introspector

    public Introspector(RuntimeLogger logger)

  Recieves our RuntimeServices object

Method Detail

### getMethod

    public java.lang.reflect.Method getMethod(java.lang.Class c,
                                              java.lang.String name,
                                              java.lang.Object[] params)
                                       throws java.lang.Exception

  Gets the method defined by `name` and `params` for the Class `c`.

  Overrides:
    `getMethod` in class `IntrospectorBase`
  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.
  Throws:
    `java.lang.Exception`

### clearCache

    protected void clearCache()

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

  Overrides:
    `clearCache` in class `IntrospectorBase`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002 Apache Software Foundation. All Rights Reserved.