From a40b1681dc88324cda056058e25911f81446e54b Mon Sep 17 00:00:00 2001 From: Knut Erik Langdahl <57355800+knuterikl@users.noreply.github.com> Date: Wed, 10 Sep 2025 14:50:31 +0200 Subject: [PATCH] fix(kotlin): set isVoid to true for Unit datatypes --- .../codegen/languages/AbstractKotlinCodegen.java | 3 +++ .../codegen/languages/KotlinServerCodegen.java | 9 +++++++++ .../codegen/languages/KotlinSpringServerCodegen.java | 9 +++++++++ 3 files changed, 21 insertions(+) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java index 3e0d42d16577..12c333ca1848 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java @@ -1119,6 +1119,8 @@ protected ImmutableMap.Builder addMustacheLambdas() { } protected interface DataTypeAssigner { + void setIsVoid(Boolean isVoid); + void setReturnType(String returnType); void setReturnContainer(String returnContainer); @@ -1131,6 +1133,7 @@ protected interface DataTypeAssigner { protected void doDataTypeAssignment(final String returnType, DataTypeAssigner dataTypeAssigner) { if (returnType == null) { dataTypeAssigner.setReturnType("Unit"); + dataTypeAssigner.setIsVoid(true); } else if (returnType.startsWith("kotlin.collections.List")) { int end = returnType.lastIndexOf(">"); if (end > 0) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java index 5c85543929d6..fea7e9af79cd 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java @@ -418,6 +418,11 @@ public OperationsMap postProcessOperationsWithModels(OperationsMap objs, List