File tree Expand file tree Collapse file tree 2 files changed +15
-2
lines changed
spring-beans/src/main/java/org/springframework/beans/factory/config
spring-context/src/test/java/org/springframework/context/annotation Expand file tree Collapse file tree 2 files changed +15
-2
lines changed Original file line number Diff line number Diff line change 17
17
package org .springframework .beans .factory .config ;
18
18
19
19
import org .springframework .beans .BeanMetadataElement ;
20
+ import org .springframework .beans .factory .BeanFactoryUtils ;
20
21
import org .springframework .util .Assert ;
21
22
import org .springframework .util .ObjectUtils ;
22
23
import org .springframework .util .StringUtils ;
@@ -118,8 +119,9 @@ public Object getSource() {
118
119
* or the aliases stored in this bean definition.
119
120
*/
120
121
public boolean matchesName (String candidateName ) {
121
- return (candidateName != null &&
122
- (candidateName .equals (this .beanName ) || ObjectUtils .containsElement (this .aliases , candidateName )));
122
+ return (candidateName != null && (candidateName .equals (this .beanName ) ||
123
+ candidateName .equals (BeanFactoryUtils .transformedBeanName (this .beanName )) ||
124
+ ObjectUtils .containsElement (this .aliases , candidateName )));
123
125
}
124
126
125
127
Original file line number Diff line number Diff line change 22
22
import org .springframework .beans .factory .FactoryBean ;
23
23
import org .springframework .beans .factory .annotation .Autowired ;
24
24
import org .springframework .beans .factory .annotation .AutowiredAnnotationBeanPostProcessor ;
25
+ import org .springframework .beans .factory .annotation .Qualifier ;
25
26
import org .springframework .beans .factory .annotation .QualifierAnnotationAutowireCandidateResolver ;
26
27
import org .springframework .beans .factory .support .ChildBeanDefinition ;
27
28
import org .springframework .beans .factory .support .DefaultListableBeanFactory ;
@@ -193,6 +194,8 @@ public void testGenericsBasedInjectionWithFactoryBean() {
193
194
194
195
RepositoryFactoryBeanInjectionBean bean = (RepositoryFactoryBeanInjectionBean ) beanFactory .getBean ("annotatedBean" );
195
196
assertSame (beanFactory .getBean ("&repoFactoryBean" ), bean .repositoryFactoryBean );
197
+ assertSame (beanFactory .getBean ("&repoFactoryBean" ), bean .qualifiedRepositoryFactoryBean );
198
+ assertSame (beanFactory .getBean ("&repoFactoryBean" ), bean .prefixQualifiedRepositoryFactoryBean );
196
199
}
197
200
198
201
@ Test
@@ -323,6 +326,14 @@ public static class RepositoryFactoryBeanInjectionBean {
323
326
324
327
@ Autowired
325
328
public RepositoryFactoryBean <?> repositoryFactoryBean ;
329
+
330
+ @ Autowired
331
+ @ Qualifier ("repoFactoryBean" )
332
+ public RepositoryFactoryBean <?> qualifiedRepositoryFactoryBean ;
333
+
334
+ @ Autowired
335
+ @ Qualifier ("&repoFactoryBean" )
336
+ public RepositoryFactoryBean <?> prefixQualifiedRepositoryFactoryBean ;
326
337
}
327
338
328
339
You can’t perform that action at this time.
0 commit comments