master
Juergen Hoeller 11 years ago committed by unknown
parent dfb29f4296
commit 6d80da2e31
  1. 14
      spring-context/src/main/java/org/springframework/context/annotation/ConfigurationClassBeanDefinitionReader.java

@ -107,8 +107,8 @@ class ConfigurationClassBeanDefinitionReader {
/** /**
* Read {@code configurationModel}, registering bean definitions with {@link #registry} * Read {@code configurationModel}, registering bean definitions
* based on its contents. * with the registry based on its contents.
*/ */
public void loadBeanDefinitions(Set<ConfigurationClass> configurationModel) { public void loadBeanDefinitions(Set<ConfigurationClass> configurationModel) {
TrackedConditionEvaluator trackedConditionEvaluator = new TrackedConditionEvaluator(); TrackedConditionEvaluator trackedConditionEvaluator = new TrackedConditionEvaluator();
@ -140,8 +140,9 @@ class ConfigurationClassBeanDefinitionReader {
} }
private void removeBeanDefinition(ConfigurationClass configClass) { private void removeBeanDefinition(ConfigurationClass configClass) {
if (StringUtils.hasLength(configClass.getBeanName()) && this.registry.containsBeanDefinition(configClass.getBeanName())) { String beanName = configClass.getBeanName();
this.registry.removeBeanDefinition(configClass.getBeanName()); if (StringUtils.hasLength(beanName) && this.registry.containsBeanDefinition(beanName)) {
this.registry.removeBeanDefinition(beanName);
} }
} }
@ -299,7 +300,8 @@ class ConfigurationClassBeanDefinitionReader {
readerInstanceCache.put(readerClass, readerInstance); readerInstanceCache.put(readerClass, readerInstance);
} }
catch (Exception ex) { catch (Exception ex) {
throw new IllegalStateException("Could not instantiate BeanDefinitionReader class [" + readerClass.getName() + "]"); throw new IllegalStateException(
"Could not instantiate BeanDefinitionReader class [" + readerClass.getName() + "]");
} }
} }
BeanDefinitionReader reader = readerInstanceCache.get(readerClass); BeanDefinitionReader reader = readerInstanceCache.get(readerClass);
@ -375,7 +377,7 @@ class ConfigurationClassBeanDefinitionReader {
/** /**
* Evaluate {@Code @Conditional} annotations, tracking results and taking into * Evaluate {@code @Conditional} annotations, tracking results and taking into
* account 'imported by'. * account 'imported by'.
*/ */
private class TrackedConditionEvaluator { private class TrackedConditionEvaluator {

Loading…
Cancel
Save