From 3e5e40d8cbfb0f1052097f785b65dfb31629dc40 Mon Sep 17 00:00:00 2001 From: Jachym Metlicka Date: Sun, 15 Mar 2026 19:29:17 +0100 Subject: [PATCH 1/2] add open and close brace placeholders to additionalProperties for all mustache templates in all code gens --- .../main/java/org/openapitools/codegen/DefaultCodegen.java | 4 ++++ .../codegen/languages/JavaMicronautAbstractCodegen.java | 4 ---- .../codegen/languages/KotlinSpringServerCodegen.java | 6 ------ .../org/openapitools/codegen/languages/SpringCodegen.java | 5 ----- 4 files changed, 4 insertions(+), 15 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index d83cdef420cf..d1f101fe1266 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -391,6 +391,10 @@ protected void useCodegenAsMustacheParentContext() { @Override public void processOpts() { + // add open brace {{openbrace}} and close brace {{closebrace}} to additionalProperties for all mustache templates + // to use when needed to use them where mustache would prevent plaintext + additionalProperties.put("openbrace", "{"); + additionalProperties.put("closebrace", "}"); if (!additionalProperties.containsKey(CodegenConstants.MUSTACHE_PARENT_CONTEXT)) { // by default empty parent context diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java index 0ff8db956a42..4dd8f65fe6d9 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaMicronautAbstractCodegen.java @@ -133,10 +133,6 @@ public JavaMicronautAbstractCodegen() { )) ); - // Set additional properties - additionalProperties.put("openbrace", "{"); - additionalProperties.put("closebrace", "}"); - // Set client options that will be presented to user updateOption(INVOKER_PACKAGE, this.getInvokerPackage()); updateOption(CodegenConstants.ARTIFACT_ID, this.getArtifactId()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java index f3037ad16c85..03abc35de88d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java @@ -63,9 +63,6 @@ public class KotlinSpringServerCodegen extends AbstractKotlinCodegen "ApiResponse" )); - public static final String OPEN_BRACE = "{"; - public static final String CLOSE_BRACE = "}"; - public static final String TITLE = "title"; public static final String SERVER_PORT = "serverPort"; public static final String CONFIG_PACKAGE = "configPackage"; @@ -222,9 +219,6 @@ public KotlinSpringServerCodegen() { // cliOptions default redefinition need to be updated updateOption(CodegenConstants.ARTIFACT_ID, this.artifactId); - additionalProperties.put("openbrace", OPEN_BRACE); - additionalProperties.put("closebrace", CLOSE_BRACE); - // Use lists instead of arrays typeMapping.put("array", "kotlin.collections.List"); typeMapping.put("list", "kotlin.collections.List"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java index d64785a8027c..4fc64abeaf07 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/SpringCodegen.java @@ -123,9 +123,6 @@ public enum RequestMappingMode { } } - public static final String OPEN_BRACE = "{"; - public static final String CLOSE_BRACE = "}"; - @Setter protected String title = "OpenAPI Spring"; @Getter @Setter protected String configPackage = "org.openapitools.configuration"; @@ -222,8 +219,6 @@ public SpringCodegen() { // spring uses the jackson lib jackson = true; - additionalProperties.put("openbrace", OPEN_BRACE); - additionalProperties.put("closebrace", CLOSE_BRACE); cliOptions.add(new CliOption(TITLE, "server title name or client service name").defaultValue(title)); cliOptions.add(new CliOption(CONFIG_PACKAGE, "configuration package for generated code") From c60de82f1681b358ea7694ed09c382ceb49dbba3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A1chym=20Metli=C4=8Dka?= Date: Mon, 16 Mar 2026 09:11:32 +0100 Subject: [PATCH 2/2] populate the map via the default constructor --- .../java/org/openapitools/codegen/DefaultCodegen.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index d1f101fe1266..81ac76f81516 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -391,10 +391,6 @@ protected void useCodegenAsMustacheParentContext() { @Override public void processOpts() { - // add open brace {{openbrace}} and close brace {{closebrace}} to additionalProperties for all mustache templates - // to use when needed to use them where mustache would prevent plaintext - additionalProperties.put("openbrace", "{"); - additionalProperties.put("closebrace", "}"); if (!additionalProperties.containsKey(CodegenConstants.MUSTACHE_PARENT_CONTEXT)) { // by default empty parent context @@ -1865,6 +1861,10 @@ public DefaultCodegen() { // Register common Mustache lambdas. registerMustacheLambdas(); + + // Initialize mustache braces placeholders for all generators + additionalProperties.putIfAbsent("openbrace", "{"); + additionalProperties.putIfAbsent("closebrace", "}"); } /**