diff --git a/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/ConfigServerConfigDataLoader.java b/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/ConfigServerConfigDataLoader.java index 3e215345..c2703428 100644 --- a/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/ConfigServerConfigDataLoader.java +++ b/spring-cloud-config-client/src/main/java/org/springframework/cloud/config/client/ConfigServerConfigDataLoader.java @@ -24,7 +24,6 @@ import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; import org.apache.commons.logging.Log; @@ -50,7 +49,6 @@ import org.springframework.http.HttpMethod; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; -import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; import org.springframework.web.client.HttpClientErrorException; import org.springframework.web.client.HttpServerErrorException; @@ -154,15 +152,28 @@ public class ConfigServerConfigDataLoader implements ConfigDataLoader 2) { // boot 2.4.5+ - if (resource.isProfileSpecific()) { - List> filteredSources = propertySources.stream() - .filter(propertySource -> resource.getAcceptedProfiles().stream() - .anyMatch(profile -> isProfileSpecificPropertySource( - resource.getProperties().getName(), propertySource, profile))) - .collect(Collectors.toList()); - return new ConfigData(filteredSources, Option.IGNORE_IMPORTS, Option.PROFILE_SPECIFIC); - } - return new ConfigData(propertySources, Option.IGNORE_IMPORTS); + return new ConfigData(propertySources, propertySource -> { + String propertySourceName = propertySource.getName(); + List