use of org.springframework.beans.factory.annotation.AnnotatedBeanDefinition in project spring-framework by spring-projects.
the class AnnotationBeanNameGeneratorTests method generateBeanNameFromMetaComponentWithStringValue.
@Test
public void generateBeanNameFromMetaComponentWithStringValue() {
BeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry();
AnnotatedBeanDefinition bd = new AnnotatedGenericBeanDefinition(ComponentFromStringMeta.class);
String beanName = this.beanNameGenerator.generateBeanName(bd, registry);
assertThat(beanName).isEqualTo("henry");
}
use of org.springframework.beans.factory.annotation.AnnotatedBeanDefinition in project spring-framework by spring-projects.
the class AnnotationScopeMetadataResolverTests method resolveScopeMetadataShouldNotApplyScopedProxyModeToSingleton.
@Test
public void resolveScopeMetadataShouldNotApplyScopedProxyModeToSingleton() {
AnnotatedBeanDefinition bd = new AnnotatedGenericBeanDefinition(AnnotatedWithSingletonScope.class);
ScopeMetadata scopeMetadata = this.scopeMetadataResolver.resolveScopeMetadata(bd);
assertThat(scopeMetadata).as("resolveScopeMetadata(..) must *never* return null.").isNotNull();
assertThat(scopeMetadata.getScopeName()).isEqualTo(BeanDefinition.SCOPE_SINGLETON);
assertThat(scopeMetadata.getScopedProxyMode()).isEqualTo(NO);
}
use of org.springframework.beans.factory.annotation.AnnotatedBeanDefinition in project webanno by webanno.
the class ExportedComponentPostProcessor method postProcessAfterInitialization.
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
ConfigurableListableBeanFactory parentBeanFactory = getParentBeanFactory();
if (parentBeanFactory == null) {
return bean;
}
BeanDefinition bd;
try {
bd = beanFactory.getBeanDefinition(beanName);
} catch (NoSuchBeanDefinitionException exception) {
return bean;
}
if (bd instanceof AnnotatedBeanDefinition) {
AnnotatedBeanDefinition metadata = (AnnotatedBeanDefinition) bd;
if (metadata.getMetadata().isAnnotated(ExportedComponent.class.getName())) {
parentBeanFactory.registerSingleton(beanName, bean);
}
}
return bean;
}
Aggregations