org.apache.commons.jexl.util.introspection
Class ClassMap
public
class
ClassMap
extends Object
Taken from the Velocity tree so we can be self-sufficient
A cache of introspection information for a specific class instance. Keys
java.lang.Method objects by a concatenation of the method name and
the names of classes that make up the parameters.
Since: 1.0
Version: $Id: ClassMap.java 398459 2006-04-30 23:14:30Z dion $
| Method Summary |
| Method | findMethod(String name, Object[] params)
Find a Method using the methodKey provided.
|
| static Method | getPublicMethod(Method method)
For a given method, retrieves its publicly accessible counterpart. |
public ClassMap(Class aClass)
Standard constructor.
Parameters: aClass the class to deconstruct.
public Method findMethod(String name, Object[] params)
Find a Method using the methodKey provided.
Look in the methodMap for an entry. If found, it'll either be a
CACHE_MISS, in which case we simply give up, or it'll be a Method, in
which case, we return it.
If nothing is found, then we must actually go and introspect the method
from the MethodMap.
Parameters: name method name params method parameters
Returns: CACHE_MISS or a Method
Throws: MethodMap.AmbiguousException if the method and parameters are ambiguous.
public static Method getPublicMethod(Method method)
For a given method, retrieves its publicly accessible counterpart. This
method will look for a method with same name and signature declared in a
public superclass or implemented interface of this method's declaring
class. This counterpart method is publicly callable.
Parameters: method a method whose publicly callable counterpart is requested.
Returns: the publicly callable counterpart method. Note that if the
parameter method is itself declared by a public class, this
method is an identity function.