1 package org.springframework.osgi.atlassian;
2
3 import org.springframework.beans.factory.config.BeanDefinitionHolder;
4 import org.springframework.beans.factory.config.DependencyDescriptor;
5 import org.springframework.context.annotation.ContextAnnotationAutowireCandidateResolver;
6
7 import java.util.HashSet;
8 import java.util.Set;
9
10
11
12
13
14
15
16
17 public class ExcludableContextAnnotationAutowireCandidateResolver extends ContextAnnotationAutowireCandidateResolver {
18
19 private Set<String> excludedBeanNames = new HashSet<>();
20
21 public ExcludableContextAnnotationAutowireCandidateResolver() {
22
23
24
25 excludedBeanNames.add("org.springframework.context.annotation.ConfigurationClassPostProcessor.importRegistry");
26 }
27
28 public boolean isAutowireCandidate(BeanDefinitionHolder bdHolder, DependencyDescriptor descriptor) {
29 if (excludedBeanNames.contains(bdHolder.getBeanName())) {
30 return false;
31 }
32
33 return super.isAutowireCandidate(bdHolder, descriptor);
34 }
35 }