diff --git a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/config/reload/ConfigReloadAutoConfiguration.java b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/config/reload/ConfigReloadAutoConfiguration.java index 856119eb..978d4339 100644 --- a/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/config/reload/ConfigReloadAutoConfiguration.java +++ b/spring-cloud-kubernetes-commons/src/main/java/org/springframework/cloud/kubernetes/commons/config/reload/ConfigReloadAutoConfiguration.java @@ -64,22 +64,20 @@ public class ConfigReloadAutoConfiguration { public ConfigurationUpdateStrategy configurationUpdateStrategy(ConfigReloadProperties properties, ConfigurableApplicationContext ctx, Optional restarter, ContextRefresher refresher) { String strategyName = properties.getStrategy().name(); - switch (properties.getStrategy()) { - case RESTART_CONTEXT: - restarter.orElseThrow(() -> new AssertionError("Restart endpoint is not enabled")); - return new ConfigurationUpdateStrategy(strategyName, () -> { - wait(properties); - restarter.get().restart(); - }); - case REFRESH: - return new ConfigurationUpdateStrategy(strategyName, refresher::refresh); - case SHUTDOWN: - return new ConfigurationUpdateStrategy(strategyName, () -> { + return switch (properties.getStrategy()) { + case RESTART_CONTEXT -> { + restarter.orElseThrow(() -> new AssertionError("Restart endpoint is not enabled")); + yield new ConfigurationUpdateStrategy(strategyName, () -> { + wait(properties); + restarter.get().restart(); + }); + } + case REFRESH -> new ConfigurationUpdateStrategy(strategyName, refresher::refresh); + case SHUTDOWN -> new ConfigurationUpdateStrategy(strategyName, () -> { wait(properties); ctx.close(); }); - } - throw new IllegalStateException("Unsupported configuration update strategy: " + strategyName); + }; } private static void wait(ConfigReloadProperties properties) {