Spring Framework

org.springframework.beans.factory.annotation
Class AnnotationBeanWiringInfoResolver

java.lang.Object
  extended by org.springframework.beans.factory.annotation.AnnotationBeanWiringInfoResolver
All Implemented Interfaces:
BeanWiringInfoResolver

public class AnnotationBeanWiringInfoResolver
extends java.lang.Object
implements BeanWiringInfoResolver

BeanWiringInfoResolver that uses the Configurable annotation to identify which classes need autowiring. The bean name to look up will be taken from the Configurable annotation if specified; otherwise the default will be the fully-qualified name of the class being configured.

Since:
2.0
Author:
Rod Johnson, Juergen Hoeller
See Also:
Configurable, ClassNameBeanWiringInfoResolver

Constructor Summary
AnnotationBeanWiringInfoResolver()
           
 
Method Summary
protected  BeanWiringInfo buildWiringInfo(java.lang.Object beanInstance, Configurable annotation)
          Build the BeanWiringInfo for the given Configurable annotation.
protected  java.lang.String getDefaultBeanName(java.lang.Object beanInstance)
          Determine the default bean name for the specified bean instance.
 BeanWiringInfo resolveWiringInfo(java.lang.Object beanInstance)
          Resolve the BeanWiringInfo for the given bean instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnnotationBeanWiringInfoResolver

public AnnotationBeanWiringInfoResolver()
Method Detail

resolveWiringInfo

public BeanWiringInfo resolveWiringInfo(java.lang.Object beanInstance)
Description copied from interface: BeanWiringInfoResolver
Resolve the BeanWiringInfo for the given bean instance.

Specified by:
resolveWiringInfo in interface BeanWiringInfoResolver
Parameters:
beanInstance - the bean instance to resolve info for
Returns:
the BeanWiringInfo, or null if not found

buildWiringInfo

protected BeanWiringInfo buildWiringInfo(java.lang.Object beanInstance,
                                         Configurable annotation)
Build the BeanWiringInfo for the given Configurable annotation.

Parameters:
beanInstance - the bean instance
annotation - the Configurable annotation found on the bean class
Returns:
the resolved BeanWiringInfo

getDefaultBeanName

protected java.lang.String getDefaultBeanName(java.lang.Object beanInstance)
Determine the default bean name for the specified bean instance.

The default implementation returns the superclass name for a CGLIB proxy and the name of the plain bean class else.

Parameters:
beanInstance - the bean instance to build a default name for
Returns:
the default bean name to use
See Also:
ClassUtils.getUserClass(Class)

Spring Framework