Commit dea1e296 authored by Stephane Nicoll's avatar Stephane Nicoll

Merge branch '2.0.x'

parents 4139e1b9 8e042ed3
...@@ -17,11 +17,13 @@ ...@@ -17,11 +17,13 @@
package org.springframework.boot.autoconfigure.diagnostics.analyzer; package org.springframework.boot.autoconfigure.diagnostics.analyzer;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.stream.Collectors;
import org.springframework.beans.BeansException; import org.springframework.beans.BeansException;
import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactory;
...@@ -87,16 +89,12 @@ class NoSuchBeanDefinitionFailureAnalyzer ...@@ -87,16 +89,12 @@ class NoSuchBeanDefinitionFailureAnalyzer
message.append(String.format("%s required %s that could not be found.%n", message.append(String.format("%s required %s that could not be found.%n",
(description != null ? description : "A component"), (description != null ? description : "A component"),
getBeanDescription(cause))); getBeanDescription(cause)));
if (!autoConfigurationResults.isEmpty()) {
for (AutoConfigurationResult result : autoConfigurationResults) { for (AutoConfigurationResult result : autoConfigurationResults) {
message.append(String.format("\t- %s%n", result)); message.append(String.format("\t- %s%n", result));
} }
}
if (!userConfigurationResults.isEmpty()) {
for (UserConfigurationResult result : userConfigurationResults) { for (UserConfigurationResult result : userConfigurationResults) {
message.append(String.format("\t- %s%n", result)); message.append(String.format("\t- %s%n", result));
} }
}
String action = String.format("Consider %s %s in your configuration.", String action = String.format("Consider %s %s in your configuration.",
(!autoConfigurationResults.isEmpty() (!autoConfigurationResults.isEmpty()
|| !userConfigurationResults.isEmpty() || !userConfigurationResults.isEmpty()
...@@ -128,18 +126,17 @@ class NoSuchBeanDefinitionFailureAnalyzer ...@@ -128,18 +126,17 @@ class NoSuchBeanDefinitionFailureAnalyzer
private List<UserConfigurationResult> getUserConfigurationResults( private List<UserConfigurationResult> getUserConfigurationResults(
NoSuchBeanDefinitionException cause) { NoSuchBeanDefinitionException cause) {
List<UserConfigurationResult> results = new ArrayList<>();
ResolvableType type = cause.getResolvableType(); ResolvableType type = cause.getResolvableType();
if (type != null) { if (type == null) {
for (String beanName : BeanFactoryUtils.beanNamesForTypeIncludingAncestors( return Collections.emptyList();
this.beanFactory, cause.getResolvableType())) {
boolean nullBean = this.beanFactory.getBean(beanName).equals(null);
results.add(new UserConfigurationResult(
getFactoryMethodMetadata(beanName), nullBean));
}
} }
return results; String[] beanNames = BeanFactoryUtils
.beanNamesForTypeIncludingAncestors(this.beanFactory, type);
return Arrays.stream(beanNames)
.map((beanName) -> new UserConfigurationResult(
getFactoryMethodMetadata(beanName),
this.beanFactory.getBean(beanName).equals(null)))
.collect(Collectors.toList());
} }
private MethodMetadata getFactoryMethodMetadata(String beanName) { private MethodMetadata getFactoryMethodMetadata(String beanName) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment