|
|
@ -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 { |
|
|
|