From 9a93e187210113da8c2d27fa826763660af8ddf0 Mon Sep 17 00:00:00 2001 From: dyx1234 <2060307490@qq.com> Date: Tue, 27 Feb 2024 10:47:24 +0800 Subject: [PATCH 1/2] feature:check the required fields consul when the Config mode starts --- .../dynamic/api/BootstrapPropertiesInterface.java | 7 +++++++ .../config/properties/BootstrapConfigProperties.java | 5 +++++ .../hippo4j/core/enable/BeforeCheckConfiguration.java | 10 ++++++++++ 3 files changed, 22 insertions(+) diff --git a/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java b/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java index 4f7316dab0..83a38f49ff 100644 --- a/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java +++ b/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java @@ -108,4 +108,11 @@ default Map getPolaris() { return null; } + /** + * Get consul. + */ + default Map getConsul() { + return null; + } + } diff --git a/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java b/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java index 1bc87dc023..859a2f4e76 100644 --- a/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java +++ b/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java @@ -81,6 +81,11 @@ public class BootstrapConfigProperties implements BootstrapPropertiesInterface { */ private Map polaris; + /** + * consul config + */ + private Map consul; + /** * Web config * diff --git a/threadpool/core/src/main/java/cn/hippo4j/core/enable/BeforeCheckConfiguration.java b/threadpool/core/src/main/java/cn/hippo4j/core/enable/BeforeCheckConfiguration.java index d20573f673..4696f37ef1 100644 --- a/threadpool/core/src/main/java/cn/hippo4j/core/enable/BeforeCheckConfiguration.java +++ b/threadpool/core/src/main/java/cn/hippo4j/core/enable/BeforeCheckConfiguration.java @@ -178,6 +178,16 @@ public BeforeCheckConfiguration.BeforeCheck dynamicThreadPoolBeforeCheckBean(@Au "Please check whether the [spring.dynamic.thread-pool.polaris.file.type] configuration is empty or an empty string."); } } + + Map consul = properties.getConsul(); + if (MapUtil.isNotEmpty(consul)) { + String dataKey = consul.get("data-key"); + if (StringUtil.isBlank(dataKey)) { + throw new ConfigEmptyException( + "Web server maybe fail to start. The dynamic thread pool consul data-key is empty.", + "Please check whether the [spring.dynamic.thread-pool.consul.data-key] configuration is empty or an empty string."); + } + } break; } default: From 7c249892ac4738fbebd5882b8d5949fc46c29d76 Mon Sep 17 00:00:00 2001 From: dyx1234 <2060307490@qq.com> Date: Mon, 20 May 2024 19:59:04 +0800 Subject: [PATCH 2/2] feature:check the required fields consul when the Config mode starts --- .../threadpool/dynamic/api/BootstrapPropertiesInterface.java | 1 - .../mode/config/properties/BootstrapConfigProperties.java | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java b/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java index 83a38f49ff..ca2f7e4331 100644 --- a/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java +++ b/kernel/dynamic/api/src/main/java/cn/hippo4j/threadpool/dynamic/api/BootstrapPropertiesInterface.java @@ -114,5 +114,4 @@ default Map getPolaris() { default Map getConsul() { return null; } - } diff --git a/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java b/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java index 859a2f4e76..1869558a2b 100644 --- a/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java +++ b/kernel/dynamic/mode/config/src/main/java/cn/hippo4j/threadpool/dynamic/mode/config/properties/BootstrapConfigProperties.java @@ -82,7 +82,7 @@ public class BootstrapConfigProperties implements BootstrapPropertiesInterface { private Map polaris; /** - * consul config + * Consul config */ private Map consul;