Improve RootBeanDefinition to specify an AnnotatedElement that holds
qualifier information. When such element is present, any qualifier that
it defines will be used to find a matching candidate.
Issue: SPR-14725
@ -225,8 +227,12 @@ public class QualifierAnnotationAutowireCandidateResolver extends GenericTypeAwa
@@ -225,8 +227,12 @@ public class QualifierAnnotationAutowireCandidateResolver extends GenericTypeAwa
@ -291,6 +297,11 @@ public class QualifierAnnotationAutowireCandidateResolver extends GenericTypeAwa
@@ -291,6 +297,11 @@ public class QualifierAnnotationAutowireCandidateResolver extends GenericTypeAwa
@ -58,6 +59,8 @@ public class RootBeanDefinition extends AbstractBeanDefinition {
@@ -58,6 +59,8 @@ public class RootBeanDefinition extends AbstractBeanDefinition {
booleanisFactoryMethodUnique=false;
volatileAnnotatedElementqualifiedElement;
/** Package-visible field for caching the determined Class of a given bean definition */
volatileClass<?>resolvedTargetType;
@ -182,6 +185,7 @@ public class RootBeanDefinition extends AbstractBeanDefinition {
@@ -182,6 +185,7 @@ public class RootBeanDefinition extends AbstractBeanDefinition {
@ -257,6 +261,22 @@ public class RootBeanDefinition extends AbstractBeanDefinition {
@@ -257,6 +261,22 @@ public class RootBeanDefinition extends AbstractBeanDefinition {
@ -1026,14 +1027,35 @@ public class AutowiredAnnotationBeanPostProcessorTests {
@@ -1026,14 +1027,35 @@ public class AutowiredAnnotationBeanPostProcessorTests {
@ -1588,11 +1610,12 @@ public class AutowiredAnnotationBeanPostProcessorTests {
@@ -1588,11 +1610,12 @@ public class AutowiredAnnotationBeanPostProcessorTests {
@ -1606,9 +1629,12 @@ public class AutowiredAnnotationBeanPostProcessorTests {
@@ -1606,9 +1629,12 @@ public class AutowiredAnnotationBeanPostProcessorTests {