org.springframework.binding.method
Class MethodKey

java.lang.Object
  extended by org.springframework.binding.method.MethodKey
All Implemented Interfaces:
java.io.Serializable

public class MethodKey
extends java.lang.Object
implements java.io.Serializable

A helper for resolving and caching a Java method by reflection.

Author:
Keith Donald
See Also:
Serialized Form

Constructor Summary
MethodKey(java.lang.Class declaredType, java.lang.String methodName, java.lang.Class[] parameterTypes)
          Create a new method key.
 
Method Summary
 boolean equals(java.lang.Object obj)
           
protected  java.lang.reflect.Method findMethodConsiderAssignableParameterTypes()
          Find the keyed method using 'relaxed' typing.
 java.lang.Class getDeclaredType()
          Return the class the method is a member of.
 java.lang.reflect.Method getMethod()
          Returns the keyed method, resolving it if necessary via reflection.
 java.lang.String getMethodName()
          Returns the method name.
 java.lang.Class[] getParameterTypes()
          Returns the method parameter types.
 int hashCode()
           
protected  java.lang.reflect.Method resolveMethod()
          Resolve the keyed method.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MethodKey

public MethodKey(java.lang.Class declaredType,
                 java.lang.String methodName,
                 java.lang.Class[] parameterTypes)
Create a new method key.

Parameters:
declaredType - the class the method is a member of
methodName - the method name
parameterTypes - the method's parameter types, or null if the method has no parameters
Method Detail

getDeclaredType

public java.lang.Class getDeclaredType()
Return the class the method is a member of.


getMethodName

public java.lang.String getMethodName()
Returns the method name.


getParameterTypes

public java.lang.Class[] getParameterTypes()
Returns the method parameter types. Could contain null values if no type was specified for the corresponding parameter.


getMethod

public java.lang.reflect.Method getMethod()
                                   throws InvalidMethodKeyException
Returns the keyed method, resolving it if necessary via reflection.

Throws:
InvalidMethodKeyException

resolveMethod

protected java.lang.reflect.Method resolveMethod()
                                          throws InvalidMethodKeyException
Resolve the keyed method.

Throws:
InvalidMethodKeyException

findMethodConsiderAssignableParameterTypes

protected java.lang.reflect.Method findMethodConsiderAssignableParameterTypes()
Find the keyed method using 'relaxed' typing.


equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright � 2004-2007. All Rights Reserved.