org.apache.commons.jexl.util.introspection
Class  IntrospectorBase
java.lang.Object
  |
  +--org.apache.commons.jexl.util.introspection.IntrospectorBase
- Direct Known Subclasses: 
- Introspector
- public class IntrospectorBase- extends Object
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
- Since: 
- 1.0
- Version: 
- $Id: IntrospectorBase.java 398464 2006-04-30 23:50:43Z dion $
| Field Summary | 
| protected  Set | cachedClassNamesHolds the qualified class names for the classes we hold in the
 classMethodMaps hash.
 | 
| protected  Map | classMethodMapsHolds the method maps for the classes we know about, keyed by Class
 object.
 | 
 
 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
classMethodMaps
protected Map classMethodMaps
- Holds the method maps for the classes we know about, keyed by Class
 object.
cachedClassNames
protected Set cachedClassNames
- Holds the qualified class names for the classes we hold in the
 classMethodMaps hash.
IntrospectorBase
public IntrospectorBase()
getMethod
public Method getMethod(Class c,
                        String name,
                        Object[] params)
                 throws Exception
- Gets the method defined by nameandparamsfor the Classc.
- 
- 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:
- Exception- on any logical error.
 
createClassMap
protected ClassMap createClassMap(Class c)
- Creates a class map for specific class and registers it in the cache.
 Also adds the qualified name to the name->class map for later Classloader
 change detection.- 
- Parameters:
- c- class.
- Returns:
- a ClassMap
 
clearCache
protected void clearCache()
- Clears the classmap and classname caches.
Copyright © 2003-2006 The Apache Software Foundation. All Rights Reserved.