Class AnnotationBeanWiringInfoResolver
- java.lang.Object
- org.springframework.beans.factory.annotation.AnnotationBeanWiringInfoResolver
- All Implemented Interfaces:
BeanWiringInfoResolver
public class AnnotationBeanWiringInfoResolver extends 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 theConfigurable
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
Constructors Constructor Description AnnotationBeanWiringInfoResolver()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected BeanWiringInfo
buildWiringInfo(Object beanInstance, Configurable annotation)
Build theBeanWiringInfo
for the givenConfigurable
annotation.protected String
getDefaultBeanName(Object beanInstance)
Determine the default bean name for the specified bean instance.BeanWiringInfo
resolveWiringInfo(Object beanInstance)
Resolve the BeanWiringInfo for the given bean instance.
Constructor Detail
AnnotationBeanWiringInfoResolver
public AnnotationBeanWiringInfoResolver()
Method Detail
resolveWiringInfo
public BeanWiringInfo resolveWiringInfo(Object beanInstance)
Description copied from interface:BeanWiringInfoResolver
Resolve the BeanWiringInfo for the given bean instance.- Specified by:
resolveWiringInfo
in interfaceBeanWiringInfoResolver
- Parameters:
beanInstance
- the bean instance to resolve info for- Returns:
- the BeanWiringInfo, or
null
if not found
buildWiringInfo
protected BeanWiringInfo buildWiringInfo(Object beanInstance, Configurable annotation)
Build theBeanWiringInfo
for the givenConfigurable
annotation.- Parameters:
beanInstance
- the bean instanceannotation
- the Configurable annotation found on the bean class- Returns:
- the resolved BeanWiringInfo
getDefaultBeanName
protected String getDefaultBeanName(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)