From 90d1d867df50d6d1a39086576f4e9311e520ffe6 Mon Sep 17 00:00:00 2001 From: Thorsten Marx Date: Wed, 11 Dec 2024 10:35:41 +0100 Subject: [PATCH 1/2] undo removing of config overriding --- .../configs/SimpleConfiguration.java | 15 +++++++-------- .../cms/extensions/ExtensionManager.java | 2 +- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java b/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java index fdc17a7fc..85e5428a7 100644 --- a/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java +++ b/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java @@ -157,15 +157,14 @@ public Long getLong (String field, long defaultValue) { } public Map getMap (String field) { - var configSource = sources.stream() + Map result = new HashMap<>(); + sources.stream() .filter(ConfigSource::exists) - .findFirst(); - - if (configSource.isPresent()) { - return MapUtil.deepUnmodifiableMap(configSource.get().getMap(field)); - } - - return Collections.emptyMap(); + .map(config -> config.getMap(field)) + .forEach(sourceMap -> { + MapUtil.deepMerge(result, sourceMap); + }); + return result; } public T get(String field, Class aClass) { diff --git a/cms-extensions/src/main/java/com/condation/cms/extensions/ExtensionManager.java b/cms-extensions/src/main/java/com/condation/cms/extensions/ExtensionManager.java index 29206e7f5..b4a3aefcd 100644 --- a/cms-extensions/src/main/java/com/condation/cms/extensions/ExtensionManager.java +++ b/cms-extensions/src/main/java/com/condation/cms/extensions/ExtensionManager.java @@ -124,7 +124,7 @@ public RequestExtensions newContext(Theme theme, RequestContext requestContext) log.debug("load extensions from " + extPath); loadExtensions(extPath, context::eval); } - + return requestExtensions; } From f0b77d3c54cd844183aecff81c648998465d31b0 Mon Sep 17 00:00:00 2001 From: Thorsten Marx Date: Thu, 12 Dec 2024 08:14:30 +0100 Subject: [PATCH 2/2] undo removing of config overriding --- cms-core/configs/server.yaml | 15 +++++++++++++++ .../core/configuration/ConfigurationFactory.java | 2 +- .../configs/SimpleConfiguration.java | 6 +++--- .../configuration/source/TomlConfigSource.java | 2 +- .../cms/core/configuration/ConfigurationTest.java | 2 +- test-server/hosts/demo/site-dev.toml | 1 + 6 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 cms-core/configs/server.yaml create mode 100644 test-server/hosts/demo/site-dev.toml diff --git a/cms-core/configs/server.yaml b/cms-core/configs/server.yaml new file mode 100644 index 000000000..947627319 --- /dev/null +++ b/cms-core/configs/server.yaml @@ -0,0 +1,15 @@ +server: + port: 8080 + ip: "127.0.0.1" +env: dev +test: only in yaml +ipc: + port: 6868 + password: test_pwd +apm: + enabled: false + max_requests: 100 + thread_limit: 10 +# experimental settings +performance: + pool_enabled: false \ No newline at end of file diff --git a/cms-core/src/main/java/com/condation/cms/core/configuration/ConfigurationFactory.java b/cms-core/src/main/java/com/condation/cms/core/configuration/ConfigurationFactory.java index 05e560dfb..3818c0152 100644 --- a/cms-core/src/main/java/com/condation/cms/core/configuration/ConfigurationFactory.java +++ b/cms-core/src/main/java/com/condation/cms/core/configuration/ConfigurationFactory.java @@ -173,4 +173,4 @@ private static TaxonomyConfiguration taxonomyConfiguration(EventBus eventBus, Pa .addSource(TomlConfigSource.build(hostBase.resolve("config/taxonomy.toml"))) .build(); } -} +} \ No newline at end of file diff --git a/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java b/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java index 85e5428a7..3248b2f68 100644 --- a/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java +++ b/cms-core/src/main/java/com/condation/cms/core/configuration/configs/SimpleConfiguration.java @@ -165,8 +165,8 @@ public Map getMap (String field) { MapUtil.deepMerge(result, sourceMap); }); return result; - } - + } + public T get(String field, Class aClass) { try { var map = getMap(field); @@ -208,4 +208,4 @@ public SimpleConfiguration build () { return new SimpleConfiguration(this); } } -} +} \ No newline at end of file diff --git a/cms-core/src/main/java/com/condation/cms/core/configuration/source/TomlConfigSource.java b/cms-core/src/main/java/com/condation/cms/core/configuration/source/TomlConfigSource.java index 13962cbfa..bee21ad7d 100644 --- a/cms-core/src/main/java/com/condation/cms/core/configuration/source/TomlConfigSource.java +++ b/cms-core/src/main/java/com/condation/cms/core/configuration/source/TomlConfigSource.java @@ -173,4 +173,4 @@ public Map toMap() { } } -} +} \ No newline at end of file diff --git a/cms-core/src/test/java/com/condation/cms/core/configuration/ConfigurationTest.java b/cms-core/src/test/java/com/condation/cms/core/configuration/ConfigurationTest.java index 0984683a3..367a88c11 100644 --- a/cms-core/src/test/java/com/condation/cms/core/configuration/ConfigurationTest.java +++ b/cms-core/src/test/java/com/condation/cms/core/configuration/ConfigurationTest.java @@ -129,4 +129,4 @@ public static class Server { private int port; private String ip; } -} +} \ No newline at end of file diff --git a/test-server/hosts/demo/site-dev.toml b/test-server/hosts/demo/site-dev.toml new file mode 100644 index 000000000..eb2cd86dc --- /dev/null +++ b/test-server/hosts/demo/site-dev.toml @@ -0,0 +1 @@ +hostname = [ "localhost5" ] \ No newline at end of file