org.springframework.beans.factory.support
Class MethodOverride

java.lang.Object
  extended by org.springframework.beans.factory.support.MethodOverride
All Implemented Interfaces:
BeanMetadataElement
Direct Known Subclasses:
LookupOverride, ReplaceOverride

public abstract class MethodOverride
extends Object
implements BeanMetadataElement

Object representing the override of a method on a managed object by the IoC container.

Note that the override mechanism is not intended as a generic means of inserting crosscutting code: use AOP for that.

Since:
1.1
Author:
Rod Johnson, Juergen Hoeller

Constructor Summary
protected MethodOverride(String methodName)
          Construct a new override for the given method.
 
Method Summary
 boolean equals(Object other)
           
 String getMethodName()
          Return the name of the method to be overridden.
 Object getSource()
          Return the configuration source Object for this metadata element (may be null).
 int hashCode()
           
protected  boolean isOverloaded()
          Return whether the overridden method has to be considered as overloaded (that is, whether arg type matching has to happen).
abstract  boolean matches(Method method)
          Subclasses must override this to indicate whether they match the given method.
protected  void setOverloaded(boolean overloaded)
          Set whether the overridden method has to be considered as overloaded (that is, whether arg type matching has to happen).
 void setSource(Object source)
          Set the configuration source Object for this metadata element.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MethodOverride

protected MethodOverride(String methodName)
Construct a new override for the given method.

Parameters:
methodName - the name of the method to override
Method Detail

getMethodName

public String getMethodName()
Return the name of the method to be overridden.


setOverloaded

protected void setOverloaded(boolean overloaded)
Set whether the overridden method has to be considered as overloaded (that is, whether arg type matching has to happen).

Default is "true"; can be switched to "false" to optimize runtime performance.


isOverloaded

protected boolean isOverloaded()
Return whether the overridden method has to be considered as overloaded (that is, whether arg type matching has to happen).


setSource

public void setSource(Object source)
Set the configuration source Object for this metadata element.

The exact type of the object will depend on the configuration mechanism used.


getSource

public Object getSource()
Description copied from interface: BeanMetadataElement
Return the configuration source Object for this metadata element (may be null).

Specified by:
getSource in interface BeanMetadataElement

matches

public abstract boolean matches(Method method)
Subclasses must override this to indicate whether they match the given method. This allows for argument list checking as well as method name checking.

Parameters:
method - the method to check
Returns:
whether this override matches the given method

equals

public boolean equals(Object other)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object