Package org.codehaus.plexus.util.introspection

# Class ClassMap

java.lang.Object
org.codehaus.plexus.util.introspection.ClassMap

public class ClassMap extends Object
A cache of introspection information for a specific class instance. Keys `Method` objects by a concatenation of the method name and the names of classes that make up the parameters.

Author:
  Jason van Zyl, Bob McWhirter, Attila Szegedi, Geir Magnusson Jr.

## Constructor Summary

Constructors
Constructor
Description
`ClassMap(Class clazz)`
Standard constructor

## Method Summary

Modifier and Type
Method
Description
`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.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ClassMap

public ClassMap(Class clazz)
Standard constructor

Parameters:
  `clazz` - the Class

## Method Details

### findMethod

public Method findMethod(String name, Object[] params) throws MethodMap.AmbiguousException

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 params
Returns:
  the find Method or `null`
Throws:
  `MethodMap.AmbiguousException` - if ambiguous name

### getPublicMethod

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.