@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
/ *
* Copyright 2002 - 2014 the original author or authors .
* Copyright 2002 - 2015 the original author or authors .
*
* Licensed under the Apache License , Version 2 . 0 ( the "License" ) ;
* you may not use this file except in compliance with the License .
@ -176,6 +176,7 @@ public class AnnotationConfigWebApplicationContext extends AbstractRefreshableWe
@@ -176,6 +176,7 @@ public class AnnotationConfigWebApplicationContext extends AbstractRefreshableWe
* < p > Configuration class bean definitions are registered with generated bean
* definition names unless the { @code value } attribute is provided to the stereotype
* annotation .
* @param beanFactory the bean factory to load bean definitions into
* @see # register ( Class . . . )
* @see # scan ( String . . . )
* @see # setConfigLocation ( String )
@ -185,19 +186,17 @@ public class AnnotationConfigWebApplicationContext extends AbstractRefreshableWe
@@ -185,19 +186,17 @@ public class AnnotationConfigWebApplicationContext extends AbstractRefreshableWe
* /
@Override
protected void loadBeanDefinitions ( DefaultListableBeanFactory beanFactory ) {
AnnotatedBeanDefinitionReader reader = new AnnotatedBeanDefinitionReader ( beanFactory ) ;
reader . setEnvironment ( getEnvironment ( ) ) ;
ClassPathBeanDefinitionScanner scanner = new ClassPathBeanDefinitionScanner ( beanFactory ) ;
scanner . setEnvironment ( getEnvironment ( ) ) ;
AnnotatedBeanDefinitionReader reader = getAnnotatedBeanDefinitionReader ( beanFactory ) ;
ClassPathBeanDefinitionScanner scanner = getClassPathBeanDefinitionScanner ( beanFactory ) ;
BeanNameGenerator beanNameGenerator = getBeanNameGenerator ( ) ;
ScopeMetadataResolver scopeMetadataResolver = getScopeMetadataResolver ( ) ;
if ( beanNameGenerator ! = null ) {
reader . setBeanNameGenerator ( beanNameGenerator ) ;
scanner . setBeanNameGenerator ( beanNameGenerator ) ;
beanFactory . registerSingleton ( AnnotationConfigUtils . CONFIGURATION_BEAN_NAME_GENERATOR , beanNameGenerator ) ;
}
ScopeMetadataResolver scopeMetadataResolver = getScopeMetadataResolver ( ) ;
if ( scopeMetadataResolver ! = null ) {
reader . setScopeMetadataResolver ( scopeMetadataResolver ) ;
scanner . setScopeMetadataResolver ( scopeMetadataResolver ) ;
@ -248,4 +247,33 @@ public class AnnotationConfigWebApplicationContext extends AbstractRefreshableWe
@@ -248,4 +247,33 @@ public class AnnotationConfigWebApplicationContext extends AbstractRefreshableWe
}
}
/ * *
* Build an { @link AnnotatedBeanDefinitionReader } for the given bean factory .
* < p > This should be pre - configured with the { @code Environment } ( if desired )
* but not with a { @code BeanNameGenerator } or { @code ScopeMetadataResolver } yet .
* @param beanFactory the bean factory to load bean definitions into
* @since 4 . 1 . 9
* @see # getEnvironment ( )
* @see # getBeanNameGenerator ( )
* @see # getScopeMetadataResolver ( )
* /
protected AnnotatedBeanDefinitionReader getAnnotatedBeanDefinitionReader ( DefaultListableBeanFactory beanFactory ) {
return new AnnotatedBeanDefinitionReader ( beanFactory , getEnvironment ( ) ) ;
}
/ * *
* Build a { @link ClassPathBeanDefinitionScanner } for the given bean factory .
* < p > This should be pre - configured with the { @code Environment } ( if desired )
* but not with a { @code BeanNameGenerator } or { @code ScopeMetadataResolver } yet .
* @param beanFactory the bean factory to load bean definitions into
* @since 4 . 1 . 9
* @see # getEnvironment ( )
* @see # getBeanNameGenerator ( )
* @see # getScopeMetadataResolver ( )
* /
protected ClassPathBeanDefinitionScanner getClassPathBeanDefinitionScanner ( DefaultListableBeanFactory beanFactory ) {
return new ClassPathBeanDefinitionScanner ( beanFactory , true , getEnvironment ( ) ) ;
}
}