private static final class ClassMap.MethodCache
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.Object,java.lang.Object> |
cache
Cache of Methods, or CACHE_MISS, keyed by method
name and actual arguments used to find it.
|
private static java.lang.Object |
CACHE_MISS |
private static java.util.Map<java.lang.Class<?>,java.lang.String> |
convertPrimitives |
private org.slf4j.Logger |
log
Class logger
|
private MethodMap |
methodMap
Map of methods that are searchable according to method parameters to find a match
|
private static java.lang.String |
NULL_ARG |
Modifier | Constructor and Description |
---|---|
private |
MethodCache(org.slf4j.Logger log,
TypeConversionHandler conversionHandler) |
Modifier and Type | Method and Description |
---|---|
java.lang.reflect.Method |
get(java.lang.String name,
java.lang.Object[] params)
Find a Method using the method name and parameter objects.
|
private java.lang.String |
makeMethodKey(java.lang.reflect.Method method)
Make a methodKey for the given method using
the concatenation of the name and the
types of the method parameters.
|
private java.lang.String |
makeMethodKey(java.lang.String method,
java.lang.Object[] params) |
private void |
put(java.lang.reflect.Method method) |
private static final java.lang.Object CACHE_MISS
private static final java.lang.String NULL_ARG
private static final java.util.Map<java.lang.Class<?>,java.lang.String> convertPrimitives
private final org.slf4j.Logger log
private final java.util.Map<java.lang.Object,java.lang.Object> cache
private final MethodMap methodMap
private MethodCache(org.slf4j.Logger log, TypeConversionHandler conversionHandler)
public java.lang.reflect.Method get(java.lang.String name, java.lang.Object[] params) throws MethodMap.AmbiguousException
name
- The method name to look up.params
- An array of parameters for the method.MethodMap.AmbiguousException
- When more than one method is a match for the parameters.private void put(java.lang.reflect.Method method)
private java.lang.String makeMethodKey(java.lang.reflect.Method method)
method
- to be stored as keyprivate java.lang.String makeMethodKey(java.lang.String method, java.lang.Object[] params)