Skip to content

Commit fd62e38

Browse files
authored
[kotlin-client] Add @JsonEnumDefaultValue annotation to enum class (#19380)
1 parent 0a5c997 commit fd62e38

File tree

3 files changed

+8
-3
lines changed
  • modules/openapi-generator/src/main/resources/kotlin-client
  • samples/client/echo_api
    • kotlin-jvm-spring-3-restclient/src/main/kotlin/org/openapitools/client/models
    • kotlin-jvm-spring-3-webclient/src/main/kotlin/org/openapitools/client/models

3 files changed

+8
-3
lines changed

modules/openapi-generator/src/main/resources/kotlin-client/enum_class.mustache

+4-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ import com.squareup.moshi.Json
77
import com.squareup.moshi.JsonClass
88
{{/moshi}}
99
{{#jackson}}
10+
{{#enumUnknownDefaultCase}}
11+
import com.fasterxml.jackson.annotation.JsonEnumDefaultValue
12+
{{/enumUnknownDefaultCase}}
1013
import com.fasterxml.jackson.annotation.JsonProperty
1114
{{/jackson}}
1215
{{#kotlinx_serialization}}
@@ -46,7 +49,7 @@ import kotlinx.serialization.*
4649
@SerializedName(value = {{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}})
4750
{{/gson}}
4851
{{#jackson}}
49-
@JsonProperty(value = {{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}})
52+
@JsonProperty(value = {{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}}){{#enumUnknownDefaultCase}}{{#-last}} @JsonEnumDefaultValue{{/-last}}{{/enumUnknownDefaultCase}}
5053
{{/jackson}}
5154
{{#kotlinx_serialization}}
5255
@SerialName(value = {{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}})

samples/client/echo_api/kotlin-jvm-spring-3-restclient/src/main/kotlin/org/openapitools/client/models/StringEnumRef.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
package org.openapitools.client.models
1717

1818

19+
import com.fasterxml.jackson.annotation.JsonEnumDefaultValue
1920
import com.fasterxml.jackson.annotation.JsonProperty
2021

2122
/**
@@ -35,7 +36,7 @@ enum class StringEnumRef(val value: kotlin.String) {
3536
@JsonProperty(value = "unclassified")
3637
unclassified("unclassified"),
3738

38-
@JsonProperty(value = "unknown_default_open_api")
39+
@JsonProperty(value = "unknown_default_open_api") @JsonEnumDefaultValue
3940
unknown_default_open_api("unknown_default_open_api");
4041

4142
/**

samples/client/echo_api/kotlin-jvm-spring-3-webclient/src/main/kotlin/org/openapitools/client/models/StringEnumRef.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
package org.openapitools.client.models
1717

1818

19+
import com.fasterxml.jackson.annotation.JsonEnumDefaultValue
1920
import com.fasterxml.jackson.annotation.JsonProperty
2021

2122
/**
@@ -35,7 +36,7 @@ enum class StringEnumRef(val value: kotlin.String) {
3536
@JsonProperty(value = "unclassified")
3637
unclassified("unclassified"),
3738

38-
@JsonProperty(value = "unknown_default_open_api")
39+
@JsonProperty(value = "unknown_default_open_api") @JsonEnumDefaultValue
3940
unknown_default_open_api("unknown_default_open_api");
4041

4142
/**

0 commit comments

Comments
 (0)