diff --git a/buildSrc/src/main/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntry.java b/buildSrc/src/main/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntry.java index cf7f4128c2a9..decd79af38ae 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntry.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntry.java @@ -43,8 +43,9 @@ void addConfigurationKeys(ConfigurationProperty... properties) { @Override void write(AsciidocBuilder builder) { - builder.append("|"); + builder.append("|[[" + this.key + "]]<<" + this.key + ","); this.configurationKeys.forEach(builder::appendKey); + builder.appendln(">>"); builder.newLine().appendln("|").appendln("|+++", this.description, "+++"); } diff --git a/buildSrc/src/main/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntry.java b/buildSrc/src/main/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntry.java index 0abdfdbf29f8..259e4d4e8e40 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntry.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntry.java @@ -30,8 +30,11 @@ class SingleConfigurationTableEntry extends ConfigurationTableEntry { private final String defaultValue; + private final String anchor; + SingleConfigurationTableEntry(ConfigurationProperty property) { this.key = property.getName(); + this.anchor = this.key; if (property.getType() != null && property.getType().startsWith("java.util.Map")) { this.key += ".*"; } @@ -52,7 +55,7 @@ private String getDefaultValue(Object defaultValue) { @Override void write(AsciidocBuilder builder) { - builder.appendln("|`+", this.key, "+`"); + builder.appendln("|[[" + this.anchor + "]]<<" + this.anchor + ",`+", this.key, "+`>>"); writeDefaultValue(builder); writeDescription(builder); builder.appendln(); diff --git a/buildSrc/src/test/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntryTests.java b/buildSrc/src/test/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntryTests.java index db63c2a152c3..5e7476c30ed1 100644 --- a/buildSrc/src/test/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntryTests.java +++ b/buildSrc/src/test/java/org/springframework/boot/build/context/properties/CompoundConfigurationTableEntryTests.java @@ -39,9 +39,9 @@ void simpleProperty() { entry.addConfigurationKeys(firstProp, secondProp, thirdProp); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo( - "|`+spring.test.first+` +" + NEWLINE + "`+spring.test.second+` +" + NEWLINE + "`+spring.test.third+` +" - + NEWLINE + NEWLINE + "|" + NEWLINE + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test]]<>" + NEWLINE + NEWLINE + + "|" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } } diff --git a/buildSrc/src/test/java/org/springframework/boot/build/context/properties/ConfigurationTableTests.java b/buildSrc/src/test/java/org/springframework/boot/build/context/properties/ConfigurationTableTests.java index 11e4483b1b16..71099b327547 100644 --- a/buildSrc/src/test/java/org/springframework/boot/build/context/properties/ConfigurationTableTests.java +++ b/buildSrc/src/test/java/org/springframework/boot/build/context/properties/ConfigurationTableTests.java @@ -39,10 +39,11 @@ void simpleTable() { table.addEntry(new SingleConfigurationTableEntry(first)); table.addEntry(new SingleConfigurationTableEntry(second)); assertThat(table.toAsciidocTable()).isEqualTo("[cols=\"1,1,2\", options=\"header\"]" + NEWLINE + "|===" - + NEWLINE + "|Key|Default Value|Description" + NEWLINE + NEWLINE + "|`+spring.test.other+`" + NEWLINE - + "|`+other value+`" + NEWLINE + "|+++This is another description.+++" + NEWLINE + NEWLINE - + "|`+spring.test.prop+`" + NEWLINE + "|`+something+`" + NEWLINE + "|+++This is a description.+++" - + NEWLINE + NEWLINE + "|===" + NEWLINE); + + NEWLINE + "|Key|Default Value|Description" + NEWLINE + NEWLINE + + "|[[spring.test.other]]<>" + NEWLINE + "|`+other value+`" + + NEWLINE + "|+++This is another description.+++" + NEWLINE + NEWLINE + + "|[[spring.test.prop]]<>" + NEWLINE + "|`+something+`" + + NEWLINE + "|+++This is a description.+++" + NEWLINE + NEWLINE + "|===" + NEWLINE); } } diff --git a/buildSrc/src/test/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntryTests.java b/buildSrc/src/test/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntryTests.java index fe2be691a7e0..c232d845e7a6 100644 --- a/buildSrc/src/test/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntryTests.java +++ b/buildSrc/src/test/java/org/springframework/boot/build/context/properties/SingleConfigurationTableEntryTests.java @@ -36,8 +36,8 @@ void simpleProperty() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo("|`+spring.test.prop+`" + NEWLINE + "|`+something+`" + NEWLINE - + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test.prop]]<>" + + NEWLINE + "|`+something+`" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } @Test @@ -47,8 +47,8 @@ void noDefaultValue() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo( - "|`+spring.test.prop+`" + NEWLINE + "|" + NEWLINE + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test.prop]]<>" + + NEWLINE + "|" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } @Test @@ -58,8 +58,8 @@ void defaultValueWithPipes() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo("|`+spring.test.prop+`" + NEWLINE + "|`+first\\|second+`" + NEWLINE - + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test.prop]]<>" + + NEWLINE + "|`+first\\|second+`" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } @Test @@ -69,8 +69,8 @@ void defaultValueWithBackslash() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo("|`+spring.test.prop+`" + NEWLINE + "|`+first\\\\second+`" + NEWLINE - + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test.prop]]<>" + + NEWLINE + "|`+first\\\\second+`" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } @Test @@ -80,8 +80,8 @@ void descriptionWithPipe() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo("|`+spring.test.prop+`" + NEWLINE + "|" + NEWLINE - + "|+++This is a description with a \\| pipe.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test.prop]]<>" + + NEWLINE + "|" + NEWLINE + "|+++This is a description with a \\| pipe.+++" + NEWLINE); } @Test @@ -91,8 +91,8 @@ void mapProperty() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo( - "|`+spring.test.prop.*+`" + NEWLINE + "|" + NEWLINE + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo("|[[spring.test.prop]]<>" + + NEWLINE + "|" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } @Test @@ -103,8 +103,9 @@ void listProperty() { SingleConfigurationTableEntry entry = new SingleConfigurationTableEntry(property); AsciidocBuilder builder = new AsciidocBuilder(); entry.write(builder); - assertThat(builder.toString()).isEqualTo("|`+spring.test.prop+`" + NEWLINE + "|`+first," + NEWLINE + "second," - + NEWLINE + "third+`" + NEWLINE + "|+++This is a description.+++" + NEWLINE); + assertThat(builder.toString()).isEqualTo( + "|[[spring.test.prop]]<>" + NEWLINE + "|`+first," + NEWLINE + + "second," + NEWLINE + "third+`" + NEWLINE + "|+++This is a description.+++" + NEWLINE); } }