diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-ktor/api.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-ktor/api.mustache index 5ce7f1b9d18..c2e3833ebc9 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-ktor/api.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-ktor/api.mustache @@ -51,14 +51,58 @@ import com.fasterxml.jackson.databind.ObjectMapper {{#isMultipart}} formData { {{#formParams}} + {{#isFile}} {{{paramName}}}?.apply { append("{{{baseName}}}", {{{paramName}}}) } + {{/isFile}} + {{^isFile}} + {{^isArray}} + {{^isString}} + {{^isNumber}} + {{{paramName}}}?.apply { append("{{{baseName}}}", {{{paramName}}}.toString()) } + {{/isNumber}} + {{#isNumber}} + {{{paramName}}}?.apply { append("{{{baseName}}}", {{{paramName}}}) } + {{/isNumber}} + {{/isString}} + {{#isString}} + {{{paramName}}}?.apply { append("{{{baseName}}}", {{{paramName}}}) } + {{/isString}} + {{/isArray}} + {{#isArray}} + for (int i=0; i < {{paramName}}.size(); i++) { + {{{paramName}}}?.apply { append("{{{baseName}}}", {{{paramName}}}.get(i).toString()) } + } + {{/isArray}} + {{/isFile}} {{/formParams}} } {{/isMultipart}} {{^isMultipart}} ParametersBuilder().also { {{#formParams}} + {{#isFile}} + {{{paramName}}}?.apply { it.append("{{{baseName}}}", {{{paramName}}}) } + {{/isFile}} + {{^isFile}} + {{^isArray}} + {{^isString}} + {{^isNumber}} {{{paramName}}}?.apply { it.append("{{{baseName}}}", {{{paramName}}}.toString()) } + {{/isNumber}} + {{#isNumber}} + {{{paramName}}}?.apply { it.append("{{{baseName}}}", {{{paramName}}}) } + {{/isNumber}} + {{/isString}} + {{#isString}} + {{{paramName}}}?.apply { it.append("{{{baseName}}}", {{{paramName}}}) } + {{/isString}} + {{/isArray}} + {{#isArray}} + for (int i=0; i < {{paramName}}.size(); i++) { + {{{paramName}}}?.apply { it.append("{{{baseName}}}", {{{paramName}}}.get(i).toString()) } + } + {{/isArray}} + {{/isFile}} {{/formParams}} }.build() {{/isMultipart}} diff --git a/samples/client/petstore/kotlin-jvm-ktor-gson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-jvm-ktor-gson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt index c5d758697e1..cc24595a11c 100644 --- a/samples/client/petstore/kotlin-jvm-ktor-gson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt +++ b/samples/client/petstore/kotlin-jvm-ktor-gson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt @@ -245,8 +245,8 @@ import java.text.DateFormat val localVariableBody = ParametersBuilder().also { - name?.apply { it.append("name", name.toString()) } - status?.apply { it.append("status", status.toString()) } + name?.apply { it.append("name", name) } + status?.apply { it.append("status", status) } }.build() val localVariableQuery = mutableMapOf>() diff --git a/samples/client/petstore/kotlin-jvm-ktor-jackson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-jvm-ktor-jackson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt index f96b70b4877..c7ccd6cf79a 100644 --- a/samples/client/petstore/kotlin-jvm-ktor-jackson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt +++ b/samples/client/petstore/kotlin-jvm-ktor-jackson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt @@ -243,8 +243,8 @@ import com.fasterxml.jackson.databind.ObjectMapper val localVariableBody = ParametersBuilder().also { - name?.apply { it.append("name", name.toString()) } - status?.apply { it.append("status", status.toString()) } + name?.apply { it.append("name", name) } + status?.apply { it.append("status", status) } }.build() val localVariableQuery = mutableMapOf>()