From ac966b7be5a68cfdb1fdfce3b36c41a707f5a596 Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Mon, 16 Nov 2020 14:08:52 +0100 Subject: [PATCH] Added guards on config splitting and default value is now code --- .../internal/ConfigurationPropertiesAggregator.java | 13 +++++++++++-- .../templates/spring-cloud/configprops.hbs | 2 +- .../internal/GenerateReleaseTrainDocsTests.java | 2 +- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/train-docs/src/main/java/org/springframework/cloud/internal/ConfigurationPropertiesAggregator.java b/train-docs/src/main/java/org/springframework/cloud/internal/ConfigurationPropertiesAggregator.java index b4f3b8a..04006f0 100644 --- a/train-docs/src/main/java/org/springframework/cloud/internal/ConfigurationPropertiesAggregator.java +++ b/train-docs/src/main/java/org/springframework/cloud/internal/ConfigurationPropertiesAggregator.java @@ -43,9 +43,18 @@ class ConfigurationPropertiesAggregator { // |foo|bar|baz -> foo|bar|baz -> split -> // foo,bar,baz String[] strings = s.substring(1).split("\\|"); + if (strings.length == 3) { + return new ConfigurationProperty( + strings[0].trim(), strings[1].trim(), + strings[2].trim()); + } + else if (strings.length == 2) { + return new ConfigurationProperty( + strings[0].trim(), strings[1].trim(), + ""); + } return new ConfigurationProperty( - strings[0].trim(), strings[1].trim(), - strings[2].trim()); + strings[0].trim(), "", ""); }); } catch (IOException e) { diff --git a/train-docs/src/main/resources/templates/spring-cloud/configprops.hbs b/train-docs/src/main/resources/templates/spring-cloud/configprops.hbs index 267b519..c292132 100644 --- a/train-docs/src/main/resources/templates/spring-cloud/configprops.hbs +++ b/train-docs/src/main/resources/templates/spring-cloud/configprops.hbs @@ -1,7 +1,7 @@ |=== |Name | Default | Description -{{#each properties}} |{{name}} | {{defaultValue}} | {{description}} +{{#each properties}} |{{name}} | `{{defaultValue}}` | {{description}} {{/each}} |=== \ No newline at end of file diff --git a/train-docs/src/test/java/org/springframework/cloud/internal/GenerateReleaseTrainDocsTests.java b/train-docs/src/test/java/org/springframework/cloud/internal/GenerateReleaseTrainDocsTests.java index e00e3f5..9a50f32 100644 --- a/train-docs/src/test/java/org/springframework/cloud/internal/GenerateReleaseTrainDocsTests.java +++ b/train-docs/src/test/java/org/springframework/cloud/internal/GenerateReleaseTrainDocsTests.java @@ -104,7 +104,7 @@ public class GenerateReleaseTrainDocsTests { BDDAssertions.then(generatedAdocs).isNotEmptyDirectory(); BDDAssertions.then(configProps(generatedAdocs)).contains( - "|spring.sleuth.async.configurer.enabled | true | Enable default AsyncConfigurer."); + "|spring.sleuth.async.configurer.enabled | `true` | Enable default AsyncConfigurer."); } private String configProps(File file) throws IOException {