From daf3f82006f41cf87437607193c7b8432d1d3a92 Mon Sep 17 00:00:00 2001 From: Johnny Lim Date: Mon, 30 Jul 2018 13:44:43 +0900 Subject: [PATCH] Polish AutoConfigurationGroup.selectImports() Closes gh-13943 --- .../AutoConfigurationImportSelector.java | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/AutoConfigurationImportSelector.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/AutoConfigurationImportSelector.java index 4b1a128f12..99ee468f11 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/AutoConfigurationImportSelector.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/AutoConfigurationImportSelector.java @@ -433,19 +433,11 @@ public class AutoConfigurationImportSelector Set allExclusions = this.autoConfigurationEntries.stream() .map(AutoConfigurationEntry::getExclusions) .flatMap(Collection::stream).collect(Collectors.toSet()); - Set processedConfigurations = new LinkedHashSet<>(); - Set processedExclusions = new LinkedHashSet<>(); - this.autoConfigurationEntries.forEach((entry) -> { - List configurations = new ArrayList<>(entry.getConfigurations()); - configurations.removeAll(allExclusions); - configurations.removeIf(processedConfigurations::contains); - Set exclusions = new HashSet<>(entry.getExclusions()); - exclusions.removeIf(processedExclusions::contains); - // This now represents the exact state of this entry based on the - // state of all other entries - processedConfigurations.addAll(configurations); - processedExclusions.addAll(exclusions); - }); + Set processedConfigurations = this.autoConfigurationEntries.stream() + .map(AutoConfigurationEntry::getConfigurations) + .flatMap(Collection::stream) + .collect(Collectors.toCollection(LinkedHashSet::new)); + processedConfigurations.removeAll(allExclusions); return sortAutoConfigurations(processedConfigurations, getAutoConfigurationMetadata())