Skip to content

Commit 84d3562

Browse files
authored
[Kotlin][Client] minor improvements (#4419)
* minor improvement to kotlin generator * minor code format change
1 parent 0aa1b7c commit 84d3562

8 files changed

Lines changed: 124 additions & 97 deletions

File tree

bin/utils/ensure-up-to-date

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,7 @@ declare -a scripts=(
2323
"./bin/openapi3/jaxrs-jersey-petstore.sh"
2424
"./bin/spring-all-petstore.sh"
2525
"./bin/javascript-petstore-all.sh"
26-
"./bin/kotlin-client-petstore-multiplatform.sh"
27-
"./bin/kotlin-client-petstore.sh"
28-
"./bin/kotlin-client-string.sh"
29-
"./bin/kotlin-client-threetenbp.sh"
26+
"./bin/kotlin-client-all.sh"
3027
"./bin/kotlin-server-petstore.sh"
3128
"./bin/kotlin-springboot-petstore-server.sh"
3229
"./bin/kotlin-springboot-petstore-server-reactive.sh"

bin/windows/kotlin-client-gson.bat

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
set executable=.\modules\openapi-generator-cli\target\openapi-generator-cli.jar
2+
3+
If Not Exist %executable% (
4+
mvn clean package
5+
)
6+
7+
REM set JAVA_OPTS=%JAVA_OPTS% -Xmx1024M -DloggerPath=conf/log4j.properties
8+
set ags=generate --artifact-id "kotlin-petstore-gson" -i modules\openapi-generator\src\test\resources\2_0\petstore.yaml -g kotlin --additional-properties serializationLibrary=gson -o samples\client\petstore\kotlin-gson
9+
10+
java %JAVA_OPTS% -jar %executable% %ags%
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
set executable=.\modules\openapi-generator-cli\target\openapi-generator-cli.jar
2+
3+
If Not Exist %executable% (
4+
mvn clean package
5+
)
6+
7+
REM set JAVA_OPTS=%JAVA_OPTS% -Xmx1024M -DloggerPath=conf/log4j.properties
8+
set ags=generate --artifact-id "kotlin-petstore-nonpublic" -i modules\openapi-generator\src\test\resources\2_0\petstore.yaml -g kotlin --additional-properties nonPublicApi=true -o samples\client\petstore\kotlin-nonpublic
9+
10+
java %JAVA_OPTS% -jar %executable% %ags%
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
set executable=.\modules\openapi-generator-cli\target\openapi-generator-cli.jar
2+
3+
If Not Exist %executable% (
4+
mvn clean package
5+
)
6+
7+
REM set JAVA_OPTS=%JAVA_OPTS% -Xmx1024M -DloggerPath=conf/log4j.properties
8+
set ags=generate --artifact-id "kotlin-petstore-okhttp3" -i modules\openapi-generator\src\test\resources\2_0\petstore.yaml -g kotlin --library jvm-okhttp3 -o samples\client\petstore\kotlin-okhttp3
9+
10+
java %JAVA_OPTS% -jar %executable% %ags%

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ public void processOpts() {
168168

169169
if (isJVMLibrary()) {
170170
additionalProperties.put(JVM, true);
171-
171+
172172
if (JVM_OKHTTP4.equals(getLibrary())) {
173173
additionalProperties.put(JVM_OKHTTP4, true);
174174
} else if (JVM_OKHTTP3.equals(getLibrary())) {
@@ -301,9 +301,9 @@ public Map<String, Object> postProcessModels(Map<String, Object> objs) {
301301
cm.readOnlyVars,
302302
cm.readWriteVars,
303303
cm.parentVars
304-
)
305-
.flatMap(List::stream)
306-
.collect(Collectors.toList());
304+
)
305+
.flatMap(List::stream)
306+
.collect(Collectors.toList());
307307

308308
for (CodegenProperty var : vars) {
309309
var.vendorExtensions.put(VENDOR_EXTENSION_BASE_NAME_LITERAL, var.baseName.replace("$", "\\$"));

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

Lines changed: 36 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -48,17 +48,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
4848
query = localVariableQuery,
4949
headers = localVariableHeaders
5050
)
51-
val response = request<Any?>(
51+
val localVarResponse = request<Any?>(
5252
localVariableConfig,
5353
localVariableBody
5454
)
5555

56-
return when (response.responseType) {
56+
return when (localVarResponse.responseType) {
5757
ResponseType.Success -> Unit
5858
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
5959
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
60-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
61-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
60+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
61+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
6262
}
6363
}
6464

@@ -83,17 +83,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
8383
query = localVariableQuery,
8484
headers = localVariableHeaders
8585
)
86-
val response = request<Any?>(
86+
val localVarResponse = request<Any?>(
8787
localVariableConfig,
8888
localVariableBody
8989
)
9090

91-
return when (response.responseType) {
91+
return when (localVarResponse.responseType) {
9292
ResponseType.Success -> Unit
9393
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
9494
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
95-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
96-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
95+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
96+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
9797
}
9898
}
9999

@@ -121,17 +121,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
121121
query = localVariableQuery,
122122
headers = localVariableHeaders
123123
)
124-
val response = request<kotlin.Array<Pet>>(
124+
val localVarResponse = request<kotlin.Array<Pet>>(
125125
localVariableConfig,
126126
localVariableBody
127127
)
128128

129-
return when (response.responseType) {
130-
ResponseType.Success -> (response as Success<*>).data as kotlin.Array<Pet>
129+
return when (localVarResponse.responseType) {
130+
ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.Array<Pet>
131131
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
132132
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
133-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
134-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
133+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
134+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
135135
}
136136
}
137137

@@ -159,17 +159,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
159159
query = localVariableQuery,
160160
headers = localVariableHeaders
161161
)
162-
val response = request<kotlin.Array<Pet>>(
162+
val localVarResponse = request<kotlin.Array<Pet>>(
163163
localVariableConfig,
164164
localVariableBody
165165
)
166166

167-
return when (response.responseType) {
168-
ResponseType.Success -> (response as Success<*>).data as kotlin.Array<Pet>
167+
return when (localVarResponse.responseType) {
168+
ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.Array<Pet>
169169
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
170170
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
171-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
172-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
171+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
172+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
173173
}
174174
}
175175

@@ -194,17 +194,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
194194
query = localVariableQuery,
195195
headers = localVariableHeaders
196196
)
197-
val response = request<Pet>(
197+
val localVarResponse = request<Pet>(
198198
localVariableConfig,
199199
localVariableBody
200200
)
201201

202-
return when (response.responseType) {
203-
ResponseType.Success -> (response as Success<*>).data as Pet
202+
return when (localVarResponse.responseType) {
203+
ResponseType.Success -> (localVarResponse as Success<*>).data as Pet
204204
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
205205
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
206-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
207-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
206+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
207+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
208208
}
209209
}
210210

@@ -228,17 +228,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
228228
query = localVariableQuery,
229229
headers = localVariableHeaders
230230
)
231-
val response = request<Any?>(
231+
val localVarResponse = request<Any?>(
232232
localVariableConfig,
233233
localVariableBody
234234
)
235235

236-
return when (response.responseType) {
236+
return when (localVarResponse.responseType) {
237237
ResponseType.Success -> Unit
238238
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
239239
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
240-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
241-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
240+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
241+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
242242
}
243243
}
244244

@@ -264,17 +264,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
264264
query = localVariableQuery,
265265
headers = localVariableHeaders
266266
)
267-
val response = request<Any?>(
267+
val localVarResponse = request<Any?>(
268268
localVariableConfig,
269269
localVariableBody
270270
)
271271

272-
return when (response.responseType) {
272+
return when (localVarResponse.responseType) {
273273
ResponseType.Success -> Unit
274274
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
275275
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
276-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
277-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
276+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
277+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
278278
}
279279
}
280280

@@ -301,17 +301,17 @@ class PetApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiCli
301301
query = localVariableQuery,
302302
headers = localVariableHeaders
303303
)
304-
val response = request<ApiResponse>(
304+
val localVarResponse = request<ApiResponse>(
305305
localVariableConfig,
306306
localVariableBody
307307
)
308308

309-
return when (response.responseType) {
310-
ResponseType.Success -> (response as Success<*>).data as ApiResponse
309+
return when (localVarResponse.responseType) {
310+
ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse
311311
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
312312
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
313-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
314-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
313+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
314+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
315315
}
316316
}
317317

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

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,17 @@ class StoreApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiC
4747
query = localVariableQuery,
4848
headers = localVariableHeaders
4949
)
50-
val response = request<Any?>(
50+
val localVarResponse = request<Any?>(
5151
localVariableConfig,
5252
localVariableBody
5353
)
5454

55-
return when (response.responseType) {
55+
return when (localVarResponse.responseType) {
5656
ResponseType.Success -> Unit
5757
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
5858
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
59-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
60-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
59+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
60+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
6161
}
6262
}
6363

@@ -81,17 +81,17 @@ class StoreApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiC
8181
query = localVariableQuery,
8282
headers = localVariableHeaders
8383
)
84-
val response = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>(
84+
val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>(
8585
localVariableConfig,
8686
localVariableBody
8787
)
8888

89-
return when (response.responseType) {
90-
ResponseType.Success -> (response as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int>
89+
return when (localVarResponse.responseType) {
90+
ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int>
9191
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
9292
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
93-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
94-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
93+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
94+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
9595
}
9696
}
9797

@@ -116,17 +116,17 @@ class StoreApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiC
116116
query = localVariableQuery,
117117
headers = localVariableHeaders
118118
)
119-
val response = request<Order>(
119+
val localVarResponse = request<Order>(
120120
localVariableConfig,
121121
localVariableBody
122122
)
123123

124-
return when (response.responseType) {
125-
ResponseType.Success -> (response as Success<*>).data as Order
124+
return when (localVarResponse.responseType) {
125+
ResponseType.Success -> (localVarResponse as Success<*>).data as Order
126126
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
127127
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
128-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
129-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
128+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
129+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
130130
}
131131
}
132132

@@ -151,17 +151,17 @@ class StoreApi(basePath: kotlin.String = "http://petstore.swagger.io/v2") : ApiC
151151
query = localVariableQuery,
152152
headers = localVariableHeaders
153153
)
154-
val response = request<Order>(
154+
val localVarResponse = request<Order>(
155155
localVariableConfig,
156156
localVariableBody
157157
)
158158

159-
return when (response.responseType) {
160-
ResponseType.Success -> (response as Success<*>).data as Order
159+
return when (localVarResponse.responseType) {
160+
ResponseType.Success -> (localVarResponse as Success<*>).data as Order
161161
ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.")
162162
ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.")
163-
ResponseType.ClientError -> throw ClientException((response as ClientError<*>).body as? String ?: "Client error")
164-
ResponseType.ServerError -> throw ServerException((response as ServerError<*>).message ?: "Server error")
163+
ResponseType.ClientError -> throw ClientException((localVarResponse as ClientError<*>).body as? String ?: "Client error")
164+
ResponseType.ServerError -> throw ServerException((localVarResponse as ServerError<*>).message ?: "Server error")
165165
}
166166
}
167167

0 commit comments

Comments
 (0)