From 3fb8e37a57f4c961f60c8914364fcf3cbe79d17a Mon Sep 17 00:00:00 2001 From: Piedeloup Nicolas Date: Fri, 17 May 2024 17:13:24 +0200 Subject: [PATCH] [Core] Better error message in yaml config --- .../core/node/config/yaml/YamlNodeConfigBuilder.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/vertigo-core/src/main/java/io/vertigo/core/node/config/yaml/YamlNodeConfigBuilder.java b/vertigo-core/src/main/java/io/vertigo/core/node/config/yaml/YamlNodeConfigBuilder.java index e66c34588..c86ecd1e0 100644 --- a/vertigo-core/src/main/java/io/vertigo/core/node/config/yaml/YamlNodeConfigBuilder.java +++ b/vertigo-core/src/main/java/io/vertigo/core/node/config/yaml/YamlNodeConfigBuilder.java @@ -202,7 +202,8 @@ private void handleYamlModuleConfig(final String featuresClassName, final YamlMo .forEach(feature -> { Assertion.check() .isFalse(feature.containsKey(FLAGS), "can't read flags as intended in feature {0} (module's flags: {1})", featuresClassName, yamlModuleConfig.__flags__) - .isTrue(feature.size() == 1, "a feature is designed by it's class"); + .isTrue(feature.size() > 0, "missing feature") + .isTrue(feature.size() == 1, "a feature '{0}' should be designed by it's class only (may add indents)", feature.keySet().iterator().next()); final Map.Entry> featureEntry = feature.entrySet().iterator().next(); final String featureClassName = featureEntry.getKey(); final Method methodForFeature = featureMethods.get(featureClassName); @@ -220,7 +221,8 @@ private void handleYamlModuleConfig(final String featuresClassName, final YamlMo .forEach(featureConfig -> { Assertion.check() .isFalse(featureConfig.containsKey(FLAGS), "can't read flags as intended in featureConfig {0} (module's flags: {1})", featuresClassName, yamlModuleConfig.__flags__) - .isTrue(featureConfig.size() == 1, "a feature is designed by it's class"); + .isTrue(featureConfig.size() > 0, "missing featureConfig") + .isTrue(featureConfig.size() == 1, "a featureConfig '{0}' should be designed by it's name only (may add indents)", featureConfig.keySet().iterator().next()); final Map.Entry> featureEntry = featureConfig.entrySet().iterator().next(); final String featureClassName = featureEntry.getKey(); final Method methodForFeature = featureMethods.get(featureClassName);