@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
/ *
* Copyright 2002 - 2013 the original author or authors .
* Copyright 2002 - 2014 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 .
@ -61,6 +61,7 @@ import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
@@ -61,6 +61,7 @@ import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.config.DependencyDescriptor ;
import org.springframework.core.annotation.AnnotationUtils ;
import org.springframework.util.Assert ;
import org.springframework.util.ClassUtils ;
import org.springframework.util.ObjectUtils ;
import org.springframework.util.StringUtils ;
@ -349,7 +350,7 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
@@ -349,7 +350,7 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
@Override
public String [ ] getBeanNamesForType ( Class < ? > type , boolean includeNonSingletons , boolean allowEagerInit ) {
if ( ! isConfigurationFrozen ( ) | | type = = null | | ! allowEagerInit ) {
if ( ! isConfigurationFrozen ( ) | | type = = null | | ! allowEagerInit ) {
return doGetBeanNamesForType ( type , includeNonSingletons , allowEagerInit ) ;
}
Map < Class < ? > , String [ ] > cache =
@ -359,7 +360,9 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
@@ -359,7 +360,9 @@ public class DefaultListableBeanFactory extends AbstractAutowireCapableBeanFacto
return resolvedBeanNames ;
}
resolvedBeanNames = doGetBeanNamesForType ( type , includeNonSingletons , allowEagerInit ) ;
cache . put ( type , resolvedBeanNames ) ;
if ( ClassUtils . isCacheSafe ( type , getBeanClassLoader ( ) ) ) {
cache . put ( type , resolvedBeanNames ) ;
}
return resolvedBeanNames ;
}