Class SimpleAutowireCandidateResolver
java.lang.Object
org.springframework.beans.factory.support.SimpleAutowireCandidateResolver
- All Implemented Interfaces:
 AutowireCandidateResolver
- Direct Known Subclasses:
 GenericTypeAwareAutowireCandidateResolver
AutowireCandidateResolver implementation to use when no annotation
 support is available. This implementation checks the bean definition only.- Since:
 - 2.5
 - Author:
 - Mark Fisher, Juergen Hoeller
 
- 
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final SimpleAutowireCandidateResolverShared instance ofSimpleAutowireCandidateResolver. - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionThis implementation returnsthisas-is.Class<?>getLazyResolutionProxyClass(DependencyDescriptor descriptor, String beanName) Determine the proxy class for lazy resolution of the dependency target, if demanded by the injection point.getLazyResolutionProxyIfNecessary(DependencyDescriptor descriptor, String beanName) Build a proxy for lazy resolution of the actual dependency target, if demanded by the injection point.getSuggestedValue(DependencyDescriptor descriptor) Determine whether a default value is suggested for the given dependency.booleanhasQualifier(DependencyDescriptor descriptor) Determine whether the given descriptor declares a qualifier beyond the type (typically - but not necessarily - a specific kind of annotation).booleanisAutowireCandidate(BeanDefinitionHolder bdHolder, DependencyDescriptor descriptor) Determine whether the given bean definition qualifies as an autowire candidate for the given dependency.booleanisRequired(DependencyDescriptor descriptor) Determine whether the given descriptor is effectively required. 
- 
Field Details
- 
INSTANCE
Shared instance ofSimpleAutowireCandidateResolver.- Since:
 - 5.2.7
 
 
 - 
 - 
Constructor Details
- 
SimpleAutowireCandidateResolver
public SimpleAutowireCandidateResolver() 
 - 
 - 
Method Details
- 
isAutowireCandidate
Description copied from interface:AutowireCandidateResolverDetermine whether the given bean definition qualifies as an autowire candidate for the given dependency.The default implementation checks
BeanDefinition.isAutowireCandidate().- Specified by:
 isAutowireCandidatein interfaceAutowireCandidateResolver- Parameters:
 bdHolder- the bean definition including bean name and aliasesdescriptor- the descriptor for the target method parameter or field- Returns:
 - whether the bean definition qualifies as autowire candidate
 - See Also:
 
 - 
isRequired
Description copied from interface:AutowireCandidateResolverDetermine whether the given descriptor is effectively required.The default implementation checks
DependencyDescriptor.isRequired().- Specified by:
 isRequiredin interfaceAutowireCandidateResolver- Parameters:
 descriptor- the descriptor for the target method parameter or field- Returns:
 - whether the descriptor is marked as required or possibly indicating non-required status some other way (e.g. through a parameter annotation)
 - See Also:
 
 - 
hasQualifier
Description copied from interface:AutowireCandidateResolverDetermine whether the given descriptor declares a qualifier beyond the type (typically - but not necessarily - a specific kind of annotation).The default implementation returns
false.- Specified by:
 hasQualifierin interfaceAutowireCandidateResolver- Parameters:
 descriptor- the descriptor for the target method parameter or field- Returns:
 - whether the descriptor declares a qualifier, narrowing the candidate status beyond the type match
 - See Also:
 
 - 
getSuggestedValue
Description copied from interface:AutowireCandidateResolverDetermine whether a default value is suggested for the given dependency.The default implementation simply returns
null.- Specified by:
 getSuggestedValuein interfaceAutowireCandidateResolver- Parameters:
 descriptor- the descriptor for the target method parameter or field- Returns:
 - the value suggested (typically an expression String),
 or 
nullif none found 
 - 
getLazyResolutionProxyIfNecessary
@Nullable public Object getLazyResolutionProxyIfNecessary(DependencyDescriptor descriptor, @Nullable String beanName) Description copied from interface:AutowireCandidateResolverBuild a proxy for lazy resolution of the actual dependency target, if demanded by the injection point.The default implementation simply returns
null.- Specified by:
 getLazyResolutionProxyIfNecessaryin interfaceAutowireCandidateResolver- Parameters:
 descriptor- the descriptor for the target method parameter or fieldbeanName- the name of the bean that contains the injection point- Returns:
 - the lazy resolution proxy for the actual dependency target,
 or 
nullif straight resolution is to be performed 
 - 
getLazyResolutionProxyClass
@Nullable public Class<?> getLazyResolutionProxyClass(DependencyDescriptor descriptor, @Nullable String beanName) Description copied from interface:AutowireCandidateResolverDetermine the proxy class for lazy resolution of the dependency target, if demanded by the injection point.The default implementation simply returns
null.- Specified by:
 getLazyResolutionProxyClassin interfaceAutowireCandidateResolver- Parameters:
 descriptor- the descriptor for the target method parameter or fieldbeanName- the name of the bean that contains the injection point- Returns:
 - the lazy resolution proxy class for the dependency target, if any
 
 - 
cloneIfNecessary
This implementation returnsthisas-is.- Specified by:
 cloneIfNecessaryin interfaceAutowireCandidateResolver- See Also:
 
 
 -