From c5cdebbf6b75bff04fe6e5b6a5cf4ad5a3ad52b8 Mon Sep 17 00:00:00 2001 From: erabii Date: Mon, 16 Aug 2021 16:04:23 -0400 Subject: [PATCH] Minor nitpicks k8s client config maps functionality (#852) * slightly refactored utils * add final modifier * final + remove isDebugEnabled * more nitpicks * checkstyle fix * one more change * fix so that logs are present --- ...bernetesClientConfigMapPropertySource.java | 14 ++++---- ...sClientConfigMapPropertySourceLocator.java | 2 +- .../config/KubernetesClientConfigUtils.java | 16 +++------ .../commons/KubernetesNamespaceProvider.java | 33 +++++-------------- 4 files changed, 22 insertions(+), 43 deletions(-) diff --git a/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySource.java b/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySource.java index ed92fbdd..3a062047 100644 --- a/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySource.java +++ b/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySource.java @@ -16,11 +16,12 @@ package org.springframework.cloud.kubernetes.client.config; -import java.util.ArrayList; import java.util.Collections; -import java.util.LinkedHashMap; -import java.util.List; +import java.util.HashMap; +import java.util.HashSet; import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; import io.kubernetes.client.openapi.ApiException; import io.kubernetes.client.openapi.apis.CoreV1Api; @@ -46,17 +47,18 @@ public class KubernetesClientConfigMapPropertySource extends ConfigMapPropertySo Environment environment) { try { - List names = new ArrayList<>(); + Set names = new HashSet<>(); names.add(name); if (environment != null) { for (String activeProfile : environment.getActiveProfiles()) { names.add(name + "-" + activeProfile); } } - Map result = new LinkedHashMap<>(); + Map result = new HashMap<>(); coreV1Api.listNamespacedConfigMap(namespace, null, null, null, null, null, null, null, null, null, null) .getItems().stream().filter(cm -> names.contains(cm.getMetadata().getName())) - .forEach(map -> result.putAll(processAllEntries(map.getData(), environment))); + .map(map -> processAllEntries(map.getData(), environment)).collect(Collectors.toList()) + .forEach(result::putAll); return result; } diff --git a/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySourceLocator.java b/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySourceLocator.java index 15cb1cc8..a5628d8a 100644 --- a/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySourceLocator.java +++ b/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigMapPropertySourceLocator.java @@ -32,7 +32,7 @@ import static org.springframework.cloud.kubernetes.client.config.KubernetesClien */ public class KubernetesClientConfigMapPropertySourceLocator extends ConfigMapPropertySourceLocator { - private CoreV1Api coreV1Api; + private final CoreV1Api coreV1Api; private KubernetesClientProperties kubernetesClientProperties; diff --git a/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigUtils.java b/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigUtils.java index d6541149..4f96505a 100644 --- a/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigUtils.java +++ b/spring-cloud-kubernetes-client-config/src/main/java/org/springframework/cloud/kubernetes/client/config/KubernetesClientConfigUtils.java @@ -53,22 +53,14 @@ public final class KubernetesClientConfigUtils { public static String getNamespace(ConfigMapConfigProperties.NormalizedSource normalizedSource, String fallbackNamespace) { - if (!StringUtils.hasText(normalizedSource.getNamespace())) { - return fallbackNamespace; - } - else { - return normalizedSource.getNamespace(); - } + String normalizedNamespace = normalizedSource.getNamespace(); + return StringUtils.hasText(normalizedNamespace) ? normalizedNamespace : fallbackNamespace; } public static String getNamespace(SecretsConfigProperties.NormalizedSource normalizedSource, String fallbackNamespace) { - if (!StringUtils.hasText(normalizedSource.getNamespace())) { - return fallbackNamespace; - } - else { - return normalizedSource.getNamespace(); - } + String normalizedNamespace = normalizedSource.getNamespace(); + return StringUtils.hasText(normalizedNamespace) ? normalizedNamespace : fallbackNamespace; } } diff --git a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/KubernetesNamespaceProvider.java b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/KubernetesNamespaceProvider.java index 57772930..ed5feca6 100644 --- a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/KubernetesNamespaceProvider.java +++ b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/KubernetesNamespaceProvider.java @@ -22,8 +22,6 @@ import java.nio.file.Path; import java.nio.file.Paths; import org.springframework.boot.logging.DeferredLog; -import org.springframework.context.ApplicationEvent; -import org.springframework.context.ApplicationListener; import org.springframework.core.env.Environment; import static org.springframework.cloud.kubernetes.commons.KubernetesClientProperties.SERVICE_ACCOUNT_NAMESPACE_PATH; @@ -31,7 +29,9 @@ import static org.springframework.cloud.kubernetes.commons.KubernetesClientPrope /** * @author Ryan Baxter */ -public class KubernetesNamespaceProvider implements ApplicationListener { +public class KubernetesNamespaceProvider { + + private static final DeferredLog LOG = new DeferredLog(); /** * Property name for namespace. @@ -43,22 +43,18 @@ public class KubernetesNamespaceProvider implements ApplicationListener