Skip to content

Commit bb00d88

Browse files
authored
[kotlin] Fix optional header params in openhttp client (#7341)
This commit adjusts the kotlin openhttp api template to ignore null headers when building the request rather than convert them to "null" string
1 parent 32c591d commit bb00d88

File tree

12 files changed

+26
-12
lines changed
  • modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-okhttp
  • samples/client/petstore
    • kotlin/src/main/kotlin/org/openapitools/client/apis
    • kotlin-gson/src/main/kotlin/org/openapitools/client/apis
    • kotlin-jackson/src/main/kotlin/org/openapitools/client/apis
    • kotlin-json-request-string/src/main/kotlin/org/openapitools/client/apis
    • kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/apis
    • kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/apis
    • kotlin-nonpublic/src/main/kotlin/org/openapitools/client/apis
    • kotlin-nullable/src/main/kotlin/org/openapitools/client/apis
    • kotlin-okhttp3/src/main/kotlin/org/openapitools/client/apis
    • kotlin-string/src/main/kotlin/org/openapitools/client/apis
    • kotlin-threetenbp/src/main/kotlin/org/openapitools/client/apis

12 files changed

+26
-12
lines changed

modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-okhttp/api.mustache

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,10 @@ import {{packageName}}.infrastructure.toMultiValue
6464
{{/queryParams}}
6565
}
6666
{{/hasQueryParams}}
67-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf({{#hasFormParams}}"Content-Type" to {{^consumes}}"multipart/form-data"{{/consumes}}{{#consumes.0}}"{{{mediaType}}}"{{/consumes.0}}{{/hasFormParams}}{{^hasHeaderParams}}){{/hasHeaderParams}}{{#hasHeaderParams}}{{#hasFormParams}}, {{/hasFormParams}}{{#headerParams}}"{{baseName}}" to {{#isContainer}}{{{paramName}}}.joinToString(separator = collectionDelimiter("{{collectionFormat}}")){{/isContainer}}{{^isContainer}}{{{paramName}}}.toString(){{/isContainer}}{{#hasMore}}, {{/hasMore}}{{/headerParams}}){{/hasHeaderParams}}
67+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf({{#hasFormParams}}"Content-Type" to {{^consumes}}"multipart/form-data"{{/consumes}}{{#consumes.0}}"{{{mediaType}}}"{{/consumes.0}}{{/hasFormParams}})
68+
{{#headerParams}}
69+
{{{paramName}}}?.apply { localVariableHeaders["{{baseName}}"] = {{#isContainer}}this.joinToString(separator = collectionDelimiter("{{collectionFormat}}")){{/isContainer}}{{^isContainer}}this.toString(){{/isContainer}} }
70+
{{/headerParams}}
6871
val localVariableConfig = RequestConfig(
6972
RequestMethod.{{httpMethod}},
7073
"{{path}}"{{#pathParams}}.replace("{"+"{{baseName}}"+"}", "${{{paramName}}}"){{/pathParams}},

samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
suspend fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ internal class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(bas
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(apiKey: kotlin.String?, petId: kotlin.Long) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/apis/PetApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) {
8888
fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit {
8989
val localVariableBody: kotlin.Any? = null
9090
val localVariableQuery: MultiValueMap = mutableMapOf()
91-
val localVariableHeaders: MutableMap<String, String> = mutableMapOf("api_key" to apiKey.toString())
91+
val localVariableHeaders: MutableMap<String, String> = mutableMapOf()
92+
apiKey?.apply { localVariableHeaders["api_key"] = this.toString() }
9293
val localVariableConfig = RequestConfig(
9394
RequestMethod.DELETE,
9495
"/pet/{petId}".replace("{"+"petId"+"}", "$petId"),

0 commit comments

Comments
 (0)