From d21c44e8692880beaa3789dfb8042c186db923d1 Mon Sep 17 00:00:00 2001 From: Bruno Coelho <4brunu@gmail.com> Date: Thu, 9 Dec 2021 14:04:46 +0000 Subject: [PATCH 1/2] [kotlin][client] remove old Date usage --- .../kotlin-spring-boot-modelMutable.yaml | 0 .../{other => }/kotlin-vertx-vertx.yaml | 0 .../kotlin-jvm-retrofit2-coroutines.yaml | 0 .../kotlin-jvm-retrofit2-rx.yaml | 0 ...m-retrofit2-rx2-kotlinx_serialization.yaml | 0 .../kotlin-jvm-retrofit2-rx2.yaml | 0 .../{openapi3 => }/kotlin-multiplatform.yaml | 0 .../kotlin-spring-boot-reactive.yaml | 0 .../{openapi3 => }/kotlin-spring-boot.yaml | 0 bin/configs/other/{openapi3 => }/kotlin.yaml | 0 .../languages/KotlinClientCodegen.java | 3 - .../infrastructure/DateAdapter.kt.mustache | 67 --- .../infrastructure/Serializer.kt.mustache | 2 - .../infrastructure/ApiClient.kt.mustache | 3 +- .../.openapi-generator/FILES | 1 + .../client/infrastructure/ApiClient.kt | 3 +- .../kotlin-gson/.openapi-generator/FILES | 2 +- .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 33 -- .../client/infrastructure/DateAdapter.kt | 37 -- .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 35 -- .../infrastructure/LocalDateTimeAdapter.kt | 35 -- .../infrastructure/OffsetDateTimeAdapter.kt | 35 -- .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 23 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/DateAdapter.kt | 37 -- .../kotlin-jackson/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 3 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 18 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../kotlin-petstore-jackson.kotlin_module | Bin 134 -> 0 bytes .../main/org/openapitools/ApplicationKt.class | Bin 3936 -> 0 bytes .../client/apis/PetApi$WhenMappings.class | Bin 1458 -> 0 bytes .../org/openapitools/client/apis/PetApi.class | Bin 82237 -> 0 bytes .../client/apis/StoreApi$WhenMappings.class | Bin 1040 -> 0 bytes .../openapitools/client/apis/StoreApi.class | Bin 42521 -> 0 bytes .../client/apis/UserApi$WhenMappings.class | Bin 1459 -> 0 bytes .../openapitools/client/apis/UserApi.class | Bin 79974 -> 0 bytes ...tionsKt$defaultMultiValueConverter$1.class | Bin 1439 -> 0 bytes .../infrastructure/ApiAbstractionsKt.class | Bin 5327 -> 0 bytes .../ApiClient$Companion$client$2.class | Bin 1445 -> 0 bytes .../infrastructure/ApiClient$Companion.class | Bin 4330 -> 0 bytes .../ApiClient$WhenMappings.class | Bin 768 -> 0 bytes .../client/infrastructure/ApiClient.class | Bin 31155 -> 0 bytes .../ApiInfrastructureResponse.class | Bin 1608 -> 0 bytes .../ApplicationDelegates$SetOnce.class | Bin 3186 -> 0 bytes .../infrastructure/ApplicationDelegates.class | Bin 1711 -> 0 bytes .../client/infrastructure/ClientError.class | Bin 2831 -> 0 bytes .../ClientException$Companion.class | Bin 945 -> 0 bytes .../infrastructure/ClientException.class | Bin 1622 -> 0 bytes .../client/infrastructure/Informational.class | Bin 2740 -> 0 bytes .../client/infrastructure/Redirection.class | Bin 2479 -> 0 bytes .../client/infrastructure/RequestConfig.class | Bin 5445 -> 0 bytes .../client/infrastructure/RequestMethod.class | Bin 1652 -> 0 bytes .../infrastructure/ResponseExtensionsKt.class | Bin 1499 -> 0 bytes .../client/infrastructure/ResponseType.class | Bin 1580 -> 0 bytes .../client/infrastructure/Serializer.class | Bin 2066 -> 0 bytes .../client/infrastructure/ServerError.class | Bin 2858 -> 0 bytes .../ServerException$Companion.class | Bin 945 -> 0 bytes .../infrastructure/ServerException.class | Bin 1622 -> 0 bytes .../client/infrastructure/Success.class | Bin 2686 -> 0 bytes .../client/models/ApiResponse.class | Bin 3611 -> 0 bytes .../openapitools/client/models/Category.class | Bin 3046 -> 0 bytes .../client/models/Order$Status.class | Bin 2115 -> 0 bytes .../openapitools/client/models/Order.class | Bin 5914 -> 0 bytes .../client/models/Pet$Status.class | Bin 2093 -> 0 bytes .../org/openapitools/client/models/Pet.class | Bin 6141 -> 0 bytes .../org/openapitools/client/models/Tag.class | Bin 3011 -> 0 bytes .../org/openapitools/client/models/User.class | Bin 6313 -> 0 bytes .../kotlin/compileKotlin/build-history.bin | Bin 31 -> 0 bytes .../caches-jvm/inputs/source-to-output.tab | Bin 4096 -> 0 bytes .../inputs/source-to-output.tab.keystream | Bin 4096 -> 0 bytes .../inputs/source-to-output.tab.keystream.len | Bin 8 -> 0 bytes .../inputs/source-to-output.tab.len | Bin 8 -> 0 bytes .../inputs/source-to-output.tab.values.at | Bin 11858 -> 0 bytes .../caches-jvm/inputs/source-to-output.tab_i | Bin 32768 -> 0 bytes .../inputs/source-to-output.tab_i.len | Bin 8 -> 0 bytes .../jvm/kotlin/class-fq-name-to-source.tab | Bin 4096 -> 0 bytes .../class-fq-name-to-source.tab.keystream | Bin 4096 -> 0 bytes .../class-fq-name-to-source.tab.keystream.len | Bin 8 -> 0 bytes .../kotlin/class-fq-name-to-source.tab.len | Bin 8 -> 0 bytes .../class-fq-name-to-source.tab.values.at | Bin 5659 -> 0 bytes .../jvm/kotlin/class-fq-name-to-source.tab_i | Bin 32768 -> 0 bytes .../kotlin/class-fq-name-to-source.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/constants.tab | Bin 4096 -> 0 bytes .../jvm/kotlin/constants.tab.keystream | Bin 4096 -> 0 bytes .../jvm/kotlin/constants.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/constants.tab.len | Bin 8 -> 0 bytes .../jvm/kotlin/constants.tab.values.at | Bin 529 -> 0 bytes .../caches-jvm/jvm/kotlin/constants.tab_i | Bin 32768 -> 0 bytes .../caches-jvm/jvm/kotlin/constants.tab_i.len | Bin 8 -> 0 bytes .../jvm/kotlin/inline-functions.tab | Bin 4096 -> 0 bytes .../jvm/kotlin/inline-functions.tab.keystream | Bin 4096 -> 0 bytes .../kotlin/inline-functions.tab.keystream.len | Bin 8 -> 0 bytes .../jvm/kotlin/inline-functions.tab.len | Bin 8 -> 0 bytes .../jvm/kotlin/inline-functions.tab.values.at | Bin 670 -> 0 bytes .../jvm/kotlin/inline-functions.tab_i | Bin 32768 -> 0 bytes .../jvm/kotlin/inline-functions.tab_i.len | Bin 8 -> 0 bytes .../jvm/kotlin/internal-name-to-source.tab | Bin 4096 -> 0 bytes .../internal-name-to-source.tab.keystream | Bin 4096 -> 0 bytes .../internal-name-to-source.tab.keystream.len | Bin 8 -> 0 bytes .../kotlin/internal-name-to-source.tab.len | Bin 8 -> 0 bytes .../internal-name-to-source.tab.values.at | Bin 7371 -> 0 bytes .../jvm/kotlin/internal-name-to-source.tab_i | Bin 32768 -> 0 bytes .../kotlin/internal-name-to-source.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/package-parts.tab | Bin 4096 -> 0 bytes .../jvm/kotlin/package-parts.tab.keystream | Bin 4096 -> 0 bytes .../kotlin/package-parts.tab.keystream.len | Bin 8 -> 0 bytes .../jvm/kotlin/package-parts.tab.len | Bin 8 -> 0 bytes .../jvm/kotlin/package-parts.tab.values.at | Bin 58 -> 0 bytes .../caches-jvm/jvm/kotlin/package-parts.tab_i | Bin 32768 -> 0 bytes .../jvm/kotlin/package-parts.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/proto.tab | Bin 4096 -> 0 bytes .../caches-jvm/jvm/kotlin/proto.tab.keystream | Bin 4096 -> 0 bytes .../jvm/kotlin/proto.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/proto.tab.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/proto.tab.values.at | Bin 18862 -> 0 bytes .../caches-jvm/jvm/kotlin/proto.tab_i | Bin 32768 -> 0 bytes .../caches-jvm/jvm/kotlin/proto.tab_i.len | Bin 8 -> 0 bytes .../jvm/kotlin/source-to-classes.tab | Bin 4096 -> 0 bytes .../kotlin/source-to-classes.tab.keystream | Bin 4096 -> 0 bytes .../source-to-classes.tab.keystream.len | Bin 8 -> 0 bytes .../jvm/kotlin/source-to-classes.tab.len | Bin 8 -> 0 bytes .../kotlin/source-to-classes.tab.values.at | Bin 2331 -> 0 bytes .../jvm/kotlin/source-to-classes.tab_i | Bin 32768 -> 0 bytes .../jvm/kotlin/source-to-classes.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/subtypes.tab | Bin 4096 -> 0 bytes .../jvm/kotlin/subtypes.tab.keystream | Bin 4096 -> 0 bytes .../jvm/kotlin/subtypes.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/subtypes.tab.len | Bin 8 -> 0 bytes .../jvm/kotlin/subtypes.tab.values.at | Bin 793 -> 0 bytes .../caches-jvm/jvm/kotlin/subtypes.tab_i | Bin 32768 -> 0 bytes .../caches-jvm/jvm/kotlin/subtypes.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/supertypes.tab | Bin 4096 -> 0 bytes .../jvm/kotlin/supertypes.tab.keystream | Bin 4096 -> 0 bytes .../jvm/kotlin/supertypes.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/jvm/kotlin/supertypes.tab.len | Bin 8 -> 0 bytes .../jvm/kotlin/supertypes.tab.values.at | Bin 689 -> 0 bytes .../caches-jvm/jvm/kotlin/supertypes.tab_i | Bin 32768 -> 0 bytes .../jvm/kotlin/supertypes.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/counters.tab | 2 - .../caches-jvm/lookups/file-to-id.tab | Bin 4096 -> 0 bytes .../lookups/file-to-id.tab.keystream | Bin 4096 -> 0 bytes .../lookups/file-to-id.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/file-to-id.tab.len | Bin 8 -> 0 bytes .../lookups/file-to-id.tab.values.at | Bin 163 -> 0 bytes .../caches-jvm/lookups/file-to-id.tab_i | Bin 32768 -> 0 bytes .../caches-jvm/lookups/file-to-id.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/id-to-file.tab | Bin 4096 -> 0 bytes .../lookups/id-to-file.tab.keystream | Bin 4096 -> 0 bytes .../lookups/id-to-file.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/id-to-file.tab.len | Bin 8 -> 0 bytes .../lookups/id-to-file.tab.values.at | Bin 3654 -> 0 bytes .../caches-jvm/lookups/id-to-file.tab_i | Bin 32768 -> 0 bytes .../caches-jvm/lookups/id-to-file.tab_i.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/lookups.tab | Bin 16384 -> 0 bytes .../caches-jvm/lookups/lookups.tab.keystream | Bin 12288 -> 0 bytes .../lookups/lookups.tab.keystream.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/lookups.tab.len | Bin 8 -> 0 bytes .../caches-jvm/lookups/lookups.tab.values.at | Bin 12507 -> 0 bytes .../caches-jvm/lookups/lookups.tab_i | Bin 32768 -> 0 bytes .../caches-jvm/lookups/lookups.tab_i.len | Bin 8 -> 0 bytes .../build/kotlin/compileKotlin/last-build.bin | Bin 81 -> 0 bytes .../org/openapitools/client/Application.kt | 20 - .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 494 ------------------ .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 245 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../.openapi-generator/FILES | 2 +- .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 33 -- .../client/infrastructure/DateAdapter.kt | 37 -- .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 35 -- .../infrastructure/LocalDateTimeAdapter.kt | 35 -- .../infrastructure/OffsetDateTimeAdapter.kt | 35 -- .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 23 - .../openapitools/client/models/ApiResponse.kt | 38 -- .../openapitools/client/models/Category.kt | 35 -- .../org/openapitools/client/models/Order.kt | 58 -- .../org/openapitools/client/models/Pet.kt | 60 --- .../org/openapitools/client/models/Tag.kt | 35 -- .../org/openapitools/client/models/User.kt | 54 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/DateAdapter.kt | 37 -- .../.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 19 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 33 -- .../openapitools/client/models/Category.kt | 30 -- .../org/openapitools/client/models/Order.kt | 55 -- .../org/openapitools/client/models/Pet.kt | 57 -- .../org/openapitools/client/models/Tag.kt | 30 -- .../org/openapitools/client/models/User.kt | 49 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../.openapi-generator/FILES | 5 + .../kotlin-nonpublic/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../kotlin-nullable/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 38 -- .../openapitools/client/models/Category.kt | 35 -- .../org/openapitools/client/models/Order.kt | 58 -- .../org/openapitools/client/models/Pet.kt | 60 --- .../org/openapitools/client/models/Tag.kt | 35 -- .../org/openapitools/client/models/User.kt | 54 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../kotlin-okhttp3/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 249 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../.openapi-generator/FILES | 2 +- .../client/infrastructure/DateAdapter.kt | 28 - .../client/infrastructure/Serializer.kt | 2 - .../.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 125 ----- .../org/openapitools/client/apis/StoreApi.kt | 63 --- .../org/openapitools/client/apis/UserApi.kt | 114 ---- .../openapitools/client/auth/ApiKeyAuth.kt | 50 -- .../org/openapitools/client/auth/OAuth.kt | 151 ------ .../org/openapitools/client/auth/OAuthFlow.kt | 5 - .../client/auth/OAuthOkHttpClient.kt | 61 --- .../client/infrastructure/ApiClient.kt | 203 ------- .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../infrastructure/CollectionFormats.kt | 56 -- .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/ResponseExt.kt | 16 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../kotlin-retrofit2/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 124 ----- .../org/openapitools/client/apis/StoreApi.kt | 62 --- .../org/openapitools/client/apis/UserApi.kt | 113 ---- .../openapitools/client/auth/ApiKeyAuth.kt | 50 -- .../org/openapitools/client/auth/OAuth.kt | 151 ------ .../org/openapitools/client/auth/OAuthFlow.kt | 5 - .../client/auth/OAuthOkHttpClient.kt | 61 --- .../client/infrastructure/ApiClient.kt | 200 ------- .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../infrastructure/CollectionFormats.kt | 56 -- .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/ResponseExt.kt | 16 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../kotlin-string/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 38 -- .../openapitools/client/models/Category.kt | 35 -- .../org/openapitools/client/models/Order.kt | 58 -- .../org/openapitools/client/models/Pet.kt | 60 --- .../org/openapitools/client/models/Tag.kt | 35 -- .../org/openapitools/client/models/User.kt | 54 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 32 -- .../openapitools/client/models/Category.kt | 29 - .../org/openapitools/client/models/Order.kt | 54 -- .../org/openapitools/client/models/Pet.kt | 56 -- .../org/openapitools/client/models/Tag.kt | 29 - .../org/openapitools/client/models/User.kt | 48 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/EnumApi.kt | 89 ---- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 232 -------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../org/openapitools/client/models/PetEnum.kt | 43 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../petstore/kotlin/.openapi-generator/FILES | 1 + .../org/openapitools/client/apis/PetApi.kt | 492 ----------------- .../org/openapitools/client/apis/StoreApi.kt | 253 --------- .../org/openapitools/client/apis/UserApi.kt | 476 ----------------- .../client/infrastructure/ApiAbstractions.kt | 23 - .../client/infrastructure/ApiClient.kt | 251 --------- .../ApiInfrastructureResponse.kt | 43 -- .../infrastructure/ApplicationDelegates.kt | 29 - .../client/infrastructure/ByteArrayAdapter.kt | 12 - .../client/infrastructure/Errors.kt | 18 - .../client/infrastructure/LocalDateAdapter.kt | 19 - .../infrastructure/LocalDateTimeAdapter.kt | 19 - .../infrastructure/OffsetDateTimeAdapter.kt | 19 - .../client/infrastructure/RequestConfig.kt | 17 - .../client/infrastructure/RequestMethod.kt | 8 - .../infrastructure/ResponseExtensions.kt | 24 - .../client/infrastructure/Serializer.kt | 21 - .../client/infrastructure/UUIDAdapter.kt | 13 - .../openapitools/client/models/ApiResponse.kt | 38 -- .../openapitools/client/models/Category.kt | 35 -- .../org/openapitools/client/models/Order.kt | 58 -- .../org/openapitools/client/models/Pet.kt | 60 --- .../org/openapitools/client/models/Tag.kt | 35 -- .../org/openapitools/client/models/User.kt | 54 -- .../client/infrastructure/ApiClient.kt | 3 +- .../infrastructure/ApplicationDelegates.kt | 29 - .../ktor/.openapi-generator-ignore | 22 +- .../ktor/.openapi-generator/FILES | 1 + .../.openapi-generator/FILES | 1 + .../org/openapitools/model/InlineObject.kt | 30 -- .../org/openapitools/model/InlineObject1.kt | 31 -- .../.openapi-generator/FILES | 10 +- .../.openapi-generator/VERSION | 2 +- .../build.gradle.kts | 8 +- .../settings.gradle | 26 +- .../api/{PetApi.kt => PetApiController.kt} | 24 +- .../org/openapitools/api/PetApiService.kt | 88 +++- .../{StoreApi.kt => StoreApiController.kt} | 12 +- .../org/openapitools/api/StoreApiService.kt | 43 +- .../api/{UserApi.kt => UserApiController.kt} | 24 +- .../org/openapitools/api/UserApiService.kt | 82 ++- .../kotlin/org/openapitools/api/PetApiTest.kt | 156 +++--- .../org/openapitools/api/StoreApiTest.kt | 70 ++- .../org/openapitools/api/UserApiTest.kt | 146 +++--- .../.openapi-generator/FILES | 4 + .../kotlin/org/openapitools/api/PetApiTest.kt | 156 +++--- .../org/openapitools/api/StoreApiTest.kt | 70 ++- .../org/openapitools/api/UserApiTest.kt | 146 +++--- .../.openapi-generator/FILES | 4 + .../kotlin/org/openapitools/api/PetApiTest.kt | 156 +++--- .../org/openapitools/api/StoreApiTest.kt | 70 ++- .../org/openapitools/api/UserApiTest.kt | 146 +++--- .../kotlin/vertx/.openapi-generator/FILES | 1 + .../kotlin/vertx/.openapi-generator/VERSION | 2 +- samples/server/petstore/kotlin/vertx/pom.xml | 6 +- .../openapitools/server/api/model/Order.kt | 2 +- 533 files changed, 819 insertions(+), 26414 deletions(-) rename bin/configs/{other => }/kotlin-spring-boot-modelMutable.yaml (100%) rename bin/configs/{other => }/kotlin-vertx-vertx.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-jvm-retrofit2-coroutines.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-jvm-retrofit2-rx.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-jvm-retrofit2-rx2-kotlinx_serialization.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-jvm-retrofit2-rx2.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-multiplatform.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-spring-boot-reactive.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin-spring-boot.yaml (100%) rename bin/configs/other/{openapi3 => }/kotlin.yaml (100%) delete mode 100644 modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/DateAdapter.kt.mustache delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/META-INF/kotlin-petstore-jackson.kotlin_module delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/ApplicationKt.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/PetApi$WhenMappings.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/PetApi.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/StoreApi$WhenMappings.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/StoreApi.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/UserApi$WhenMappings.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/UserApi.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiAbstractionsKt$defaultMultiValueConverter$1.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiAbstractionsKt.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$Companion$client$2.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$Companion.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$WhenMappings.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApplicationDelegates$SetOnce.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApplicationDelegates.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientError.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientException$Companion.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientException.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Informational.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Redirection.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/RequestConfig.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/RequestMethod.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ResponseExtensionsKt.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ResponseType.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Serializer.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerError.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerException$Companion.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerException.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Success.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/ApiResponse.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Category.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Order$Status.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Order.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Pet$Status.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Pet.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Tag.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/User.class delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/build-history.bin delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/counters.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.keystream delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.keystream.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.values.at delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab_i delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab_i.len delete mode 100644 samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/last-build.bin delete mode 100644 samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/Application.kt delete mode 100644 samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuth.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthFlow.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuth.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthFlow.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/apis/EnumApi.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/models/PetEnum.kt delete mode 100644 samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/PetApi.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/StoreApi.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/UserApi.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiClient.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Errors.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Serializer.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/ApiResponse.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Category.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Order.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Pet.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Tag.kt delete mode 100644 samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/User.kt delete mode 100644 samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt delete mode 100644 samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject.kt delete mode 100644 samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject1.kt rename samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/{PetApi.kt => PetApiController.kt} (95%) rename samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/{StoreApi.kt => StoreApiController.kt} (94%) rename samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/{UserApi.kt => UserApiController.kt} (92%) diff --git a/bin/configs/other/kotlin-spring-boot-modelMutable.yaml b/bin/configs/kotlin-spring-boot-modelMutable.yaml similarity index 100% rename from bin/configs/other/kotlin-spring-boot-modelMutable.yaml rename to bin/configs/kotlin-spring-boot-modelMutable.yaml diff --git a/bin/configs/other/kotlin-vertx-vertx.yaml b/bin/configs/kotlin-vertx-vertx.yaml similarity index 100% rename from bin/configs/other/kotlin-vertx-vertx.yaml rename to bin/configs/kotlin-vertx-vertx.yaml diff --git a/bin/configs/other/openapi3/kotlin-jvm-retrofit2-coroutines.yaml b/bin/configs/other/kotlin-jvm-retrofit2-coroutines.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-jvm-retrofit2-coroutines.yaml rename to bin/configs/other/kotlin-jvm-retrofit2-coroutines.yaml diff --git a/bin/configs/other/openapi3/kotlin-jvm-retrofit2-rx.yaml b/bin/configs/other/kotlin-jvm-retrofit2-rx.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-jvm-retrofit2-rx.yaml rename to bin/configs/other/kotlin-jvm-retrofit2-rx.yaml diff --git a/bin/configs/other/openapi3/kotlin-jvm-retrofit2-rx2-kotlinx_serialization.yaml b/bin/configs/other/kotlin-jvm-retrofit2-rx2-kotlinx_serialization.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-jvm-retrofit2-rx2-kotlinx_serialization.yaml rename to bin/configs/other/kotlin-jvm-retrofit2-rx2-kotlinx_serialization.yaml diff --git a/bin/configs/other/openapi3/kotlin-jvm-retrofit2-rx2.yaml b/bin/configs/other/kotlin-jvm-retrofit2-rx2.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-jvm-retrofit2-rx2.yaml rename to bin/configs/other/kotlin-jvm-retrofit2-rx2.yaml diff --git a/bin/configs/other/openapi3/kotlin-multiplatform.yaml b/bin/configs/other/kotlin-multiplatform.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-multiplatform.yaml rename to bin/configs/other/kotlin-multiplatform.yaml diff --git a/bin/configs/other/openapi3/kotlin-spring-boot-reactive.yaml b/bin/configs/other/kotlin-spring-boot-reactive.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-spring-boot-reactive.yaml rename to bin/configs/other/kotlin-spring-boot-reactive.yaml diff --git a/bin/configs/other/openapi3/kotlin-spring-boot.yaml b/bin/configs/other/kotlin-spring-boot.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin-spring-boot.yaml rename to bin/configs/other/kotlin-spring-boot.yaml diff --git a/bin/configs/other/openapi3/kotlin.yaml b/bin/configs/other/kotlin.yaml similarity index 100% rename from bin/configs/other/openapi3/kotlin.yaml rename to bin/configs/other/kotlin.yaml diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java index 28a3853332d..2f7fa402fd6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java @@ -479,14 +479,12 @@ public class KotlinClientCodegen extends AbstractKotlinCodegen { break; case gson: - supportingFiles.add(new SupportingFile("jvm-common/infrastructure/DateAdapter.kt.mustache", infrastructureFolder, "DateAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/LocalDateAdapter.kt.mustache", infrastructureFolder, "LocalDateAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/LocalDateTimeAdapter.kt.mustache", infrastructureFolder, "LocalDateTimeAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/OffsetDateTimeAdapter.kt.mustache", infrastructureFolder, "OffsetDateTimeAdapter.kt")); break; case jackson: - //supportingFiles.add(new SupportingFile("jvm-common/infrastructure/DateAdapter.kt.mustache", infrastructureFolder, "DateAdapter.kt")); break; case kotlinx_serialization: @@ -497,7 +495,6 @@ public class KotlinClientCodegen extends AbstractKotlinCodegen { supportingFiles.add(new SupportingFile("jvm-common/infrastructure/URLAdapter.kt.mustache", infrastructureFolder, "URLAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/BigIntegerAdapter.kt.mustache", infrastructureFolder, "BigIntegerAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/BigDecimalAdapter.kt.mustache", infrastructureFolder, "BigDecimalAdapter.kt")); - supportingFiles.add(new SupportingFile("jvm-common/infrastructure/DateAdapter.kt.mustache", infrastructureFolder, "DateAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/LocalDateAdapter.kt.mustache", infrastructureFolder, "LocalDateAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/LocalDateTimeAdapter.kt.mustache", infrastructureFolder, "LocalDateTimeAdapter.kt")); supportingFiles.add(new SupportingFile("jvm-common/infrastructure/OffsetDateTimeAdapter.kt.mustache", infrastructureFolder, "OffsetDateTimeAdapter.kt")); diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/DateAdapter.kt.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/DateAdapter.kt.mustache deleted file mode 100644 index 8756321c4e0..00000000000 --- a/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/DateAdapter.kt.mustache +++ /dev/null @@ -1,67 +0,0 @@ -package {{packageName}}.infrastructure - -{{#kotlinx_serialization}} -import kotlinx.serialization.KSerializer -import kotlinx.serialization.Serializer -import kotlinx.serialization.encoding.Decoder -import kotlinx.serialization.encoding.Encoder -import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor -import kotlinx.serialization.descriptors.PrimitiveKind -import kotlinx.serialization.descriptors.SerialDescriptor -{{/kotlinx_serialization}} -{{#gson}} -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -{{/gson}} -import java.text.DateFormat -import java.text.SimpleDateFormat -import java.util.Date -import java.util.Locale -{{#gson}} - -{{#nonPublicApi}}internal {{/nonPublicApi}}class DateAdapter(val formatter: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault())) : TypeAdapter<Date>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: Date?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): Date? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return formatter.parse(out.nextString()) - } - } - } -} -{{/gson}} -{{#kotlinx_serialization}} - -@Serializer(forClass = Date::class) -object DateAdapter : KSerializer<Date> { - private val df: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault()) - - override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("Date", PrimitiveKind.STRING) - - override fun serialize(encoder: Encoder, value: Date) { - encoder.encodeString(df.format(value)) - } - - override fun deserialize(decoder: Decoder): Date { - return df.parse(decoder.decodeString())!! - } -} -{{/kotlinx_serialization}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/Serializer.kt.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/Serializer.kt.mustache index ca5d3288a20..e3e570e7a0c 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/Serializer.kt.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/jvm-common/infrastructure/Serializer.kt.mustache @@ -28,7 +28,6 @@ import com.fasterxml.jackson.annotation.JsonInclude import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper {{/jackson}} {{#kotlinx_serialization}} -import java.util.Date import java.math.BigDecimal import java.math.BigInteger {{^threetenbp}} @@ -97,7 +96,6 @@ import java.util.concurrent.atomic.AtomicLong val kotlinSerializationAdapters = SerializersModule { contextual(BigDecimal::class, BigDecimalAdapter) contextual(BigInteger::class, BigIntegerAdapter) - contextual(Date::class, DateAdapter) contextual(LocalDate::class, LocalDateAdapter) contextual(LocalDateTime::class, LocalDateTimeAdapter) contextual(OffsetDateTime::class, OffsetDateTimeAdapter) diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-okhttp/infrastructure/ApiClient.kt.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-okhttp/infrastructure/ApiClient.kt.mustache index 57bd33d35bf..06afc10d2b6 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-okhttp/infrastructure/ApiClient.kt.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/libraries/jvm-okhttp/infrastructure/ApiClient.kt.mustache @@ -47,7 +47,6 @@ import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime {{/threetenbp}} -import java.util.Date import java.util.Locale {{#useCoroutines}} import kotlin.coroutines.resume @@ -421,7 +420,7 @@ import com.squareup.moshi.adapter null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES b/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES index bb98f9a0031..dd448f00b9d 100644 --- a/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/DefaultApi.md diff --git a/samples/client/petstore/kotlin-enum-default-value/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-enum-default-value/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index 634abe57b90..fe329374e47 100644 --- a/samples/client/petstore/kotlin-enum-default-value/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-enum-default-value/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -229,7 +228,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-gson/.openapi-generator/FILES b/samples/client/petstore/kotlin-gson/.openapi-generator/FILES index 1f38d3fbe2d..49c37f92d4b 100644 --- a/samples/client/petstore/kotlin-gson/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-gson/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md @@ -21,7 +22,6 @@ src/main/kotlin/org/openapitools/client/infrastructure/ApiAbstractions.kt src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt src/main/kotlin/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt src/main/kotlin/org/openapitools/client/infrastructure/ByteArrayAdapter.kt -src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/Errors.kt src/main/kotlin/org/openapitools/client/infrastructure/LocalDateAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index c8b93b33bf6..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index bcbb1cf8627..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.gson.toJson(content, T::class.java).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.gson.fromJson(bodyContent, T::class.java) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.gson.toJson(value, T::class.java).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index 6120b081929..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,33 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException - -class ByteArrayAdapter : TypeAdapter<ByteArray>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: ByteArray?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(String(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): ByteArray? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return out.nextString().toByteArray() - } - } - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt deleted file mode 100644 index c5d330ac075..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt +++ /dev/null @@ -1,37 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.text.DateFormat -import java.text.SimpleDateFormat -import java.util.Date -import java.util.Locale - -class DateAdapter(val formatter: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault())) : TypeAdapter<Date>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: Date?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): Date? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return formatter.parse(out.nextString()) - } - } - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index 30ef6697183..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter(private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE) : TypeAdapter<LocalDate>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: LocalDate?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): LocalDate? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return LocalDate.parse(out.nextString(), formatter) - } - } - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index 3ad781c66ca..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter(private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME) : TypeAdapter<LocalDateTime>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: LocalDateTime?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): LocalDateTime? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return LocalDateTime.parse(out.nextString(), formatter) - } - } - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index e615135c9cc..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter(private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_OFFSET_DATE_TIME) : TypeAdapter<OffsetDateTime>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: OffsetDateTime?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): OffsetDateTime? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return OffsetDateTime.parse(out.nextString(), formatter) - } - } - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index b80e0390de2..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.Gson -import com.google.gson.GsonBuilder -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.OffsetDateTime -import java.util.UUID -import java.util.Date - -object Serializer { - @JvmStatic - val gsonBuilder: GsonBuilder = GsonBuilder() - .registerTypeAdapter(OffsetDateTime::class.java, OffsetDateTimeAdapter()) - .registerTypeAdapter(LocalDateTime::class.java, LocalDateTimeAdapter()) - .registerTypeAdapter(LocalDate::class.java, LocalDateAdapter()) - .registerTypeAdapter(ByteArray::class.java, ByteArrayAdapter()) - - @JvmStatic - val gson: Gson by lazy { - gsonBuilder.create() - } -} diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index 54df813fcee..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @SerializedName("code") - val code: kotlin.Int? = null, - @SerializedName("type") - val type: kotlin.String? = null, - @SerializedName("message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index fdefa74fda0..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index 049c89df313..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("petId") - val petId: kotlin.Long? = null, - @SerializedName("quantity") - val quantity: kotlin.Int? = null, - @SerializedName("shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @SerializedName("status") - val status: Order.Status? = null, - @SerializedName("complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @SerializedName(value = "placed") placed("placed"), - @SerializedName(value = "approved") approved("approved"), - @SerializedName(value = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index af29ef2b61b..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.google.gson.annotations.SerializedName - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @SerializedName("name") - val name: kotlin.String, - @SerializedName("photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("category") - val category: Category? = null, - @SerializedName("tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @SerializedName("status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @SerializedName(value = "available") available("available"), - @SerializedName(value = "pending") pending("pending"), - @SerializedName(value = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 28e82b1df68..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index 62baf33e927..00000000000 --- a/samples/client/petstore/kotlin-gson/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("username") - val username: kotlin.String? = null, - @SerializedName("firstName") - val firstName: kotlin.String? = null, - @SerializedName("lastName") - val lastName: kotlin.String? = null, - @SerializedName("email") - val email: kotlin.String? = null, - @SerializedName("password") - val password: kotlin.String? = null, - @SerializedName("phone") - val phone: kotlin.String? = null, - /* User Status */ - @SerializedName("userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index 7a1fafd594e..d016f77b970 100644 --- a/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.google.gson.reflect.TypeToken @@ -247,7 +246,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt b/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt deleted file mode 100644 index c5d330ac075..00000000000 --- a/samples/client/petstore/kotlin-gson/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt +++ /dev/null @@ -1,37 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.text.DateFormat -import java.text.SimpleDateFormat -import java.util.Date -import java.util.Locale - -class DateAdapter(val formatter: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault())) : TypeAdapter<Date>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: Date?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): Date? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return formatter.parse(out.nextString()) - } - } - } -} diff --git a/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES b/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES index 816d952128d..cc7d4565863 100644 --- a/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index c8b93b33bf6..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 637ca64c247..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.jacksonObjectMapper.writeValueAsString(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.jacksonObjectMapper.readValue(bodyContent, T::class.java) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.jacksonObjectMapper.writeValueAsString(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index fff39c7ac24..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,3 +0,0 @@ -package org.openapitools.client.infrastructure - - diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 8b34e629c4e..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,18 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.fasterxml.jackson.databind.ObjectMapper -import com.fasterxml.jackson.databind.SerializationFeature -import com.fasterxml.jackson.datatype.jdk8.Jdk8Module -import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule -import com.fasterxml.jackson.annotation.JsonInclude -import com.fasterxml.jackson.module.kotlin.jacksonObjectMapper -import java.util.Date - -object Serializer { - @JvmStatic - val jacksonObjectMapper: ObjectMapper = jacksonObjectMapper() - .registerModule(Jdk8Module()) - .registerModule(JavaTimeModule()) - .setSerializationInclusion(JsonInclude.Include.NON_ABSENT) - .configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false) -} diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index c341f8ca321..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.fasterxml.jackson.annotation.JsonProperty - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @field:JsonProperty("code") - val code: kotlin.Int? = null, - @field:JsonProperty("type") - val type: kotlin.String? = null, - @field:JsonProperty("message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index 2ed5390c1f3..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.fasterxml.jackson.annotation.JsonProperty - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @field:JsonProperty("id") - val id: kotlin.Long? = null, - @field:JsonProperty("name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index c7df5b55614..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.fasterxml.jackson.annotation.JsonProperty - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @field:JsonProperty("id") - val id: kotlin.Long? = null, - @field:JsonProperty("petId") - val petId: kotlin.Long? = null, - @field:JsonProperty("quantity") - val quantity: kotlin.Int? = null, - @field:JsonProperty("shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @field:JsonProperty("status") - val status: Order.Status? = null, - @field:JsonProperty("complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: PLACED,APPROVED,DELIVERED - */ - - enum class Status(val value: kotlin.String){ - @JsonProperty(value = "placed") PLACED("placed"), - @JsonProperty(value = "approved") APPROVED("approved"), - @JsonProperty(value = "delivered") DELIVERED("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index be5b168e2d8..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.fasterxml.jackson.annotation.JsonProperty - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @field:JsonProperty("name") - val name: kotlin.String, - @field:JsonProperty("photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @field:JsonProperty("id") - val id: kotlin.Long? = null, - @field:JsonProperty("category") - val category: Category? = null, - @field:JsonProperty("tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @field:JsonProperty("status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: AVAILABLE,PENDING,SOLD - */ - - enum class Status(val value: kotlin.String){ - @JsonProperty(value = "available") AVAILABLE("available"), - @JsonProperty(value = "pending") PENDING("pending"), - @JsonProperty(value = "sold") SOLD("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 7243f42ed7d..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.fasterxml.jackson.annotation.JsonProperty - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @field:JsonProperty("id") - val id: kotlin.Long? = null, - @field:JsonProperty("name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index e8f639e5092..00000000000 --- a/samples/client/petstore/kotlin-jackson/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.fasterxml.jackson.annotation.JsonProperty - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @field:JsonProperty("id") - val id: kotlin.Long? = null, - @field:JsonProperty("username") - val username: kotlin.String? = null, - @field:JsonProperty("firstName") - val firstName: kotlin.String? = null, - @field:JsonProperty("lastName") - val lastName: kotlin.String? = null, - @field:JsonProperty("email") - val email: kotlin.String? = null, - @field:JsonProperty("password") - val password: kotlin.String? = null, - @field:JsonProperty("phone") - val phone: kotlin.String? = null, - /* User Status */ - @field:JsonProperty("userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/META-INF/kotlin-petstore-jackson.kotlin_module b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/META-INF/kotlin-petstore-jackson.kotlin_module deleted file mode 100644 index 38c4425da8d5a75423570d04d4b47c016fb8370b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 134 zcmZQzU|?ooU|@t|0WL)@f&8L$z5IgIyu^aclKlLfVj*6~f`XjP<iwK9{5<axu0Sp| zbR~MpIhm<>C3=~8X+?>}B}JvlC8b5FLV}J3nT|<7equ66Z?SiYkVsH!aRHE->RM5f JnpX@F1pvVZD~A98 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/ApplicationKt.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/ApplicationKt.class deleted file mode 100644 index d44eb27f99ac8a125e94cd99b920c3a280cbdb98..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3936 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 IyZFO@0D2Hju>b%7 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/PetApi$WhenMappings.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/PetApi$WhenMappings.class deleted file mode 100644 index 9251a566438420e501ebd3b79975c4d828e8061e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1458 zcmbV~+fLg+5QhIvfCMmYXz3w6AJPInnKQJ|1EpL<0#QLlFSs(v0*1u4Y$sJ8tFBa4 zRmB7Jp{oA&G8d8D8>G?Bx8r=9S$qEc{dEdp1|Jlr{P58B1MNA18~c7MvKuW|d$G-Z zWPjB0YT(vBA8BvX2?EzUj7m@nm1C#t*e%C9w72$;bt5jJs4!Mr_d4yJFK*m8I{SHT zN};e<&wn<ZU!KV?&*qos^2_u2<%Rt6qC$Cv7x&!wjY4r^a#vyYe{aV14nil2!%ida zgxcQLQQ&)#{`57_B~%m!x=yR3BZZ}j$-RwpoU&};5-ty66k`_pF))Y%t}2vvI*o>o zc<}r=PrZ)nAWyx)v;45>dQL05Y~8{w+)n@Rj>1UYJMhD{6T3d2TexSO`wGL`y6J}e z*nDE)p{dtcU&|(DJq-QO!edh(XMIP9T^*j)Cr$l{g_60^GYe%yFDwiinzArtXvV^@ zp*ahdp#=*ghL#jYH%|PRU(DXrvD0*7XPJ}M?iM-NDqZ*?3j5g>>6YWEP89mq{H9i@ zZg;%cZR=e(a`#($)${x~yKz*R=F9G*P_9(dch7^WX~$V+zgcFtS!S<UW~W(ZpIK&? zX&aR?F5n^*-UEe^tPK>@Ph2_uJ@g&dk~D7qz}>#B3?C5t4L%|c7@Q!M3_c~6x5R&* zfFV9ne4_Y7@rk{@oq!=eQGBBKMDdBe{&WI{_(buE;uFOu_WH947~&JfCyGxLpV;fq zCt!$A6rU(QQG8;rznFj_K2dz4_(buEz5dGt4DpHL6U8TrPc;5Fjs}MVYh1^fUvV&& U_fV{3C5zX1BfGbCyu&J&e|BPM-v9sr diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/PetApi.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/PetApi.class deleted file mode 100644 index c6d591f86366919c06af52f045a62cfb816c5d88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82237 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%0A^svVZbp*uQuM!qx0EeiHkfpUS@AXR$B&d3e5@ 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 Xb3B{l`5beOA9K8z<K-N$=J@#^TVD+X diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/StoreApi$WhenMappings.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/StoreApi$WhenMappings.class deleted file mode 100644 index 586f194f4dc0edb00ef9193d0055b200609f10ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1040 zcmbV~+invv5Qcv@X-?h17Rn)<4}m6}wn->dDnhENUPNjYDM95TSDTHSx=rkr*9qdW z2ogdF^#OP&#O!W;Q7PP18rk2B{g20E|M~mt3_ufG3{9m+o(j42Lt&H}M_w=%TpEx3 z$m<!U`A#URpO3jb@WW8ZQIrQ`a8LZ1?~Q#q@;ZYP9+*5b3~SXrIi2*r2ooHiZ?A4J zEcM%q*BXn%&BfssL*WCJCx!XQkg3%V8Cw6VU&tfvM@CNrGu7Pd@+ed?;-9{TJP(H< zH}l6+9x-gy>izvoWZ8Cb1y@Tb!*#HXToFsS#*pt#gMderc=M83*KngqS#MG<rH4ZL z<K(h!2e(m)&%47=Zp$O3C%zGi)*akSHTM}-x_l@!JqWEhc$mf?QG7Rf*FCM3cJL&P zKc#q&>lxSQ@n>oLxr2Oqqnd+4N-rD~Q+ma)x__z+y@YqbjX(5_zfG?^nPuo(v3PLF z9V9Mdm%au&WytQTA!n#`r_zWCKNOJ|jQNg~$|N_5+y*r<OM<LhiF-<kDsd&rOm!qP zRS_TK7Er<p7~YXnPL83E`4g*Wzf0e7eIDDbAGn+CB=~@EImO3>xfH8}`4ra)3mvPk z&p~GOgjP>z^@LVWcv1gy4l=7Jw0c6TC$xIPi~84dkXb#U)e~Ahq16+n`ft=4>IdG_ axK8sMYK+%Mrj3on8faRt)y7+F((n(lApm&* diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/StoreApi.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/StoreApi.class deleted file mode 100644 index 3240ab8d74c1ebbf3bb557f2407ad758d1922756..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42521 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 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/UserApi$WhenMappings.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/UserApi$WhenMappings.class deleted file mode 100644 index 2a3170461c2fea1aea6bc83150f91ee5384f6289..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1459 zcmbV~+fEZv6o&uZ0xd9TQ9RW1p$d2!%2`1Wk&7k}5>UM0YG^kw(9TR|rZqm6V`7Xk zJb({n{5zX<(PX?KS=sB`Yx?c3J+uD&{dERl8Xpv@et2a2f%crhjeWlv+4ZKYz1ZeH zvOh&STnpUF=VR?{IYHohM^OPvp>*PO9J}dwNA~u?iLS>5<Q2v$8(zD$`^Amx$LBw< zOey5{YuV4L+2!f%@=SJlHoH8RU7pV_FDMk3d2`Q=R}}ISlY0s?|9dsAcNjWR9JcFm zJJj}$jso9{^vAD(E}*0^&~ch=9VskMOzv-9;FKi`S8#O*qZqT$kAXqta9yFW+pgDj z#DnK9c<N1*2YKo(p5=!P*K?ZbWos7h;BNQ-?kSAayhA^1IkD^WxrGPDd8jbFqZ@9> zkIg3*9-DfF_4RaQHp0*kEj%^#an^Tr*wNv6ebUsQStytry|7R;^vc4Zp(zVPhNdkH z8=AFX8Jf2+VrWrebo11Y`Nixl9Xkytc9uA4txlekt-1?8MD8HnqPyjIs#Ar&b-$q% z$~$c@c3XPSjogE#Uh_OZPH!BQs(jgf6pE#C_uccLa<}6&v)?qc+cdM+G_%t*v(GfM z%WfN`A}--F6y5{5k+cou)K6SH`#tm>H<E7L{(<{_+bKRG_8WXc956UREEs%FEN+Yc zG66$;qWDDdiQ*G`eLDd|e4_Y7@rmLSd;MwxhWJGBiQ*H*C-(X?2^iuN#V3kS6rb4Z z&m~}pPZXahK2dyPufLFhAwE%jqWDDdiM{^o1Pt+s;uFOuicd8DH;x8}1M6JJncr|Q VmiCdaVL6SrSdrao4ezkV<sTSyX;uIL diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/UserApi.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/apis/UserApi.class deleted file mode 100644 index a77b699e57ba002b2dd41b610759352a201f46d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79974 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%0D=2$%cNb zB^zFfK7~!noTFle!Rb*;HuPI9*)S;s5AA8m2JP86Bbn0xju|9r(3zfO!%xO@=^NPO z(l@Y|)RGN9X^vTRd@!dJN*V}gSW7namV~{N7y=y?kR*m+lEjZpk~pSG5|1%S9QRF< zBpX4}93!yL5kK(C=Hin>C#h+YY-pB?ZGze}8x;uNPh$3hWIQ)vqr}PA6d=h)kPP7F zgWmmIoWgaInkLDHW+~vE)Sk!2NV4H4>EvN@LGdO@l8qo~7#28EoU0e$_~sX&(HZuL z!>3MC(<Ir@O9tEk?fFR@_537eHAn`zB-t>zbb$AhajsQ_<B6Y((FI8Zftn`ChF(r2 z*YFaMYG~RgnTAQ2ZxYbEPtjVQVd#v$FZ?71Xh;CU3_pouuE98oGJ>Spl7Mg8-hF(> z87+1e(`6&Y5VbHPse!4<(aaVLk6?0&_@(|U7K{9+k||=bC`GO~<_KIqA(n`xN3gCn z{JR?dYK@pv!)~f!`_?dA5ragh8vcEaz!eoY)d*1|!ZjkbMx@n<AvGemM&#Fs18c;z I8d3KD0i+$$YybcN diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiAbstractionsKt$defaultMultiValueConverter$1.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiAbstractionsKt$defaultMultiValueConverter$1.class deleted file mode 100644 index 3569514091d209a6a9d538cf42ec024555ae5e91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1439 zcmb_bTTc@~6#iy=r4*=m1r#r!a#0rW2DXwkjmE}OjcASGY1$4ru$>{hvrT;CxA+S* zCSo)(#7BRW@yxa;3Tk3ZcF*<8IcLu0%hwN|0L<eK!&B|AyLw9~z9o&;Uf?!7DU@-g zTJw2e{IFp{U%16BS*(-F8%AmsJTT);vBpEsEYmM*+zUlXtG4is@W<y;U<~!jrZ%2b z?nb*s;mD!5=T>;D-sJiHzO_(wqPq9G(p;gk!Q0&RxLS7~);C1M<o8)tj4#!Cekso| z{QDd!#2H5S`47pHLXsgVRa<WghD#Isl62Ef9yI+O*ex)NG%^`D=w%qI*iLT<Q}?-4 zfy<TBhDXhGtJ+jU&!gvz{|QA9UiSpSazDD$NtMC?L#l1Z@Ng}QBQ|XggA8%=LIw=a zqPYKk&QwZV8qs1HJgiO0f>hEhF~lY&YXqGrPu8+Hh2abm7-2}4t1C~6)zV!O3$%9~ z@R7aUSQdsix#5(>X|-dtvdoeksr5*ORbvcnlT6JyhMC>%{><)n#>sUV$-CRR-R)s# zmd&Sg&T#w`n~mMie14U5(zG5<bDp8Mz?D`nTRIG=Rxm95>rtd|#lCOI&U_||GdSKu z(k!*-m;0I7G}MohZqn8bRHPEsuvHiS6FXnqOx@sKjr-E-UE|2(P#M`0W!08}Bzy74 z2GQdD>V3q0-V$_lKf$tPrG#Jdcn}C$i-EhU;pu>miF*A)HyL_X<htVa<QXz6I`kXj zp0qU$braMMB*!ehF+pvktH+RiG)*O*E7J1!kmVX_gM@I1C#R<0A^Vyn(2mk^&;+f2 zk#N?Zn0}9=*6rXr(IlCHKHMOBq65IOC_F*Qa+3TvySP5$x9CsNI-s8f*g=rIm*0j; zPQ`a{`c33bWAwZKWE33e{Rrpz4&1kx>wpqiAaI7l*z#=1MWS(BC3>5FhaQlR_&f^4 tON2a2wVhi<tc>%~cL8I2+ISfkamkX)t6%{pFu96EfT;k}0Zv3T{SAy&Z*Bkp diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiAbstractionsKt.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiAbstractionsKt.class deleted file mode 100644 index 157ae0f97df153e5df29a5ca302483526b8912a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5327 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 ZazU|i*v0(NM!!24uyMp4yx~57^j{<}b%_7~ diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$Companion$client$2.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$Companion$client$2.class deleted file mode 100644 index 7a133a481ecb15660e2bec46813887fda2538f8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1445 zcmbtUT~8B16g{)0A1qZ0A_Ag<R0UMF0)EkomIh*zS`#58#;0k!l%d<1W_PxUZ~PX2 zfgcGbni%4vKgxKgEl46fsLgio+<VWQJ9FpE{`mRj8-PU=7z)a-JF4YM-V$0VFL0`! zaHV#H-0^v!{jjP--*xgWQRpPn1=VbEDU?iik?F-a7{gYnp|mHYv)69YWbOKrdrpZr zD>a@yncE3vRnzpq+31Zjxsqz^YTa6LUN)YS?N-XJW*H{VW{snd;p&O}Da>)i7-B-U zRl{W%nVl=`@iuonF6++A%AQ-*RAY?7r!F9g1Z*1?1{h{arc-;auJ~Ng;<=Pc^X^8< zN|!^=BdW~bwlj|N4E@JFWuRXC^ND1WNMWcSgBWI5`FEZ;Mi}h6tJgx|)m)!p>Wmhp zdkCsLic2;wVvJ$(v}PV5<CtKGRt#|xlcv3wafP8z?}~t7{XceptVcSBSWZZxR~aI+ zbKAr|Tb$cYVj43xqDV6&isj9%e7Uer!yM_j3m!Vs=?ho$8rPhdtY$kxmxY;Eirh-a zg>fSctU;mLJ=*i(e!@Q7x2-XYOzLod!pgAc_V;%&D`6STBEvwAOC{enRT$99M$gjR zG_D)X-B02sruu30kRf?|{}vjW_ES(b((_<RNVgm|E3UuAD;`CLORCDfZSD)>_kx#S zg;I;ATa;}P2#V)_YnP~tQo4S@<3Zrk2@I~ws;2@W>(qo@RU>t7in`?HD?p;yRH0vW zH-srR-s9c=gB2NCb`%WsX~4MI2eqp&m8bjEPmvY!u8?J9qw@zyzNZ00mfo>WkW_50 z9+4R6at~^M#DxQlAK<FNTPN_-$WbKOnQP-(r`(es+c~nJqrXmB!!}GaP2t#l<TGx3 zFiEO)>o|Xj^5!@271ry|c<>32x}YdlDQwf^E?^8#$?v1v20Wv`MWV=e>|?BveL~1t m>cZR`M2eX2JhyS@$h%v_0vz+oya5Yv4~vuvuoPf9K;jo{xN(C3 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$Companion.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$Companion.class deleted file mode 100644 index 3cb0f55310027b00fd8c69a9bd754e9f28d95b02..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4330 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 EUq^BZfB*mh diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$WhenMappings.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient$WhenMappings.class deleted file mode 100644 index 9f70f9043945fa2c4f1d933ac21deba02c91fc4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 768 zcmbVK+iuf96r61?PJ#g!$|c+{fhOGCmV$%|NKtB0ODT?;P=xZdNtR?=XKn0t_%1*~ z2%&xeAB8x!%R8#HTF;EnnX%9A?>|3}0BqnH!>b^g+CeB352X$QKeord6iVAteT;al zqhzd;NZ9RAcCr_Z_cNh(c^FDHjSVmc>wqt~?Q=D?z0rXfYXb#_m4>5|dH=K2<Joa} zV~t^H=rUAZQiziJHAA7<+Gp7O&#%}MpAr%4U7=^e#6Xpyyx=}b3@@6kVfQ39TP9Ay ztf7X}CQ2w*v4pc^yzO+Ify40pq^`?2S0&f;3`P)5q~d<|yRL}~xR~Z$BL2o1n5gHK zR~U*rPJ7$LwOqK)Q0lb@ogEW5bLAGb^xjd+ot)pLmY&xq;a)D>r!=oOaJ{#E6U|&} zF)Viv15GoxX>@$THQ%D6m@f)+4OqHaL`NA#O6mOAAz62ViD0PjB}&V=*q5;!`J$~< zpt+WTimi1TRxvfP>gnt<RDppC7@iUnnH})q2hJS*s(pj?HC-#;ak=Pa@G8Ml4sQ@F z=kPW`BZm!wl^m`Tw2mttq}cGjPzc3illE15KBT}$Llj&*&ejvy|Ja&~b!^b~7oi8V A-2eap diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiClient.class deleted file mode 100644 index 90ee4132ab957f1904bec3d3e89f6873ac051ad3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31155 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 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.class deleted file mode 100644 index 419643d8f06c1e4b819650abddd3ba7bd9bdb4b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1608 zcmbtUU2hvj6g{*4T5lYCy=j{?E&ZUOwVkHx21*N#BHAK^B{v`^ijeX&UJuUL>s@PS z9I0>lEqy@n1`-Iw1B&v<k3!tFH|-_`sRC(t?%p$J&fI(F&i?t=?|%T;#3u}&h0(wb zCnDezsl(7$uIEb;XjcZ`MqKG=>gj1D+@}-SK8JLLnuLK81u%x%*50R`AwS}-&x3*c zRc|Of-P(Q|Vz4jL3dk}n4usy-Tu;^WurC-gwR)Q&s}H4Oc-Hy9LADqy+TlyV`ywL6 zYOOwxZK|d3zTgugv@c>?sqlAoB!fXKwWuSN{s+c(Yn!z0%px8N-HW&kl*@x4r0gUW z%-sp~&eZpbRf>`t?!BB)&X3+T&9l<S%Sfg|nWZ6y$CS!DmMp!nRYDn+A`CbT`7Iep zz0L5X_Mf!s`zFc^H%6iMW#A5v#?(?;L;?5Rb`Y0SNlz89%&_bo3UBl^kN8*+qpgw> zG2E-A&LHWk6q1}ueZPdOShcW%YqQoN{}SG_ki!i+>rN8F3!!<RYfdFI#zz^t0W2PD za(gouv72FFBZB%58Gbl9zHb>ThIMjm88!{ECD$<Nwb$q^(|e2j99ffW#=N_7a@@$8 zC&xD1G@8b<MJI1(R*h!%^i|%lbKNyNzk12ZI!4oUEXSOGHH*!{H>cmlocwCmwCsg$ z_4O)~wk5D+FLoWfOj4B;)wZjr-{<MPjQ%D?zQ-sl6b{cC-BPJbwLCAx#zbhP!$@ol zxi?Z_z;OLvulIwIX1La!23n3qJ2;X`_I&a5O+PafcjX|Us~b@dXXn?q(vgAKnT~rR z+T+A$a5|yK{e2$E*iXQ<i@L9S;M@k*Za9rR@r8_qt|n{t--;xAn>sfaA1j==k;y(J zFHd%nY?gjAc@*e_eg;?|?k1rIO6OQr*r*cvA<en8lIn?E<7X`WI3s^VV=M>~dPHMs zPJoFbdFkyKwczDM=yS3L&D-nFmEUl^@hfgN)_=j$PlOpb(~N_QHLuLMi6*T|lKGhC z3UNenHkl;)3?9!!ns`EXOtZJB2DcB8Y2*Fba|df@-Un^m#XUk%I{;Itqj7*Gg`&c` h!hMCZLPg=S!p6)cgdR&_LBUq2Dm<7Wd4+<4`!}zIlWYJ0 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApplicationDelegates$SetOnce.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApplicationDelegates$SetOnce.class deleted file mode 100644 index ab4fcfc583e0682a260a5befcd16ce4f3ad75046..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3186 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 T3<x9yG6MAigZ|M4flvMej4&A- diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApplicationDelegates.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ApplicationDelegates.class deleted file mode 100644 index f4efcc20bd38ce5db80af839decfe2839d01a04f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1711 zcmbtUTW=dh6#iyyuh$!=aom(9PJvz$>Lg7!G1n$;L>fRfxNa3&sj57U*V8b`X4l#o zN8$zL35lP;D^EOvkcdPjWR*95RK=OK6QHgjqLO!J&YACA=R5x6#jn2ssNgQcdKB+@ zQCEb#D|HkF%JTy$LhZ@$Y0Q<5d%o_)!rSb21L<=uqwo_Eh&`@_%7QTz_W2R_0v_&p z58L~~*IA?(vP$TOp)VNjl<O}e))(prkq%_&bz=%0YblhsEqLc~EVXzv(0#Se@VMGq z8@1jjw_4|OQ5`iV(+%=`qi*Wn7rGsD87hy5VWgAll-G!KqZb5(n)^2tL3le51lxLz z9?mrfjmpAhu&XkZdV}H8tD3fxM;_xY#&CfOI7bJwC@`e;mr^m@O-lKn4^1`ZJK`zt z1$u`EJ$lvRXlEHFhL1is#4>zaeyy;hL29F_^N}f!3~Uz`rWsP@g`}4y7ir8gIJHKz zwb|JEl#W%R|KJTKPf7YfXx`zPQx~kmqZCaJGYj?BY9}I$NTg>6r0T3P`2FK4*P6Cm ztI$7oEr$+9a5B#C-&oWA<BGMy)|hiI>sZgfx2=Np`BEWODirNvdYY}UV!CME&#a`c zr=9+BAyaW3t6-Pt>V77HXP^II=S-*yqg*h5n&^K_6Km024(Y~lc|f4$uFy(Hu~^>c z{(*`@)1%ou-o(WmomL3=s?ooFpov;rQHQuNQJ0};^bXr1ZkdTN?1+3G?C@9`d8o`a z<zC3mp9#b4b}!WOP}IUBsU%@G|C&D<yO(bt@t7Y9E#iN`#+#Z_e!#oK0Qp)Nig+vF zN(o}T+l+d#FFundqnV-0osn=@r83jzQ88nxrc)Y|hAp(eOVY>mycX^GXBd03bb^UK zCVwQ^!h5vZWJh;+pVl`9I202vMmvQ|bpJtu&f>!%-l6>?`m#hB<cLW*GQCV^6V4+i zCY=jc(qDgv4683L{eqc6z&oT*fjMW9ZHi&hS2{B`E`iMA39kG^hrcIjCrRc9fMJpj z-a0d$C$uphe+KKx3A`^Bf5xhD!p`EEdQ(^<olDv=GFT?_^(0UQRob^n|2B2+>Ml|> vTuXk}apP2)t6?7RkQO(0!4%3^*oCWbQDIS`q>xcqQn;lsrC=*8E8PAQ>JYPm diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientError.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientError.class deleted file mode 100644 index 603a689cdcaebbd858e21f5b9e3f80ae8e0d3c73..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2831 zcmbtWTTdHD6#iztzAXlf0}VJ_oQ5REgxDt620{abByJ2zv5P82t+X~1ve@3WcGjqQ zsrVI@^4h09^r5X9CCWpE^4R~-zf$$gu1ywjsMSjL?ws+teCL~U&iK#2-~9n#9$O6a zmc5g;n%vZzhGSWEk*(GZZaP`Rd~WN)v0GKAW%KN+ySrxFmK_FT_-3(ur?{){>Djt& z?qr`-c6rrVSSt4DZn<d`js)1`qG_3eFP6&-OA8G5{;#7jR0g$TZNFqloJ7hn?PA^K zPQ}&@Q)G41v>e?r2t{_IRj=!nIwv6E9qz2SUWU^%C;h|_LO2QqeH6`kVF-rny^`SL zlmcmjqPN7Vwapn=fuWxwmwbDH^h_a!LBwUaGlc8~*SEP%5eGe7Eyt*5*Yzejdw6tb z(FeTb*oL{Y;8Q3X!s(*1<Q~L@(`d3B$&>_7SRZxZ40VX|0V*8d>k_axNHL7y6G_21 zLuk=34QGkrV%nEsyBG^Tf0C6MD)(>yU9StUS)Zp<$eP)TV1!|^W;u1k%<k?rsEZtK zn|eK4FeUB6sERN?WjI@X!K<~Wx~(@jX%xhUM<v7ME(m?OwNGzmD~4%Y)Nlcp7_Rl$ zES)ARzijd_(hPmR5@fj1YvKC+EX0t(Y!oxN!f-qNpIpdnCUI3m5Lt$D7Y2@>Wue%O z<oo=&-l{vR)WYuIvg~!;u5sHv`mwe})vDKNR=IsnWg#9rVazi`c%$jOq>UJ^BdOsU zZb(p58dcgY25LSRWM0a57=}6k*14l^>yA!MpfvUZG*_8?#7V5UBBU6gmafs(cAnv{ zgZ;Foj4Il}{^2W5YbnMf-fNnc1N2R4N+dFRu%A&Q2m5h0A4#YQ<q^v%E4LC_M2QEI z>L|;pi3qKONhKFbBxw~+4okgUG@&J2i(E9P<s$EY3@P!x%`+V<l4ZE08i~dGH!pq6 z?CbYGs2@}Z;)9#RUaX@(#N$Kne+ngJl0+vfGpzJl3?ID>h*VIscqcd4<c@GGo6qg) z)tazOhVhSDUadI{=QdlWV>Ecd+%tqh^L+WkjAw|Jj2)9ku1)h+^~UaC(J=W&t5M;0 zS<ZiXby!uszNOoSl-rxr$Ne5Q@{s`jG`*`eDyg=aR<c@ll|L|~<6%#@&nvB+weK8G zvq5Gw)^@#h0x<Gac|loANXScvh$)g3qIZPe33)TPZyJxJxlU^ZXAgBoUELu>AuD); zq%2tyzX)c2N9-3@{fVn2Hz)Cwo-t1W{TLw0AC5YJLb4N%hJPkS1s@zub#X*#B1w51 zM=^06MXHOjm)N;OG%_(7x|nJ^G$_1EdlPes^KWrE^Bd;gAeWhajaX*<HHI^DuQBoK zAxg<c2ouETc{f<bGj69$ZrWVSm1J0vuH_X(;XEiQd`WwQ0YV`ULZTr|Gyo>)$UKHh z<TOmbq(@Zs`&S6E;)oiQ3+3*J8m5I7xEXqjn;V(gaYB3BgSSZ*K?I_aewWVyiWnxR zaY}UzDL3iQ+5yhGbpZ5bSb)XD><t#A4^UhWWB?_S6g)<m-mgmQ%TKk_nn!!=USe9N zl<KS=XtSw&>Qtj1?;+o<qh*R({zCrB_1vAjmRZyA6~SvzR*RJS-De0Cu;hL|$GwiU zT)+xeX&3jOfeEbP!84o@7!Y_U@JJveP!Je&pCj&*MEXn#L<RlP!k9o(U`QY#@WnsI CQ_Um* diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientException$Companion.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientException$Companion.class deleted file mode 100644 index 6409367eb2bb71986db5daa573f414fee6dfa085..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 945 zcmbtSO>Yx15PjawSC`PHE%b|TD9|Fc+xCEjiV!qyrATR!N{NtqK+e`JPBwOAI~B)> z13!clS58PAP?RG-3NhYLxNrd^%QNrIJbOIjZ{NRs1+anp3{SN=jdfQj-jz=4)W%6F zg>tb}Cx%;RdWq{95mz&I=WQaoPHMGS)txR^<Q2gfDlLA-<CLq@_<6G>5?4gXP<Skr zbWa$<rR7E$c@!e#P-MutH_|d})&KYMO@{TQdRx0xs<?I5p{kuQil_0mIN`n2Rka$u zL7P2p+QMuuHzEYSi0Q@Tckp#5i!!YK-DwPy=Yl=q_%U~!Y6?1MAvKu!twOMwL3l`Q zVQr$0*BPpV{!|pq1yN8L^rN8Uov~=pFAd*^bA$dyu*SBErC|7>5LAML@k+Q5tmR$} z-yM2}@`fJ^d4JRfqq|VC!bqMrgt0W1m$hw%*->X!y24qfjaX^%q;0igc=&IfFX9@* z*ss}>zhjIxcD3zjs#Sd~7$)jciTz%uDa;{nro>FubwY)4Dv$6_vRqS2m}<(c74#RP z7rJK>u`9h`{-CFv?1+Z6k`&LB(vJIYXR%Jh%TXUeHt=7HUVe*EOqSY!{DaRZeagbO zY4>5EggdmCM+q21l#L~i3&eQwBeDTmFE0OCJTpodiG3<AVw_|l770b!0oQQ@^SDbm xz)jpEyG#58<yMXm)-ai^DNLWEOEp}^46&F!0<)OI{1FNkk;Q`b&Xvr$`U48S=Z^pY diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientException.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ClientException.class deleted file mode 100644 index f735c489f1b44777f8e06fe3545688b048301820..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1622 zcmbVL-ESL35dZD@>wI=n$0e!bCeVfei9>q%fKr;Yv~h!U$f;06EulQEovpd}yl3sM zqe_)f{taGv;(-?gC=y60>LY&?V)pEODD6WP>wG&iH~X8J-^~2`-(UX#SVNuRZmc?f z+!vDfLlei5_S;b?r13-fLUC=>plt?9`1QoP{jx3kCX8hcjG=nK54j(4+3}wZqzQZC z!uJ$|rwum)U61z#0}B|&I>PK;u%#9jgCa7>=HVdEkTySrn&DpKYDsM{WH&<@nuiQi z3yt&ac8v;UXCqi_GR!C72g0-z52g0Glrg15HEI9pAc}Y^5(G5)mivp%BF0eikj4Z< zt|zqS9V)H-W+;a3w*Uk|qZ^wjl>WhCj~F&WNgnx6#0x%%Or26l_>R>MS6!htY`&$- zW#lkr(-`-NvkC)on4~pn^_%3cg$jAp6iQP~&x0pK{WlqExBb0ha5t&JLyq$GxYy^B z+!(g5$oc#k29Y*#THcN@e4iUmHm7%(qR7m?N~E?D6;`DYVO=uquQIewjw+s0agzVZ zk>`}gz2tB`$IZA?m6M}e`88*S-Dml&n`O^+N=`LhVJoS!OLDsEtYlvQoOMdsXA@_d zOAytxn=84mf600_(i+3eg>GFQTgn#<H-=4G?hB($ti<vGZ+Eq2>Cx2&^PHp{D1+67 zQ=Z;+3~a+c^RSN3i<rZQc3r+;$ZsnZD}ASHXtk2*;nFmDG@zMG54Y}GBb4Ilpw|-W zJ3HBSSmQR02d5z+ePo;;5fRA4P={pymMh*9G@p;p*Mox4^0vD>yg#~D45SpQ9&xP& z?X9;P4^&%x9ojh4Bgp0u@B$8QQ~GJ!f0XU=lT^hl-Y4eolkDIFOxr3+&R_yLxb$U% zG@njt5Hhtt;QgAoZqhrO7_)dla&hQ@0!g-&v?l~;F9&qmp)1suj!~}7{0Z+jQXO1| zxHWVeLC^(U$9oBEA<5RkL%NrD$aIYaJJe&CB+W+Iq|0{Ms<Y`Ie}c<SaHBDsAu;1T zs4dMLV|p0$EAmOhDdf(=XOlX{h>9W7B;nX%^EH;rvSZBHiy$s;pSe_$OsVL<vHm@| z-2EN*hF&Q=B43XH)~Uid;`1@-4!*<|ozKZWPw*e@Ar;``<oN^(r`lqG8kWe4Pxrty dmT_kf1&yMHuW?;tMI)2E$2D>quEw0k>i;?jd7A(L diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Informational.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Informational.class deleted file mode 100644 index ab8af7092fd5ac457e9405a344f4d7498745a889..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2740 zcmbtW-%lGy5dQXjw$B#>hhsNDNJ2|~fC;h5ucm>}kOUGphNRd+m7-QU%!V93-&wb7 zl)O~@6_u*K^{EeiXsbqz`cNSr``ACI>g=5fHjvb6C2MzQZ}yvSW@l#o=ik5o0pKbs z4A=c&v*0(mXEz<``>rU|T!(wI;CRmiTgaeQldXUkO5SrnXxP&6J=;x!F?=~!y<Oh2 zx9x&!dz*zP>s!1gXXnd30xmQi!t5}y%0<)n1fQ!`XXj@b?*3n(By<K-NL#i<mA{k> znGU`c893f1*%=QRZ*jRE*p4R(w&(eDh8z`z6<@BjT$i-^Ho2^HKxHQ;kAkI<Kr#gl zCm3}3!VwHNdyPj|fXQH+_<etaGq6%8gJ>@{F<DAu0G2X%k|Ftm+Z#L}n*$NEmUP_0 zvfU)Ghuu4KN2zxxlpP_D(U=c!#iTeq+BY<~AA}B5rNev2K=o!UjT}Bu&YfmR%sHMT z=NT?c9OYi>z*GKCt}%S|?|R1&o9aM%PZ%cG3?vxN)_v(ZUSVsyLFFQOK&3&2q7q9u zHIc-J45w-@c&+}_4(tXejgn}m6vL%XhVAM(>f7X68sj)`;v-xzkYl*kV_EE%Q}tDo zCow_!)0JTiH+s#?PNdm1@|a3t5|<fnP5dVa<<c2kF%d_Bq1qXSc2OR_&{FxhNI&4u z?UpO=Q=x`!$`6+9pw5Hv{)gKqYQF1IUka<4azi|pNnB+xc%vy_(MB5AF>K-*ZYWY` zO-i?q83y+aE^}#b*wUsN(i+<_>Y7Xq7K!Vj2qng-LhH1(F~jiJ?#_8r8`8|(owt+K zA4--HP4wLwGd05)+TF?P#_o>At{NFVqdj6p?cTLa!itS(MLlB}niZ#2A~Qm(<VaTO z(7u@owTpT&RW$a#PiU68dhuP~zu5amCmm&aL^n=Y>D6om+Wn!=>R%m<>>g+jSk~ST zi9zKV#f()M?)7@(?`-cBNl;lt*E8MZQb<4G(_40}E_{z+^qnWK)TxD^UTt~OY4DP_ z?FeVx<qHSxnjuwjHa+V10rgBhYLf$H$Kxxl#yStGHtDNZz^~cvnjJVwZf~AHjQh4^ zyA1Tv8&IoL-n5UI6~7hK_>!Z5vyt$CueUZAUrJ70KzTIWhF&{D7&DY^ag{*GsHcMh zQz9urvq5u4b@y<lMo5~U(OSc)E}b|Ak%CIw$Mm&8Cn>&&=YK`|r%=62qXGm@VwuKt zq<}v3lhkRB(w<DRBS6_7Nm0WAQ1%!gh9L}-ABS0t9%hj{=5XZL$RRdVj%`4n%<DvA zd@3{c1{bF@muSrYg6ZE-%ul^WIzRdv+5GftjQ;$VtBOgQ9O|RkDaZ2>MB8x!Ye!tI zRGc+sKs`BRG$M2kE3`KdqnN1cP<cx;)&3c}xF}AG1e&BT=W=@d>u(X)?&S0&EzH=> z#2egP$xn?E$y*VtC#0xDOZA1ZRQ!_2lI0xjMiyguN;(=I;d7e5t1K@(HQ!ec=Hu`M zGV_(O{ne5=H8wN$-a|dUAYJc;nJ=3&<1?497jMs)`9%|}L~x6u@ChaG?PrLUFdP2n zaA#kdFX2<%rClsM0~5H1`_GUO=ofe(uqcoaSP~cr$6Pp)cvfIYU|3*KDCLx(ze0HU E4=Z@UZU6uP diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Redirection.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Redirection.class deleted file mode 100644 index 0fa433897dff4974540326682034a326e2511924..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2479 zcmbtW%}*Og6#vcoYrPmSh6H0ErGX}3AZrtnrkK+38C(pB0HLa=hs8`_@v>{}j8Su` z_$w;q+EWibv{56X9wNlCe^k}CyN22n5NaiR-n=*Odw%omKmYpUBY+9KWSDT=J>98t z+o+n-aV(*iEtA_)H|^K1A*5R?%bLseb-ru5yev(}j)5_JH@!JkIxvn5-7@Sw{pHR9 z9TsLvw{$mKHH%FF*14!Uw&2s7n}wMI!}I^^D26bDCZr*2V&2*146Mk|y2s^4gDf;W zQcNI<SR4v8hOpc>1;gZR>u6{TB^}%6#x8fsL3_}fnlvqa)u__hi)P7mL-RJIYubB- z28EI-<P{n-erpE(<PNypaShWJx?$T6l|(lq^fgDW)hvtRX;kU*c{&}#BMshzgo>AC zR|IS@x*??m+R*Mb@D4+C+O$nM!_YZgY_Rr1j%+cME=#WnI@(}&L)4Ki6>SXnDvq>F zTR%8DB+N?g+J>bUZLg)mEQ=U=8M@2+yj*!@xW*wTjiRWxiQ(aJ5Udfz4U+oJjBF*) zk9!*W@Cn1?TSD_3(wlFpJcdshS{l&8@Z|Ow3!aAOr;xxPhT^!7&lsK!|0fq-HQjiq zA%bCsxyv_FD3-2j=>mUk)GRqqDD#Jc<E|QRg}eT>_S7xPj%5WyLU^zjD>8;r29+OH z<r@+tFpf?QV|e7Hkk$w@IR<)!eo9%7f6UNvp1>-X#;zd^g0pgX6r!2Myd_EOj?cnl zL-e#OB-+h0ygNO<uPJFoJ3YQ2N!90)Lz<Foqwj#GsL}N4aW<@;9w*s^nhK|sWtLOs zMpLS)Btsb`7fxkp7s+&aXSrBPOZi&4SWeAF&wh$3$@uz%>(0M9`!P&9Uf4`n)siji zU4hf)gG93R?B^&!SlOMR5;o~BZhN2Cj!)_o2=Bplj90l7(sB9tfl;mq$7ble*78wB zGQ>B`J)0(`OXIS4y=F`EkQePEQ<yszpZ#af(4Y)vYJ17F`C9F8hr62w=`f^9PT8=w z4A=Ddx^U>SuZy?X<g}GWbGbq|shepVPR%XzCDU`<6)+2Yr?$8Fz2x+~y^4D3uDAY` zB=Q8O2mwSv${X>tOL>!u_(flu#1hdcHLQbZgs6%*tuKhviBc~S$^MR(UudIXnO093 z=s}UzM4&*ll{l&#orK5B#&>_E!$#xG6~;k6T}}DWH6mSi_$_(xpq?H}Wj<ga`wkCI zFp}+kkCyD%d))o)B8K;bqGU&N&yO<@*wvFH4}K@SBGOI0=)u<{iz~GF?VvZ-jV$fG zdgjPUlxSan_=mTMDAWBBqFU%_<OB58Z130!@<9qKq!osuCj4#%$@Ea540-CNe;k3o zJASh%TsFj_>;#jZv1b_cA%qff3Kp<R^zFv#>?`di+-fWSPk@%)7&zZ8X`=)Afg6o( zJ;g8n_-NUZmLJTIP3ETZT6R&x8l`7YO;4zvr`re>@wxwbhA+;!sUixPCMmw$1{0XU jSKDY8Xcc%aFe?xhm=kF8SK81gEszrE6i@}?0`q?Z`16D# diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/RequestConfig.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/RequestConfig.class deleted file mode 100644 index 1763aca2dbe0a61403fdc6a971b423c7906449ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5445 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 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/RequestMethod.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/RequestMethod.class deleted file mode 100644 index 682c76a806c3f9affc7d84c90e58d08bbd5d0dd0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1652 zcmbVNU31$+6g?~1(pphk#|`-?r5_N$PD!1Feo!1j+(d2My0M8I&v^3CQEW9;VoO0Q z=Q%UX@XCMSiASI_lz}PZ$s<3C>D9_G?f@^=X!p)Jx_kHDvv=)3|N89@0IRSWZU^CE zF*tF3=fsPGpeu^)uIKtu(es~&j)=m3JL-pSao7F2?~3TD8@&iRIvB%t^~gDOie1M) zELwiQw^kh|RB64$aN+GpI#LYkBdfu1cf6ns+Ll$d8Wuxp+bVA{=(T#IQrn@5)Ae#= zbDKWYYc}nm*7s=UYgD%HMe9W53r+H0XqKyc7Wv=XA3KM&VaS>Mh*owKdj4UlQfQjU z;gW$grYW1~g(nzh7hIC^neX)6XF*7B$Mc=;!ZJhd-y#0jeT9KlNP|<SONYjAKVKNL z2oqUMWuV|a9aE%TyBqi}!*sqdl1}a5$Zba@6W4LWz%{&2^2x1h&lw*7N9~1i6}>YW zY_sbKQ5wl(sO)HJabr?q3-~D3`D2Eu>TwX!Q5UI`osJVZ)P73uRHggC;wek;KtjY& zB_)rE>X4*Q24|+B%qfPF%^C{N@bhok+~91L=TbRkd2qJO9_U;-|6WtF%8|lV8YvoS z8X66q2B(oZ|3Ne2kgJUL#B7q!(uo_1C<xu9Bd2{V0-r-ONcU+I8ua)CKI7mfcmhfs z855ZVtaBJ9j0BW9CQM8uV2i^vVJ6@a$E1nL1UzQQzICT>9Y@rKn?Z+;_hQxa-JO2# zzzrMDL6?|ZHE28CrW1NG9+DZ`JM^9S=YhengMQd{A9}I({BGZmyq??igh%dW-wz@u z@&aFMtWYIs5|(ew$Atl8sU~Tu9BHW%X{iWlDSv4xbvmHSaZ6H!6s@~}izMMwLf;XJ zpKr4IYbdRj`a8|JyXq_4YrVvMyOol}=c$BPvs-CNe34FwFYT5li483w9@s5i5}SHL zSayp`;vr9nZM&6C)>N{?MNjOPxcZY!M2Rmq6q%ewy%cwozIgM>E4&jsDA=J{qwM3k zM)UQ=1v7D#^yrwyocyk19+zoFomhn`&fr~K8P+``JpkipT>S+f3~=p7xjI8V|KUGA ziu5va%Hprc51=GI>M){;uVmyZcFFFMZ-LHeaUW_0H|6^Ymi|V!Dkx%^Sgh=W3HlfL cbRQD}y1;FLO9Gkz7sv=0BIZqjNr5|W0H0WT`~Uy| diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ResponseExtensionsKt.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ResponseExtensionsKt.class deleted file mode 100644 index 71652625e7c3140ef3d737c263fb03fa1d1a4767..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1499 zcmbu8-EI>{6vzLwYkL<bA+{lLoRk!jKoUc;;iCx2y#OJQteSul6eMyrUQd#-*Sprt z*y1v80IvW-f{R{PRWDG)4N_mE4^XaK&Mr>s#HoaY<lUL`-!tbo=fi*g^T!7OH*lMw z5~*D;>WGkcq=}+Hdww8AXgnG2D6Wm_`lhRdw;^;V3blCf!iZ2y+Wul3Fos-{_qZ4E zaMycWZwjAOn_*n)YPb`rHaFzU1BQvETGZMzrgQTsR%Q7)!+b5iK~tEz;xg1855veL zr?j^one}cEROs}A*^_$VL{t|p!)z-ufegK7uT7UWLJ`iZhDK2|>1zjBhN8bG{MHk$ zcw3N1Rrez^EH2efCQunrHsdh6mF2BbjAAT{5uBxzPbT6Z$B^=)hG4LlmaC&E;9M4Y zoM$Kur_GR+dP6j%qH<BV!`u!f7gG#lQr}NH@j$6aF`PT}8c<!#B#xUx^@KX<IH0<i zWysh1m3kx$Z*aq@u2#Ee(<rd`MLAgY#6)aT7g;ObSfn?uGrTz1Kbt++&sw>WtTkn2 zEjK+kkvrI*w$@nLTC?sv{P-r5nNGO}`#GDwq=r7E5<NYnrxQIhq-S#W$M+d0=HFm+ zOBBCmu+kAmn@EY3Cih!93TZ%w2XwVX#ZBE$x-zzD$nz2JJmvL(x-?#sp;+&>>q7Mv z>XXldEv{tj(H9psx}lM6Q4M=iOVW=<=-z*0O6}Z?y2=+1WgNQHKeP4q#DF8N!$OKG z3VN52Muu#UET0N)(K=TyocSH&d3?$>%D-Xa=b5)~p1s4!%xgHQcSza4l9!D&dgo#P ziz!$R^3*8i++`FV6q3>7(w`eNu~an7ku^!{O?s%53=VBdC?3%pefoU4P>Sj7Wu9I8 zCVc6C@M8n`dAj5&`03N|KP33S^X%1k;S0y`GpFG%oQD4~#@m18+2`-V7mwj*hw&C} zQ41`r;wM^b)RK!d441ZHS236T=CN>SU9RE^7OPmo@-~=88CSRAYD{Zf)0ouAXrwiY J8W%KHz5vj1H?IHy diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ResponseType.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ResponseType.class deleted file mode 100644 index 93cb48a774a39821733b5672b41cad8d20bfa6a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1580 zcmbVMQEwYX5dL;;-<>bl#xbQyN(u!6*eR)#l$3%)NNU_-Fht4~OI9SR%Xt&dIp0~g z=SaNei66ofk3c1gKp-oR{3yiio{Nlt7oTo-^nIS4o%wFYfBgB&?*O*&DZ|}3IjzM* z5qZNPjpI<({4fwvS_`6+#FJ?<^3zcwYKKA&<4B6fUk`-|#_*`!_s+dq=tZZsW;7b? zv}cG^->oxT{bwK(c?Q!R`M!{nVSA>y3|CswNt_J4G>9WFWSBb?y&w_3!h{;S%4U+p z2_aV`=OURPYlkF=f^?T5SE+U=nbppI`-`T_aPMfwY>b^r#OswQ-P|+@qSJb-+Hp|A zf{g;o4Egk{fC^t+6(sAE$Qy_!aYAn|ph8wR7|Q<+@xShy46MaqoO|I&P}KXC>TESQ zxQh8AI9@U_&rtBgI1&ukD%GiM4vzbzaNWVnc*Vv|+#>Px%?Bq8t^X*!I-{Q3)3F+% zCuMyqjft+)nW+|~yk5hqQuz&rh4xvT(s!<XCQ`5Gr5<%6ADriCFqqm(1dla@f;rOh zjHn(7+8AFrHecd4FO_U=nbzeuY-xP4WtH<~zA?VoU=K`-Uw&)w67O>>M=MXOK+B+I zUVdj-D%2LEyRew$u|5>3OyfkX_dWki#*qcXCb`QF446vzdloDQRtDa)P;^ktz>Wpm zft`U5EzCKX%fJJMmHlBrvoJNx&u970SxVj3h<o%M=i5OfJ|7K^Me^7?4v8tZW8Vuq zUJ@ugA&YKs8hPp;fx&j;QR0h-f%0BH97Sm`5S>5<<h~z8ajIue?rl=;1(ML%TUMn2 zWT^^msQ_&$cWo(clKzJ3H9C<eKL=Mxq$Z(0A@zJ|{RZCc=6<EU{7&u}w!2U9uG`IP z;(k6O-gmnNP1Fk+@qyblG_h-B#GczVHL-7IM8kcGl^^sST+Ji6zPCvYpjyCOyS?%Z zFDM6&hqN1%7<C37(S9p)!8KI?Jtkhnb^W`EMJ&;YkBQ|}OcBetF)1nY0PG*J@)KSi z<L3AJbdehM^}l_%j$@bk+Ru1%44(PqCJ}RJ>Bt}96S4>7`xePvIYO?5s(#mS`#E~M ig>~E^7PTWVi4ANXp(tTWY)LFg7!sCLj4d%IarZ9_sC&%- diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Serializer.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Serializer.class deleted file mode 100644 index a43232fb4d33396e295eb12519b78e2695bf35c4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2066 zcmb7FUr!rH5dZCA?DNGK2T}s$A8kluL-Fw^rKF~5fsoe5m=+_e5f9b*ydh_w@2tBu zB7Nei{T_X&`q(B?5(TM3^sOJGAEfH+`CL$Cia7grcE&TaGryS~|M~a3-vP{Hn_<rN z_H?(!9iwFl*R_4!v@Pxk-Ey9JhA+IfDcT;_%iOaJ+xnh+F))Ty-PkvD+i>>ut!kZ{ zB8EPO;kscqeAnrSHjP$`dkiy0({1X{$QkzznzkM)=`}+bRm-V`9y;ndhPy=>Q=N;d zXIPG}8;;`&Ls%~DORgxjZJV_2^f+tsj4DH4I#Xd7DK=bTTaI4eZ|a5pW?8y2$-&4T z7lmH&>gmj-B2J(m(Kr+gFhrLv#}bbc7(`q{1Sy7ycy9R&3qe+wLYjh9^QH36N@;DK zw#!r*>73zeH>XW53<)D?D$V^qDk_r;ovKs=7LujPum*{0a}3+Zhu1V^RMC{w@u8-u zw2_P&QUCZs89hFnS7zC2OjS;PiYh5(`(~<dT$zn5MZZ1yF+#GWc6>M#QTtQMctnk+ zVkf^uRq1)2(b2fxfqJIJg)dx>&xAG72%J;`*Dx$$nq-*m-4RW<*0#AG7Hs`MaL1Qr z-=OyTP{N$ha35)gY;SuBg?Q28dcD?I(hIa~1|DOW(l9Myxp%%{(28CC8HVW#RL?ef z3_3&7<9n8D@{SXRO8TNc>S*RJ+i!E2*D#9(h6m>d*#W}$7UpL40^QaftI50ReXL<o z!f}rI={3>|be;2#X}4>9GNdsqF=(Z&(swJX<@M4I!{Rx4{=c7G0-qum$3rYLjQL!2 zXH0O{gTrL?8TffPUf}<-us*`)64oyWmmb3<ozW&H{yO|Qz#<!Bkv)YWqhgie_L*s8 zIn)e}Ve5HEcr?i@(~sdX!!7eUHyi5*Esy&$!-`?IdEO6a8^ir{@xS9WcScf{&h~Pd zN&-*trG|BU#W2tXk9*mMV7Rf}b_7*C@9bN?Rkiub=@g}zwC2`074b2r7)(R(8dV^) zsPxbuELsjPwVPG$?HJ^YVW{YuhFvk}UxD~gsFmHeXYwbO%`rzeJwn4r!ML1{G#xgG zlQc$jOb!F0kyIQi;xwj;#0}6ZANE^7HiNZ9t2EPyj^PRt<Wef%B$<37FOmF}D8m-5 zQWK<e_Ao_GW0FfNov764pL&C<@)+fenTD?e<3IsJL4+#a``7pd#VLP#cm(C?8{FNP zdWCy$kvYONu^$~H`x+09ut>}&9p)uIdySQ+Lu+r5e}$wxuoGvNG6Ch32tI=$O@?$J zlnzjqNn|K~1>caqf&wHSTjXVgV7<PJzC1>Q?-<6r+>Jch-6AP&?}GWbgNa?leGL0} T-<O+yA5kBwk1IYBK0f#dVgW1R diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerError.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerError.class deleted file mode 100644 index ba8714325e5392caf34e0a55b0c74ea128058d15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2858 zcmbtWTTdHD6#iztwin01+TessF0>dhCS)CwG-;qTKrXm7Bn1~$iu$mafh;z=*3KF! zeW>y)D)qHbedt456{X5Ug?Q|bs(NO3fyF?IQpuW`bM{=m`R2?S|NYOqzW_|(YlbPu z-7=gex6P*IIZi_uwT8uQ&#>%G*A$-Hs(CG!8>`&i<?a*Lb=)Kv!?!clhm~z}*EAZY zy=6RK-{v)MdbV=GaC1$od?LXL7fr_&e5P8Ro}FfR^nU{-p)w?QxDe(RXUImtu6nLz zZ&8xG4|kh;>#k|p!Z2;y@l4MmAjWd5(J<E=oXk>N+*>*f)LR%o9V(3kk{wWRi9z*V zS%Ts2MX87|OS#l_XXEurxFNT+8^ST~e?AE!G)SWxx&+ZfkOl3dB^I0w+B+*Vbdv9C zL>DWJm($4MvUKRD*sr*`!CeC09c-`VSq)>!Y!aqtCp9yt_a8B+Si(EQV%9&^;r9{l zc#`vw@5MtnnM1xKfXeN<GZJ15QW}G}Dk=DwAu(gwmN(0Azi{3TqqSa+WRN_KuQ4<~ z#PbaB6Oq{OA#{9A!yv=;y5lu0+t}XSp=;}L*ESnQ*_Kr<teQxoz;LDZir4BdOxN7u zWKkB&0o@E^QOsc}o!<ZWS{g-6q%e+~40kSgI}dMl^>vdcaf{(nq}mzoUG$Db<4mVf z!tD+im|}QP_@EGSH+kGmA&z?tn^6YB<`7{Z<fQ$)%ayZef6O<{R>NDM7UK6#$6Yer zI(Pl@(2pBtkS2)-639r3D)1pg<}l<E_sk8`GwCuYJG(Jz)=UmMiR-=yDaPn(*GaW; zn=!WkrkGOtl+^y4qe<`bC7o1Kt82lOr{z#e(NcZnqiXwabT*}B)vU6}O3M6PHl-<g zY(VW}CDmWY{dFR%kv=(~l(cN0-Z9WCJ)}j}_bsWVOQqDoPYFd&uk`4l56Lp=fU0%s zT`QyKxqWl+gL-V*t?LvaL~yLm=-HLt0KiH69=-SA=R{5tK^4KO4D%N)igTYKA|7;U zf)k!>a!+`U%O|(ZT3t9c!_{*=Z`D19!IhTnSv$OJ?^?p5S7h$^Wnt)8wYF?(&o1?5 zHE7Y@70c$!t(|r5R^_WBUjV0OHr7nnl5(ibx5quY&?gdfQm3!gsVRkSsa2=t*7#FP z2JR1IterxJ+f;^eDl8RQ`JfR46_OG(Ycyx&`*KQ0Pl*4G`Y3rX(OSW^Bfsmue+C_p zCB96OK@o^t#EX9*{i|>O+&7ZSJYLY44h+zVE|Q`UGRP2&(}8;11C9JgAUa$0QJQu{ z1HVv41;>a+&j`eD14DEJ+ntBoQH-7895D3J(Y7Q*^iKpMVZiSwy*z__znUHU6O+Z? zapx^QDNgJmUA(!6-r}`A3>5p-Jq-VL1Xi+}#4w#x!OwX&h!IjKi4D$EuH-2yGJ|~n z{YH|PuOOXzfNd0C(bt?xu;j4^qnrsUb)Y=%(^~F*m69ZBF683s_dh~o`}nkyi^pjl zXG^(wQZAI);>68s{pwpx2XI%&BaT>F(|nq{2tks9_7DSCF-lT^B1YlmQGAIi&AXIx zhTJ}TiC7u4{_k@<I+W(hn8yNX@%SZ}z!N-uiOT|A0?z~%1rh>ffo^}y`QxBJl5#{K WBajuiAuuG+A?VK&t_buAeDN<bO1f15 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerException$Companion.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerException$Companion.class deleted file mode 100644 index ae26cf57a4d25cd77069f37a34a72ed22cc8a022..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 945 zcmbtSO>Yx15PkOMt4nCME%b|TD9|Fc+xCEjiV!qyrAR4AZHbV2K+e`Jn{4dJb|Q`u z2Yv`AuAGoKpeRRv6k>Km;lc%wEYG|*^X&1AzkUDm6~HF$Gd$JiEYw}8L^pO?CpL_d zSSlCB>eLA9OfPahBf~>!`qJ#ajbzuwS}j#|rz;eBMKFe-CHf*vggOgfG+Q!qMR*K_ z$FYjt69#X2rBOy61s^#S8FKDTY#Fxe|9kls!^U#Gtz8nUu+{HS)lM2El5j_!ieBQX zT8-bJ&Au>gX|`4xK6qNh%u@6___~ut8P@*pG=`~j!M=3jL^we;@lM~P2D5Yv2sSf_ z6jEDQo2ZiwhU#!I?elr=^I$mec`0=!{NbQ9dhg8-2b+AIZ5K;?^r655elQt$i+nxz zYV__XWhig-v5-%X+GKPW0xL}{l7=*v#`3bZ!!S4Q%xYIU>$H)pEfKY?RtyjSt@A}( zW0?3gd-8XU(Z;T|9Zj{WPb5R79xM60*J(;~B$^2^({&wDVS>sd{F5x#l#-^J2x}$% z1^-a@OeFW>RIqT+Q!ehvMr>nJJX1<Lk$yXi4H{mK`UtW-{ZjPuTZBTg)CS}qd`9V0 z7QRh;8U`x3Lwk9gfC>27Sn{|)Oe%gvmXl4z<v)vO#|dL`nu?2<B$<aLLVk9@b=<%L z?h@v>iF;)Ch_6s?a15`8sccPS<{VwB;WB24#oRHN#XJ^{QLykW7H#TW$(*Y{0Mo1I A<p2Nx diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerException.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/ServerException.class deleted file mode 100644 index 0d0ab75568b21c2aa17c06f7fcdcff6d69e089da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1622 zcmbVL-ESL35dZD@>wI=n$0e!bCeVfei9>q%fKr;Yv~h!U$f;06EulQEovpd}yl3sM zEuK*R4PJTTffocQ5=bcO6XK6T%$}VOg+8EI=i8aN+273kX6EmIe*Y7|2I>s=W7YBF zzL2~hnmCTM-;P2djUUQaiff|=Z8K29-xq2q)b6)!(Klf%b6^bBBR=GQ#AU~SF_0$g ziA͌yXJ40Js{6bvk2nCJ+zf610wS`LcHAe)DSJVV-i6KaMBjq4?~#gN?&WoRBV z%q%r7vfDQ*l%1_$xyi7YfFB9dQaqH}=TgR$64j*r=YuHXtw<2i^c(IkH;b4+$wL}b z47r}rns=zQ@_$1y?7jgY2pZkkM4|MLhCO1~2qk&sKNGL`ATo7IA>lh#dt7ye+OqkU zu9lI*j7?+GBhD%e#9@-wwAF8uzZNRwQBx>QHN6a;5%phWsNM8qe=)e*)Zh_E`Fh;z zb4hLtJJ;lV@f?Fln>s6RPZ)m44JVt^8>Vb%`zn#zN>o^tMuc_AbhysYIz6s<PQ^+7 zr^lXCn)H&x^&B_j&Qwm1@8ma}HTIC@cW#$G*C{#GbcL;@$}Y+2s<W1P{X^C%WnWC4 zYc4@l({8ThzWy=m*+?4<bC<exb!;hLFx(n7X|*qmHn9?`N4(wDmZc}x8_Wxma-a;> zm(F<lzhht<{*i}Gd|bo=-nHxU2}6EYsaWZIT|=vtOb?f)$)f?yWO}r9HyWW7&j-Dh zP+!@}w!<2?X*@U$3F%|w;+Tj)4nrN1{Y$QRPtbfmy;u(lLd)Ck?(zQkS}~APsCvY; z7PPnCemqcZ@p)+D%#I<OBfv{IxJ&7$ZU0fW%TH1j^LU$>e@L=}cQ9+KBsqgA<lxem zEz*2CsX@rpeuei_;<`=mY+{_iBa(|F2NX!Mt)x96Kzli$(+*vswsL}UZSFUCKa=X< zD#V?U+Zci_;3nQmU<*mM4j$9JyhElNB-o*zz%*$#$~IlL%T}FFfA>9Hc8Xh#`3#8} z=TU8C?gX==pr4UX8crd19zIJb7O6T$nkF1uY`(@)S$2XsdlAIN-E)^pk|`Da2R6SZ zm;1lq!N@CxC*<o9z$R6=Kzu$W-NC2Wq4Oo#7YY8o1Ed1HpFAI6=}cP=P{RsY@!<iO e#wzX|prBFI@HK8~tZ8JD_oPNn!_`>OSpOGj5PDt! diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Success.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/infrastructure/Success.class deleted file mode 100644 index 7cc9b5cc5355daa9d27d2bf8878f19804c8a28d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2686 zcmbtWOK;mo5dM~WQH*5MjGc$<ByRJP<T#S@Y8pFkoY+a!*iLE*MuDIQTHZLcC{p0A zjOJ4KPqaX<J@wE-TQo?}Lt*6DYyVHtS&B|&MG1r!kjS0k%<MPc&J6kI-@pF>;0o#t zm;GS7<hQwJw;k#Gt|&EJhkLT*c+Ub`$e`1Zoq(5WokoKTkpg4*YQBDJWyjvNORnv0 zmmY8K@P?dQSQ#?ZV%w=63ck)o+xG;Yuh-`m<{0k$-#{tE8RA>Ev>B{-kut<+Cx+BE zmrJ41c)l>mERipeVFpR0($J8hpz^sR7|O%u8qr3Z8A95!BkuWIoPkvtvb1}xM;FT% zsu`FVQ(KJ_y64>9;sNb8+Qrt9j$2x_+Z61<Va<FG_?iqHZ+ouCV8sz~fW<<{_1Q3! z9WFNm+wnxn_B@|JIdmSSHD9iETvvf7tPc<1j2)2G1E|`s8?fPUkTN)i<BEb)49R)N zbL0ZU`Fu}?QN2}r;we@N8w`*0bY6WA1|XT~as2>0g$*6Y7*02R={jC%XSYRNA$j20 zZmH@io`ut(mN?6Byz!hjnosP&ZgH}xiikUgivytdBoiH1VIza{xM1KME;3vlvH=bn zr~abNQz%f)MD@mSeb@@^jX|Y8gG*@?G0Si>|DQsrOwOQWAb~PNeL(ho=R@Z;h~Opu z%<j1I9u;CZg#2LD4w^g&&-rBJ(ePcDW=~kHR0HCXOyMen&RcEyf)p8C$E1O4xS>Ez z8&p;|8O9DaT;<YMQ-Ug7YwgBpCNgy~N!$!YC^1I;+9cIhh2gLLy>o_kLNoUF!keaR zhGy!aXwnmNg#Ocprl(Kr?-k?v{+`LM=vLg)9<s7__o|gNV>#{S{+^}lni<b&<%E@^ zRWdiOjLN!YSfP1YFQ?0?H$Nmb(^x+mIgw~k{A@0+A2BoQ7vAUg<(u!~WUFA2>4-VH zKHlBy@B`Bvd-G$`QmI{`9O-Rvci1C;?+hm@LG92zpV>B-Liz!p-LV@@;d=~I@AbUg zlnm*bv+dEG3}{GBu6I1?w0PCqb%e9&^2L8=6HVgoBpqFGJigXxZStUQlZ_hqe#3S* z?7&fSq&(Lj>uswZ3Yw*X+-OqaL~cgS?*t8g-%)|byTTIR>})T8Eje|+%IIVidgC3C zs8GEnR0Y9O?+_y9bCNXZB-5a$wWX#VX}bCoctpA+*`1_&f-KTdHM>GmiL}Hm62;$; z{h1aTR_UsYfh^YOn&}!~1fwK%LmnZWg`;%s4>Iu+8TAGk84!dahe^WU?|ix+!RP?z zE`q5;Nio%jQ9y^bj}wSfv)0G2kuUy=%db!=&b&mnIQ0?}#o3oQ{mWaFiisp8nIi5~ zy2Y+@lrDvdI94mguBJkV{Kg_OKEh+t9Z^lKs+35kRzE`@LS1&2DPW48oSBFxzWE*r z?e;`GMGGT#Bl#MitQBXbW?$jcE}|!77>Ab5hR2|=r3i^h)W@UUV)%k=G*q!p_it;f zi%*OXRlo5le9sug+VsKdzA-ahnf{>Dkgtm9#b6XyjLO-{rEBF|6{EOpphnPIl>aR% zx4EZ?RWTp_Ze!s<`mBmOSR^g(J_QrFhoz@DDljUrEO1{SDPRgb5I7cIX+ghffwZ8n Q9;5_v0+RxkP+kxJ0o97DTmS$7 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/ApiResponse.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/ApiResponse.class deleted file mode 100644 index 5a17f40b3b3190462914368be00629c352dd9c8b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3611 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 M#_2kz0ZtG80e)!lZvX%Q diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Category.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Category.class deleted file mode 100644 index 630089b53ed2fe8e5c9966dd698684875ef7b912..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3046 zcmb7FTTk3Z6#mA0GiCwrZU}^gBu#)U3&cRuD@mJ#+?MW=6jD+`FENV)hFzQ5UQ}MH zJVojssFc@ARr`>KR%)PXq>3g|ANr%3o@1NE&|HXQ&zv(e=R0S<b7tnBfB*Osz$g|3 zPT9_)X0IBSzG`~5U3Ile)if+mtJw<%Y2&(QEZWX`3PM0#*4K2cs#}ZNjrnDx;-wH1 zkW9i+OFMHV+gcnG=qWMwvf<4;x@ozZZdtacd!|kDWW8F|=c@)SODq~*kr1-^{=FD! zB#>-^1Vte3Et#%BzYn^PfC)Kn={19ZBe2t+WBS3R$m^s(ePEa0a6uZaXk*V=f#f;U zGQAH4dh-z^f0GeCH0+-d&`K4%rrpzB&v3q}RkdZkvf|oSgaB=V^qUTC!|~RcgEhTc zr%+@0{+Tompi@B{hXiiz!(*|uVtZB7(w5h1nrV?wORs8|jeB~%>WvfGo>Q-Qwo}%f z6~h_h09$wGDupAvavN+Vg`*rwyFx4+XX!9YCj=DQ-KuR-k&Hx@Q6juzudWM}_Yw7* z<niRI3d#1kmWabNJMUQt_AT&Te&3Z6$>K}0T8u0SDt~PM8%U!Mr<l6|0ok(yb_F_i zk`N4Cs+-jX!%5+^0*$ku-adSJbK$%UVmqm?(ov<uG8CmaFsF!Kf;g7O8JuO%xA#~! z_VOyrciHkifz;q}K2Q|N2LhsB#<?_xkl|T69P*OxE{)Tr;a71njSINQReXt}HomUw zRXV)w(Wtk5-w`<aq6#ird{$kv;-+ww@O8(y!Z>tiy#OY%_Xcnp*HKh(4HE*H?Nd@V zJbgj;bgCGswics%P;jG?I`6Asm990hLPHB9LZr6t=M||_QY3ZjzCxd*HU(X)BFW99 z(l7J0%)R{df!w)ue^eS4m%6ix98;yPc&8YS`EuNs6Hk9gN@{XKRnx)T^=A)a{+K+` zthNMecx<9iZS9hV2`&QU%OMag624*EL{3#{X=YSbvp#^h{_OkMM3b7M(E}t4lG{m6 zusqei9Tr(Dyrr(VoKoefoVpXDOxvVkMQwiibMhe5L5Cc4UD@7};ZO+&c^g_aJeO`5 zV<^1o1e&)?_w<S<aCoY2d1lQhT5G0j(zSna=P96DBdD6Tl4%)}_1e7Q+~TK!FK)Y{ zS7&s`WIY@_5n{~*NH=wdYLYI!U64I{9lm&3%d|&Vb6H;vv6X4N?o^DcCVM}$+ff7` zBXpSKR3-F0@C!wZ%#p@@iux?S9ec*o$Up`^D4){`jb@2RBnrQw`4<u-d_gS(0Eh4; zwdr61^(~}D;WJPP?EgTyy+B7^10?u%r)uYj$^^)D-&WW}S7G2WnhS%Ek^7Z~qOo=O zkjI0iVQgd+lE4ygUBXvn*CEjs4$|M@(tJZ~#a)_g;YlXTZ|U&S^FlI*GEV3T>btw+ z-#&yaw$NSbPK4sIa$#U_6K@59>9i~ksaf&q<102v^kr~_py&||0o#4|KvO}8q}aqs zHU=&0X(Z$%E!~w6@fz+j=xrn+YV0TB^~UrdP~g1VbJR2O$`eSl{?<5+0YbpD(%@NX z@T`P9Z`VbhY~GafCiJ5aQgmiF=UkQ{=OpHs^9>9Jf$eZkZ%KoLv&20Un12Fob`!(d z(G9%AFdKM3I~K?}>aypl*}zAPwNus{zTgKV3}=?YVYFUGnEe|~8yNoyiQ6&t*b)a6 z9lHC-H|DTTAU>Hw_eJrXj)+K6ND{Tjo)cE6ah5OR3e7P0*QjUiM+yT!VqoAeNDt9B zum!2ieh2CQ9UnhLj$M+L^R-0$QEbO0Ro{^CD>}v4T+tHd{q_zj)UVTMiSkySL#&8N z|GR;k+uA2ZOktWvacd63#iy8=;{(&;;x-){zisu~b{DdXCKpK;s*8+^9v8hX`dplH QaoJz<nTrd)FyvzPKXm_wF#rGn diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Order$Status.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Order$Status.class deleted file mode 100644 index 9e7cf40b02756187f5641364fe2bf68694e3b023..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2115 zcmb7ETXWk)6#iDe$*Su(qRp*=Qfk0<NaUm~&?dBT5(iw=B-n|;gqa}Q+f<1xc_i5b zZ+YW?@WdlfN*Nd!PagSE3}<DNNycHOo{?62E_=>*zH_vH|MUA_0G99-!<^$DYEGNm zM%(lq$MUp>WpdlsT27ObwCy&zo38kV-|=E#43G39qiblEVIOKmyVF|HM~JZeaG4=_ zF+dDqhIzf=w6v#&=X3X)mZcpTjbqQTHN&<Y%5Bp2G0B^b+cJEL5%HcGZO(9Klym8d zI7FvoTZP@dazST^?&yW};)Vb)N*N5=t0mrXiCfqIRzU6=R)-)*+m_MbO$NEJvs2!# zitMt{Zo5ubXyY42y;Lohg*r|xFuU9hyjQ3(w&_1)2xYQWDk5Di=zGNq!@~ZE;MH?I ztoW{J9}>RXL69Tv*ImQ3y>rxi+Lq&Qbu5d#<U{UP`-NP~WQXG<a21nrNVvfe_Me#^ z6}&RQoyiRQmxfiMxa*g=3jM?-`ck%<z#F)wAcD6TCexh8^1wD){J?SPX_~fSrSt!5 zS!7@(f*JIO@a8kw(Fjf8IwnNT*%&6M(GAP7snHkt*{&b)hQFM^dze=+hXv|jka7Dd zL*bILvLiP2-uW2omf?BJmvDPdCH`K*lgE-^?heDae(d-(WZDz%8%@JEsNYhn8=|{{ zi6up1JrE(p5b<_QswNS5&^u8TX-ZP0R7&Zc&?l)#a!fw`j!pGWmSi=oO8MSNo~@0^ zk{V4(Gg3Zu`h8SNh0Eh-l1xWu!g3@PJ)*<(%Jjxhe~2m~%@QLVnCxSmZ*$-C9hc7! zt_m57jHDQZn+mmJBLM|hL{m0pjLAqPFxHnJ%NUoTCNSQYw;0l|^6$s6LqpQP3F$uw zF2;pppJBS(v3;|}tEOkxEnYagvS^lW3~VL4dx<r?PM0jhm~Ps9tJA7;ch{f@465!l z46ACmrjQ59c*Q)l=^l2;AyKkz?gm}vlt!sI9k;<ZO^dHCQq2)+Ph@pkP(YOJk|e$f zdars&l7YAwHl)ZvqzoI>)QlK$3ZshOn;iCNAEob<NCX+L;TlO*lIn=l3amx{gjB1A z{-9M|3#scbQLH`3$CX+*P<;|sOMTU+m0BcF=@IowU$tF%j@(Zah2e8rlQeHhJisk1 z<1SVR<TPfeOp#9`9~ulqa=&2qN7_ii5djXkk1uEybqkoUQ*F2aT@vFm2((K{!ooW@ zH~SK|bMr4SD<BNV%k}*R@kIP|K#JJCjd$pT*a@OSs09(;BvRf*hHwbT69FDT`5C!i zq4h8)aD#mESUmHQ0xw0Ca=+nj4^rPJj4#PkA)AEHP^OOcGlZ~DdI^=F+h5a8Fc9O^ zn>g-K@$c^=RKf?r^C9m4Cp{<;rz@nzNBdwN9^%nHu6W{E^~AK$deg(ShZzrwhcOT1 H9t!^gBIfhd diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Order.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Order.class deleted file mode 100644 index 4f0ee8cafa6bb73a1f79b4b0fe21e243db310fbb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5914 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 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Pet$Status.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Pet$Status.class deleted file mode 100644 index 280b4167bab08ed0ed10f22b766c63fa92a5fbe6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2093 zcmb7ETXWk)6#iDe$*Su(qRp*=($;|OG?A0GK%2CUb1N>Y6Qaam!c34IHB}-@8Lgaw zx4iK`c;XQ#PzDCZlSh6O!&%8>l5rTC8ELiW?74jBJ4gH1-@p9{U<O|>6g_`e^A0T6 zJg@`LbGX)WY|9O_wzp%Ev}Of)BQS#wPk}K!)c4FoQ*%srS6g;F?K%Cm{bwJ|GGx!X zrx0hD)LUL#dv5Z;^1o_3+Me0k=bo#XuIo`|o3>9$Uh(|48BmM_e_<Y240kT#mp6nH zd8cZXjm`Cn&XBIuD^<O+pf58_T%ZmH?e#LR`9!QAd@V2^nofr>r-?n=F`EwUQ)|n$ zrE2X7?TG&!+udb|8>{*feYofBFvxS%4A%}GF~kbRIvM8c6@7ErV7R??A;jvbz8Qf} zxd_y)FvOk}G=0-{`6<G=R`Y^d$8pF?-nD{yg#JpQ*dHf@%NR~W!ZpGjys$Y#a;}HE zQ0TX>_Nzo`SI;pO`k{05)nYw^w{Sy20yi0k^A?TbwrjSnZO^BNxHO%7`9Dvl8CaEI zhD{;7Q-$J1=*-|MhD6216o#m`Eyr`IpJ&-wZSGmEU^au>m{c%<De7LBZ}mCD<8z8C zUZ|n>PDfaDOwMP|;q{bC{H=thj2Xe&9fm=D-wSBGv}aae?wEl|y_VXCF}fL;SaKvb zLlHuZ5oi0P+9C3`yGN=bjYx`=%PHL>`eYSJPRYmLu#xW3jI730soXs(vxNa!Qj<Ap zOe)8YzfDTH`1;_9B$Mk{Tu$VYd*n>7OmF)5yQCu0%rL@%;Rxg8ffew;^R3C=<sd_m zkrhL5U7<!SWuV}aXvvC<0U5ar1|s>Xj6oS{27{4YW4QVMS5^vZG#=5tM;p2Xr}hJe z(e;iS*lnwBbDMtQ%E<*qGjy$YR&@{0IgKyUb;>ZH+pbmXw40W{5nTeR?zK#(Zu+*6 zd&;z7@49s7`s9+Sx~}Di9kwWqVt5_DWv$qbH9t-DCa5)u`B70m(X~O6_-5$6%#o!7 z;-UW_M+Zbm|ACqt6T?kmRPkGr!6xmK^c@k2Ama^OA*oJM6KPt3h2$TQ8jaZRw5kg+ zb@3IJ8!z$1Xv9O+M{%_psXjIuiBP2{)Mt@u)p&{04-|#rQ(Ch$Ygs(N4b0*$<_P2{ z#;8n@Pa_)|3M5KDVf=gANTG`W2i(VJw2Ha~%r~hvoPjQhQRxNRpd@i&U78qwg<GY` zpD`{V^v5ejcD;Baem*2c?B2n<<RNx~s2Cbygtv*5_fQ}l0`gFZ2T*=Q=@)2SObFZ{ zn=+<PY^2aiQKizaxZ8yk*~IZVSt@iU;S;P=$D#}|Y>{4q5qA4a+6e|y7WF2LdsO`U zTZmQhLHK-#`~ON0s>JCWY4LCijN=g=Z{ZRb&pa2?LhE&oQI0VVg=2tYkfZVsL^$gD diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Pet.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Pet.class deleted file mode 100644 index e16b319a5abfe1249d3f6da5f77c8a96da207858..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6141 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 diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Tag.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/Tag.class deleted file mode 100644 index 7b2a6a300d7119002c713acd069c79884d48a57e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3011 zcmb7FTT>KQ5dO~WZ5S4q-4#KUXb^B&zyUN@G*R)wk_8PA43dk(GQz;_44Ijw;!EO_ zKOt4VrYe;@_>fdZNX4oY(W*S;N5yo{49h@NNY%_a-RJV1?yvjw`TL*W{{S$8C4ny6 zS=Q`z!_wDH&$cVBR<4+a<!M!W$slc3Urs>?sH^&hu2pnvS-ZKoYLvYcVgiy$5Nc_6 zu4G%wqXOL}hFvwhMMpO+SJN%a_H@s*NuH`zD*9r@pk;|=!z&U(Hs7}&BaH--4UnJ+ z#Jv^M-2r{Qtppmk^r}Ia5yTnKF@3vIbl{XfePqv(;es@p(ZYvj1(Fv`%k(}F=*dTr zeE%YPxUp|eKr5B)s&-FzJ;V9BTG3YZ@|tT~5#O~5(r-EBf#cn0_c!!PjZBT@`{vR( zf_4RQ921y5#EHeyn(b9gOIzKjYNkbJT6#shYTVOn6>p4q_MBSTvz<xZSu>nbHn4eb zm{K^gC#-=hDZIg^v?|2HDVC12)Fq&hck8xAsWBW?Mu_mTy?$R{{18_6`FU|*2v5H* zeQb|2i0Di6x!p^F%L3o#4+9>F-78{Qj4TOKee_Ufr_qZuOjf^u?AZaG0&Tmj2SZnC zW@X86QaGzX<8Y_wj^)jzi!zAWq`pp<k?zD`l+Iu$+3^an(KOECJmbB!Z)e?u*X?|V zcfL!O44mT2LzcWRAo^rnNMjHgo~4T*ujuZ|7?lM-V~c5A!e!3bD`d6tRZXwZ9c_(T zy>s>*fj3^3twoFPrE8Ym6s{A#?ikk?N8rp$U?RTPfzudAQNayN2xN9{#H8WrOS-31 zib&Os7*#sKjY{gGuYy&oUSf@gmWG8$Z9m8>QoE!`>h=SLK1po|x@JX^8%d>K=4qLG z`PoCcefz<PG$gKcW)(T6N*(cbF%<LVxGyK3eV>%n<b<lGgSqkN4`cqAJkh8&1#5V0 zqE~J1kcJ2@0_4jf5G@k^#+Heks?yTTh^%IP05SgjyVyj7nxoMpBny&TNlvgl-MV8I z?N->Oj<}ps<>{QdYobhU(y*d7KKm(ol<A-g4Ju8xw_-Syy+Pat*A365YGMqARgFSU zS$lTP6F5FyvplnE6s--@HL0*)-Yxc29D;;tDVdfrRjV!<&MX&yuFrN^ugvL=$$B{0 z6=KZ=NVjx{(vfQ09?0(f2fln+(~L(Icv4>vv6UIS=9G==CZB$6??DlK4AT{kQ-aVd zz;6(du|OL4DeANQMC=<&BLf-yZhS^7G@2z2ktqC%#-B-$@Hw>%035>?)TV<4)Hjh9 zh0j1Gu>S((_5+<b07!5Vr$lFqCJB&JzNN5*jza$vG!_P)AomLmMQv;IAx{NML)&Om zNCHdjx`Z!jUz<cO9Hqa_rTMzpjJq`1#FI>x-_pIKSA=9XWsJ}h)OU8qzj*{%Y@@T( znFz&`lZF0)ExZ{Rrqi-Gq(;T3j|*#(=*!>)LD5?o0=D|c0}TZsl41*|c{6BPcRe7d zY3ZJThy%FGpr;;$=w?3%2XCflfDC7EFHq0KD^DTK`>t^q1B8HQrOvZb=UEAP-pPwR z?fJi)H=qxNkfL*YIp?$tIVUm4oNr<vFl?7|dPeFToG0#?!2DBa^II6oj%?y>hS|h> z+0j7GQJ1|)%_cr%tlhL`^98>Zp*izp4x{xj!u(%o*u>b6NZgL8Cs){@=+NEA{$@6- z3-PHGIxmYCbVWppOp>TQ`GT-QjiY=O*Jy^hzd=27KV0bl0sZ}dLVASW{%uH;eC`1K zzu}`t$nlY+<$Ns>e;nIAlCp15_!*sIY|dy2i++0tW$N$KXo=!Bxqw&^Q~q}ow|2CT zi<rg?jbe5I!o??;Ti^@R<l;768^3M#+g2B{iv|}-7pjYli*6S^E_z*@adFjO^QntV JzA)%w{$D2HcOU=& diff --git a/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/User.class b/samples/client/petstore/kotlin-jackson/build/classes/kotlin/main/org/openapitools/client/models/User.class deleted file mode 100644 index de1773c74acdb8154608a8aef5a42d940df41e0d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6313 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 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/build-history.bin b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/build-history.bin deleted file mode 100644 index 2fefee2a909c5937611ec59451723ae99ccbb216..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31 ccmZ4UmVvcgk^ur385kG~<Zd!lK=}*|09OA55C8xG diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab deleted file mode 100644 index 370fbecceee5b601915d627182b12434cac64a06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH@KTCp96vm(am}M#oZZ3jDQ&ejWO>KPuzlNJSxv5{k#nCU&(jYEEjnNW?4lflE zG)Uwk!5jTLFZP0yyKoNN`<#28b1&!qdY8kjEDF&UM{bdnHl(JdSVWcO9<vm!I3n-h z|FB$-{Z)Ez?~knE^cSjj`T7USo6=DTkEX#lbhf0{94gyV{tJo;sqqPSrpHrg??{;s zI7>={cbj)tI(&m0)9x$O_oVa-oTsFVXPBAZ25_}6^(RnEONlX@WTe^?gr?!c;@_)g ech3np0Vm)DoPZN>0#3jQH~}Z%1f0M+5cmT(yi<q( diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.keystream deleted file mode 100644 index 684a2e6b68c9080ec9339d38f8a2249442fbde99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH}&q~BV490z-b)KQFd+;DDuHrdPv)ysq$(YHC>r?p$K@b!~5idTIY3+)xS1$p3 zYD+u(@+DuAM|YT!vzsBGVF}DZ{EVX8W2zXM1|;ay5%D}H@R;40Ay(+d3FCwo?9q|l zLJETlBQglF%h04+zx8#%C@!I7eT{BTQinJ=0YA@rYG&^m2(f?fh^y6MLR5eKAL5iD z3opDZ^ppv5fI3_tZ_ee?0DnUzYBUE>De#pY;I=Z15NrKqw}(=spu{%@H13Eett~#8 z-wiOY8BxJ^epquKbE240Q}ARjoP9i9V3u8!8I>A>q1K|6ufX^AG#@b&XJx-Oz}{K5 zZHk|ceKvsn+p)#5PEzpgSZ{T=>(e2{X=o?vt${rBE5Hy0E8?Y6zZjritDdc;V8IN_ zqJ$)7c7r0NI{0ppRox%#>8|Z&*lp5^|7s6^wH1uc1!L~}&Ygicdef@>s}M8+ZwA2E deEZD++gM|zO~}f~?Nc!3vTHXR|JNTY@Bx`AznuU8 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.keystream.len deleted file mode 100644 index b92ca80caa0659b9a68734e5c7672abddf481663..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00F*r007bey#N3J diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.len deleted file mode 100644 index 8fe89d82d540f0f9c8b866f249f77e7623cde7a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00Bk?001fgA^-pY diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab.values.at deleted file mode 100644 index 4fa36e1334df1f2ec8e7b6dca4eca0953e92cdb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11858 zcmds7%T5$Q6s^SA$+%+cjzw>wqkk|NArLbTVNjN)=)Tia(o<DdRTJ>fT=)o}1W^e= zjR^_y6HMH>Fy85xlScO3T1+yJN==<U_jT^Ah^+umz|5~htV}Y$tjzox7%Qv;=~lQM z_ql$;vmAy_8J@yfz&=KgEiQ@1V0Iwk#t0XWm5kPmN)4Y(xD)tkQ<-h6c?>oh7%o$Y z1{&m0<tBzm;ajf7LJATL$DJd~CpyEmaVGGOBMr{t*AQ(hmkGJ>jK|v+ciqZGmf#|8 zEiNv9j3!*jNSU<W)+v=WI|(^5+&YuTF30_bU<A*^3owhtE(bRfOn+&kyRiCbxrSdq zj`}$)mdKw@RFY?~AFx+962^6$;IRQ2+Tf`_Bpd|nHANDpzU&VRryXJ}U=*~`8n~_& zB?~8{jA-Wg;pP}5W(zH3YW=aO^A3AUkCJJ&hQ_8o(FNeCRsFilK9eG)RYt9Y)k<2} z*waw@`Y~lV!#u`9wTfD&l##5;kuqfo&a;vkTHb%f&=O%Fo=OT2(DVv*vt*2_YA({; zpqAPJGlS-Wvgcs7MCX~&igk?hr<VB=Fw((o9iHc4T_4<7CH~NI)S;>0QMQyM9Fp?; zs{4Sa4~LGs+#|8_V~(AX;-Z!9tNgedgZ`KCNoSQ7qOhkXn#-n|A<b5m|2<->g{aMz z56$AU4tql?L=-KiX_vBTXV4lz%%0!VZpQH)c23HsT4@I@tGk6WB3|fB`>-l&etLx| zOkl+G%=PglijiJVNz`u+OnA?qV%igpgWQaSN8_=hfbElVr%EOCxPw%gJ%1eJ@D}r- zj`?$&y`*7KU9B?_7q=qn%;Ez9mvihp4FclwPRZ4zUy8H;6lJuAu-5@AW7bzcNNNe^ zOV3b+rICjB{Yf+z0sBUorMmyWw2OD)EVgVKVc<jf{t&Qtq}ZtnGSq4{G5)y9?+$HO znJIA|Kn5um%~e;Oc${u3w+2=?1UHazb?d>0NN_@}BUnX(fx(N*Wej*vF_IPM_ihCB E7d8J4W&i*H diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab_i deleted file mode 100644 index dd1f4b65dd53913193b6ec9d909a4f4977a35db1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI%u`7ge9LMnog-mpm#Udt)46<0vN)p{An@u4ji@L>VFv!9r${<NbF`QV8Hj=@j zWO9S}mVZHy-?`T<w>_Wt_q9BAmvv@MnGXR11PBlyK!5-N0t5&UAV7dX%?WHqaba+B zD)sQY2pk+O45Z$v??+%gzWQe?BRmKYAV7cs0RjXFq$qG7QOzs+Hz~GhB0zuu0RjXF z)RRDKLzYdywT;))&2A+?fB*pk^&+qlhn`Iq7wYBSRPOwUkdvOip;UTw5FkK+009C7 z2oNAZfIz+i-SNBoSh=*E@2WKd`3k(nTw!AAGv8Hf1PBlyK!5-N0t5&UAV7csf&2va zV(RqasX4zzOMfYF5#vWQ2VZ~LV4DB|0t5&U_+5eRc-;Hq*3R!f)zgv{i2vy?S9j-< z?Gr|T0D*rla1i%Z*NTm)pV=Poi|XD>IrUC`wJGoz+3T0LtF>9Lng9U;1PBlyP<sOB zk=!wSHJ@tvafG#uA68QB(?x&)0Rm|YTu0u?bMI@~mFfr($W!1Y#!6j7-Fa@>BJke@ Fz5zm>FuVW& diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/inputs/source-to-output.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab deleted file mode 100644 index 9a71d23556cac4de8c63cc41ad133aea73b83225..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIuKTASU7{~F)(k(1-2$G;7XzB&D1Pv}$L!-1tw1k6eLqm&;bKnvUO@cHvL@%Kr zq9LTQrOe9I?2mr^9qfWrYs>S%y`OXMxm-Bk^4fXQG_&Cr&D3zQ6EoY_5>0qB`i-_M zT+xKRrQe6q_tE}eUg`hy`d~(8<yIf^vf6_q+4zB)T$Gdg`Q|q)%i<Rl<k=^j$cHZ6 z$&{QJGh6w9b(!x#Q69J9Qr@;8K5jNGGcxxMd$Qbw3wi$r&9E;Q;$|DKkdvhsIFL6D zsK~UumfO$Jlc#l<OPKYabPl;Hcje*Zu%C|L;|08c7w`gJzzcW*FW?2dfEVxrUf^E} F3;-}Ic$okI diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream deleted file mode 100644 index 723285bfc4100520516f229f8ff471d36fcb5703..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH{O-lnY5QhCNRuL6~UwF`qvU>0!m2Uk3A^Ua>Y%_6^73;4zU0W)JcBhE9>}}zF zCX*+_42Ww*9!`53iJG8HW8tDo|3SSV-g|qvHB&}nq}0LI)N25z(AlPtbraSha%*DC zP$^n;ecbE{sDh?mJ4^0Th>j3Exq$J^LkXF(H3lJE3FA+0LOj(mb)}mNAv8i|8D<Vi zksoJ|%*0Zp1b=`#<WAUFdYp8jU(dBPcq=a88*4fp4`@*9h*122RVCuk8C(l%EHr%@ z__<x_z1OhSq)E?RxZd^LHEeaRbo@qmZxLcaZer^lp=ZQ5s?LRGQ>#`t_6vNniI`G_ zv}V!}Eyw1lCt9TWsEKDAH_W2skSp+MPq8kf%BW)-_It8v{T=s5gvG|X9`qEOFUh_9 XWdqqjHjoWu1KB_}kPT!5|7YMErB5)* diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len deleted file mode 100644 index 55d7e48d140bf665ee6f630c52b8eb4041d3a716..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00GvC005%^mjD0& diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len deleted file mode 100644 index fa432244558c364281f5897ea3a81444683a68a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00G7f0043TY5)KL diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at deleted file mode 100644 index 173b53e8670138e83cdc4aae3e46b49d98a620ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5659 zcmeHLOHRWu5Vh2c^a9{BpaOygYSr>tkDMVjO+04oAi=5l3j_iLD_Fpln3NXrS+PLi zD!asTChyIA{>*5#f{-D%`)G)>_A+t1ha7B(=;8{5;Trf&C@LI8V#x7W9qElAGxQL7 z4>Mr4(G1Dy9#hUxmJqGHZ4r-x2ZKR(8C;IK>(LFUVuPCG5xkwt(IJBb)&WXi$Xruc z`LFgEgAAh{Q7o*R+W|8Q5;d^VC0I8Z*TnfWSR^Xmzn9=a_b@JaJ3or2>LeA+b(ZlB z^@%!81$AwRH_*50CIQgaZ8L<(m5G&@OrUqhz7ww`PvE7co|BYd^^+)l44zy-k)&bt zN4x0vWzuN$-%h$lqyK*!`GH1HE%lh<?(GX}#uvXuEHH<NK{oE0B6F>-(i3KhnYfms zK|ie%ey`~Gvdm{B_YW;~pPupixLaX}9dg??7yl>CVh!VvGGTGoQn%@8F+jFZ*aKvt zaH%d5U{F$q(oK-U@IxJPuFled-jOpnC*GHor_o55q`b@0jY<{tkvdGrA<`a`JU5Vk WsRcRl^E%YWPa0j*3FNw<63nkn{G^@$ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i deleted file mode 100644 index a17670a8ff12ba23078adc25157efdd57ee3f00c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI)Pbh<N9LMp8Nt`$c2`SQ|<X=(_hE^*nN5_>vIf+t)LJq@)16nO{KvR-Z^5>#V z?cm_(X36B}KrOZS%E>|7>gjp*+wZ;0+Ouch@Avb1+S70A=`kt{hrt5@1Q0*~0R$`+ zsLC>omV@SMOPkUR0R+-oU|psQIih`OJtV^+fPm5h1G4_`x|_U8htP2NMmcV=r|o0i zqB|vbm%lYvx7_4K00DgjTymZ}>O36MCoxG8K)`MRkDPa+ZTudv`#8`a0R;3Bc$26% z<>MiJ5|b1G1Q0*~0R#~E6*!Tn>?@xi4+Id%9D%SznVWVmr+cCY88CkNSeEW{G9Lm~ z2)s&@$<>t$D|*qx0s;Adzt<D_u%HtyOb}?7<F#>mR%${iN+5s$0thG|upl#zxWaV` zjLL`zAb>zh0{ybC?O3ZhPw7MKjKDtvyRyC8=NbIxZ8j$<P$=Ka@y~be36i82yCHx8 z0tg_000Id7708qIWPW_3<nLBqAz-dRP|D2(wtCF1N;L!!KmY**5I_I{1k@6U$hh-M zcMWPy&9n$0fB*srAb<b@2q1s}0+}ihlVFR1ov}>KM=omx{L(J8IpwsrE8SET__+|h z_+`Sa>ioLR{c|IUy_v6P-Exx`0Xqe*rFnhrLcX0dn9<uS*QMQ7#`evqMGXWHK)_6a idnuL^933{ZCbbYi009IN3zW+Gu)s50lz30I_xJ`f%|!74 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab deleted file mode 100644 index 9589163320257bc1d47408228b45b4e867b56db1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmbR3vzw0r2pB;G3<y9N9YCr9i2nltNCa68h>gxS1t|goWO0ZHe)1gDeEh0LWk*9` nGz3ONU^E0qLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!n$PEDi_PYwp diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.keystream deleted file mode 100644 index c0e36ab9e46a26422cb0b690807dfcf4585bf523..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIu(FwpH3;@w?l&(-ZiAXE~F%skcg>F%}`@O$+dOYG&N12xHeM#-6BgICGvNCqf f9V*wf`x^%#fB*srAb<b@2q1s}0tg_0z~2O3?~@Zt diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.keystream.len deleted file mode 100644 index 1c209ae2a7dc1bbbb98f55f92e253f91b6f5ef9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz00Tn+0673M diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.len deleted file mode 100644 index 2a17e6e5bd9e7704741c2a3ae485eb2d2e302b87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0D}$y0FVHQ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab.values.at deleted file mode 100644 index 6d1a52af89c80c3b024e27d324c4b5b12227966f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 529 zcmaJ-+e*Vg5Iql~4=O7DK>UEvZxFQ<p&;Jyb=ZtHvTed<gVlfaUpzCUASG=EmYvMG z%}y{=sWcUj8k$rU(<T)Un!38ny2>-@7ISG|CHDH1n<O9ldjx)V9O4>*rD%~4wtuic zC7?&f0u2&s{6N^%>{bTfGv@RdHwGj@{d~qZebk62TcZ-gkh2R+-EE0mcN5GhP|;O3 zD3iFvlF_2aX*o)~P4GTYOA;)qIC3NSLR7>Z(}Z!+D-v2(q+4(S-<85^l=$*0|C#hI mXzK+USDw?J<sO}{KAQY|r^)9)vj=+PesMhI*-nAAk^TUwfn{6( diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab_i deleted file mode 100644 index 28d0f1a654db9847fbf5e5eaf1f509e47abf970f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIuQ4s(T6h*;nRFgp-*(gQ`UvKs_IGdIp5g<T-009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009Ce1=hP7bDxrPrU(!q bK!5-N0t5&UAV7cs0RjXF5FkK+z-NIArmzB} diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/constants.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab deleted file mode 100644 index 9589163320257bc1d47408228b45b4e867b56db1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmbR3vzw0r2pB;G3<y9N9YCr9i2nltNCa68h>gxS1t|goWO0ZHe)1gDeEh0LWk*9` nGz3ONU^E0qLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!n$PEDi_PYwp diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.keystream deleted file mode 100644 index c0e36ab9e46a26422cb0b690807dfcf4585bf523..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIu(FwpH3;@w?l&(-ZiAXE~F%skcg>F%}`@O$+dOYG&N12xHeM#-6BgICGvNCqf f9V*wf`x^%#fB*srAb<b@2q1s}0tg_0z~2O3?~@Zt diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.keystream.len deleted file mode 100644 index 1c209ae2a7dc1bbbb98f55f92e253f91b6f5ef9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz00Tn+0673M diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.len deleted file mode 100644 index 2a17e6e5bd9e7704741c2a3ae485eb2d2e302b87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0D}$y0FVHQ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab.values.at deleted file mode 100644 index 74a070ef89ad30d93bad186294bed88cd83f8b8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 670 zcmb_aze~eF6#m4?LD0=H;G$E&jyFgZN<>9z!NtXE^K7Fb7cUn<-CP~}ANUveXNkL; zpx>QBtv1rZ9G82Sd++;kFEJ9)so1D117p*uV{CLRw#q6eg-dibI@INf&THv8WA#v8 zmcVC`Gl7MmLJ5O{t6+ywiW_X;fYBvJa2zFCh|z7xRm{DB#x-Y*obLidMm<(qWMQYU z*^qUFKC1--W~;~c>H698c#Yb|LE9DT!0Nsf*??@QNQkSsW~?(DIrYax$@#^fIqp37 zIdL@4yp}q!)B*X^&jf#$7(P2ALzAN^t-+BYmiPKUirT@?-XE%e_CP&sy)O3`-tT#1 go#1QY=zA|`^=I16ygi)tSN!Hw``fEeZ!34VA8|&E;Q#;t diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab_i deleted file mode 100644 index 28d0f1a654db9847fbf5e5eaf1f509e47abf970f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIuQ4s(T6h*;nRFgp-*(gQ`UvKs_IGdIp5g<T-009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009Ce1=hP7bDxrPrU(!q bK!5-N0t5&UAV7cs0RjXF5FkK+z-NIArmzB} diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/inline-functions.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab deleted file mode 100644 index 3927e9fc2c2f68f79172771d97ecdd2ac9fb8773..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIvzbnLX9LMqZaY$EEHU@P{S)|)!V^J;!BNl_jl|^O}1EcW<U9n1rOUXZQgLG0R zi(lu*ap&jx`Skk6)lJI&e%JT=_<p~iPv5>hzsdMcgK64>Q+XPHE;d7Ev${kRJgMBH zB@2%71ZxAoH<i!J>wmeY_qS?8v+R=-Uoa=vKVeH2Kj29A$cSFP@D5#a{|&}vi%iPl zS18Km5=5)aGA}SD>t#yzKf|G%d4h1Y+1ev?%j^Rrq{&s;c@J4RT7;&s*-`<9<nA4; z$igjTWK2eC%%=0uE7LbHFH6_3En_k-6IaktYnHl%5qX@0McF1d<m3e$$n?1a$dHWI tnGK#nTqaLpO6E>}{)4{M#|wA?FW?2dfEVxrUcd`@0WaVMyuiN-d;^2?o38)> diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream deleted file mode 100644 index 3e846733e62108a00ec1617239cf84d000f4a455..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH|O-sW-5QhCF9&|-iuvSGx5iHSzl%h0#oY!QUE~LBb>_n=+-ffy{o3eH+cuOFs zyzflrnVH>9gIUX1(9$Y0CU>olwYf?pDWkizz4STB6=-UCxobTDb*#DyX_OwIbc97h z1%eN(qS7p0hM;@WTBS306mrjHSTOATYKX}o_)Nzv)k0wLtL4c7`nYY5Xd&!*$gzy4 z^Xh5IWP;vx>1kb~NMRt0oO=FM&oVC{GWs2m07W~<d-->!-MZlaM%CWPjI7kYh-iJQ zn9i9vK4He_gR>qRJbqX>WP0KvNx->Nru<G1435gpka=*xY8?BJDulA9T+0;WEuulL zB?j~jE-ly0YWy(!g60-<M(~my;QOGsfgCbP;P@S1_KFzjUMFzI%wJ&|CtxQV!>zk! z6W`Oy&0DelYu=jeCogyW`tVkOBfrZ7mHpAw0~(r?+u7M9+>Qyfo1R9&gReI4zDy-^ z^$EBi>f^|yP+l}@mS}f{H1e~R8T<$y(N)NMOaTv81S>@%CP{_cTA}qf+}>&lGuWfd eg7;}vz~q+MXr6{ZL!cqh5NHTA1R4VWN#G0A+xd?G diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len deleted file mode 100644 index 167eee53012f56c4480c8c5d9c0ead1d76efc0ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00H*N005}~n*aa+ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len deleted file mode 100644 index b67c22714fc81ab1e8e714908a8527742ca907c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00G7g006oGvH$=8 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at deleted file mode 100644 index 7af9d581310d2bbff463ff0aa13722a403b8cd87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7371 zcmeHM&2G~`5MIeIk{4+A8KSgRIaG-fe$LbN)Y-<~U1rw^c&h#)5Qw4{ROq3+663^; zC^>N`bRyqu%U*x;eKWH&vs&#U<Vd|S8c%s|$5U^F6m3lC(k{g59)#ym);LL?puiJ# zte-`GLr;-jVGcw#nW=YrM7|)XDoB>^UU-_t00yHT61W2OFrb_Gnha{smk{hmfes0H zVI83gCBJJ*%m38@Q{=~}XFiqIZ5)D`MP4<M(G^(NKG&X#yTy|C<?{P}2&FZ1B%8A& z12Yp6^$1fxSjK#zJ`3R4x&wlks5Yr)wHW$fE}&4-&(x^^(&vuSgd;9oMJDP~bs~l9 zCf_Zn776-WroIZGdNr5y_c^tIY4(%I8D(AU5TDvR1O7=7vl<Y~&Gl!dZbgRllY0fj z7-QhrMh@=IqW@GXuX<Uh(PL|8I*lHG%lQ`?-DK*A#O%H7skgAi0unY=*;*O%Nqv+j z%r=pyMv4yo-7x6kCQE;W`I>Nlm8na4jz7kiHO4gX?!Xr8|Dvtf!!-3dTk$<p*Alf@ zl=9oJd2k%tj{QrfF65aqL9$TVw@9qU2lZZn1(nZ{r{6rJ`mLpUr_SX-A8<KQczVN> u%NVk?ln;qdPo#oAR!4F?gpWp;=MM4%9htTM{1lp<RK|%}3%ThH8S^i8(m_lB diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i deleted file mode 100644 index 73211a26fa6b9a6059b875d4dea673d4d6ae31b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI)Pe>GD7{~FE5Uh(LB1;%{Q9P=rEkcV5yeSH5UF?vul!bK?WkF;Qdx-K6h#~$# zN|p*Tx<nw<X0akg#|WZDN{S%1L(##opTr(DnVolMmiOyr7-rtz^E{t%cXk%hsdWxG z27aC?v$g+0+CVgs2q2IZC~}<pud4oJciAF<00IagfB*srAb<b@2q1ufy#g2XJwea; z)erUxFgXGUAb<b@2n0o7WT%n#Umt_g4}Bnj!0rMk^&GLD2#@c6#=j#8ZRQWh%KvvB z#}PmP0R#|mBe0<RQMz*cjhnTsK>z`N1fHnu_Nj+2{i#k>1oA5o(S7Ri&*mTbtx7cn z5U@d@Uhglbqp2PnX5DMXF*)>>@I0`W5y$KinAYo|VWoPrP$$l)@zI%heWCVG--Ru( zp!PrYzrSO8iZ;DYGeh4-P1hkG0TTjs`u%M>w%KhWn@sltCAuzKp^ahp39R%&phefA zqkW*%i>zESzG(5*p_?yq$zUx42q1s}0znr@=)QY4I$`90+ys4goBKPe>%M)xYRYDV zAkH4rb%_q&o(*De^n?Hc2q1s}0tg_000IagfPifR(;E25a@|GS=JtEuu)ZHz&kXft z`-p3Q@paSF>^|FI3#8QE+U2{UV0TG(2q1s}0$vNG75M1;WZ3Imw|OJ_{7_L7x$1Vk z>2<$VV5%>&YP!yT^ULHFYbidr-}5;S0R+qoyj6)aok{*~(LA*$72YZ3#)-KuPr?X6 z009ILKmY**JQP?~R%|VK(8EZgauDd&^Y^XPwaFYJSc-tP0%MxI`O3XUYXJ-mKA`ud o=U*=^8Hy(s0R#}RP9Uy{my*X<{2qKz@9%>}pEvyOBj5G^0@Pb#rT_o{ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab deleted file mode 100644 index 9d08a3624d7371fad9176044c5e824a3f553dd31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmbR3vzw0r2$(?x3<y9NGk{bB5dQ}PkO;CGMj#)AVE`n@3gsY+!{qVN=YZzR0~MSG z(h)%V1k^r!dPe0&Ltr!nMnhmU1V%$(Gz3ONU^E0qLtr!nMnhmU1V%$(Gz5qb0RS9G B614yT diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.keystream deleted file mode 100644 index 79ca656ddad761cb07271da9792351f272af7fa7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIuF$%*l429vGq*w47=#(Lox8A@pN)Q-HSPJy`b?KNTL&vA>A^zoiXg`t~Nih!9 z=4ml&TuZP@j`{MgjY%T0?7evOv&PwJM7(Tcmip~H$Ma_RBDWFH`VJERwG$2k5P$## VAOHafKmY;|fB*y_0D->>d;kTPI?ez9 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len deleted file mode 100644 index 9a568e9309b6c9894e7c66f76936239e410ea0c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0D~z20Gt4o diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.len deleted file mode 100644 index a9f80ae0249093f1db8b14f71053acce35747e3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0D~C-0H6Sw diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab.values.at deleted file mode 100644 index 33c7d6ca799638d1815cc94c15997eb434b7d667..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58 zcmdOA@JLNeNi9+cN=?o$N>OmjFH#6dEh^3|E=kQR@klJr@J%cTOUx-v4KB$qN=#2> IWMG6K07@GY3IG5A diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab_i deleted file mode 100644 index 94e43615882bac166535bc748a7451df99d21b80..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIup$&jA5CzanIv@!W!vYL}L^23tum*uCswuXbR=soo#Q({Q6e$|qRyv2}cp6lz zBtU=w0RjXF5FkK+009C72oNAZpc2?io~QGw-XZ}41PBlyK%l$8`Yn$6?mldg009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ Hzz+g1{dfpx diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/package-parts.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab deleted file mode 100644 index 25bef240969e4b5e4f87a124dfd74a3c4f5b4270..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIuze@sf7{~F)ehooUL*N#H?nV6pL7M~ytql#9<PiM_wFFIuOG`C0^dCfvk<gGs zWKcSk^h<~cu^|W~q<5dg4xHNBo(Jw;clZ5r$GvxF^Mj@t3r^t-wJ)|JW*fRh6FlkM zqa_QDaDuhP-<!_o;rd^e^!`z8$jTX+X~Bv-`+}^TYeG?Oe?n8vf54<Z5`TxZoNB<1 zjMd>nM&ICDuD-%Vms#osQnFQpLs@--XPJA1c(>W`JuJw2753%0EX)2o80j%f-a<ld zR$yK3l_4(=ZlEC(*AVSBTfTy6IdBO}GE;<{OrFD$tQ6ou7EU43XSQ~t@5|b8yRUxD d#|wA?FW?2dfEVxrUcd`@0WaVMyuiN{_yH(Kg%SV& diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.keystream deleted file mode 100644 index 0e8863faf00b2ccf1c41df2d4857daf142d3d20c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH{O;5r=5QhB){sa$-F=|5niZObTR1St148^lq+o5h;cGuad0e`(qDPl0CLp+%* zx6=2Wk7uT{V=#}51ud*3W0Z?J)+(6_l1BGv@7L>8NzfE|xr-iwI#%wl)g)vPysEWU z_2dA(=&DX6^$3L{EK({Ee2ud6;vYpiE7SGpgl~+?2Cg?Xv|=;1Li=>*OzQxg^~J$( zYN5^aBt@Ena~Dkcy&f4Hm$MS;jA<G`CJ{<<T+5tU7ttWsk^p`HmX=#)VScK<p&xTz z5WHar_+H&RP>>4(7yrTAN`U%0g-d3P3ezM7JKIZc-z&D|rg8IDtT)ZOVq50ruHOLO z3vd)0J(Br`rU#%`lW`}z*o5wcK)d-jf6APSZ&L~-KLL;G9AlF~dHUoc(LsYW_PdoE zoYtPTDr6rsz~hEsrKpvVpu+7oX#LGSY?d&C4Mkpi;j0E_mwCJWW=Ki>?EfniY=vJS U5C{YUfj}S-2m}Iwz`rH%1#KL0fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.keystream.len deleted file mode 100644 index b1c61efb430c2edd7858c26c389d6ead81b91298..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00A}=002k;I{*Lx diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.len deleted file mode 100644 index b797c4d2ee86fd517925c6dfd186e4c359366499..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00G7h005EziU0rr diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab.values.at deleted file mode 100644 index 5ac90143bf1f50fa9817523e2b42678109ec2d51..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18862 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 Z4gdDLUTIk8P?kQ%o1b**3AGqm{69Q^dM^L~ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab_i deleted file mode 100644 index e719f2bcbded3afd9ee105cf8373375506bee257..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI)ODIH99LMn^DQs9s777bx$qosHvLniC!-ghFSc#@2i&@CCL?TI2ER>CuVn`!- z?WAN9BAc=BSd929Hd9PpbKJvxXEWW$`ThUrGtIeorfF1~ic}gNGm=@>vgFkeO(X&c zd<Y!L^WskO3m^y}fB*srAb<b@2q1s}0tg_0KxTwe^>y24NFaa!0tg_000MRk^t?Av z@px``AJj(xf#3r1@;PE}A$vIZnVf+D0tg_0fIfjXxgL2FhY$2sAQ=G!5I_I{>jK$w zomzP)xVN6bNCXf-;0pm+Uy7Wb`Y(=#&F%(qXpH9bK-j$CO!Qj;hrA!M)>E#(J;~sM z8`4|vq$|_l7HRDt3k=EJE?Z9LbWbr=-lx8<yI$RO$VWhjz_Wzr=Umt5$R^Xez=;g? zCtY+~Pheyy1d?QZudHZ`3q{sXGFD}<KXzd2CmD=I009ILK)`f?PPy)uI7hVn$BpT8 z59j`TGWpkz<gsuzFmdiT(v-7%V#>tc=m`M?5I_I{1Q0*~0R#|0009IL_zi(*`Mz?` z*VXh{t46kG_w(02w|PbY0R#|0009Jo36#tILqfWvHQ0G}9rsA#u_nj1UG)R&dSypn zX;f|Cezp-nz&?QmDP3IUHuiUmJ+jXFj}M>h6Edsvvb58mH(hO3S9F5_0tg_000Iao zH7*E!yY3h)%n-<s`{+SW`=}Y+&;<erAfQyCtV^4>>3wfB*srghs$6G4t-+_0XhQ SPbro4y))wK!g|8r9Qg*C%2)UR diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/proto.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab deleted file mode 100644 index 539c1455905e8f168b5784d09602e3235e9b259c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH@s|o@^6o!BAcQF`Di((M=0mN(;j5d=f;!9ZUf>AKpMXP3uut|J|&4TyK@n6;j z({|w;nE7VTnK{gS)5barM&6mc$hnJR02p#93@7t@h9x+|3#V53ZhrG#-H#UguXtca zc6hl)7J`8F7TJ+qavTD-FOg=Le2N$mp#BiC$>m*S9t9RRkzNewlV%(!lSlG!W&Z>) zAqPpIMV3;4LGH=TMP!r)+GI5Yn50df&hEec-mWz@pa#@{8c+jjKn<t?HJ}F6fErK( H|6t$)#;8{g diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream deleted file mode 100644 index 1c3de6c80417b137d9685fc66f0c1066660f9569..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH~&q~8U5XOC>y3Y`64<4kYRXmTIX}TuaU1uj^d@8F5f}kLZc=4H>q_L=HF9YV3 zU6SSZee)-iwK+~m$*hnrFb5*Xb``vtQ78!N8raF|Bv6?mSWIS0;0rX<h<*_ovS@<b zLUf}7JrZyrlc0{3JZme5o=rqfvW=z;Tsc2F16w9JHIX$nI6v&0K*iT#9745yKZ~() zwkO#wd98q0>_}#YoJA+Zw_1o7U6eM=H(Hpx^xYu8C_r|8NsyQt%Z(I-fM=(&1lyHa zl3aOIDPr6gy5N7P#6S2El{uy;!9bDou2IgmS?*(n1u%Ab^`KA5geXwQ{;ZFEj^_;~ z9tXd4g=z_h$g7Zxgg1>**i`c5lF_H3!#?TLu|RTAxho`z!@UCjI^-zxn|$8BHPbsi z;A82UMW9yf)-VVSc26nqGvr#2(J~{8$BKZDpljzE{y~PM=;mV~epQeYzlP(zmN6rO QHp?M$uVUx_`eO$^0otX%od5s; diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len deleted file mode 100644 index b92ca80caa0659b9a68734e5c7672abddf481663..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00F*r007bey#N3J diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.len deleted file mode 100644 index 8fe89d82d540f0f9c8b866f249f77e7623cde7a1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00Bk?001fgA^-pY diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at deleted file mode 100644 index 4611327238bd07e1b3d51da0669532d540815aa2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2331 zcmbtW(QXql5VTZ@NB9F2fe`|v98D3RA|#?~QBf4N%C+!<1m<q<V&T|k?L#d;!5{E1 zd{|XBm!yEh<=pa+heSIw-r2D?2|EB$0QM%38!URS4fc)zopc_wKM-y@7WS=BHDunP zsG!eo8>|vzK?^IrG0G)FYn9A}mqw5L&HiWOmDC?*rl=JZ?Cx59t|XBsgm=ji_@R}L zBWn1&DQG&4mAZ0)%9P#P$S^-Vkj@~gYLimQ_(qNs2S`HOF-4nnez50l6jGNcoX0x% zH3GRWho9)H$mauaBY$#TATOX4wen;7$Y$uN(O&^QAm0ugKi^_6<8{(z;(ztqI`Z}Q z7U<n8%cW*!g(g$d>qGe>tb7pk|MLdhiDaFCvoshuKC{q|#AJ1zgL6+J%irkI;H<fU zLbZlGaCQQPL}*eI3t3EJAJJeeBm<-fHIP@4-B6;bp+7Rdaxj>|clIKh@$!Y*0|k}v z;NnBEj^!EnL!Co#po=Z`H1b4CCr@**^J^PxO#tJU5s%efj^nDj0qnPK;J_Y>jqC)z z)Zje5Fr}>imt_ooYKnkm6djLMzV=UP>$$}%8juZH>ysW_E3!%oCBFd%6uazUTR3P} zLbFKa>L>yB8N1(sO)1lr!LtDPv3*}HMGuko|Dz7}rif==_&VIZ@7bLWFzxsU-6j8K aA9S)Gi!eSr?f*HJJ<qpvVAL%Z{O}7Wl7*B2 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab_i deleted file mode 100644 index 7b5d90e2b3be7504a617071083d9c83deb8aaeb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI)u`7ge9LMnob!4KWEEX|YWRS&TR+7jin@u4ji@L>VFv!9r${<NbF%XN<Mlx8` zWnvIt`4{x~oqOGK+w*yUU(-`pm$hXLnGXR11PBlyK!5-N0t5&UAV7dX)d{rJWm&Or zY&`Ywoe1n3D)y${sqaVNA-;O1F9&%LAV7cs0RjXF5J*wrDxwNYyVohUX(B*?009C7 z2-K3ma~wNSX&$Mio83x)009C7YDJ(aeuq98o0_YYdsDe{FG7wwyZck=(LsO!0RjXF z5FkK+009E|3cSVKaJjUY@2WKd`3kJYTyb>aBi~hP1PBlyK!5-N0t5&UAV7csf&2v4 zW9s<+v5?=QrN0z7i}8cWz0bdFuuXsf0RjXF{I0-SJnnUVW9xUH>S?J8+(p>=^7c%s zeYyw`An@M>4&%W0m8tsF?>znP+<7ji-l?xT1uBufdVaH9o%N~-5FkK+009D3C=man z&^mB2n`-%Ogf))rU#8lpivR%v1kx7RjJ%_#u9vhc)e#_&r$9%%|CZYOJM!GLMc}^+ Fd;#pyFuVW& diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab deleted file mode 100644 index b9ad114a5e961e577ebc41e55426c167cca38762..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmbR3vzw0r2v|V`3<y9ND}Yo35dQ}PkO;CGMj#)AVE`n@3FRP*!{qVN=YZxL0u{sp z=^_yQ@BjZ^ApQ35|Nk?Av<{F4Qlnrr1V%$(Gz3ONU^E0qLtr!nMnhmU1V%$(Gz3ON NU^E0qLx9W>003+N8dd-R diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.keystream deleted file mode 100644 index 718f8d66e4678a6ab09c220c3273852eea8996a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIuF$w}f3<XeoZ(wU5Jc1%y*vU55!y1?9Y%*jrqPJJn#%>SrQ-ypI!rPdSWQ8>q z3A0>j$if;Vdht}l+Yrr}c18A|U^{=|@OPr;T1+diuIZjACmpG88ZvSB7`TL(E^iiD xlsawG`qvkKf9D}wspoV)xdb1-v*!W@0SG_<0uX=z1Rwwb2tWV=5P-lOffpYDN@D;3 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len deleted file mode 100644 index 47c1102697649603a57d748104b04c9ace30fce6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0E4{%0L1{l diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.len deleted file mode 100644 index ec8f944c8acd49bcace4e4c78d4306ebd9e28078..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0D~0(0I&e5 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab.values.at deleted file mode 100644 index 96d372e9e9242d9ea6e6a3c14002e84144ab0daa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 793 zcma))!AiqG5QYQ3NI^YFVFeZMrB&*ov?S_%+5Alx(w%i?BKmYbncybGi;%j<f$y7t z82;;G4O@d}B^+@*dnBIiz~V&_bZzCZvGLWm9V#WZ4X8LLZVW{P8@&>>VqEJJY|<=d z2VF#ed6MZ@AyF46sTTn!==-cNQ=AWbwxZlQ?HH!&oP)?+CjJ!m#7C>1f^Bayr4qGg zxL(Rtmcx4<n2B?h3j7Wplu+Dfo;K!uIK=+ETy4zy)xL_`%)Am3DF~iFBXWOU;;n<| z26~`+J{5GN8mU)XPR%rxTJ7ZOA2#)FBv-|9iv81<MU1U?LjhK3(O89;3c3vrKO5~e AhyVZp diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab_i deleted file mode 100644 index dccfd2076eb0dace0b74f7b5df35ad556ef21147..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIuF$#k~5CzbM;1w)#0uSM#(%ISwDQyB`mDIUGsub2<!5eskK&BNfZ5G~kGYg+T zFBR#MJOTs=5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkL{RDnLy z-nVaeYN#**1PBlyKwu+qkLmYWuA8NS009C72oNBUvA{FB_j6Tde1hr(2oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5(TF3?8* p>Cse~pP@bh0t9vfLu}SpJ?=g%2oNAZfB*pk1PBlyK!Cu3z#op-4dMU* diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/subtypes.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab deleted file mode 100644 index 826a296d7622d7bdfb51d3b580f2ac289576016c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIup$)=77>4011_$_B5+=ZO0TO~jlj??qV3Bp5psEJK2CZZV1d0JV1P1=T7r3OV z3-J9(`}FRb6K}P-O&l}zuQ0Rk#|v^EWBgA4pNO@8!uYe*Z_(cm=R@APf6fmTt}(+S zF7b*Bd|>-A8*}*u6HM`dF`n`HHfyoQc;sA(TRdTbdu(urT&Gb16;J^cPyrQC0ToaI N6;J^cP=UWG&;jO+LN5RS diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.keystream deleted file mode 100644 index 3aeb44950ad90adce547f0fdfd6809374909ec2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH_!Ab)$5Qcph^&mnHD&9-=;6W-IeSnbtTLWn(&diFwz3H+&w&npQx4`#>$;Vt0 z?;KT>P?Hj6aWN+pb?q+h4Z5o7`Yhv>7>&9*OMM8qLHDPiRJI&Md5StQ+yJRm1n<8U zuG8^Tj1YO~#9zvmcpo%T3Hh#58ZahCJV?FDdhYqmOx&w@@Hco?)}4c`YRxImzj;E& zE-1u#=%z$GcD}Jp`V&zPAMDkZX^&cO{{deUL|>twG~S*XaZe-KQf_zzJFh_}x%r1} fOS_O4cC3IEumV=V3RnRvU<Isz6|e$U;8@@f$J8LD diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len deleted file mode 100644 index 55df098132acd195d2993d5b3064fee557d9e07f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00E}E008L#-~a#s diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.len deleted file mode 100644 index cf8a30a1c969e61b953bddf5da4778377335bdd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz0D~U@0RRB` diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab.values.at deleted file mode 100644 index ee4d5b4aac3d655e05c626d4119f0ddd1ca7d7e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 689 zcmeHFyKVwO4BQ^RAT%eDdPDvoCqzVwNa&DAZQYr}WU*IXZv=nOiAQnGDHRo^Ju}v5 z#&2$k(4ZC-)}l@EDO#*h6D32oC8XUq#0`XuYZHYQ-`z~K^%9XGl8J=m>p&gZ6K@rg zX|63R`ZCh|0z5`CcB5ahK<pQs52gF~zs;|n@d{HEPWU{bc+cY1O>f~w?W$KJOup(q k=SRtKb={pN?qv^u-~({$tIS3RTpVkRM#6(&zr3O83>V@BX#fBK diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab_i deleted file mode 100644 index 33f1fc37d8058ea99b64ae51b7355883c8c3a9b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI)FG~Y)7zgmfSxhTpGKxW8f<ZwB1Myv`7!?en3v2!<nnbV|3=<4S#Ui+{Xf!UU z7%k@c+&kF8cDFk|zx=!B`+Yv~I4-FtwZtJnfB*pk1PBlyK%h{8%Si9mzBUUjA)EjK z0t5&UAV7csfm{TBBIRNAek+$SAp{5zAV7cs0Rp)Tyhq~O{9ZTrV1Wb(5FkK+0D*!9 zZX<u{<>b2H8sZ5M7@@#Z%xWDrPDeP>C;|k=EYOSj2j^$cV~#OCCxMU1*=Y9va*7i} zfB*pk1PEjhXvf{1wcb*OM_eU9fIuk(exv2e#X|a8$RR+0009C72oNAZfB*pk1PBZz zkbW@My17~(>at4&2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5Fk)lflh2T_r2e! z?1B|rEd7zh-O=E)VryB4z(fl?M!V(3_RK_=RE_`v0worBjqcN(-R%;upgI8p1WGB; PkJk0(@oXu}XDIy-tPdtW diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/jvm/kotlin/supertypes.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/counters.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/counters.tab deleted file mode 100644 index 8efbaaa2df5..00000000000 --- a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/counters.tab +++ /dev/null @@ -1,2 +0,0 @@ -19 -0 \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab deleted file mode 100644 index 1b617c8bee657b3d7f04b4de48a4ab52d04ec5bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIutqQ_W9ES1N?{5(-OM=x4(3=pv2N4tmlgVV!WDt`en3hbkV9{g}1d|tG_6GDh z=wQh%{10ruvz@cCJ)8EiEJoFx!cqB5yqGj)`eL{{(LF559pP|mt?xzjez^Y28}AR; zaKRoApV5m;C%obTmkDW)oustGT1xWqfm`&`(i;02X@!lfw7@6MG05>RILu2EtQVv) r-f@JpqBOu}N$TRS@3l26U<Isz6|e$UzzSFaD_{kzfEBO;|5o4)#$!|; diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.keystream deleted file mode 100644 index 5a9326fffebbe8c13fbf3b30aad4a1efe59f1c46..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH~&q~8U5XOC>y3bH*4<4kYRXmTIX}TuaS!XArK9yAjK~NAuy!cE`+E^<10t3w{ zyClo+`{qw3D|eQWvs)rxV*$)T{F0)ZGL;NX0}^y~PF&>#9<!S;#1h>kVVqOT9v$f| zq%bHkB7+dS3{9%_SziZ?;u1>MZFCh$9pc~;e3kXo%-%H+V!!W*%iqI<sNTLmOsNij zO>$Vt$^fz2k=+z!n1T{NS|OfyQQ9y+SYhtccZ2+406D}3Ll$nmv|11fKD^K+_^!;d z=E|!{5u<gXEB?1h{Nq1SnPE;E3{*K^7UgW4<q_6cf?$_dFZPs-nTb30cYEwJylOGa zh~grYrX`%9EU8clpBAIAspRpEV9b4oeY2-yjvSy4cgPxtX9N5V6{z!@e%^MP>60Ds zk#^0J_*U(<FbMT_Pq<iT$h{q-bw*Z?4FR7**Ul~cgY-$!&Bsc7u)p>W{Nun6_=R!n diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.keystream.len deleted file mode 100644 index bc1721ad72a1f49a7d7b438e2237f366381e833f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00G_?009aB_5c6? diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.len deleted file mode 100644 index 14f7c061cc4bef2fdb72d8ebd5cc8c9a23a22d1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00Bk`001HY8UO$Q diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab.values.at deleted file mode 100644 index dbc6bf90fdef9c972ed7287004893d199a230471..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 163 zcmW;6TMB|e6o6q(%S%^X!R)|Yh%Z4D^nS>L3gN_=Y5&pxJ$zj<sElgvt}kz+>%F;~ xT3ABVH4YNyt9+jF{^}!olS%XBk5k@o#yM|!#|4*Mam{-^@R3h^<_kC6{s7lI68iuE diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab_i deleted file mode 100644 index 3bee32461ba7012d1c138fd7f1420a942392a00c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeI)F-u!f7zW^LT|_z*9NZo1E`=@~1ec17IJ7v4(4lrq8W015ORS6FA}w_3){YSe z-Rw{rQ3OGRf(W4?C@zAFgM(jxz#Rff%(;E;c+biC-uJnXA&{F5W&N3};{wn6vh3rp z^H&`oWB>sI$p~CV($lvGGsy%NlmLNTfj_bG<n!6r+zl285FkK+009C72qY-58=03T z8}A=G`p*dP^yJ=en2-G+5}&^j`Cm-mRT8fue!&FxqtEI>X}Msv)M-(m9{XpnKiszX zG200cXoJ9yIAiQ$YP}6dIf4KI0t5&UD5$_q^lCnTc~#JQY7rnnfB*pk1PBlyP#}SU z_`k}Vt(~I+RZ@ij0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+0D(jWRwDQI@Zjr2<BLsz009C72oNC9V*+0yPkFpn>akej<Om$c{ZA8>YR<CT z1PHVs@GbV%-;MrzO}L8y0RsQ0K)gp`YjdQLTKT&O{I@!n`~AHZ>*dA0`P6#JOMn1@ WZVNPHVD0<w!*0(tj{pGzc>)iEdoxV{ diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/file-to-id.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab deleted file mode 100644 index 6843312afb2220972b906c00a787235613655d82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeH@%L&3j7=+jN`;8!;1WT|13lQwWn-?p{QETvG3El-u@RCk^Yt(UmVuB|NkQvx~ zlig(D|CXao)iEu5M5%|RlW@*s1!Ftk-|z@rahh!X&s((b#izf^j`!O?T{1~dUO<Xm zKY=tEJb(;2AhYBw0CME&4&+Jy1{BCPStQ3-phPY%K$+a0feIO%02_8l*2wu0uu=U3 l&>(xH%`x4F^Rg;3AOkWW12P~3G9UvoAOkWW12XUz2Hp_bO9}u0 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.keystream deleted file mode 100644 index 54555db390322005a3d6c3030f581ae72805c531..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4096 zcmeIuff0ZZ002NzAqwq3Y<qP7BYcQk+K)4rdbNH(W3D$~z<>b*1`HT5V8DO@0|pHI GYv2R8Spcj6 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.keystream.len deleted file mode 100644 index 2b895e774deea3bb925caf1a5567bf65555bbe6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 LcmZQz00UtF02=@l diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.len deleted file mode 100644 index 14f7c061cc4bef2fdb72d8ebd5cc8c9a23a22d1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00Bk`001HY8UO$Q diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab.values.at deleted file mode 100644 index 9acac0d4af7a0a3a7231b2734a204d8a6502d5a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3654 zcmdUyT}~S@5XUX;MRI}EXNW=&eL#s4+CC57VPmrEF=KDla;oyts#Ou77R1K`T#4Bv zL~w+8TU*}Q-+#V#Y|RcriQJo_BQAT}#Jve}@+o7;JCNqP5I;lR;w%$Gg{S7keoAt} z&XK=j3CupbIR!gmsu-FEvX|8t;zf$!FxfFfsL+lhh8eZ&(2_ht^!*A0GKgWDpoz7d zb+wo8+K4&HHrfT{+K2ujxJ44HiJfi0hxNWCu3n90qI&cGAjaCeCCP_H*1;?eNp^yH z5WO&;n==J|UNU!?fh+1WbE<{9OX3yuZDDQ{Q2TJekTSO}w^A9xKG>HfxUSxkq|BAM zR4HS)ta%aeT$m@73O>FI%@k9Vh@dEXEX;#OMVs!qg*8@?vCFRu^H-mi5i@Z||GzN* z^x;qOsKu0r6b^i)UBxcuIhCT~zA$$hW3j61(Knfm(z@wh7v@Tzlo_&z+8-lJH2#?1 z3KTR{q6~QQ+k4Yrf0>_p(1+4TE8_3savgKh+T~-G3xYtOm>+taErYZ+<UQy*ypGGt LIyJf>T9{t|3I~zv diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab_i deleted file mode 100644 index 41018a93c6b30454cefa6b650cadc18598d5f17c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmeIut4>2f6hP72Ck6WcY9tbgL{=h^NMvOtvJ%O@u3u2KPO@_*lSw97!*Q4mH}leY zQm-|ww;CV3*StPzQKwqgXFb$ct?IiT>!+UTT+el>b^X?+uC=Yd+ST~!zO`x}+WYo# zyf*|05FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U tAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAVA;_0{@WQ3>*Le diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/id-to-file.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab deleted file mode 100644 index 6a1c931aff7b65bd925f5b37369c83eb965476b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16384 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 T8~ED5*9N{e@U?;e*9QI*St!Jp diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.keystream b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.keystream deleted file mode 100644 index f63557d8cf674d326eb75d17cceeb04fe9e4345d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12288 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 ASO5S3 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.keystream.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.keystream.len deleted file mode 100644 index 1fe2ce1793163d25fa67ed0e47d00f7906aea255..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00I3M00B+`7ytkO diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.len deleted file mode 100644 index 5c57642393865391c332e87c964706eb9c57791b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz00Dyr008I!u>b%7 diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.values.at b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab.values.at deleted file mode 100644 index 79e307948f7c756df989b3a040787718564bcffb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12507 zcmeHN%WmXE6wRX_3F%Cd5epV9`U8;IvSfv3gM>h0-(p&Tgb3<{|EKOb<?B;@t890o zpg}m2E7w)`{i?FvU!Q&0?>_Di+aLG8JRUx7zk57vf7l<Met&x2|M~o3_w?KMyT5+k z{qgtyr{~AR?$`YnXX)=YUGLI$m#+JCJ*4aXA`NGo_WG5rgQAB(b4SWBE(d3ZS2v)Y zg0q1(=SeqWPZ~F7i_u)9>r!MD)Zn~K7;C|xW|RtVh?PoxCN#@Zp1Hi2p5SGeS%Lbh z%>yf{*QgBTrLgOEX_{bVA?t-5GOxBOym5Z!Ip)UVs|1!7r+ag6I}<Zca5HMtj(ROT z;;YYX#p9S@lX(p-v)-;vJ<{~xx!9#Jb<i2Y>J!Fjc+?76etE332{*l0=~~004g)r) zn|tc#Yskqof0HiqR&TjK#43%@vd?SJyH1j<ks6Wf^nnl4O{c9fG94_6Rtvd@fU;2` zE<0EFHj#M*Z87wvZxqAzOq1|e`fpTYc@*O|S}*RK&T7_V+tcfBlOp)@2&6l6M(3|} zf=%1&bPZ@+&Fb6>%6tww#!ga1UNgcunNNu|*S&gcxb77*_a%6jR7$IuC&L~kWMO%y z(G=M&8LE@Q5r23!<B#Z)vAo`OuNvG#okGt5+Hv2Ya@CWiUFBV@H>FhA>E`N6?d2?H zl+F+?VqEoQeGebXG*;%seA}9)_Sfp)*S-UH80hRcGj}t(L-8a+{R-<mJ77`FsxULU z_q6>rCQB(5cDgx(krV10z{44=dxFBugCZNq8GX;P=(2~f!snCtltTG&%=JL79>vpZ zXJXY*4#vW&QgX=Xcv6{jygNbX2*QJwd*~_f@Tc|cGiMq)LmE(B>3`u7sf_;2GIvw> zOnn1*xSJM!Ejvr#lyUtWIiEba|IjZ*k8b%+=KpW+b2M9WCcPrxZs5szC!MoyxW6$^ zZsI8k`BTZs*8D4Sb<WZ`ONX;`-i7D$o_U}@&DNhP*{@<QY5v63Q>(B4R>AJ6+-Ep@ zz)!(%;Uh+DWGr{2@~(f=QJF`rmGjf@z}YxlOs5&b#D07HX6C%4AP&Z(l?op7|5F$l zzv-Hsia(w6bj%BQ`K?D<`Z6i{*6zOx^DUh@+rMGPGivpFCEw<8C(!55n>u#jTKx6_ z(LU~IYwv9<K=wVDRFs#`v!Es1?-+clwI!qCd-|)MU(jZO3hw-n-|P4I)URsUb@)19 zp0qE(p9Lwj!`3%dUaLSsd)Junw1Y);de^w=U0M=GjUeMNGUJl+zH@vJ3Hhl9aE=gQ zzU4GOL_H~&WA88h(xQ8R<;f}dFj^AdO)F1!sR~Y|%PZX^7=FT60LGx?8FW{k>{D4g zQge({ai%7%MLnid<Q`{g^2YdrCVmHDm(HGW9{qb(_0hi%7uwP4#yB1GWGmb&_49h> z=ebwO?VvN`aQ>3W23~59=C8uU(HVu6Lj|5@|DawKt`R?aBhHYjtx<bL<&{`1DN1o9 zcS3!*48g6<MJcbCiS<34Y0V5gvKN`}+7H$NC^fqj9?nC>RCt(b?0I@h?hSisOoHmF z@UY%I<Bg0JpL17!>+y8GR;8}x9kPPwk;>S_9nk_@r{M5}6GzRB;uI8nLY!fZ=ooR_ zGIW8k9?zsNoPiec%-)>w6D2W5eCSqG`arn`Jt`6Ad=s}Rze2%ttDW+0v6=w<?)4rv z^}n$<UGE&j@bCT30`UNRiwl2wd)NN;KD57;@f~1}{0;G`BY%}#jL;{klYg<yHJ)oC NtdtMXh9hlx{|^wrV_5(I diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab_i b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab_i deleted file mode 100644 index 0dd970c4c0165206f143da5a617e0ae97d5e823b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32768 zcmd6QcYKTc`}bXnsA^+J9fTTDqp?#nC}K9Mh@F}-8#|5_J7#0Yjvb>FTEq^=h*3g~ zaFp1wqgIOYy!-3-if`|V_Bg-ic|F%3=gKuc>zbe3x%DuqxpFc9S1E=W6y)DN?Q<H4 z@-WQ!HxUIae=tl1^M;)|KZYqce%u0%Kf`=E+-IlAhhbjaj=Yqvo%z4wq70MJ_f{W8 zRfY)^q<ZVT7^djR`wB@xhAC3=yP7>hQJP`a4(}Mp<{L{gjO5L=2sYmazK>t)kHps& zV3;R)yGV)V3mK+RYNv3bojis)VH@0wXu>uw!`NzFeMK}I8_O`vL!Z*sIG8_tqW>yg zF@_Pe4uG}Nfma#ho8LQT%*`-2mM6v%UxjfYc}itkkK}~an0Hld@+hJSyI|jT>f}>y zx(dVee6z9x(QGX7Wte2mXaf&^TOAbv>!*XR0>gB9<~xN0|F!y9Wv9Lx!{jb;Zjhxs z!<;$t{h^^8!@Ol0_qD@6Uv>;QXoP>bYY)w&@&6V(3Nwtom)C}@=F!5RbtM%74A`Hf z?1KJmeJS=OSlj(CB`iN=NbES0OA0YeqfHxI5UmbknB~V4GTB{@DEAq)d_CzAc9dY4 zHS1jsIKXGW?CEY3FwB+MwQntD8D{dkX5OUd2}_~3-yXJ<<jS=5n<exz@ENAc>FZsI zFU-d<-M6WltKo-t59*yJz6|>p7f6{!w4*q~B>G3_H1M~6>70Ya|6Qy^eDUhs%ruV) z_PAZ8mq?9$Z5-jsV?Z2Nl(g<k>j;rQxp%7&)#)HZ{?ypm>k!dg)PYx`!&8VRtbsk& z9p4;6G#e|BZ~k}oA7k^Ch|_xUbI!8)MBB07=sAIN`H1uPr6YLKK!)iZaQrVd>{M&# zuoa~DyI6yKh<<!;9gR0&KM5BL_*rmHaf^EkrC8@{*RpOukzQ6<g}f@b!{5P2UUmpk z3}x%9uufN;TUG=$IRB@KB$ov<%(B3C2Z%Q2MVx(?W~z@QCoD(4jj4S2DA9zKuva-p zq>*S(SciHr`~6*a-61_S`ar>Ax7~Gx_$u&sziz7_ny?FT5P3qfSAhLAzBc12@jYQ% zE{5T3t+`&3n_=!bO1bxMLB8}^(0iw+aXk2~^P|K2*m5!INlNtV4{W{*_72^Ww4crA z@)^e5wlJ)m5je=limi%Ycc3nOui7Znd>OTWP*T(}@wf)AADr}0GVJ%+%BaI^KGAx_ z*_t{v-2Fh0y0mWCiC1RSm1(_WR*{|w^!R;=FEsE-&7Q`K#3#(n!7w|Yjc~`0H9zuo z{AqVyDo_{JFLnl65T6fkOlrwNURJ!*<*OZW7?D&VQ{7W@80JDr-_<lf8%yB7s)5gr zNa3$rkxddwZVbRZp+-Uk(QIshe*Ia(J#4-w+KzhZ6%o>uE$8AKyZ!gF*$gi&Z(hVd zkn<TP>iod&D&+I$sMnK7QH6aUSrNRzit(jmO+Li8px@j(5%QU6!eaPCGpB_?h(4qZ zUwq4fafddoTtsp<=0jh4by<5hUkCrp=e`=t=9{oz&MNLZCF(_^52DR7+@I<{A7nG5 zPS-xZE5?XA99BCiQ-0DsW}N4y|EC*7v#|{Ek~7-N9T%KR=vTZ0seGK{)SPkd`o|u} zrX}#}`nByZvH3*X@u9x=v#qu=4D&edel6mA!p4fQXUG*lE#h?TpkpIE=@H+8dN%TP zmr$ZJVZ_xc?q~P968PcmfSSuQ>9H6(<OQ>&_5=z1v+%&!{!-ja4Q0O0Cp8!Bf3(5D zIz+Rvh|e(RCVv{oMcu3K8#jP0&n~S(KKgFE>Gl(QoC<!s>AN)3dCX9BC2)NdWpN)o zFt-bPoC5Xbh5o6I_&g!*fhD`hi56g8+4zLEL_5nt&aqYD1J4c_eM}Djyl&c1MshZ` zp-wcmrv@va_pIK~rViA*{!8nN*m|C59qMiA2dxnG*#igS@YM4QTs!<0xj}!J!MWeR z7ca<av<C71V8z5{9Q2zOhf28n4SSq|4?Ay}<RZSX8p9}a6rV*j#~1hJU2+N0ge|Bf z<Av=Ki2k=&jlNZPYV!wH+za-$JA~@<b1)+AuC*!RF+ORO40^sHWzG=I$Na@E_FY4C zcCixYU))8|hC$uAvUO@38pp+bQvYsHv=#oWn%5d*=EH8Kx?UhT8#@qRoys?D&E^wr zg<scn3Ery3I!70#J|eyf@hrY&k!lbz(jZl){X3vvI_~93(r04@>>%OxnBziUnHyBH zwhQ-}a{<Tike&hiul?;ysuq1iZeR1B_-c%Mn5!YO<<}rZpRO^Zp1b~w&|mkB)Vl8x zCe+8U?ng7_lL_~if}$P<_w2>+{q|AyXKwmGA6(#n>3ko%`DY-@kNd#AZLQd&<T(Gn z*|Xezz=b-x;=`E^Y&|y3Lx0*5E}cVsJ@Q`vHLZL78jOe&-=!ySX?P6tVOQj3PuhIg zBmeyPu_V`c!yfvTUx{X8E9$|grD?aobdcctLwxYY5n9;$zH>(zQ>C=L?v{h(M&xVI zn{IXNu;hW_0q*z`!+*_RKA&yH`D#4->k}7!x%w6TWf9_Pa>M;CXgpyq;<4=Un=wQa zHex?>1{EJpG+`d<*Xlb(b`VY24tty)P)R|w1$ic|E}W>vKCX4F^NIL8toQQ$Yj`sw zSiv_Z57K1hf`|S85&pi33U&`Wmx!$TXTXI=x7ALx*kQRY4gT7~9<6}AW+*0}CcYi< z6I9JKm}oYZU>~gtFKMm==69LgR|dacjY=6L%L{(UkNxX#?sxxnZYA^*1_~lLs9Vv) z;$G>BGR(L?h6x0?7jOg0)Mu|_Lfx$Enh?(BvuPtLYn@B-gL>RYR-8#{!~^#BIq&u} z7ja#r_4&Wls0SYt8+5i|y~^j4+;K+p8NrvY`4O)?*y~)oo?SIK$5F2q{Yj5759esr zw(2*c*;tQz$c)<;(5<rvX4vO(^|mLnr;R%f?z;mcyDTMru7F{xjo8ve0=wNhcMVl5 z9fUZ4?XLF=OHg+{yc#k`fIJ$$NYYpA13Os~J?5_t^SzY!M-=}W?70!=2}f!fpr)H8 zs%XJF_pd+AGEP;<uhgkwLMP&8zy<S-U$25Su<z7d(KWNuGhxU5UYu%U<S@*^i@yD` z(r3%9@GCF;E21GC?8wxe*6l|{IM?#PhEIvl#+tM`^{CDx2jcn?x79e3yRh%d=fkEF zO;~`)*m+kbCz_45@Xs@*D_??n^@Gp2^T399f7owXJX`;FX)WyKo6uu|6!CY(w_kT1 z?%knl``nPDQx4E~O!(b-^{89lx|XlS9?wI6K7Zw+NQiY^77d~&BRCMbNsF30GjbWm z#7Di@+5d|X`-&Ny7)^2o>^P<E5HZn&oyd>twbp8h{$Iz46D8`H5_O^>H|#adZ$>-^ zoO$WXz;7KZ*SjM{oPXy9>q+hjYhVw{G-;;iou2gBd?D@uiGK{}%;u|MPxZP1<qYUs z34SJ{TaE~yn_C#AfIr$S-dtOXIx)4uutRRShYvQy_s9JYw|Nk|*>>o?jV-v?&0u{n zpiUKgesiG;`{PIqlUU+RqyqhBwqQbEwm^z=$1FIBsLcpGRQPUO#$DgI(CBw?N}K?B z#V|R-TsUvn5`T54QD)Q&1#`gHg!@GDZpKD@HWub$7-zU^w*hf@ZPdzhY&p>;e}=hJ zzD*sX37b$)3Uu84ifBIk5K`|ps>{zofPD8;+$+bHs;e=~VJAn&=If!Uzb`$*<`Zp4 zT`ySV{#&9M^viY^iyyVXA1BBE{Xf=m%l<EZ5X0W7e-`;-Lfv_lv&9K1{3|chc9019 zQ}ETP3Z^OyBQ*BY&=%CNyUz-7rg}m0-^CKxt8T7G_i4NtdDu_5{i785d-hf35f-et z_;|kEBqwaFitjO+1&f{7_nzc$$gYfF@WOMsbw_s**AC0BY}^mt%m`eZD>}8mJ5H6* zyHZ6NOIjAh?d<p!XNk@VE3p&rHYMa)=~<DVA3C;Q=}AwB{5f<@choIMJ<ly~aEWLO z&cD0)vj#-7u@m_rHqEY0d_K-~=d16ZLO;~GaSJlVGwHFh0pkwlJKd4ZmtcQ6%ZJvo z!(X9O;@$R9;rzuP&->GYxZdD<X)do4!yMmP#GP;Kd6clj^acf=D{#;IbHKeMwp<F2 zJ#SU+niKW@(TN_=N(V0L)_{@8Ly0CV!uqH8E$A&lUKfq69?3_(^;?s$jO0@6`)&I~ z{5K=0VBeO1jM<^a_u4!I8?VSHg)Py~W<IZsYL^kz$d{=rp1}&~U_jiqZGZSA(S%j- zSJjnix0!UX;#{5nyy@PD4l}%b-^snM0OyGAyEcLJvx}8g@Vnnh!$BwN$%PgVLp3<R z-;LRyEw~RKSl^|P*q>pn>ewcp=5yfu>k8yq#g=nn`HA@lU1al#b|6osSGH%pU-Y{h zl`4y99AP2sKYmmMx^?y-?P3uyGvr<Nw0~%E;4jyZ3+{W71b$Fl;RJAa4AXS%!s|aY z(?7|f-%Wc6-cJV$>i*+WNAcgEgE%Mdn-iwb{J9kG3E+gex7N3^<xcozMkPTfBO>J6 z)$pBcxhL8Rzqau@AEZJ(k2%OsQNd5={ygT<zn<nHz6Aa`+{fsy`^0Bs6(V<H+u+{B z7h_zW-QA;z_Js8~|5|CzL{D-p^7df`M|F}rQLp@(82S_KfPG}XH^EH@IsCUG-{BTE z<WK1A2d722KTKjGEA!CTEQNARB|RG|-mn(0Hp|fI<3gqRg|Jtd$phPxJS*%h&oEmB zcTPw!?#L*K$Nj6Yj|SsndkL{#(nQ5e_PqQm=%cBFZ<{dB!GIadg@~7yiY0T|dcRBC zf>7UFRz!0~u!BGC%PO}$q{#D*4GTpI(BD=)+Lp(Gdvuey@E95P!~59qf(7;VT;*}c zHSkx@*7v4ooXs<(L_giNxm6vZ7sD*dxv{w&b}Opxag9Afg8pP|Q@H>Ke%dGH9MvHH z{ZGVpVe9=<ng_e)Z+G?}jT4nY9qrie6w!qF(Bm}!xJitP9_JnI?kgnEHijL~9WEEo zM_d+at8({S26k)sVBHj&#{rLAjqG}W=-<UU#Jll^uB-w3E@CY)#f5wczv9c2!+!&W zoC_xGr}(GaYMS2+JKt+tU<wa)BDUSB`U(NwPwEgckcT+kICH5@1%8peQakA@QR%wY zyHd!8{d1@7#cKZy)aV28F@rlg5l2Io=xtIV-jnLoY6s0C#l2w9;=Kzbh!5?T$~q19 z{b6(a)nepr&50Epq{qfw+#{-==+aq*cy-i_f%kq57M%MV&dsmPFi%@FU-4^gypvQG z`FeEZ)~xhA$&HAh=8O0FT5%q3$)b-*&xG~2oBO-_ybS(2x8-$Xk`vb8M7}e^R&%Q2 zd(Fqir}V%hhjrqZa1P67{wvbU3X4z~ZG%TmAU!qe@{kROXAx~jzCHNvca&(tLg;N; zcow&@j39&E+vL*kBCZS(A+0v>Z!PLr>$ZVIh_6SzIPs=y3egPm-ac@CTQ|-6;PAnH zWK)=##dee2G<!U+zSGUf;sXcwhrhSq5|bJS>-$xa@QG$)mjL&mA*aU(5wFR^`i*1D z<*>)RVSgM^B2I(Lgim72*|Y+72~a%^a=;Egt?zCoxfwTwBtudwq6u4Ze^s8Zlb3^g zURz6@7R2|2CCF1l%-I7f#OZ>VA$Qq&JjBa`z#W_Us58wz-*Ai5Ea1vFd<roPmGFEr zd~+lhaX2?(+XfBxF}TRb$}Zq0viq%6hyZQ0pVf+b{63|ofyS9J|BeY0P7s}4Y(f3i zZfoSeZ*g&s*iOkI7Od0Qrn$pIotSdA-i7SWXGdHV5gbJHWCSDXp1$Mz=NY-E6{vF~ z#=Jel=F3sva-QtFkj*!P?|aC;miR`*LHj7Pd;fgIi(mKA6NN#@cV+Qe8u(ZI?9n<C z_#X$<nj(gO?#_Dd?l%^kulKaHZl4h((7QFc_-^9LQ5TEl2%jyefc1B7s7w5;unToF zdhyOyeAFGEczss^^5AgeeNVC)r-%PPS1IC-YZK0$IH59j@pF*mMPKk8`BaZ}KCb@b z9ch^mZ?^Xli-;yH#{8C8zQYB5nK|DT;u97i-b&?3hIM}qI@sr}q~Rape7H{!Xwr$T zrANNCtoRyUNCy%8aNw|b8__b@!FyH6Vk7c=e#zq9iLXKYO$yL#Cz`OVB+fOpVppQ| z$dkECLr2SCk^4Jq<m98@CPh|nPI5L@;yfW!4)$g9*|ZXQl`rMaj|62ac%W^Fqa&>! z&h#K=tgwVBvY$I{WqjOk*Iyh?`exXn&g=7Ah;~8$#iR=Pi6*Q=q@KTB6IS|XU=GH; zBFC34V$|J^M=$PYk2d38kzeumWH$eIX&K_`K<n!fBFuaG^rnq8j|At;J1w%JvKa0+ zbt;7u--i12BA}g*0`XdOU;BMr<k{(t^A4-|409|rt|93W79swU0z0|SVaGbN_{Y%o z(!qgvNL<G+rbFHrDZKWXn~ykZFOSmN{7_GmJ->(N#Q2Ar7fWdzVIJbB!J(LzM6<CN zJ7~Pwh^qE;;GiBf%{MubE#=}Kv02o3EAct#YZF&a9Yr)@6ZrWi@l-?`aNjzL_vwfx zY=&O$F)jO;z)+RAdR>Bic~x-x9g=5-O*p5a(%n|1XGGkD)a(u~r2`l7RA|`_odcXx zIrpq4K4Ga3&iQ^fs(w0X;2+J|me_4N$PwQ&-nVoTP1uBfJNoGhG0|+y%LV&~Ea4O1 zfqXsXt^b?otgsFGamfSJ4E*%HsyI^~IWR#;-|d<5UkCrp?0u*|dwwnKI(N;;kzB-W zl~*N`)WA7~dB0c?XNJPxcbVbunngoxeAKCasiQiw$Nw&E!p=iRRBJ-x#qd|@Z^uUn z_*idaggb6HsPkV3J@c_t#y!5o`4rOEL4Ru5-C;x%mLu<)wF!(gz~5)59BV`Ttgr#= z1hrU}oRuD1ZsX(mZJ)N!iEl20=LNOe^ds66Hlm+Y+9h|1QBV4%JS!oFe`e<njUass z;>+A6bP3UHEJcP!?<@9__-fRn4ucavYl`E&hFse)YesOwpZn|2bjLqQMexJ)stdmn zon351e)<GVAH>$zW8X_0E6TC?o@gWXZNFRmf(f|V-JnoUdM?z#4h8n6h4(MPjJ#M7 zuF!Z=a-i<6F5CsXOb0&dK#SVDbVNH5@Ah4)L>2h08eB~vK4CHL1!3`W#)e8Ts5f^6 z@$JZ?>$j5*5^V!ry1;pNzm~%zQOW-6NbW*B`z^~+LIyvEckup7{H(A6_l{oeE{jRe z!NK>>sl{dy&BhAk?S--@eXQsghGx0k{f2{aore#7ZNxe1?c80L#!1jOl(wcZJlMN@ z=|7GVUzZ>Gbh=f98T`GglggW6hYj+P3rU_8mcXvH?j8P^m7WxO!8f1V1+dTgE2V6t zZ--xp?2VW}G+`q?c#Yn5g6OQU36Xg>e^nnXDtm0>QLs)rsQ7q~re6zKB^?}~&x~yz zPBaI0dD<wzPW1mT*p-)I-pmzkqWy4Cf0izql&MduaqcI1ir+UPE=_pP%9)l=Ypc(s zaeO}RZ|9ngBwC#l{_S1fEhoMwY|00}<!xSAfOyW`R#=1dRLC?<n+czYW@9n>&0w$G zU)X%6DEh$l5JXw_K#RQg-&7A?N(XHY^nuO25l!i!LHwWGS?M0pp0Eje4c-ly=Sfa{ zYeCpOzH|qo*;rBl&&wxA$rXsGl1X=bh3MNe%D3)sLc|sMkh_2!<NxYe&7Xs~Zc^JD zS(rT#;anD<nMv8x#=8NqW5-S#E_%|}VC50j;{*cuFJji`>ZHeo-ww>3I!cF*AyVW! zCx%@r44(1cg?-0XzS)`dJYhQ@-<QLVy)eNe)s}BQM0y6qYt=S2&JxYWPV@n1U4Jv1 zZ%2QW&eJYs^JUog!_Q(^<>#P7o-?;=4E(tiXM;bwMflAyA%1#2suJf(kN8^HD^xxB z8quDx3-i7nJT=*q+!J4q^L!i0X-o370$BFu=CUI6Bb~X9yMK_JFdy-iBc|F;qIs~_ z$u&U|GyGQRY}-A=&o1WT9#Ob+o{6L{&x5|&vHJxs{Bt?P>8>}TK-81N^%ikaPv$F6 zoF#o8)=dfbODoSAfQLR(_36e~A?#hz5S>CogE!unO3pRFQ4RGVEZ_$5b%>W%qNX0> zm-PNER%2g5N9(Aiu$yt^#%ApKq}WHZ>0WP$uf~20zRTzCkHoj|aZkOqFo9?@;{Vd+ zt%sOOcrLIl`HUL(trh$B;`G@Afft@57L0Lu(iWjYc5X6E$f=C)qrrYdoUmWO%>(e# z?*Sk6;`|9qPA>NSw0pq^62#T>ybFd}5zia@#|YT7O3_!$r@F_o`JQNJE`0x+wRf5) zIh)VPf%>svZhjl$@kVIP^$h$Z-O+F_={b-u!%9}IL9`Ix3x?*-nd#mvhh0w9P7NhJ zIqVt|acCjY{}x+tuC2DmP95@8zJB-<n$HPOOQbU<5bc5<pC7oEXu@jj$E!@4Xrc)_ z(LX+oPQ7DACwn_o(1Z9koU_is0&=32$UjAR?r}tmQ1_aQpZApq|INuOfp$8Wu>M77 zIk)|li1#|Z|44HB;5lyIC1%nSl}G<=)_F3~|65oIe?5BZ*Ug3R$>rj@_hZk?!+oH} zrkP`jZ-IV`qTlKgofS4APR7M=dn-hoJbKbRDl2_8;_LAqMJONV-7;~lz=}NGH?nBS ztj4kB8stabx;rxE2V2h*t;dQprw=T}M_ox-)=9+H)8RgrCsZ+?&1chkKJIzlYqli5 zwgT?Ey(>>8`ggG$@%7}^^CLE#bLoRzsS^0fcwlEP2K@Z*Ie*c-0@RNMJ@=(`-Cu$l z@s{6v=ZIe_L8yjZayus$;-k)OEY{?+4&w|d^IS5-anh9YC$bu!N$!jHrH{>g%ST*o z(Vso6g<W4AniH8x?>`JK>RZ6b{x?0ziElwX+hS&~BHD&})1z$8k3?(XSHI`Ui-;yH z@WXTAlEK@F_JmD==*LIPefA{x#FwM~94_7p-ugKRvG1*TpNTEip>DK$HFq_eudj^0 zckM=91Nzv^mN{U>j39@9Qm*=BdCyir@BR6Za~Vg&hL|^D{NqOk)VnTks?KMSpC$5F zyTH~X+E4(`>6LSy=nyBpd)N=?(6=UCmzhcK39FH*h3?9@7SxLhjt;B%W$<3YvW^b6 zz5sq}!<;vZFn@z<Nk8Hh7Cm3u3NQaV;NhG>(@&vVWe*g=s82HspEF?n`753AdN2Gt zfkl^*4L=77>e|vk?t!06(YtY<Rs7=pLn|`5SH6d>J&l(k|A*D_MpZ}$2kiA>%8>6w zd&1g+_?_N2*k*x3r=EXK5F-w)*Lue*@}OQ7Fu7=)0OzfEd<vp2BS`sp&J^!wBd!2( zGrdeemi54i0n3vMO8DrAeuaJAb&KYaz!R;zynjqIVQpUY^{+qP!y`T$TXBx_LH6Oq zck=N(>3YhKxFNxRuoHEy>9*~`2H+0^OCDs284>EKaBIFydB)Zg1mRv8@OmekZ$N!( zU*^asCGukTm52dsIh!`aF0b!RkB}ihT~TAKY`F+=SH1o_H(LqMB;4h@&#QzV9&t}~ zGaw=wtuJty6#3u}s<g5l(S%JnpVzJ*&)<me5m!ZB7#Gj+Bv&Ken;Z&t-w)Y(dc<?V z-2PLAShr}&s&=-VXqgb-3zzrO39w%O_#C5%&q2mNEq6#yG#krNH%Hl(z0>~X!=*Z{ zCX<|lb?y0!v~bgivv!GjR77VNOW^0;qy6e?5ND02%vdGl<M#%R&b>eOJPK5X+pS+5 zBEB8<F7@nxz4uE34_JYHA78L%o&|ky*~{72J*c_aR_JLT?LY2jc=%weg6B&U8>0GT z1S>e217R2RsEeUdS6Y!&k9r{&-%=AzSPnnsocnPl(OF@2CB%2H8L0m0poKlo4|(pU z4cM1`+h%mzbP&N$_SQ>V672~)xOk45gTF>r0Pp`d&*!!`>2u+){T&CKRO5WDSI>14 z-xF3qpQq}i_aqm>KH7I9XLynmUk$rOb)No6gLCKa{o~vuXJZHAYt+{o-T4^z;ZWTu zww#A}@TvNA74e0|@IKhtP7PJ?!=v&wW|@#Ly=!@YA~_p#pttpKbbI34VBe<Ba*c>4 ztb-qd`gz|cny>)*_0+W$-8vmas6V~e=5&v@f!@_;>_n1#!Umkfd-}jmB$sh9&y?$# z>MzL+s24B0y*#Ez9bHqS-#Y^$W|r5mz9eU34f@5|cG0j-Iw(<>com<V6r(>@n_<jk z9~tH=l~~4$$%i<Rj|-J@aNoY1xR1t55vPB4e<&xKaN3ivF)j91Q=u;H-(qY_d<phD zZhG&rL=!e+o^d%!BTLgkjvdO?lX@|Tr)v#@UlX6O9d)~AFTqQq3Cm&U_I(tCh$hVS z!}s%IJCBLd>Xc$t3h}dxt?)zMp$`+CxCeZXD7D>y{aIhs98Keeh~rYPfBZXK8T_%Q z`WO+(Jz+Wawc>uzR3q-gUC!)46lDY_;&$cgHHF29&%Ld_X);Q)rp)Mz$&+dxAx#tV zr!JqrS&ldxe>2}yQw6+-6qphyfc?)@SybJM`{d0HW8&qgG_lpzp<AYd43QnO!4l43 zhtHyCEh0W)J^D(Q{8c^PCrIy~VmtiVdD_?Le>%>Sz8LX;e_x!~h)6T^o{ntJ2x9c5 zi;504iL1xCb3f)8iIyWz&e^^O6Rm(fy-$tE<TsMDu><RG3chxR&Cf)`-?KwpwTSP) zI?kQ13@YSn+~rv%<cR+R8-D!GN_vFF@Nc;F&MczYSdJ46cvYh_@nwj^W6zz3%szPk zvfzbELY(u|IB8cA;^T4L`5X$+4xHPC{BJ(m&pnRDvoR0-MpcxPso${mWH{HBl%~Vj ze5n`u?d4gU1gJkT8-nI>pqKQdeX0m?dar+u+oaEf+@`JEiGe*71Eo*os4u+b+?4|4 zXYQ6MpDoz;`-Qb3O$R&99X4b5I-&)*hxV#c{{qp3g_t)WpHyu?{vFbu{z7~k@@Yau zvE4jA`Zd>jM}!D!b2VSq{-g>1gE@$^3MKD{vDl0jb*90)D%e#z@ImLyIb5R1jo(Yl z_pQl=9f}{DW0qAz90Z<vMtVA&@b%nv>urdyG6zh)#Fu0Lx%g8>D)1#&ZeVmem|>^z z3#)3&5l`WNzOSdpI&YpoyU)kGjX$T}BR#@q>}Y;7mA4Kv?CG}E#|8Zk{<n^koUje` zdYz$D4AEA^3$LfHfKmwm^gViyDTm(+W_y0l%tw7r)t>LA#6I>{pWA}wk-~3dH|$%h zMx8v6_mi3Up0ES^JwNVqe@}85;<|feBL4eputFU9WcPKwANqdqJ&*cQ__J2%z%=#$ z0ZkzM>l&6S!+uNoq#_zKf)xEUF;DlM#C0KGaxHjP)dj}J36hP(x1!(t{bhlZXeP~r zGt-_%rh@=>D&N-EOf+G8DSRK&3ODGnuL*un7ZX1#Z1#u0QfIpRqooq&G3{N>9;bz$ z-xnJ@g!pFM3(rj5sU}(iOBJ(LgV!>G81t1l*g7&J7w<|U-#hy){-1wonQ)}(Cbpc1 znY^nx*0A|R>yfXCMGMU&ng_cuZ}f##utTNw!Dos8yV!uZJh?pftsMJbI-;t-6z47W z-giuP=i?&&H4{Fr)FCeRzPZsxjtu>qJJFKWcr)_4#-lO?oVcGa*x&heR{Cr?2OZpd z_?_Mc_|^O3;{haBA}@tKL&AtQq8>Po)mveN-uJ%>cObqLe)QcmDuie@Ho?C0Ld{3n ze4>Te_q%J{i#o*N#$quSiT_Wr8g(p6zd0`t^ZDJ%<@ToodFlLP$qDv+hWz+@6Z$DF z9LS%XZ!cTrxYu}J=e8w1OA++fg+JcIBR*j(`e5F^{2F@n8_mf}yNJ(6T{%6;ew}Cr z^XBZ@wm;EM<gs^91iY3Jq^JO``(0SzM4UhRUe0}Q%&3)pii^6EE2hN~Df~72Y`0U{ zANgxd2mHBmNQ*`eoZ!#;6T6T$7x7yB%9xh|tXpsOhH&B&R>D6Gm`!;V<q<#o%FI{5 zFMCI*?vmVzxG$dXGpv;nELHILab9ehpOO3jkV^A&;bNEAD>{(pjqeA!?_VO^=Z!(p z!K9~wKV|be;FKA`jPpm8v29=wC!tHOXi2I@9DX}mw;j=9<W(!_ygDlMLsi0ZfgSnb z*JHJa<esn|{?0i_DkHfL^A79M{elbezUt((9K<JV2Iom?Gxt7-Z^ON)Wtqt*RH)<S z^80vP*NA<^{MYYtHq3YLvG;eH$BirFJ^4t^1EM)Nf7hx_-Tlo9x&M~5zas1b5O=da zw`=G@${1nkid{b{g%z>iMh#I-e+?GwGuO9fS^@6C9ojDK{%dXg_6dLIziGThdMd=l zjsAmb5KUN#eVqGCp(HvJMjsj%lyWQ+KMRHv`PCs;ugrGMVjPKOuy5qTY0ZdcV^cNM z;rrv<al@8NV9~pY&)!P0|6EUYe|N%elIja$NKb`xJAQI*B|N&O_>|_PN7#z|IMZtd zte6fW=#6jpVX78+wB`Mf3+A$TzPh4EH<G(>erdHIzn>FdgL56xKFCWn8%xm-^sZek zRk#<O4CuUsEoajPtW%@jZe-EVL5a96{WR|d2K{kR<m8ru+<5-bDlCx;ehV+b6&htl z{)8vgmx)o&$GW;5QQ^EBXXs~;oUjvhRJOO&V=?lS>3DUc6ZRcAPyCVO4E)kz=8#5i zn)N|}I4-*2*<~B{(NL9d3ro!C_{i_4-$sa$|0#8Iw<5U_c0StYl9^~WHlqH-*e17N z^Vzf(>kfHe^ah)6!g)$9)RlC>{=p?aH72<Y_GtO3fSzc=R-E(R#&Y$X=%-r-?L~B@ zgBAO%KD602qS;u=L!BIe_wX=p-=PiPu;pypSq1ME9J02|#K--{$1%Mg2XS{T=-uCJ zxhGn~#rLXrCFTl&Pjn5x=t+<GdfY39eHiV}L*y@h{@F}?4g7OgId3J=gk{K!+wJPP z>y8rf(c^n+s2z5FwM(*%^s<Xp@K@#6$+P6xhrj$Ovi8^DLR^bixh@F<5l4}CFe)9C zsE2vx<#3M|pbt!b)2OhnBK}Uu%^VI+KKNtJ=4GT$*nk<PML))94}f#Uj7&te$p~8H zxnJdt?)c3p&6?uiX7Q{~6`lg?SHrn&=+tqCoGwozHEDI|>yN*qV?#dpblY)+!MH^& zhs>vO7Q}hP=0PJAu+!FNfwhUB6;`0a98I2v=>0iJkPp0S5BvOFir=`ZBCi@Pc8@o~ zZuK@z4RMwMf8zwJ5OrnHmce13#>?^jBu^P{M149aG2Zt@n8!Nf)<b^&eQMk)qO*&I zuwVT}BRd<Be}NUFG&D|uNO(BYcNEc{u$F`V^*MGu$(=#?cb%_87wW)R7W1T!3+Ikr z{ROk9gFP>v@8qmLU4Xp$5LL@U{On={_8Ztm>&{0mEG20b(@GADyR;#=#ixT2@f6kf zLKq+QeQe<h%dO?{ytME!7s&~WaL(o<qGuV9C(GB>ataYgZ{IJUNAiD)Ias&xoB8ek z={Pa+XxY26C;#a<(w89KnX|c7a>UEAw`p(nrh^FmE~(#1cfS_neEz8gWj5%a9$C_* z#642kbzdn5EZ07EVIK?p8C9k>pT=hwOEI7Kj$Av8n7@;#NFFol(zY=ve`PgZg`F0X z`J7|xxlpItPW$m59?8@GQbb7i*%gUqV?Fjiu4tr^%_rK7xLde;`3j;5>(la%pVXCT zCG^g$+30Z{(#tN^;GV3AOMCkuBk16tlWSY<B(4nm@EWpaBGDc(ANP@41E!K(h&*c| z*n8844*m3eH$;6#&|>9BcTyVLP(MFQVv@9|W2Sqv`)AbpL8+miEK0sa96jt2JK@ts zHTvmYrcO=bv$05k_m7SZ?8}4yZBv>ql%lU)=|64}4|PGu$!&Aue38YXBG}`ImiQt5 zZWQRkL4U1YCqKNM5d`1_C#*4N<YuNgs0)|3oQcaU`F9*H>Q~bHKmTyR!dLKKxd#1f zNOW^pCml4{_c?RVF+}sq;`gS7P2!0*z#bb)H-<H`2RhWJgVUNVB5fhgA38Aq-;%26 zLtU@7B0d|-utE*jp*?KAC)$Pnv9E`2uqQe3ojB=;NvoR^ofXz2j#gLf>+qzfLA;iq z7g67nocL<wPt*AuEJQ0{_h{|+YIfMSMy;zmv^Z~p4_2NUb+m{nc07Z;y0yl6i}X#1 z%O&+!e-pz$HycDOw8MXg9+yHE{O^Jcovu^!0ruaW)r!0c7&U(hjW?qL6?!vww3v^3 z_^Ry^;<K?C=UO@^`3!^nEZpPELAIP|HR?q16?2yp?Fm~EU(G6aN4EYP95`pdsJjc; zQe#fMM-b3<3Y%|5-1qFK98P>L`b}f$hvP(h!b-%?suo4hX>o5lwd+}D72>6ds-Kvx z??k_dOT5~E_%ifCbDmQ=G1e(}UOJligthR$*V*{*MC*O<_ij2B`<rMB#(fbchZ4=k zLhPgdUx9tud?(^=<el*C64+<z$0Am?oM;vFcAV=KVn)0U?GX-Z{~BDVXEmxPUH-M! z52*$FTOIYWo*4fARIP9156RCz>2N>#Wd4vT54B$SU1vtrz@Lx$!R2DT@Bj5a(ho`c zC!;U^y;5UsCpMpGBkZx*5O<g8tgs&XQ<wiaovkN_-D~%3*;$1;m1A_$bGBTAdtS$! zmlSM1(L(rLd_X>4fj$`>`{VhO19`Y`<J)zlr$Zg~DRccZ(Pq@6j_cMN%&6DZ<4>m& zUx{%Kf+u*aGXmUydIvGRNZ%9I!vD|q7wn}%etFlN)`YERK>R1v|CFhp^H4W8?C|01 z(YO37mJGB(ujTYwc<Pc4at?l<*pb)3#SWt`<S8ydyu>wpFD7|*u^x*0+E;P=%?OG> zJYU&YzD-8%4@wI=E}HbZA948bPp2JSx)7aRtcQJ4AA0_~s2t??)+>(?<v#~G>{9)6 zhY3HIX67nkC*K11d-0LEi^rUF*EOwQ+Iw4$nVCnVa|Gq^cOAa_<J1|!h4|?`&QVH- zid*W@j8z$>o+%T~HS}YtOwT(R#BZTLcewAtM#NcsiQF4J&14M1@6<=1f3joTu{i}% z9e)m1oV!Th(RD~_MPJ=htKvZ^?0<0L8+Y83+!I!yKKt1|#afW3y9!MUVe3f|=ef^E z?$IKD!d`{d6r+CRZ}_!3Th9)^)#?%;BEA`Q=v&i{pSXzo>z`kow!_}Tqn2JFxf< zr>|}!nvL!7r{S~W0-MjKMOfGS;oojMu;oMxkZJL8gIf|UMjsn;<Ln6$*3oag)t>kq z*gv)K`7G;z5Psa$^K&c*^O%BSZqRrh)@hRGVJ8LhyhUI2RpJxYAWmwx^UgzbR+wKH zzk@$5_(YFL__pY}OH(23-kJh$X9NN2ZPRGcWG>?3S)L?2Nd?%4BO%#scj6nc|G&#! zyv@VB``@fZwEa6UA*0ux9bdsv7QYwgcvD}Ab-SlJU(&2*tTV2)X{*d1`Tf*>Q-u4` z@MTkwZNCRP_^D4^)fOTz^l#ylbL?4!SU=CD<SQ1$-=QmYPLteG8GT^EI`@6R0{d#_ zZ@NQrPgsojAJl1d4<7QX>ay}?ww@SqRMEV&xe9s@*X%(xPX{GVs87DtmuSLT*vq+o zTqZw~oG>5fxH2J!*ok>7Utaov_@1zfk9=OWuenHwyl6B;OnM^R`zDl~-j|0ww9Ccl zG8sVu|BQdzWLZWo{!KC}WORM6!VK(fVm{sEqptFAjJm{w-3NZok5i|E2z6oU$|7qx zxF-s{FMqNj&i{Bg(S6^u;k*fjE{`C67czj?RJ(&{!d!2}Yf@O|I{F_4J>sjwj&Im) zIw(<RWDR_$63w9VEsv|zGwp;a$NMI@`TzMK$N9(Q<7BE|Y&|FPqvfDOEnLv&aMxt= zlQkFmL-6JmLY(u>*g_w*=od3<2W?@`L$nn8N}9C2v>o}&yYw|s%g6KZfu~I*mlem~ z**P%08PWf*u^sWXz4Lg16@HAu|Nq2^{RUUbB~*iNRj$YsFP`=%LgcqPYrfBxyWm%? zxKSH6-xF;_T^%*8<8wzDJXib{mhJT|@Kjvuy<wi_CB7DVFX|q<M>Gd@qL%q%exeBr z3gErW2|wP$GxG88`=^GSCOKg~{69J|OesZ1bdxV{PJ9LI`C(<ZcUFv3)%R{se8L*! z%eyUt?L-q+;KXrLlH;xDzpIqdkGP04>D$2}8Yp}^noDg#UGQzz+-+wa?38=NquVsz z9*FmA)^187T7o|575g<<0>66Cj_OK$!gkcDk*$knI={0L-p@PsKtg(4Xw=j<YfLm@ zDfo5!J(y24VHNgqFi+7W9`^S=FnW(1xajM1DI_N>!1|-UbW|!J_bu+<llW{bf<5wg z8GfJ5cX{DGn%mt55Z{4ytJE#*BKqHAE9`A3bagCy9vA%dsz}<ec<I35GmQF-ZJHYE z+i-5;^O4^dYV~PpN8Ky@=P_871&E)VJ+?n&aWj#6oPV=doktv0z%5DrPGnN}4?~H% zy?)TJ4I~$!!%M%t8DTGzR(Dd|^^@d;xybi=$|Ze>*6^X<{l|S=P#%5YYsz4f3!p!2 zey6Ki#C?D~`YZ9X!b;4mzHfgfL_ZFmG2KG?@?40|oI*R%{}gMH$I}WXwb$ePZ-%xT z!5*)H{TuAR)SQn#@@zufKDJzo{7_!#d0LCQKToTDNpd^<b8lV8RYKhF?)rap`%evi z?t>%rq{qe@_^aQS0?UZ6M?I)<EY@FweD3u0#8BdU!Vc7j+qo`vX3M4MPY1sC#3_Ca zX7rmW>r)Vo*#iLw?<;SuGKaK<Rgmw8Uu3)f(l{|9EPl4YJrD5-3lT4QpNz>e-btUZ z$RB<AM4d52v#}Bu3GjO4_8VKC6>Y=5*LS+&z8}h9kA#_1Go7C!!1v|2o6p$u@eAO4 z+r^ku#McDjep!FFyU!4xum<<f{CzCROkO<Ku&*}RalWMX$$hkl(^}@&VJfUsaKc}x zZW%$1IGU_%^hAX?f19)FeIxV--Z360Egg1TWZJy`T-4Q?-|S-I^KoCg_2GKF0{7Te zl`Kn$pIt0Mr5kj_e<2U`Bxz9ZW(Lfku=OTR{cDhw#`m6Bsa=7S_;+}_i><9dzQxoL z&Sdk6mf-$SV$r&FMB8z`;K*j5b+BK2gKv){s6%b-?bec<unBo`d1uFOME@=}AP%&% j%WtzG{~N{&&(l0M<o|##L$SMbP@&Gh4!xG?`^5hNipfo* diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab_i.len b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/caches-jvm/lookups/lookups.tab_i.len deleted file mode 100644 index 131e265740f37d77b7c4a3676d2a7704ca3e4a29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8 McmZQz0D%Su009U9fdBvi diff --git a/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/last-build.bin b/samples/client/petstore/kotlin-jackson/build/kotlin/compileKotlin/last-build.bin deleted file mode 100644 index ced6aa0ca79dfd9ddf6adc6f00b37073d98dc732..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81 zcmZ4UmVvdnh(RmAC|xfrwIr!1F*C1NFFU^^Co@kkGcUO)H8(Y{Br!+NsWdYu#WOE0 lfAeSN$RAJN#WOK5dNHsUmn0UIgalU<FfcF{$lYY9008@I9xMO= diff --git a/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/Application.kt b/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/Application.kt deleted file mode 100644 index a48b80eecd4..00000000000 --- a/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/Application.kt +++ /dev/null @@ -1,20 +0,0 @@ -package org.openapitools - -import org.openapitools.client.apis.PetApi -import org.openapitools.client.apis.StoreApi -import org.openapitools.client.models.Category -import org.openapitools.client.models.Pet -import org.openapitools.client.models.Tag - -fun main() { - println("<top>.main") - val inventory = StoreApi().getInventory() - println("Inventory : $inventory") - val pet = Pet(name = "Elliot", photoUrls = listOf<String>("https://jameshooverstudios.com/wp-content/uploads/2015/04/Majestic-Dog-Photography-Elliot-Nov-5-2014.jpg", "https://express-images.franklymedia.com/6616/sites/981/2020/01/22105725/Elliott.jpg"), id = 123456453, category = Category(id = 13259476, name = "dog"), tags = listOf<Tag>(Tag(id = 194093, name = "Elliot")), status = Pet.Status.AVAILABLE) - PetApi().addPet(pet) - val elliot = PetApi().getPetById(123456453) - println("Elliot : $elliot") - assert(pet == elliot) - println("<bottom>.main") - -} diff --git a/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index 05f77db3037..f9995b89211 100644 --- a/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.fasterxml.jackson.core.type.TypeReference @@ -247,7 +246,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-jackson/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES b/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index d939e3d5a43..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,494 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get all pets - * - * @param lastUpdated When this endpoint was hit last to help indentify if the client already has the latest copy. (optional) - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getAllPets(lastUpdated: java.time.OffsetDateTime?) : kotlin.collections.List<Pet> { - val localVariableConfig = getAllPetsRequestConfig(lastUpdated = lastUpdated) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getAllPets - * - * @param lastUpdated When this endpoint was hit last to help indentify if the client already has the latest copy. (optional) - * @return RequestConfig - */ - fun getAllPetsRequestConfig(lastUpdated: java.time.OffsetDateTime?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - if (lastUpdated != null) { - put("lastUpdated", listOf(parseDateToQueryString(lastUpdated))) - } - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/getAll", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index e1d5bc9c412..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,245 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - return value.toString() - } -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index fafca8738f6..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index a4c17c3b49d..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index a66c335904e..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index a3df06cb6eb..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 6e619023a5c..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index af1e270325d..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index c4700a70115..d4fc1f091a8 100644 --- a/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -26,7 +26,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -254,7 +253,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-json-request-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES index 1f38d3fbe2d..49c37f92d4b 100644 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md @@ -21,7 +22,6 @@ src/main/kotlin/org/openapitools/client/infrastructure/ApiAbstractions.kt src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt src/main/kotlin/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt src/main/kotlin/org/openapitools/client/infrastructure/ByteArrayAdapter.kt -src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/Errors.kt src/main/kotlin/org/openapitools/client/infrastructure/LocalDateAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index 78223583f64..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - suspend fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 4ab794d6608..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 911bbee5b6b..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - suspend fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index bcbb1cf8627..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.gson.toJson(content, T::class.java).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.gson.fromJson(bodyContent, T::class.java) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.gson.toJson(value, T::class.java).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index 6120b081929..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,33 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException - -class ByteArrayAdapter : TypeAdapter<ByteArray>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: ByteArray?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(String(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): ByteArray? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return out.nextString().toByteArray() - } - } - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt deleted file mode 100644 index c5d330ac075..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/DateAdapter.kt +++ /dev/null @@ -1,37 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.text.DateFormat -import java.text.SimpleDateFormat -import java.util.Date -import java.util.Locale - -class DateAdapter(val formatter: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault())) : TypeAdapter<Date>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: Date?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): Date? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return formatter.parse(out.nextString()) - } - } - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index 30ef6697183..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter(private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE) : TypeAdapter<LocalDate>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: LocalDate?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): LocalDate? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return LocalDate.parse(out.nextString(), formatter) - } - } - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index 3ad781c66ca..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter(private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_LOCAL_DATE_TIME) : TypeAdapter<LocalDateTime>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: LocalDateTime?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): LocalDateTime? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return LocalDateTime.parse(out.nextString(), formatter) - } - } - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index e615135c9cc..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter(private val formatter: DateTimeFormatter = DateTimeFormatter.ISO_OFFSET_DATE_TIME) : TypeAdapter<OffsetDateTime>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: OffsetDateTime?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): OffsetDateTime? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return OffsetDateTime.parse(out.nextString(), formatter) - } - } - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index b80e0390de2..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.Gson -import com.google.gson.GsonBuilder -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.OffsetDateTime -import java.util.UUID -import java.util.Date - -object Serializer { - @JvmStatic - val gsonBuilder: GsonBuilder = GsonBuilder() - .registerTypeAdapter(OffsetDateTime::class.java, OffsetDateTimeAdapter()) - .registerTypeAdapter(LocalDateTime::class.java, LocalDateTimeAdapter()) - .registerTypeAdapter(LocalDate::class.java, LocalDateAdapter()) - .registerTypeAdapter(ByteArray::class.java, ByteArrayAdapter()) - - @JvmStatic - val gson: Gson by lazy { - gsonBuilder.create() - } -} diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index fc89bf34e7f..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,38 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName -import java.io.Serializable - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @SerializedName("code") - val code: kotlin.Int? = null, - @SerializedName("type") - val type: kotlin.String? = null, - @SerializedName("message") - val message: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index b483bee69b3..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName -import java.io.Serializable - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index d6bacf867c4..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,58 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName -import java.io.Serializable - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("petId") - val petId: kotlin.Long? = null, - @SerializedName("quantity") - val quantity: kotlin.Int? = null, - @SerializedName("shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @SerializedName("status") - val status: Order.Status? = null, - @SerializedName("complete") - val complete: kotlin.Boolean? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @SerializedName(value = "placed") placed("placed"), - @SerializedName(value = "approved") approved("approved"), - @SerializedName(value = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index afa65785d38..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,60 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.google.gson.annotations.SerializedName -import java.io.Serializable - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @SerializedName("name") - val name: kotlin.String, - @SerializedName("photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("category") - val category: Category? = null, - @SerializedName("tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @SerializedName("status") - val status: Pet.Status? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @SerializedName(value = "available") available("available"), - @SerializedName(value = "pending") pending("pending"), - @SerializedName(value = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index a1a282cb38d..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName -import java.io.Serializable - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index 59ba0254f60..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.google.gson.annotations.SerializedName -import java.io.Serializable - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @SerializedName("id") - val id: kotlin.Long? = null, - @SerializedName("username") - val username: kotlin.String? = null, - @SerializedName("firstName") - val firstName: kotlin.String? = null, - @SerializedName("lastName") - val lastName: kotlin.String? = null, - @SerializedName("email") - val email: kotlin.String? = null, - @SerializedName("password") - val password: kotlin.String? = null, - @SerializedName("phone") - val phone: kotlin.String? = null, - /* User Status */ - @SerializedName("userStatus") - val userStatus: kotlin.Int? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index c6bd90a8cbe..fcd159bbdee 100644 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import kotlin.coroutines.resume import kotlin.coroutines.resumeWithException @@ -261,7 +260,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt deleted file mode 100644 index c5d330ac075..00000000000 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt +++ /dev/null @@ -1,37 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.google.gson.TypeAdapter -import com.google.gson.stream.JsonReader -import com.google.gson.stream.JsonWriter -import com.google.gson.stream.JsonToken.NULL -import java.io.IOException -import java.text.DateFormat -import java.text.SimpleDateFormat -import java.util.Date -import java.util.Locale - -class DateAdapter(val formatter: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault())) : TypeAdapter<Date>() { - @Throws(IOException::class) - override fun write(out: JsonWriter?, value: Date?) { - if (value == null) { - out?.nullValue() - } else { - out?.value(formatter.format(value)) - } - } - - @Throws(IOException::class) - override fun read(out: JsonReader?): Date? { - out ?: return null - - when (out.peek()) { - NULL -> { - out.nextNull() - return null - } - else -> { - return formatter.parse(out.nextString()) - } - } - } -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES b/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index c8b93b33bf6..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 7a8dcc91cd4..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 25447c818e6..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index 18d2ce3dbbe..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,33 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonClass - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ -@JsonClass(generateAdapter = true) -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index 8396fa42357..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,30 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonClass - -/** - * A category for a pet - * @param id - * @param name - */ -@JsonClass(generateAdapter = true) -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index d7091dd4c0c..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,55 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonClass - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ -@JsonClass(generateAdapter = true) -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index 8b4e6b44d4c..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,57 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonClass - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ -@JsonClass(generateAdapter = true) -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index e7cdab2bb5d..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,30 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonClass - -/** - * A tag for a pet - * @param id - * @param name - */ -@JsonClass(generateAdapter = true) -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index 1bfad844904..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,49 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import com.squareup.moshi.JsonClass - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ -@JsonClass(generateAdapter = true) -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index c75d4889d2e..003c196213f 100644 --- a/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -248,7 +247,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-moshi-codegen/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES b/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES index d95b6af6c45..abb56b172d3 100644 --- a/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle.kts docs/ApiResponse.md @@ -9,6 +10,10 @@ docs/StoreApi.md docs/Tag.md docs/User.md docs/UserApi.md +gradle/wrapper/gradle-wrapper.jar +gradle/wrapper/gradle-wrapper.properties +gradlew +gradlew.bat settings.gradle.kts src/commonMain/kotlin/org/openapitools/client/apis/PetApi.kt src/commonMain/kotlin/org/openapitools/client/apis/StoreApi.kt diff --git a/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES b/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index b6b38fa42f3..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -internal class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 19b7acdbd31..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -internal class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 979bb1b81f8..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -internal class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index d26cda9091c..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -internal typealias MultiValueMap = MutableMap<String,List<String>> - -internal fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -internal val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -internal fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -internal fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index c4da8e3989b..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -internal open class ApiClient(val baseUrl: String) { - internal companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index c618544573e..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -internal enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -internal interface Response - -internal abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -internal class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -internal class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -internal class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -internal class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -internal class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index d7f9079c0d5..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -internal object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index 86bcb51fba6..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -internal class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index 204b69dcb08..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -internal open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - internal companion object { - private const val serialVersionUID: Long = 123L - } -} - -internal open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - internal companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index e86215d5717..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -internal class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index fe7069904ca..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -internal class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index be7703c103d..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -internal class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 68f41c5497d..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -internal data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index e0fbb1e6526..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -internal enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 858d1b7339b..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -internal val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -internal val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -internal val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -internal val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 7265f759142..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -internal object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index 02fa692b57d..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -internal class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index a695278dfa3..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -internal data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index 376994a9b25..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A category for a pet - * @param id - * @param name - */ - -internal data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index a943b97c1ea..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -internal data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - internal enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index 544fab20f5a..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -internal data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - internal enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index d9b84e93eaf..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A tag for a pet - * @param id - * @param name - */ - -internal data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index e0e821cd7e3..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -internal data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index cb6d8697017..773b9b0eb42 100644 --- a/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -248,7 +247,7 @@ internal open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index d7f9079c0d5..00000000000 --- a/samples/client/petstore/kotlin-nonpublic/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -internal object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES b/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index 95f695cb9f4..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet>? { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet>? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet>? { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet>? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet? { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse? { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index c442f866100..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int>? { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int>? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order? { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order? { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 6e6c329144c..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User? { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String or null - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String? { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String? - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 7a8dcc91cd4..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 77066de4e55..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T?, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index 7d40c8efbc2..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,38 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index ceb0fbc8fe6..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index ed8f8b13a43..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,58 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index 105f485f021..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,60 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 944b1cd0a14..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index 9697f07d5bf..00000000000 --- a/samples/client/petstore/kotlin-nullable/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index c75d4889d2e..003c196213f 100644 --- a/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -248,7 +247,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-nullable/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES b/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index c8b93b33bf6..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 9d526273d7a..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,249 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.MediaType -import okhttp3.FormBody -import okhttp3.HttpUrl -import okhttp3.ResponseBody -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> RequestBody.create( - MediaType.parse(mediaType), content - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.of( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = MediaType.parse(guessContentTypeFromFile(value)) - addPart(partHeaders, RequestBody.create(fileMediaType, value)) - } else { - val partHeaders = Headers.of( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - RequestBody.create(null, parameterToString(value)) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> RequestBody.create( - MediaType.parse(mediaType), Serializer.moshi.adapter(T::class.java).toJson(content) - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = HttpUrl.parse(baseUrl) ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code(), - response.headers().toMultimap() - ) - response.isInformational -> return Informational( - response.message(), - response.code(), - response.headers().toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body(), accept), - response.code(), - response.headers().toMultimap() - ) - response.isClientError -> return ClientError( - response.message(), - response.body()?.string(), - response.code(), - response.headers().toMultimap() - ) - else -> return ServerError( - response.message(), - response.body()?.string(), - response.code(), - response.headers().toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 037fedbd18b..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code() in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code() in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code() in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code() in 500..999 diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index fafca8738f6..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index a4c17c3b49d..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index a66c335904e..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index a3df06cb6eb..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 6e619023a5c..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index af1e270325d..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index 217d6fe0199..6b722e7d99f 100644 --- a/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -23,7 +23,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -245,7 +244,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-okhttp3/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES index cc7132b2874..d252c0a2ec4 100644 --- a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md @@ -30,7 +31,6 @@ src/main/kotlin/org/openapitools/client/infrastructure/BigDecimalAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/BigIntegerAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/ByteArrayAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/CollectionFormats.kt -src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/LocalDateAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt src/main/kotlin/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt diff --git a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt deleted file mode 100644 index 0c8a4fa54d2..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/DateAdapter.kt +++ /dev/null @@ -1,28 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlinx.serialization.KSerializer -import kotlinx.serialization.Serializer -import kotlinx.serialization.encoding.Decoder -import kotlinx.serialization.encoding.Encoder -import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor -import kotlinx.serialization.descriptors.PrimitiveKind -import kotlinx.serialization.descriptors.SerialDescriptor -import java.text.DateFormat -import java.text.SimpleDateFormat -import java.util.Date -import java.util.Locale - -@Serializer(forClass = Date::class) -object DateAdapter : KSerializer<Date> { - private val df: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ", Locale.getDefault()) - - override val descriptor: SerialDescriptor = PrimitiveSerialDescriptor("Date", PrimitiveKind.STRING) - - override fun serialize(encoder: Encoder, value: Date) { - encoder.encodeString(df.format(value)) - } - - override fun deserialize(decoder: Decoder): Date { - return df.parse(decoder.decodeString())!! - } -} diff --git a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/Serializer.kt index e769dec78ea..bbb13638034 100644 --- a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/Serializer.kt +++ b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/src/main/kotlin/org/openapitools/client/infrastructure/Serializer.kt @@ -1,6 +1,5 @@ package org.openapitools.client.infrastructure -import java.util.Date import java.math.BigDecimal import java.math.BigInteger import java.time.LocalDate @@ -20,7 +19,6 @@ object Serializer { val kotlinSerializationAdapters = SerializersModule { contextual(BigDecimal::class, BigDecimalAdapter) contextual(BigInteger::class, BigIntegerAdapter) - contextual(Date::class, DateAdapter) contextual(LocalDate::class, LocalDateAdapter) contextual(LocalDateTime::class, LocalDateTimeAdapter) contextual(OffsetDateTime::class, OffsetDateTimeAdapter) diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES b/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES index 04b505d1f17..ce4a64cc477 100644 --- a/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index 90e791f37af..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,125 +0,0 @@ -package org.openapitools.client.apis - -import org.openapitools.client.infrastructure.CollectionFormats.* -import retrofit2.http.* -import okhttp3.RequestBody -import io.reactivex.rxjava3.core.Single; -import io.reactivex.rxjava3.core.Completable; - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import okhttp3.MultipartBody - -interface PetApi { - /** - * Add a new pet to the store - * - * Responses: - * - 405: Invalid input - * - * @param body Pet object that needs to be added to the store - * @return [Call]<[Unit]> - */ - @POST("pet") - fun addPet(@Body body: Pet): Completable - - /** - * Deletes a pet - * - * Responses: - * - 400: Invalid pet value - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return [Call]<[Unit]> - */ - @DELETE("pet/{petId}") - fun deletePet(@Path("petId") petId: kotlin.Long, @Header("api_key") apiKey: kotlin.String): Completable - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * Responses: - * - 200: successful operation - * - 400: Invalid status value - * - * @param status Status values that need to be considered for filter - * @return [Call]<[kotlin.collections.List<Pet>]> - */ - @GET("pet/findByStatus") - fun findPetsByStatus(@Query("status") status: CSVParams): Single<kotlin.collections.List<Pet>> - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * Responses: - * - 200: successful operation - * - 400: Invalid tag value - * - * @param tags Tags to filter by - * @return [Call]<[kotlin.collections.List<Pet>]> - */ - @Deprecated("This api was deprecated") - @GET("pet/findByTags") - fun findPetsByTags(@Query("tags") tags: CSVParams): Single<kotlin.collections.List<Pet>> - - /** - * Find pet by ID - * Returns a single pet - * Responses: - * - 200: successful operation - * - 400: Invalid ID supplied - * - 404: Pet not found - * - * @param petId ID of pet to return - * @return [Call]<[Pet]> - */ - @GET("pet/{petId}") - fun getPetById(@Path("petId") petId: kotlin.Long): Single<Pet> - - /** - * Update an existing pet - * - * Responses: - * - 400: Invalid ID supplied - * - 404: Pet not found - * - 405: Validation exception - * - * @param body Pet object that needs to be added to the store - * @return [Call]<[Unit]> - */ - @PUT("pet") - fun updatePet(@Body body: Pet): Completable - - /** - * Updates a pet in the store with form data - * - * Responses: - * - 405: Invalid input - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return [Call]<[Unit]> - */ - @FormUrlEncoded - @POST("pet/{petId}") - fun updatePetWithForm(@Path("petId") petId: kotlin.Long, @Field("name") name: kotlin.String, @Field("status") status: kotlin.String): Completable - - /** - * uploads an image - * - * Responses: - * - 200: successful operation - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return [Call]<[ApiResponse]> - */ - @Multipart - @POST("pet/{petId}/uploadImage") - fun uploadFile(@Path("petId") petId: kotlin.Long, @Part("additionalMetadata") additionalMetadata: kotlin.String, @Part file: MultipartBody.Part): Single<ApiResponse> - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 11acb2eb8b7..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,63 +0,0 @@ -package org.openapitools.client.apis - -import org.openapitools.client.infrastructure.CollectionFormats.* -import retrofit2.http.* -import okhttp3.RequestBody -import io.reactivex.rxjava3.core.Single; -import io.reactivex.rxjava3.core.Completable; - -import org.openapitools.client.models.Order - -interface StoreApi { - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * Responses: - * - 400: Invalid ID supplied - * - 404: Order not found - * - * @param orderId ID of the order that needs to be deleted - * @return [Call]<[Unit]> - */ - @DELETE("store/order/{orderId}") - fun deleteOrder(@Path("orderId") orderId: kotlin.String): Completable - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * Responses: - * - 200: successful operation - * - * @return [Call]<[kotlin.collections.Map<kotlin.String, kotlin.Int>]> - */ - @GET("store/inventory") - fun getInventory(): Single<kotlin.collections.Map<kotlin.String, kotlin.Int>> - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * Responses: - * - 200: successful operation - * - 400: Invalid ID supplied - * - 404: Order not found - * - * @param orderId ID of pet that needs to be fetched - * @return [Call]<[Order]> - */ - @GET("store/order/{orderId}") - fun getOrderById(@Path("orderId") orderId: kotlin.Long): Single<Order> - - /** - * Place an order for a pet - * - * Responses: - * - 200: successful operation - * - 400: Invalid Order - * - * @param body order placed for purchasing the pet - * @return [Call]<[Order]> - */ - @POST("store/order") - fun placeOrder(@Body body: Order): Single<Order> - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index d6fad78e88f..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,114 +0,0 @@ -package org.openapitools.client.apis - -import org.openapitools.client.infrastructure.CollectionFormats.* -import retrofit2.http.* -import okhttp3.RequestBody -import io.reactivex.rxjava3.core.Single; -import io.reactivex.rxjava3.core.Completable; - -import org.openapitools.client.models.User - -interface UserApi { - /** - * Create user - * This can only be done by the logged in user. - * Responses: - * - 0: successful operation - * - * @param body Created user object - * @return [Call]<[Unit]> - */ - @POST("user") - fun createUser(@Body body: User): Completable - - /** - * Creates list of users with given input array - * - * Responses: - * - 0: successful operation - * - * @param body List of user object - * @return [Call]<[Unit]> - */ - @POST("user/createWithArray") - fun createUsersWithArrayInput(@Body body: kotlin.collections.List<User>): Completable - - /** - * Creates list of users with given input array - * - * Responses: - * - 0: successful operation - * - * @param body List of user object - * @return [Call]<[Unit]> - */ - @POST("user/createWithList") - fun createUsersWithListInput(@Body body: kotlin.collections.List<User>): Completable - - /** - * Delete user - * This can only be done by the logged in user. - * Responses: - * - 400: Invalid username supplied - * - 404: User not found - * - * @param username The name that needs to be deleted - * @return [Call]<[Unit]> - */ - @DELETE("user/{username}") - fun deleteUser(@Path("username") username: kotlin.String): Completable - - /** - * Get user by user name - * - * Responses: - * - 200: successful operation - * - 400: Invalid username supplied - * - 404: User not found - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return [Call]<[User]> - */ - @GET("user/{username}") - fun getUserByName(@Path("username") username: kotlin.String): Single<User> - - /** - * Logs user into the system - * - * Responses: - * - 200: successful operation - * - 400: Invalid username/password supplied - * - * @param username The user name for login - * @param password The password for login in clear text - * @return [Call]<[kotlin.String]> - */ - @GET("user/login") - fun loginUser(@Query("username") username: kotlin.String, @Query("password") password: kotlin.String): Single<kotlin.String> - - /** - * Logs out current logged in user session - * - * Responses: - * - 0: successful operation - * - * @return [Call]<[Unit]> - */ - @GET("user/logout") - fun logoutUser(): Completable - - /** - * Updated user - * This can only be done by the logged in user. - * Responses: - * - 400: Invalid user supplied - * - 404: User not found - * - * @param username name that need to be deleted - * @param body Updated user object - * @return [Call]<[Unit]> - */ - @PUT("user/{username}") - fun updateUser(@Path("username") username: kotlin.String, @Body body: User): Completable - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt deleted file mode 100644 index 524d5190ef8..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt +++ /dev/null @@ -1,50 +0,0 @@ -package org.openapitools.client.auth - -import java.io.IOException -import java.net.URI -import java.net.URISyntaxException - -import okhttp3.Interceptor -import okhttp3.Response - -class ApiKeyAuth( - private val location: String = "", - private val paramName: String = "", - private var apiKey: String = "" -) : Interceptor { - - @Throws(IOException::class) - override fun intercept(chain: Interceptor.Chain): Response { - var request = chain.request() - - if ("query" == location) { - var newQuery = request.url.toUri().query - val paramValue = "$paramName=$apiKey" - if (newQuery == null) { - newQuery = paramValue - } else { - newQuery += "&$paramValue" - } - - val newUri: URI - try { - val oldUri = request.url.toUri() - newUri = URI(oldUri.scheme, oldUri.authority, - oldUri.path, newQuery, oldUri.fragment) - } catch (e: URISyntaxException) { - throw IOException(e) - } - - request = request.newBuilder().url(newUri.toURL()).build() - } else if ("header" == location) { - request = request.newBuilder() - .addHeader(paramName, apiKey) - .build() - } else if ("cookie" == location) { - request = request.newBuilder() - .addHeader("Cookie", "$paramName=$apiKey") - .build() - } - return chain.proceed(request) - } -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuth.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuth.kt deleted file mode 100644 index 311a8f43979..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuth.kt +++ /dev/null @@ -1,151 +0,0 @@ -package org.openapitools.client.auth - -import java.net.HttpURLConnection.HTTP_UNAUTHORIZED -import java.net.HttpURLConnection.HTTP_FORBIDDEN - -import java.io.IOException - -import org.apache.oltu.oauth2.client.OAuthClient -import org.apache.oltu.oauth2.client.request.OAuthBearerClientRequest -import org.apache.oltu.oauth2.client.request.OAuthClientRequest -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder -import org.apache.oltu.oauth2.common.exception.OAuthProblemException -import org.apache.oltu.oauth2.common.exception.OAuthSystemException -import org.apache.oltu.oauth2.common.message.types.GrantType -import org.apache.oltu.oauth2.common.token.BasicOAuthToken - -import okhttp3.Interceptor -import okhttp3.OkHttpClient -import okhttp3.Response - -class OAuth( - client: OkHttpClient, - var tokenRequestBuilder: TokenRequestBuilder -) : Interceptor { - - interface AccessTokenListener { - fun notify(token: BasicOAuthToken) - } - - private var oauthClient: OAuthClient = OAuthClient(OAuthOkHttpClient(client)) - - @Volatile - private var accessToken: String? = null - var authenticationRequestBuilder: AuthenticationRequestBuilder? = null - private var accessTokenListener: AccessTokenListener? = null - - constructor( - requestBuilder: TokenRequestBuilder - ) : this( - OkHttpClient(), - requestBuilder - ) - - constructor( - flow: OAuthFlow, - authorizationUrl: String, - tokenUrl: String, - scopes: String - ) : this( - OAuthClientRequest.tokenLocation(tokenUrl).setScope(scopes) - ) { - setFlow(flow); - authenticationRequestBuilder = OAuthClientRequest.authorizationLocation(authorizationUrl); - } - - fun setFlow(flow: OAuthFlow) { - when (flow) { - OAuthFlow.accessCode, OAuthFlow.implicit -> - tokenRequestBuilder.setGrantType(GrantType.AUTHORIZATION_CODE) - OAuthFlow.password -> - tokenRequestBuilder.setGrantType(GrantType.PASSWORD) - OAuthFlow.application -> - tokenRequestBuilder.setGrantType(GrantType.CLIENT_CREDENTIALS) - } - } - - @Throws(IOException::class) - override fun intercept(chain: Interceptor.Chain): Response { - return retryingIntercept(chain, true) - } - - @Throws(IOException::class) - private fun retryingIntercept(chain: Interceptor.Chain, updateTokenAndRetryOnAuthorizationFailure: Boolean): Response { - var request = chain.request() - - // If the request already have an authorization (eg. Basic auth), do nothing - if (request.header("Authorization") != null) { - return chain.proceed(request) - } - - // If first time, get the token - val oAuthRequest: OAuthClientRequest - if (accessToken == null) { - updateAccessToken(null) - } - - if (accessToken != null) { - // Build the request - val rb = request.newBuilder() - - val requestAccessToken = accessToken - try { - oAuthRequest = OAuthBearerClientRequest(request.url.toString()) - .setAccessToken(requestAccessToken) - .buildHeaderMessage() - } catch (e: OAuthSystemException) { - throw IOException(e) - } - - oAuthRequest.headers.entries.forEach { header -> - rb.addHeader(header.key, header.value) - } - rb.url(oAuthRequest.locationUri) - - //Execute the request - val response = chain.proceed(rb.build()) - - // 401/403 most likely indicates that access token has expired. Unless it happens two times in a row. - if ((response.code == HTTP_UNAUTHORIZED || response.code == HTTP_FORBIDDEN) && updateTokenAndRetryOnAuthorizationFailure) { - try { - if (updateAccessToken(requestAccessToken)) { - response.body?.close() - return retryingIntercept(chain, false) - } - } catch (e: Exception) { - response.body?.close() - throw e - } - } - return response - } else { - return chain.proceed(chain.request()) - } - } - - /** - * Returns true if the access token has been updated - */ - @Throws(IOException::class) - @Synchronized - fun updateAccessToken(requestAccessToken: String?): Boolean { - if (accessToken == null || accessToken.equals(requestAccessToken)) { - return try { - val accessTokenResponse = oauthClient.accessToken(this.tokenRequestBuilder.buildBodyMessage()) - if (accessTokenResponse != null && accessTokenResponse.accessToken != null) { - accessToken = accessTokenResponse.accessToken - accessTokenListener?.notify(accessTokenResponse.oAuthToken as BasicOAuthToken) - !accessToken.equals(requestAccessToken) - } else { - false - } - } catch (e: OAuthSystemException) { - throw IOException(e) - } catch (e: OAuthProblemException) { - throw IOException(e) - } - } - return true; - } -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthFlow.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthFlow.kt deleted file mode 100644 index bcada9b7a6a..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthFlow.kt +++ /dev/null @@ -1,5 +0,0 @@ -package org.openapitools.client.auth - -enum class OAuthFlow { - accessCode, implicit, password, application -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt deleted file mode 100644 index 93adbda3fc9..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt +++ /dev/null @@ -1,61 +0,0 @@ -package org.openapitools.client.auth - -import java.io.IOException - -import org.apache.oltu.oauth2.client.HttpClient -import org.apache.oltu.oauth2.client.request.OAuthClientRequest -import org.apache.oltu.oauth2.client.response.OAuthClientResponse -import org.apache.oltu.oauth2.client.response.OAuthClientResponseFactory -import org.apache.oltu.oauth2.common.exception.OAuthProblemException -import org.apache.oltu.oauth2.common.exception.OAuthSystemException - -import okhttp3.OkHttpClient -import okhttp3.Request -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.RequestBody - - -class OAuthOkHttpClient( - private var client: OkHttpClient -) : HttpClient { - - constructor() : this(OkHttpClient()) - - @Throws(OAuthSystemException::class, OAuthProblemException::class) - override fun <T : OAuthClientResponse?> execute( - request: OAuthClientRequest, - headers: Map<String, String>?, - requestMethod: String, - responseClass: Class<T>?): T { - - var mediaType = "application/json".toMediaTypeOrNull() - val requestBuilder = Request.Builder().url(request.locationUri) - - headers?.forEach { entry -> - if (entry.key.equals("Content-Type", true)) { - mediaType = entry.value.toMediaTypeOrNull() - } else { - requestBuilder.addHeader(entry.key, entry.value) - } - } - - val body: RequestBody? = if (request.body != null) RequestBody.create(mediaType, request.body) else null - requestBuilder.method(requestMethod, body) - - try { - val response = client.newCall(requestBuilder.build()).execute() - return OAuthClientResponseFactory.createCustomResponse( - response.body?.string(), - response.body?.contentType()?.toString(), - response.code, - responseClass) - } catch (e: IOException) { - throw OAuthSystemException(e) - } - } - - override fun shutdown() { - // Nothing to do here - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 30f649932fc..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,203 +0,0 @@ -package org.openapitools.client.infrastructure - -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder -import org.openapitools.client.auth.ApiKeyAuth -import org.openapitools.client.auth.OAuth -import org.openapitools.client.auth.OAuth.AccessTokenListener -import org.openapitools.client.auth.OAuthFlow - -import okhttp3.Interceptor -import okhttp3.OkHttpClient -import retrofit2.Retrofit -import okhttp3.logging.HttpLoggingInterceptor -import retrofit2.converter.scalars.ScalarsConverterFactory -import retrofit2.adapter.rxjava3.RxJava3CallAdapterFactory -import com.squareup.moshi.Moshi -import retrofit2.converter.moshi.MoshiConverterFactory - -class ApiClient( - private var baseUrl: String = defaultBasePath, - private val okHttpClientBuilder: OkHttpClient.Builder? = null, - private val serializerBuilder: Moshi.Builder = Serializer.moshiBuilder, - private val okHttpClient : OkHttpClient? = null -) { - private val apiAuthorizations = mutableMapOf<String, Interceptor>() - var logger: ((String) -> Unit)? = null - - private val retrofitBuilder: Retrofit.Builder by lazy { - Retrofit.Builder() - .baseUrl(baseUrl) - .addConverterFactory(ScalarsConverterFactory.create()) - - .addCallAdapterFactory(RxJava3CallAdapterFactory.create()) - .addConverterFactory(MoshiConverterFactory.create(serializerBuilder.build())) - } - - private val clientBuilder: OkHttpClient.Builder by lazy { - okHttpClientBuilder ?: defaultClientBuilder - } - - private val defaultClientBuilder: OkHttpClient.Builder by lazy { - OkHttpClient() - .newBuilder() - .addInterceptor(HttpLoggingInterceptor(object : HttpLoggingInterceptor.Logger { - override fun log(message: String) { - logger?.invoke(message) - } - }).apply { - level = HttpLoggingInterceptor.Level.BODY - }) - } - - init { - normalizeBaseUrl() - } - - constructor( - baseUrl: String = defaultBasePath, - okHttpClientBuilder: OkHttpClient.Builder? = null, - serializerBuilder: Moshi.Builder = Serializer.moshiBuilder, - authNames: Array<String> - ) : this(baseUrl, okHttpClientBuilder, serializerBuilder) { - authNames.forEach { authName -> - val auth = when (authName) { - "api_key" -> ApiKeyAuth("header", "api_key")"petstore_auth" -> OAuth(OAuthFlow.implicit, "http://petstore.swagger.io/api/oauth/dialog", "", "write:pets, read:pets") - else -> throw RuntimeException("auth name $authName not found in available auth names") - } - addAuthorization(authName, auth); - } - } - - constructor( - baseUrl: String = defaultBasePath, - okHttpClientBuilder: OkHttpClient.Builder? = null, - serializerBuilder: Moshi.Builder = Serializer.moshiBuilder, - authName: String, - clientId: String, - secret: String, - username: String, - password: String - ) : this(baseUrl, okHttpClientBuilder, serializerBuilder, arrayOf(authName)) { - getTokenEndPoint() - ?.setClientId(clientId) - ?.setClientSecret(secret) - ?.setUsername(username) - ?.setPassword(password) - } - - /** - * Helper method to configure the token endpoint of the first oauth found in the apiAuthorizations (there should be only one) - * @return Token request builder - */ - fun getTokenEndPoint(): TokenRequestBuilder? { - var result: TokenRequestBuilder? = null - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - result = tokenRequestBuilder - } - return result - } - - /** - * Helper method to configure authorization endpoint of the first oauth found in the apiAuthorizations (there should be only one) - * @return Authentication request builder - */ - fun getAuthorizationEndPoint(): AuthenticationRequestBuilder? { - var result: AuthenticationRequestBuilder? = null - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - result = authenticationRequestBuilder - } - return result - } - - /** - * Helper method to pre-set the oauth access token of the first oauth found in the apiAuthorizations (there should be only one) - * @param accessToken Access token - * @return ApiClient - */ - fun setAccessToken(accessToken: String): ApiClient { - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - setAccessToken(accessToken) - } - return this - } - - /** - * Helper method to configure the oauth accessCode/implicit flow parameters - * @param clientId Client ID - * @param clientSecret Client secret - * @param redirectURI Redirect URI - * @return ApiClient - */ - fun configureAuthorizationFlow(clientId: String, clientSecret: String, redirectURI: String): ApiClient { - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - tokenRequestBuilder - .setClientId(clientId) - .setClientSecret(clientSecret) - .setRedirectURI(redirectURI) - authenticationRequestBuilder - ?.setClientId(clientId) - ?.setRedirectURI(redirectURI) - } - return this; - } - - /** - * Configures a listener which is notified when a new access token is received. - * @param accessTokenListener Access token listener - * @return ApiClient - */ - fun registerAccessTokenListener(accessTokenListener: AccessTokenListener): ApiClient { - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - registerAccessTokenListener(accessTokenListener) - } - return this; - } - - /** - * Adds an authorization to be used by the client - * @param authName Authentication name - * @param authorization Authorization interceptor - * @return ApiClient - */ - fun addAuthorization(authName: String, authorization: Interceptor): ApiClient { - if (apiAuthorizations.containsKey(authName)) { - throw RuntimeException("auth name $authName already in api authorizations") - } - apiAuthorizations[authName] = authorization - clientBuilder.addInterceptor(authorization) - return this - } - - fun setLogger(logger: (String) -> Unit): ApiClient { - this.logger = logger - return this - } - - fun <S> createService(serviceClass: Class<S>): S { - val usedClient = this.okHttpClient ?: clientBuilder.build() - return retrofitBuilder.client(usedClient).build().create(serviceClass) - } - - private fun normalizeBaseUrl() { - if (!baseUrl.endsWith("/")) { - baseUrl += "/" - } - } - - private inline fun <T, reified U> Iterable<T>.runOnFirst(callback: U.() -> Unit) { - for (element in this) { - if (element is U) { - callback.invoke(element) - break - } - } - } - - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt deleted file mode 100644 index 001e99325d2..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt +++ /dev/null @@ -1,56 +0,0 @@ -package org.openapitools.client.infrastructure - -class CollectionFormats { - - open class CSVParams { - - var params: List<String> - - constructor(params: List<String>) { - this.params = params - } - - constructor(vararg params: String) { - this.params = listOf(*params) - } - - override fun toString(): String { - return params.joinToString(",") - } - } - - open class SSVParams : CSVParams { - - constructor(params: List<String>) : super(params) - - constructor(vararg params: String) : super(*params) - - override fun toString(): String { - return params.joinToString(" ") - } - } - - class TSVParams : CSVParams { - - constructor(params: List<String>) : super(params) - - constructor(vararg params: String) : super(*params) - - override fun toString(): String { - return params.joinToString("\t") - } - } - - class PIPESParams : CSVParams { - - constructor(params: List<String>) : super(params) - - constructor(vararg params: String) : super(*params) - - override fun toString(): String { - return params.joinToString("|") - } - } - - class SPACEParams : SSVParams() -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt deleted file mode 100644 index 1804d1ae2bb..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt +++ /dev/null @@ -1,16 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.JsonDataException -import com.squareup.moshi.Moshi -import retrofit2.Response - -@Throws(JsonDataException::class) -inline fun <reified T> Response<*>.getErrorResponse(serializerBuilder: Moshi.Builder = Serializer.moshiBuilder): T? { - val serializer = serializerBuilder.build() - val parser = serializer.adapter(T::class.java) - val response = errorBody()?.string() - if(response != null) { - return parser.fromJson(response) - } - return null -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index fafca8738f6..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index a4c17c3b49d..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index a66c335904e..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index a3df06cb6eb..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 6e619023a5c..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index af1e270325d..00000000000 --- a/samples/client/petstore/kotlin-retrofit2-rx3/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES b/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES index 04b505d1f17..ce4a64cc477 100644 --- a/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index e8b980bc872..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,124 +0,0 @@ -package org.openapitools.client.apis - -import org.openapitools.client.infrastructure.CollectionFormats.* -import retrofit2.http.* -import retrofit2.Call -import okhttp3.RequestBody - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import okhttp3.MultipartBody - -interface PetApi { - /** - * Add a new pet to the store - * - * Responses: - * - 405: Invalid input - * - * @param body Pet object that needs to be added to the store - * @return [Call]<[Unit]> - */ - @POST("pet") - fun addPet(@Body body: Pet): Call<Unit> - - /** - * Deletes a pet - * - * Responses: - * - 400: Invalid pet value - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return [Call]<[Unit]> - */ - @DELETE("pet/{petId}") - fun deletePet(@Path("petId") petId: kotlin.Long, @Header("api_key") apiKey: kotlin.String): Call<Unit> - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * Responses: - * - 200: successful operation - * - 400: Invalid status value - * - * @param status Status values that need to be considered for filter - * @return [Call]<[kotlin.collections.List<Pet>]> - */ - @GET("pet/findByStatus") - fun findPetsByStatus(@Query("status") status: CSVParams): Call<kotlin.collections.List<Pet>> - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * Responses: - * - 200: successful operation - * - 400: Invalid tag value - * - * @param tags Tags to filter by - * @return [Call]<[kotlin.collections.List<Pet>]> - */ - @Deprecated("This api was deprecated") - @GET("pet/findByTags") - fun findPetsByTags(@Query("tags") tags: CSVParams): Call<kotlin.collections.List<Pet>> - - /** - * Find pet by ID - * Returns a single pet - * Responses: - * - 200: successful operation - * - 400: Invalid ID supplied - * - 404: Pet not found - * - * @param petId ID of pet to return - * @return [Call]<[Pet]> - */ - @GET("pet/{petId}") - fun getPetById(@Path("petId") petId: kotlin.Long): Call<Pet> - - /** - * Update an existing pet - * - * Responses: - * - 400: Invalid ID supplied - * - 404: Pet not found - * - 405: Validation exception - * - * @param body Pet object that needs to be added to the store - * @return [Call]<[Unit]> - */ - @PUT("pet") - fun updatePet(@Body body: Pet): Call<Unit> - - /** - * Updates a pet in the store with form data - * - * Responses: - * - 405: Invalid input - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return [Call]<[Unit]> - */ - @FormUrlEncoded - @POST("pet/{petId}") - fun updatePetWithForm(@Path("petId") petId: kotlin.Long, @Field("name") name: kotlin.String, @Field("status") status: kotlin.String): Call<Unit> - - /** - * uploads an image - * - * Responses: - * - 200: successful operation - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return [Call]<[ApiResponse]> - */ - @Multipart - @POST("pet/{petId}/uploadImage") - fun uploadFile(@Path("petId") petId: kotlin.Long, @Part("additionalMetadata") additionalMetadata: kotlin.String, @Part file: MultipartBody.Part): Call<ApiResponse> - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index be05f2bb696..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,62 +0,0 @@ -package org.openapitools.client.apis - -import org.openapitools.client.infrastructure.CollectionFormats.* -import retrofit2.http.* -import retrofit2.Call -import okhttp3.RequestBody - -import org.openapitools.client.models.Order - -interface StoreApi { - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * Responses: - * - 400: Invalid ID supplied - * - 404: Order not found - * - * @param orderId ID of the order that needs to be deleted - * @return [Call]<[Unit]> - */ - @DELETE("store/order/{orderId}") - fun deleteOrder(@Path("orderId") orderId: kotlin.String): Call<Unit> - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * Responses: - * - 200: successful operation - * - * @return [Call]<[kotlin.collections.Map<kotlin.String, kotlin.Int>]> - */ - @GET("store/inventory") - fun getInventory(): Call<kotlin.collections.Map<kotlin.String, kotlin.Int>> - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * Responses: - * - 200: successful operation - * - 400: Invalid ID supplied - * - 404: Order not found - * - * @param orderId ID of pet that needs to be fetched - * @return [Call]<[Order]> - */ - @GET("store/order/{orderId}") - fun getOrderById(@Path("orderId") orderId: kotlin.Long): Call<Order> - - /** - * Place an order for a pet - * - * Responses: - * - 200: successful operation - * - 400: Invalid Order - * - * @param body order placed for purchasing the pet - * @return [Call]<[Order]> - */ - @POST("store/order") - fun placeOrder(@Body body: Order): Call<Order> - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 66c1e7fbd26..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,113 +0,0 @@ -package org.openapitools.client.apis - -import org.openapitools.client.infrastructure.CollectionFormats.* -import retrofit2.http.* -import retrofit2.Call -import okhttp3.RequestBody - -import org.openapitools.client.models.User - -interface UserApi { - /** - * Create user - * This can only be done by the logged in user. - * Responses: - * - 0: successful operation - * - * @param body Created user object - * @return [Call]<[Unit]> - */ - @POST("user") - fun createUser(@Body body: User): Call<Unit> - - /** - * Creates list of users with given input array - * - * Responses: - * - 0: successful operation - * - * @param body List of user object - * @return [Call]<[Unit]> - */ - @POST("user/createWithArray") - fun createUsersWithArrayInput(@Body body: kotlin.collections.List<User>): Call<Unit> - - /** - * Creates list of users with given input array - * - * Responses: - * - 0: successful operation - * - * @param body List of user object - * @return [Call]<[Unit]> - */ - @POST("user/createWithList") - fun createUsersWithListInput(@Body body: kotlin.collections.List<User>): Call<Unit> - - /** - * Delete user - * This can only be done by the logged in user. - * Responses: - * - 400: Invalid username supplied - * - 404: User not found - * - * @param username The name that needs to be deleted - * @return [Call]<[Unit]> - */ - @DELETE("user/{username}") - fun deleteUser(@Path("username") username: kotlin.String): Call<Unit> - - /** - * Get user by user name - * - * Responses: - * - 200: successful operation - * - 400: Invalid username supplied - * - 404: User not found - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return [Call]<[User]> - */ - @GET("user/{username}") - fun getUserByName(@Path("username") username: kotlin.String): Call<User> - - /** - * Logs user into the system - * - * Responses: - * - 200: successful operation - * - 400: Invalid username/password supplied - * - * @param username The user name for login - * @param password The password for login in clear text - * @return [Call]<[kotlin.String]> - */ - @GET("user/login") - fun loginUser(@Query("username") username: kotlin.String, @Query("password") password: kotlin.String): Call<kotlin.String> - - /** - * Logs out current logged in user session - * - * Responses: - * - 0: successful operation - * - * @return [Call]<[Unit]> - */ - @GET("user/logout") - fun logoutUser(): Call<Unit> - - /** - * Updated user - * This can only be done by the logged in user. - * Responses: - * - 400: Invalid user supplied - * - 404: User not found - * - * @param username name that need to be deleted - * @param body Updated user object - * @return [Call]<[Unit]> - */ - @PUT("user/{username}") - fun updateUser(@Path("username") username: kotlin.String, @Body body: User): Call<Unit> - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt deleted file mode 100644 index 524d5190ef8..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/ApiKeyAuth.kt +++ /dev/null @@ -1,50 +0,0 @@ -package org.openapitools.client.auth - -import java.io.IOException -import java.net.URI -import java.net.URISyntaxException - -import okhttp3.Interceptor -import okhttp3.Response - -class ApiKeyAuth( - private val location: String = "", - private val paramName: String = "", - private var apiKey: String = "" -) : Interceptor { - - @Throws(IOException::class) - override fun intercept(chain: Interceptor.Chain): Response { - var request = chain.request() - - if ("query" == location) { - var newQuery = request.url.toUri().query - val paramValue = "$paramName=$apiKey" - if (newQuery == null) { - newQuery = paramValue - } else { - newQuery += "&$paramValue" - } - - val newUri: URI - try { - val oldUri = request.url.toUri() - newUri = URI(oldUri.scheme, oldUri.authority, - oldUri.path, newQuery, oldUri.fragment) - } catch (e: URISyntaxException) { - throw IOException(e) - } - - request = request.newBuilder().url(newUri.toURL()).build() - } else if ("header" == location) { - request = request.newBuilder() - .addHeader(paramName, apiKey) - .build() - } else if ("cookie" == location) { - request = request.newBuilder() - .addHeader("Cookie", "$paramName=$apiKey") - .build() - } - return chain.proceed(request) - } -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuth.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuth.kt deleted file mode 100644 index 311a8f43979..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuth.kt +++ /dev/null @@ -1,151 +0,0 @@ -package org.openapitools.client.auth - -import java.net.HttpURLConnection.HTTP_UNAUTHORIZED -import java.net.HttpURLConnection.HTTP_FORBIDDEN - -import java.io.IOException - -import org.apache.oltu.oauth2.client.OAuthClient -import org.apache.oltu.oauth2.client.request.OAuthBearerClientRequest -import org.apache.oltu.oauth2.client.request.OAuthClientRequest -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder -import org.apache.oltu.oauth2.common.exception.OAuthProblemException -import org.apache.oltu.oauth2.common.exception.OAuthSystemException -import org.apache.oltu.oauth2.common.message.types.GrantType -import org.apache.oltu.oauth2.common.token.BasicOAuthToken - -import okhttp3.Interceptor -import okhttp3.OkHttpClient -import okhttp3.Response - -class OAuth( - client: OkHttpClient, - var tokenRequestBuilder: TokenRequestBuilder -) : Interceptor { - - interface AccessTokenListener { - fun notify(token: BasicOAuthToken) - } - - private var oauthClient: OAuthClient = OAuthClient(OAuthOkHttpClient(client)) - - @Volatile - private var accessToken: String? = null - var authenticationRequestBuilder: AuthenticationRequestBuilder? = null - private var accessTokenListener: AccessTokenListener? = null - - constructor( - requestBuilder: TokenRequestBuilder - ) : this( - OkHttpClient(), - requestBuilder - ) - - constructor( - flow: OAuthFlow, - authorizationUrl: String, - tokenUrl: String, - scopes: String - ) : this( - OAuthClientRequest.tokenLocation(tokenUrl).setScope(scopes) - ) { - setFlow(flow); - authenticationRequestBuilder = OAuthClientRequest.authorizationLocation(authorizationUrl); - } - - fun setFlow(flow: OAuthFlow) { - when (flow) { - OAuthFlow.accessCode, OAuthFlow.implicit -> - tokenRequestBuilder.setGrantType(GrantType.AUTHORIZATION_CODE) - OAuthFlow.password -> - tokenRequestBuilder.setGrantType(GrantType.PASSWORD) - OAuthFlow.application -> - tokenRequestBuilder.setGrantType(GrantType.CLIENT_CREDENTIALS) - } - } - - @Throws(IOException::class) - override fun intercept(chain: Interceptor.Chain): Response { - return retryingIntercept(chain, true) - } - - @Throws(IOException::class) - private fun retryingIntercept(chain: Interceptor.Chain, updateTokenAndRetryOnAuthorizationFailure: Boolean): Response { - var request = chain.request() - - // If the request already have an authorization (eg. Basic auth), do nothing - if (request.header("Authorization") != null) { - return chain.proceed(request) - } - - // If first time, get the token - val oAuthRequest: OAuthClientRequest - if (accessToken == null) { - updateAccessToken(null) - } - - if (accessToken != null) { - // Build the request - val rb = request.newBuilder() - - val requestAccessToken = accessToken - try { - oAuthRequest = OAuthBearerClientRequest(request.url.toString()) - .setAccessToken(requestAccessToken) - .buildHeaderMessage() - } catch (e: OAuthSystemException) { - throw IOException(e) - } - - oAuthRequest.headers.entries.forEach { header -> - rb.addHeader(header.key, header.value) - } - rb.url(oAuthRequest.locationUri) - - //Execute the request - val response = chain.proceed(rb.build()) - - // 401/403 most likely indicates that access token has expired. Unless it happens two times in a row. - if ((response.code == HTTP_UNAUTHORIZED || response.code == HTTP_FORBIDDEN) && updateTokenAndRetryOnAuthorizationFailure) { - try { - if (updateAccessToken(requestAccessToken)) { - response.body?.close() - return retryingIntercept(chain, false) - } - } catch (e: Exception) { - response.body?.close() - throw e - } - } - return response - } else { - return chain.proceed(chain.request()) - } - } - - /** - * Returns true if the access token has been updated - */ - @Throws(IOException::class) - @Synchronized - fun updateAccessToken(requestAccessToken: String?): Boolean { - if (accessToken == null || accessToken.equals(requestAccessToken)) { - return try { - val accessTokenResponse = oauthClient.accessToken(this.tokenRequestBuilder.buildBodyMessage()) - if (accessTokenResponse != null && accessTokenResponse.accessToken != null) { - accessToken = accessTokenResponse.accessToken - accessTokenListener?.notify(accessTokenResponse.oAuthToken as BasicOAuthToken) - !accessToken.equals(requestAccessToken) - } else { - false - } - } catch (e: OAuthSystemException) { - throw IOException(e) - } catch (e: OAuthProblemException) { - throw IOException(e) - } - } - return true; - } -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthFlow.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthFlow.kt deleted file mode 100644 index bcada9b7a6a..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthFlow.kt +++ /dev/null @@ -1,5 +0,0 @@ -package org.openapitools.client.auth - -enum class OAuthFlow { - accessCode, implicit, password, application -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt deleted file mode 100644 index 93adbda3fc9..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/auth/OAuthOkHttpClient.kt +++ /dev/null @@ -1,61 +0,0 @@ -package org.openapitools.client.auth - -import java.io.IOException - -import org.apache.oltu.oauth2.client.HttpClient -import org.apache.oltu.oauth2.client.request.OAuthClientRequest -import org.apache.oltu.oauth2.client.response.OAuthClientResponse -import org.apache.oltu.oauth2.client.response.OAuthClientResponseFactory -import org.apache.oltu.oauth2.common.exception.OAuthProblemException -import org.apache.oltu.oauth2.common.exception.OAuthSystemException - -import okhttp3.OkHttpClient -import okhttp3.Request -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.RequestBody - - -class OAuthOkHttpClient( - private var client: OkHttpClient -) : HttpClient { - - constructor() : this(OkHttpClient()) - - @Throws(OAuthSystemException::class, OAuthProblemException::class) - override fun <T : OAuthClientResponse?> execute( - request: OAuthClientRequest, - headers: Map<String, String>?, - requestMethod: String, - responseClass: Class<T>?): T { - - var mediaType = "application/json".toMediaTypeOrNull() - val requestBuilder = Request.Builder().url(request.locationUri) - - headers?.forEach { entry -> - if (entry.key.equals("Content-Type", true)) { - mediaType = entry.value.toMediaTypeOrNull() - } else { - requestBuilder.addHeader(entry.key, entry.value) - } - } - - val body: RequestBody? = if (request.body != null) RequestBody.create(mediaType, request.body) else null - requestBuilder.method(requestMethod, body) - - try { - val response = client.newCall(requestBuilder.build()).execute() - return OAuthClientResponseFactory.createCustomResponse( - response.body?.string(), - response.body?.contentType()?.toString(), - response.code, - responseClass) - } catch (e: IOException) { - throw OAuthSystemException(e) - } - } - - override fun shutdown() { - // Nothing to do here - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index f19c5861dd7..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,200 +0,0 @@ -package org.openapitools.client.infrastructure - -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder -import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder -import org.openapitools.client.auth.ApiKeyAuth -import org.openapitools.client.auth.OAuth -import org.openapitools.client.auth.OAuth.AccessTokenListener -import org.openapitools.client.auth.OAuthFlow - -import okhttp3.Interceptor -import okhttp3.OkHttpClient -import retrofit2.Retrofit -import okhttp3.logging.HttpLoggingInterceptor -import retrofit2.converter.scalars.ScalarsConverterFactory -import com.squareup.moshi.Moshi -import retrofit2.converter.moshi.MoshiConverterFactory - -class ApiClient( - private var baseUrl: String = defaultBasePath, - private val okHttpClientBuilder: OkHttpClient.Builder? = null, - private val serializerBuilder: Moshi.Builder = Serializer.moshiBuilder, - private val okHttpClient : OkHttpClient? = null -) { - private val apiAuthorizations = mutableMapOf<String, Interceptor>() - var logger: ((String) -> Unit)? = null - - private val retrofitBuilder: Retrofit.Builder by lazy { - Retrofit.Builder() - .baseUrl(baseUrl) - .addConverterFactory(ScalarsConverterFactory.create()) - .addConverterFactory(MoshiConverterFactory.create(serializerBuilder.build())) - } - - private val clientBuilder: OkHttpClient.Builder by lazy { - okHttpClientBuilder ?: defaultClientBuilder - } - - private val defaultClientBuilder: OkHttpClient.Builder by lazy { - OkHttpClient() - .newBuilder() - .addInterceptor(HttpLoggingInterceptor(object : HttpLoggingInterceptor.Logger { - override fun log(message: String) { - logger?.invoke(message) - } - }).apply { - level = HttpLoggingInterceptor.Level.BODY - }) - } - - init { - normalizeBaseUrl() - } - - constructor( - baseUrl: String = defaultBasePath, - okHttpClientBuilder: OkHttpClient.Builder? = null, - serializerBuilder: Moshi.Builder = Serializer.moshiBuilder, - authNames: Array<String> - ) : this(baseUrl, okHttpClientBuilder, serializerBuilder) { - authNames.forEach { authName -> - val auth = when (authName) { - "api_key" -> ApiKeyAuth("header", "api_key")"petstore_auth" -> OAuth(OAuthFlow.implicit, "http://petstore.swagger.io/api/oauth/dialog", "", "write:pets, read:pets") - else -> throw RuntimeException("auth name $authName not found in available auth names") - } - addAuthorization(authName, auth); - } - } - - constructor( - baseUrl: String = defaultBasePath, - okHttpClientBuilder: OkHttpClient.Builder? = null, - serializerBuilder: Moshi.Builder = Serializer.moshiBuilder, - authName: String, - clientId: String, - secret: String, - username: String, - password: String - ) : this(baseUrl, okHttpClientBuilder, serializerBuilder, arrayOf(authName)) { - getTokenEndPoint() - ?.setClientId(clientId) - ?.setClientSecret(secret) - ?.setUsername(username) - ?.setPassword(password) - } - - /** - * Helper method to configure the token endpoint of the first oauth found in the apiAuthorizations (there should be only one) - * @return Token request builder - */ - fun getTokenEndPoint(): TokenRequestBuilder? { - var result: TokenRequestBuilder? = null - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - result = tokenRequestBuilder - } - return result - } - - /** - * Helper method to configure authorization endpoint of the first oauth found in the apiAuthorizations (there should be only one) - * @return Authentication request builder - */ - fun getAuthorizationEndPoint(): AuthenticationRequestBuilder? { - var result: AuthenticationRequestBuilder? = null - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - result = authenticationRequestBuilder - } - return result - } - - /** - * Helper method to pre-set the oauth access token of the first oauth found in the apiAuthorizations (there should be only one) - * @param accessToken Access token - * @return ApiClient - */ - fun setAccessToken(accessToken: String): ApiClient { - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - setAccessToken(accessToken) - } - return this - } - - /** - * Helper method to configure the oauth accessCode/implicit flow parameters - * @param clientId Client ID - * @param clientSecret Client secret - * @param redirectURI Redirect URI - * @return ApiClient - */ - fun configureAuthorizationFlow(clientId: String, clientSecret: String, redirectURI: String): ApiClient { - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - tokenRequestBuilder - .setClientId(clientId) - .setClientSecret(clientSecret) - .setRedirectURI(redirectURI) - authenticationRequestBuilder - ?.setClientId(clientId) - ?.setRedirectURI(redirectURI) - } - return this; - } - - /** - * Configures a listener which is notified when a new access token is received. - * @param accessTokenListener Access token listener - * @return ApiClient - */ - fun registerAccessTokenListener(accessTokenListener: AccessTokenListener): ApiClient { - apiAuthorizations.values.runOnFirst<Interceptor, OAuth> { - registerAccessTokenListener(accessTokenListener) - } - return this; - } - - /** - * Adds an authorization to be used by the client - * @param authName Authentication name - * @param authorization Authorization interceptor - * @return ApiClient - */ - fun addAuthorization(authName: String, authorization: Interceptor): ApiClient { - if (apiAuthorizations.containsKey(authName)) { - throw RuntimeException("auth name $authName already in api authorizations") - } - apiAuthorizations[authName] = authorization - clientBuilder.addInterceptor(authorization) - return this - } - - fun setLogger(logger: (String) -> Unit): ApiClient { - this.logger = logger - return this - } - - fun <S> createService(serviceClass: Class<S>): S { - val usedClient = this.okHttpClient ?: clientBuilder.build() - return retrofitBuilder.client(usedClient).build().create(serviceClass) - } - - private fun normalizeBaseUrl() { - if (!baseUrl.endsWith("/")) { - baseUrl += "/" - } - } - - private inline fun <T, reified U> Iterable<T>.runOnFirst(callback: U.() -> Unit) { - for (element in this) { - if (element is U) { - callback.invoke(element) - break - } - } - } - - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt deleted file mode 100644 index 001e99325d2..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/CollectionFormats.kt +++ /dev/null @@ -1,56 +0,0 @@ -package org.openapitools.client.infrastructure - -class CollectionFormats { - - open class CSVParams { - - var params: List<String> - - constructor(params: List<String>) { - this.params = params - } - - constructor(vararg params: String) { - this.params = listOf(*params) - } - - override fun toString(): String { - return params.joinToString(",") - } - } - - open class SSVParams : CSVParams { - - constructor(params: List<String>) : super(params) - - constructor(vararg params: String) : super(*params) - - override fun toString(): String { - return params.joinToString(" ") - } - } - - class TSVParams : CSVParams { - - constructor(params: List<String>) : super(params) - - constructor(vararg params: String) : super(*params) - - override fun toString(): String { - return params.joinToString("\t") - } - } - - class PIPESParams : CSVParams { - - constructor(params: List<String>) : super(params) - - constructor(vararg params: String) : super(*params) - - override fun toString(): String { - return params.joinToString("|") - } - } - - class SPACEParams : SSVParams() -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt deleted file mode 100644 index 1804d1ae2bb..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/ResponseExt.kt +++ /dev/null @@ -1,16 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.JsonDataException -import com.squareup.moshi.Moshi -import retrofit2.Response - -@Throws(JsonDataException::class) -inline fun <reified T> Response<*>.getErrorResponse(serializerBuilder: Moshi.Builder = Serializer.moshiBuilder): T? { - val serializer = serializerBuilder.build() - val parser = serializer.adapter(T::class.java) - val response = errorBody()?.string() - if(response != null) { - return parser.fromJson(response) - } - return null -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index fafca8738f6..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index a4c17c3b49d..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index a66c335904e..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index a3df06cb6eb..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 6e619023a5c..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index af1e270325d..00000000000 --- a/samples/client/petstore/kotlin-retrofit2/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-string/.openapi-generator/FILES b/samples/client/petstore/kotlin-string/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-string/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-string/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index 4fbeccdbc00..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param apiKey (optional) - * @param petId Pet id to delete - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(apiKey: kotlin.String?, petId: kotlin.Long) : Unit { - val localVariableConfig = deletePetRequestConfig(apiKey = apiKey, petId = petId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param apiKey (optional) - * @param petId Pet id to delete - * @return RequestConfig - */ - fun deletePetRequestConfig(apiKey: kotlin.String?, petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 7a8dcc91cd4..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index 7d40c8efbc2..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,38 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index ceb0fbc8fe6..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index ec768d1acef..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,58 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: kotlin.String? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index 66667bf07cd..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,60 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A pet for sale in the pet store - * @param id - * @param category - * @param name - * @param photoUrls - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 944b1cd0a14..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index 9697f07d5bf..00000000000 --- a/samples/client/petstore/kotlin-string/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index c75d4889d2e..003c196213f 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -248,7 +247,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES b/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index c8b93b33bf6..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 135bcdc790e..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import org.threeten.bp.LocalDate -import org.threeten.bp.LocalDateTime -import org.threeten.bp.LocalTime -import org.threeten.bp.OffsetDateTime -import org.threeten.bp.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index ff5439aeb42..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import org.threeten.bp.LocalDate -import org.threeten.bp.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index 710a9cc1317..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import org.threeten.bp.LocalDateTime -import org.threeten.bp.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 28b3eb3cd70..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import org.threeten.bp.OffsetDateTime -import org.threeten.bp.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index fafca8738f6..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,32 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index a4c17c3b49d..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index 300f94d8545..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: org.threeten.bp.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) { - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index a3df06cb6eb..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,56 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) { - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 6e619023a5c..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,29 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) - diff --git a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index af1e270325d..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,48 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) - diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index f82c6d3fa4c..5518df5e8aa 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -20,7 +20,6 @@ import java.io.File import java.io.FileWriter import java.io.IOException import java.net.URLConnection -import java.util.Date import java.util.Locale import org.threeten.bp.LocalDate import org.threeten.bp.LocalDateTime @@ -248,7 +247,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES b/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES index c817d802484..400b0a0f077 100644 --- a/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/EnumApi.md diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/apis/EnumApi.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/apis/EnumApi.kt deleted file mode 100644 index e504c876ce6..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/apis/EnumApi.kt +++ /dev/null @@ -1,89 +0,0 @@ -/** -* OpenAPI Petstore -* Test for issue 4062 -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.PetEnum - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class EnumApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Get enums - * - * @return PetEnum - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getEnum() : PetEnum { - val localVariableConfig = getEnumRequestConfig() - - val localVarResponse = request<PetEnum>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as PetEnum - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getEnum - * - * @return RequestConfig - */ - fun getEnumRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/enum", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index c34e9e42d08..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,232 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/models/PetEnum.kt b/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/models/PetEnum.kt deleted file mode 100644 index a447bf92052..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/bin/main/org/openapitools/client/models/PetEnum.kt +++ /dev/null @@ -1,43 +0,0 @@ -/** -* OpenAPI Petstore -* Test for issue 4062 -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json - -/** -* An enum with complex-ish naming -* Values: MY_FIRST_VALUE,MY_SECOND_VALUE -*/ - -enum class PetEnum(val value: kotlin.String){ - - - @Json(name = "myFirstValue") - MY_FIRST_VALUE("myFirstValue"), - - - @Json(name = "MY_SECOND_VALUE") - MY_SECOND_VALUE("MY_SECOND_VALUE"); - - - - /** - This override toString avoids using the enum var name and uses the actual api value instead. - In cases the var name and value are different, the client would send incorrect enums to the server. - **/ - override fun toString(): String { - return value - } - -} - diff --git a/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index 634abe57b90..fe329374e47 100644 --- a/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -229,7 +228,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin-uppercase-enum/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin/.openapi-generator/FILES b/samples/client/petstore/kotlin/.openapi-generator/FILES index 16c712325f8..e44407e011d 100644 --- a/samples/client/petstore/kotlin/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/PetApi.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/PetApi.kt deleted file mode 100644 index c8b93b33bf6..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/PetApi.kt +++ /dev/null @@ -1,492 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.ApiResponse -import org.openapitools.client.models.Pet - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class PetApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Add a new pet to the store - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun addPet(body: Pet) : Unit { - val localVariableConfig = addPetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation addPet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun addPetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Deletes a pet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?) : Unit { - val localVariableConfig = deletePetRequestConfig(petId = petId, apiKey = apiKey) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deletePet - * - * @param petId Pet id to delete - * @param apiKey (optional) - * @return RequestConfig - */ - fun deletePetRequestConfig(petId: kotlin.Long, apiKey: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - apiKey?.apply { localVariableHeaders["api_key"] = this.toString() } - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by status - * Multiple status values can be provided with comma separated strings - * @param status Status values that need to be considered for filter - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByStatusRequestConfig(status = status) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByStatus - * - * @param status Status values that need to be considered for filter - * @return RequestConfig - */ - fun findPetsByStatusRequestConfig(status: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("status", toMultiValue(status.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByStatus", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Finds Pets by tags - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * @param tags Tags to filter by - * @return kotlin.collections.List<Pet> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>) : kotlin.collections.List<Pet> { - val localVariableConfig = findPetsByTagsRequestConfig(tags = tags) - - val localVarResponse = request<kotlin.collections.List<Pet>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.List<Pet> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation findPetsByTags - * - * @param tags Tags to filter by - * @return RequestConfig - */ - @Deprecated(message = "This operation is deprecated.") - fun findPetsByTagsRequestConfig(tags: kotlin.collections.List<kotlin.String>) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("tags", toMultiValue(tags.toList(), "csv")) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/findByTags", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find pet by ID - * Returns a single pet - * @param petId ID of pet to return - * @return Pet - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getPetById(petId: kotlin.Long) : Pet { - val localVariableConfig = getPetByIdRequestConfig(petId = petId) - - val localVarResponse = request<Pet>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Pet - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getPetById - * - * @param petId ID of pet to return - * @return RequestConfig - */ - fun getPetByIdRequestConfig(petId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Update an existing pet - * - * @param body Pet object that needs to be added to the store - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePet(body: Pet) : Unit { - val localVariableConfig = updatePetRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePet - * - * @param body Pet object that needs to be added to the store - * @return RequestConfig - */ - fun updatePetRequestConfig(body: Pet) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/pet", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updates a pet in the store with form data - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : Unit { - val localVariableConfig = updatePetWithFormRequestConfig(petId = petId, name = name, status = status) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updatePetWithForm - * - * @param petId ID of pet that needs to be updated - * @param name Updated name of the pet (optional) - * @param status Updated status of the pet (optional) - * @return RequestConfig - */ - fun updatePetWithFormRequestConfig(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("name" to name, "status" to status) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "application/x-www-form-urlencoded") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * uploads an image - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return ApiResponse - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : ApiResponse { - val localVariableConfig = uploadFileRequestConfig(petId = petId, additionalMetadata = additionalMetadata, file = file) - - val localVarResponse = request<ApiResponse>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as ApiResponse - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation uploadFile - * - * @param petId ID of pet to update - * @param additionalMetadata Additional data to pass to server (optional) - * @param file file to upload (optional) - * @return RequestConfig - */ - fun uploadFileRequestConfig(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: java.io.File?) : RequestConfig { - val localVariableBody: kotlin.Any? = mapOf("additionalMetadata" to additionalMetadata, "file" to file) - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf("Content-Type" to "multipart/form-data") - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/pet/{petId}/uploadImage".replace("{"+"petId"+"}", "$petId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/StoreApi.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/StoreApi.kt deleted file mode 100644 index 215ed63420c..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/StoreApi.kt +++ /dev/null @@ -1,253 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.Order - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class StoreApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Delete purchase order by ID - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * @param orderId ID of the order that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteOrder(orderId: kotlin.String) : Unit { - val localVariableConfig = deleteOrderRequestConfig(orderId = orderId) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteOrder - * - * @param orderId ID of the order that needs to be deleted - * @return RequestConfig - */ - fun deleteOrderRequestConfig(orderId: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Returns pet inventories by status - * Returns a map of status codes to quantities - * @return kotlin.collections.Map<kotlin.String, kotlin.Int> - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getInventory() : kotlin.collections.Map<kotlin.String, kotlin.Int> { - val localVariableConfig = getInventoryRequestConfig() - - val localVarResponse = request<kotlin.collections.Map<kotlin.String, kotlin.Int>>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.collections.Map<kotlin.String, kotlin.Int> - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getInventory - * - * @return RequestConfig - */ - fun getInventoryRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/inventory", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Find purchase order by ID - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * @param orderId ID of pet that needs to be fetched - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getOrderById(orderId: kotlin.Long) : Order { - val localVariableConfig = getOrderByIdRequestConfig(orderId = orderId) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getOrderById - * - * @param orderId ID of pet that needs to be fetched - * @return RequestConfig - */ - fun getOrderByIdRequestConfig(orderId: kotlin.Long) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/store/order/{orderId}".replace("{"+"orderId"+"}", "$orderId"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Place an order for a pet - * - * @param body order placed for purchasing the pet - * @return Order - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun placeOrder(body: Order) : Order { - val localVariableConfig = placeOrderRequestConfig(body = body) - - val localVarResponse = request<Order>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as Order - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation placeOrder - * - * @param body order placed for purchasing the pet - * @return RequestConfig - */ - fun placeOrderRequestConfig(body: Order) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/store/order", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/UserApi.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/UserApi.kt deleted file mode 100644 index 53748b93463..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/apis/UserApi.kt +++ /dev/null @@ -1,476 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.apis - -import org.openapitools.client.models.User - -import org.openapitools.client.infrastructure.ApiClient -import org.openapitools.client.infrastructure.ClientException -import org.openapitools.client.infrastructure.ClientError -import org.openapitools.client.infrastructure.ServerException -import org.openapitools.client.infrastructure.ServerError -import org.openapitools.client.infrastructure.MultiValueMap -import org.openapitools.client.infrastructure.RequestConfig -import org.openapitools.client.infrastructure.RequestMethod -import org.openapitools.client.infrastructure.ResponseType -import org.openapitools.client.infrastructure.Success -import org.openapitools.client.infrastructure.toMultiValue - -class UserApi(basePath: kotlin.String = defaultBasePath) : ApiClient(basePath) { - companion object { - @JvmStatic - val defaultBasePath: String by lazy { - System.getProperties().getProperty("org.openapitools.client.baseUrl", "http://petstore.swagger.io/v2") - } - } - - /** - * Create user - * This can only be done by the logged in user. - * @param body Created user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUser(body: User) : Unit { - val localVariableConfig = createUserRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUser - * - * @param body Created user object - * @return RequestConfig - */ - fun createUserRequestConfig(body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithArrayInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithArrayInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithArrayInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithArrayInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithArray", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Creates list of users with given input array - * - * @param body List of user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun createUsersWithListInput(body: kotlin.collections.List<User>) : Unit { - val localVariableConfig = createUsersWithListInputRequestConfig(body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation createUsersWithListInput - * - * @param body List of user object - * @return RequestConfig - */ - fun createUsersWithListInputRequestConfig(body: kotlin.collections.List<User>) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.POST, - path = "/user/createWithList", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Delete user - * This can only be done by the logged in user. - * @param username The name that needs to be deleted - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun deleteUser(username: kotlin.String) : Unit { - val localVariableConfig = deleteUserRequestConfig(username = username) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation deleteUser - * - * @param username The name that needs to be deleted - * @return RequestConfig - */ - fun deleteUserRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.DELETE, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Get user by user name - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return User - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun getUserByName(username: kotlin.String) : User { - val localVariableConfig = getUserByNameRequestConfig(username = username) - - val localVarResponse = request<User>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as User - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation getUserByName - * - * @param username The name that needs to be fetched. Use user1 for testing. - * @return RequestConfig - */ - fun getUserByNameRequestConfig(username: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs user into the system - * - * @param username The user name for login - * @param password The password for login in clear text - * @return kotlin.String - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Suppress("UNCHECKED_CAST") - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun loginUser(username: kotlin.String, password: kotlin.String) : kotlin.String { - val localVariableConfig = loginUserRequestConfig(username = username, password = password) - - val localVarResponse = request<kotlin.String>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> (localVarResponse as Success<*>).data as kotlin.String - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation loginUser - * - * @param username The user name for login - * @param password The password for login in clear text - * @return RequestConfig - */ - fun loginUserRequestConfig(username: kotlin.String, password: kotlin.String) : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf<kotlin.String, List<kotlin.String>>() - .apply { - put("username", listOf(username.toString())) - put("password", listOf(password.toString())) - } - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/login", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Logs out current logged in user session - * - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun logoutUser() : Unit { - val localVariableConfig = logoutUserRequestConfig() - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation logoutUser - * - * @return RequestConfig - */ - fun logoutUserRequestConfig() : RequestConfig { - val localVariableBody: kotlin.Any? = null - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.GET, - path = "/user/logout", - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - - /** - * Updated user - * This can only be done by the logged in user. - * @param username name that need to be deleted - * @param body Updated user object - * @return void - * @throws UnsupportedOperationException If the API returns an informational or redirection response - * @throws ClientException If the API returns a client error response - * @throws ServerException If the API returns a server error response - */ - @Throws(UnsupportedOperationException::class, ClientException::class, ServerException::class) - fun updateUser(username: kotlin.String, body: User) : Unit { - val localVariableConfig = updateUserRequestConfig(username = username, body = body) - - val localVarResponse = request<Any?>( - localVariableConfig - ) - - return when (localVarResponse.responseType) { - ResponseType.Success -> Unit - ResponseType.Informational -> throw UnsupportedOperationException("Client does not support Informational responses.") - ResponseType.Redirection -> throw UnsupportedOperationException("Client does not support Redirection responses.") - ResponseType.ClientError -> { - val localVarError = localVarResponse as ClientError<*> - throw ClientException("Client error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - ResponseType.ServerError -> { - val localVarError = localVarResponse as ServerError<*> - throw ServerException("Server error : ${localVarError.statusCode} ${localVarError.message.orEmpty()}", localVarError.statusCode, localVarResponse) - } - } - } - - /** - * To obtain the request config of the operation updateUser - * - * @param username name that need to be deleted - * @param body Updated user object - * @return RequestConfig - */ - fun updateUserRequestConfig(username: kotlin.String, body: User) : RequestConfig { - val localVariableBody: kotlin.Any? = body - val localVariableQuery: MultiValueMap = mutableMapOf() - val localVariableHeaders: MutableMap<String, String> = mutableMapOf() - - val localVariableConfig = RequestConfig( - method = RequestMethod.PUT, - path = "/user/{username}".replace("{"+"username"+"}", "$username"), - query = localVariableQuery, - headers = localVariableHeaders, - body = localVariableBody - ) - - return localVariableConfig - } - -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt deleted file mode 100644 index ef7a8f1e1a6..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.openapitools.client.infrastructure - -typealias MultiValueMap = MutableMap<String,List<String>> - -fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { - "csv" -> "," - "tsv" -> "\t" - "pipe" -> "|" - "space" -> " " - else -> "" -} - -val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } - -fun <T : Any?> toMultiValue(items: Array<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) - = toMultiValue(items.asIterable(), collectionFormat, map) - -fun <T : Any?> toMultiValue(items: Iterable<T>, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List<String> { - return when(collectionFormat) { - "multi" -> items.map(map) - else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiClient.kt deleted file mode 100644 index 7a8dcc91cd4..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiClient.kt +++ /dev/null @@ -1,251 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Credentials -import okhttp3.OkHttpClient -import okhttp3.RequestBody -import okhttp3.RequestBody.Companion.asRequestBody -import okhttp3.RequestBody.Companion.toRequestBody -import okhttp3.FormBody -import okhttp3.HttpUrl.Companion.toHttpUrlOrNull -import okhttp3.ResponseBody -import okhttp3.MediaType.Companion.toMediaTypeOrNull -import okhttp3.Request -import okhttp3.Headers -import okhttp3.MultipartBody -import java.io.File -import java.net.URLConnection -import java.util.Date -import java.time.LocalDate -import java.time.LocalDateTime -import java.time.LocalTime -import java.time.OffsetDateTime -import java.time.OffsetTime - -open class ApiClient(val baseUrl: String) { - companion object { - protected const val ContentType = "Content-Type" - protected const val Accept = "Accept" - protected const val Authorization = "Authorization" - protected const val JsonMediaType = "application/json" - protected const val FormDataMediaType = "multipart/form-data" - protected const val FormUrlEncMediaType = "application/x-www-form-urlencoded" - protected const val XmlMediaType = "application/xml" - - val apiKey: MutableMap<String, String> = mutableMapOf() - val apiKeyPrefix: MutableMap<String, String> = mutableMapOf() - var username: String? = null - var password: String? = null - var accessToken: String? = null - - @JvmStatic - val client: OkHttpClient by lazy { - builder.build() - } - - @JvmStatic - val builder: OkHttpClient.Builder = OkHttpClient.Builder() - } - - /** - * Guess Content-Type header from the given file (defaults to "application/octet-stream"). - * - * @param file The given file - * @return The guessed Content-Type - */ - protected fun guessContentTypeFromFile(file: File): String { - val contentType = URLConnection.guessContentTypeFromName(file.name) - return contentType ?: "application/octet-stream" - } - - protected inline fun <reified T> requestBody(content: T, mediaType: String = JsonMediaType): RequestBody = - when { - content is File -> content.asRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == FormDataMediaType -> { - MultipartBody.Builder() - .setType(MultipartBody.FORM) - .apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - if (value is File) { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"; filename=\"${value.name}\"" - ) - val fileMediaType = guessContentTypeFromFile(value).toMediaTypeOrNull() - addPart(partHeaders, value.asRequestBody(fileMediaType)) - } else { - val partHeaders = Headers.headersOf( - "Content-Disposition", - "form-data; name=\"$key\"" - ) - addPart( - partHeaders, - parameterToString(value).toRequestBody(null) - ) - } - } - }.build() - } - mediaType == FormUrlEncMediaType -> { - FormBody.Builder().apply { - // content's type *must* be Map<String, Any?> - @Suppress("UNCHECKED_CAST") - (content as Map<String, Any?>).forEach { (key, value) -> - add(key, parameterToString(value)) - } - }.build() - } - mediaType == JsonMediaType -> Serializer.moshi.adapter(T::class.java).toJson(content).toRequestBody( - mediaType.toMediaTypeOrNull() - ) - mediaType == XmlMediaType -> throw UnsupportedOperationException("xml not currently supported.") - // TODO: this should be extended with other serializers - else -> throw UnsupportedOperationException("requestBody currently only supports JSON body and File body.") - } - - protected inline fun <reified T: Any?> responseBody(body: ResponseBody?, mediaType: String? = JsonMediaType): T? { - if(body == null) { - return null - } - val bodyContent = body.string() - if (bodyContent.isEmpty()) { - return null - } - return when(mediaType) { - JsonMediaType -> Serializer.moshi.adapter(T::class.java).fromJson(bodyContent) - else -> throw UnsupportedOperationException("responseBody currently only supports JSON body.") - } - } - - protected fun updateAuthParams(requestConfig: RequestConfig) { - if (requestConfig.headers["api_key"].isNullOrEmpty()) { - if (apiKey["api_key"] != null) { - if (apiKeyPrefix["api_key"] != null) { - requestConfig.headers["api_key"] = apiKeyPrefix["api_key"]!! + " " + apiKey["api_key"]!! - } else { - requestConfig.headers["api_key"] = apiKey["api_key"]!! - } - } - } - if (requestConfig.headers[Authorization].isNullOrEmpty()) { - accessToken?.let { accessToken -> - requestConfig.headers[Authorization] = "Bearer $accessToken " - } - } - } - - protected inline fun <reified T: Any?> request(requestConfig: RequestConfig): ApiInfrastructureResponse<T?> { - val httpUrl = baseUrl.toHttpUrlOrNull() ?: throw IllegalStateException("baseUrl is invalid.") - - // take authMethod from operation - updateAuthParams(requestConfig) - - val url = httpUrl.newBuilder() - .addPathSegments(requestConfig.path.trimStart('/')) - .apply { - requestConfig.query.forEach { query -> - query.value.forEach { queryValue -> - addQueryParameter(query.key, queryValue) - } - } - }.build() - - // take content-type/accept from spec or set to default (application/json) if not defined - if (requestConfig.headers[ContentType].isNullOrEmpty()) { - requestConfig.headers[ContentType] = JsonMediaType - } - if (requestConfig.headers[Accept].isNullOrEmpty()) { - requestConfig.headers[Accept] = JsonMediaType - } - val headers = requestConfig.headers - - if(headers[ContentType] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Content-Type header. This is required.") - } - - if(headers[Accept] ?: "" == "") { - throw kotlin.IllegalStateException("Missing Accept header. This is required.") - } - - // TODO: support multiple contentType options here. - val contentType = (headers[ContentType] as String).substringBefore(";").toLowerCase() - - val request = when (requestConfig.method) { - RequestMethod.DELETE -> Request.Builder().url(url).delete(requestBody(requestConfig.body, contentType)) - RequestMethod.GET -> Request.Builder().url(url) - RequestMethod.HEAD -> Request.Builder().url(url).head() - RequestMethod.PATCH -> Request.Builder().url(url).patch(requestBody(requestConfig.body, contentType)) - RequestMethod.PUT -> Request.Builder().url(url).put(requestBody(requestConfig.body, contentType)) - RequestMethod.POST -> Request.Builder().url(url).post(requestBody(requestConfig.body, contentType)) - RequestMethod.OPTIONS -> Request.Builder().url(url).method("OPTIONS", null) - }.apply { - headers.forEach { header -> addHeader(header.key, header.value) } - }.build() - - val response = client.newCall(request).execute() - val accept = response.header(ContentType)?.substringBefore(";")?.toLowerCase() - - // TODO: handle specific mapping types. e.g. Map<int, Class<?>> - when { - response.isRedirect -> return Redirection( - response.code, - response.headers.toMultimap() - ) - response.isInformational -> return Informational( - response.message, - response.code, - response.headers.toMultimap() - ) - response.isSuccessful -> return Success( - responseBody(response.body, accept), - response.code, - response.headers.toMultimap() - ) - response.isClientError -> return ClientError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - else -> return ServerError( - response.message, - response.body?.string(), - response.code, - response.headers.toMultimap() - ) - } - } - - protected fun parameterToString(value: Any?): String { - when (value) { - null -> { - return "" - } - is Array<*> -> { - return toMultiValue(value, "csv").toString() - } - is Iterable<*> -> { - return toMultiValue(value, "csv").toString() - } - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> { - return parseDateToQueryString<Any>(value) - } - else -> { - return value.toString() - } - } - } - - protected inline fun <reified T: Any> parseDateToQueryString(value : T): String { - /* - .replace("\"", "") converts the json object string to an actual string for the query parameter. - The moshi or gson adapter allows a more generic solution instead of trying to use a native - formatter. It also easily allows to provide a simple way to define a custom date format pattern - inside a gson/moshi adapter. - */ - return Serializer.moshi.adapter(T::class.java).toJson(value).replace("\"", "") - } -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt deleted file mode 100644 index 9dc8d8dbbfa..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApiInfrastructureResponse.kt +++ /dev/null @@ -1,43 +0,0 @@ -package org.openapitools.client.infrastructure - -enum class ResponseType { - Success, Informational, Redirection, ClientError, ServerError -} - -interface Response - -abstract class ApiInfrastructureResponse<T>(val responseType: ResponseType): Response { - abstract val statusCode: Int - abstract val headers: Map<String,List<String>> -} - -class Success<T>( - val data: T, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -): ApiInfrastructureResponse<T>(ResponseType.Success) - -class Informational<T>( - val statusText: String, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Informational) - -class Redirection<T>( - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.Redirection) - -class ClientError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> = mapOf() -) : ApiInfrastructureResponse<T>(ResponseType.ClientError) - -class ServerError<T>( - val message: String? = null, - val body: Any? = null, - override val statusCode: Int = -1, - override val headers: Map<String, List<String>> -): ApiInfrastructureResponse<T>(ResponseType.ServerError) \ No newline at end of file diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt deleted file mode 100644 index ff5e2a81ee8..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ByteArrayAdapter.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson - -class ByteArrayAdapter { - @ToJson - fun toJson(data: ByteArray): String = String(data) - - @FromJson - fun fromJson(data: String): ByteArray = data.toByteArray() -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Errors.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Errors.kt deleted file mode 100644 index b5310e71f13..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Errors.kt +++ /dev/null @@ -1,18 +0,0 @@ -@file:Suppress("unused") -package org.openapitools.client.infrastructure - -import java.lang.RuntimeException - -open class ClientException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 123L - } -} - -open class ServerException(message: kotlin.String? = null, val statusCode: Int = -1, val response: Response? = null) : RuntimeException(message) { - - companion object { - private const val serialVersionUID: Long = 456L - } -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt deleted file mode 100644 index b2e1654479a..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDate -import java.time.format.DateTimeFormatter - -class LocalDateAdapter { - @ToJson - fun toJson(value: LocalDate): String { - return DateTimeFormatter.ISO_LOCAL_DATE.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDate { - return LocalDate.parse(value, DateTimeFormatter.ISO_LOCAL_DATE) - } - -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt deleted file mode 100644 index e082db94811..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/LocalDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.LocalDateTime -import java.time.format.DateTimeFormatter - -class LocalDateTimeAdapter { - @ToJson - fun toJson(value: LocalDateTime): String { - return DateTimeFormatter.ISO_LOCAL_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): LocalDateTime { - return LocalDateTime.parse(value, DateTimeFormatter.ISO_LOCAL_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt deleted file mode 100644 index 87437871a31..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/OffsetDateTimeAdapter.kt +++ /dev/null @@ -1,19 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.time.OffsetDateTime -import java.time.format.DateTimeFormatter - -class OffsetDateTimeAdapter { - @ToJson - fun toJson(value: OffsetDateTime): String { - return DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(value) - } - - @FromJson - fun fromJson(value: String): OffsetDateTime { - return OffsetDateTime.parse(value, DateTimeFormatter.ISO_OFFSET_DATE_TIME) - } - -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt deleted file mode 100644 index 0f2790f370e..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestConfig.kt +++ /dev/null @@ -1,17 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Defines a config object for a given request. - * NOTE: This object doesn't include 'body' because it - * allows for caching of the constructed object - * for many request definitions. - * NOTE: Headers is a Map<String,String> because rfc2616 defines - * multi-valued headers as csv-only. - */ -data class RequestConfig( - val method: RequestMethod, - val path: String, - val headers: MutableMap<String, String> = mutableMapOf(), - val query: MutableMap<String, List<String>> = mutableMapOf(), - val body: kotlin.Any? = null -) \ No newline at end of file diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt deleted file mode 100644 index 931b12b8bd7..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/RequestMethod.kt +++ /dev/null @@ -1,8 +0,0 @@ -package org.openapitools.client.infrastructure - -/** - * Provides enumerated HTTP verbs - */ -enum class RequestMethod { - GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT -} \ No newline at end of file diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt deleted file mode 100644 index 9bd2790dc14..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/ResponseExtensions.kt +++ /dev/null @@ -1,24 +0,0 @@ -package org.openapitools.client.infrastructure - -import okhttp3.Response - -/** - * Provides an extension to evaluation whether the response is a 1xx code - */ -val Response.isInformational : Boolean get() = this.code in 100..199 - -/** - * Provides an extension to evaluation whether the response is a 3xx code - */ -@Suppress("EXTENSION_SHADOWED_BY_MEMBER") -val Response.isRedirect : Boolean get() = this.code in 300..399 - -/** - * Provides an extension to evaluation whether the response is a 4xx code - */ -val Response.isClientError : Boolean get() = this.code in 400..499 - -/** - * Provides an extension to evaluation whether the response is a 5xx (Standard) through 999 (non-standard) code - */ -val Response.isServerError : Boolean get() = this.code in 500..999 diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Serializer.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Serializer.kt deleted file mode 100644 index 9a45b67d9b1..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/Serializer.kt +++ /dev/null @@ -1,21 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.Moshi -import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory -import java.util.Date - -object Serializer { - @JvmStatic - val moshiBuilder: Moshi.Builder = Moshi.Builder() - .add(OffsetDateTimeAdapter()) - .add(LocalDateTimeAdapter()) - .add(LocalDateAdapter()) - .add(UUIDAdapter()) - .add(ByteArrayAdapter()) - .add(KotlinJsonAdapterFactory()) - - @JvmStatic - val moshi: Moshi by lazy { - moshiBuilder.build() - } -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt deleted file mode 100644 index a4a44cc18b7..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/infrastructure/UUIDAdapter.kt +++ /dev/null @@ -1,13 +0,0 @@ -package org.openapitools.client.infrastructure - -import com.squareup.moshi.FromJson -import com.squareup.moshi.ToJson -import java.util.UUID - -class UUIDAdapter { - @ToJson - fun toJson(uuid: UUID) = uuid.toString() - - @FromJson - fun fromJson(s: String) = UUID.fromString(s) -} diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/ApiResponse.kt deleted file mode 100644 index 7d40c8efbc2..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/ApiResponse.kt +++ /dev/null @@ -1,38 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * Describes the result of uploading an image resource - * @param code - * @param type - * @param message - */ - -data class ApiResponse ( - @Json(name = "code") - val code: kotlin.Int? = null, - @Json(name = "type") - val type: kotlin.String? = null, - @Json(name = "message") - val message: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Category.kt deleted file mode 100644 index ceb0fbc8fe6..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Category.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A category for a pet - * @param id - * @param name - */ - -data class Category ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Order.kt deleted file mode 100644 index ed8f8b13a43..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Order.kt +++ /dev/null @@ -1,58 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * An order for a pets from the pet store - * @param id - * @param petId - * @param quantity - * @param shipDate - * @param status Order Status - * @param complete - */ - -data class Order ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "petId") - val petId: kotlin.Long? = null, - @Json(name = "quantity") - val quantity: kotlin.Int? = null, - @Json(name = "shipDate") - val shipDate: java.time.OffsetDateTime? = null, - /* Order Status */ - @Json(name = "status") - val status: Order.Status? = null, - @Json(name = "complete") - val complete: kotlin.Boolean? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * Order Status - * Values: placed,approved,delivered - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "placed") placed("placed"), - @Json(name = "approved") approved("approved"), - @Json(name = "delivered") delivered("delivered"); - } -} - diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Pet.kt deleted file mode 100644 index 105f485f021..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Pet.kt +++ /dev/null @@ -1,60 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - -import org.openapitools.client.models.Category -import org.openapitools.client.models.Tag - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A pet for sale in the pet store - * @param name - * @param photoUrls - * @param id - * @param category - * @param tags - * @param status pet status in the store - */ - -data class Pet ( - @Json(name = "name") - val name: kotlin.String, - @Json(name = "photoUrls") - val photoUrls: kotlin.collections.List<kotlin.String>, - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "category") - val category: Category? = null, - @Json(name = "tags") - val tags: kotlin.collections.List<Tag>? = null, - /* pet status in the store */ - @Json(name = "status") - val status: Pet.Status? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - - /** - * pet status in the store - * Values: available,pending,sold - */ - - enum class Status(val value: kotlin.String){ - @Json(name = "available") available("available"), - @Json(name = "pending") pending("pending"), - @Json(name = "sold") sold("sold"); - } -} - diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Tag.kt deleted file mode 100644 index 944b1cd0a14..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/Tag.kt +++ /dev/null @@ -1,35 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A tag for a pet - * @param id - * @param name - */ - -data class Tag ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "name") - val name: kotlin.String? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/User.kt deleted file mode 100644 index 9697f07d5bf..00000000000 --- a/samples/client/petstore/kotlin/bin/main/org/openapitools/client/models/User.kt +++ /dev/null @@ -1,54 +0,0 @@ -/** -* OpenAPI Petstore -* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. -* -* The version of the OpenAPI document: 1.0.0 -* -* -* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). -* https://openapi-generator.tech -* Do not edit the class manually. -*/ -package org.openapitools.client.models - - -import com.squareup.moshi.Json -import java.io.Serializable - -/** - * A User who is purchasing from the pet store - * @param id - * @param username - * @param firstName - * @param lastName - * @param email - * @param password - * @param phone - * @param userStatus User Status - */ - -data class User ( - @Json(name = "id") - val id: kotlin.Long? = null, - @Json(name = "username") - val username: kotlin.String? = null, - @Json(name = "firstName") - val firstName: kotlin.String? = null, - @Json(name = "lastName") - val lastName: kotlin.String? = null, - @Json(name = "email") - val email: kotlin.String? = null, - @Json(name = "password") - val password: kotlin.String? = null, - @Json(name = "phone") - val phone: kotlin.String? = null, - /* User Status */ - @Json(name = "userStatus") - val userStatus: kotlin.Int? = null -) : Serializable { - companion object { - private const val serialVersionUID: Long = 123 - } - -} - diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt index c75d4889d2e..003c196213f 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiClient.kt @@ -25,7 +25,6 @@ import java.time.LocalDateTime import java.time.LocalTime import java.time.OffsetDateTime import java.time.OffsetTime -import java.util.Date import java.util.Locale import com.squareup.moshi.adapter @@ -248,7 +247,7 @@ open class ApiClient(val baseUrl: String) { null -> "" is Array<*> -> toMultiValue(value, "csv").toString() is Iterable<*> -> toMultiValue(value, "csv").toString() - is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime, is Date -> + is OffsetDateTime, is OffsetTime, is LocalDateTime, is LocalDate, is LocalTime -> parseDateToQueryString(value) else -> value.toString() } diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt deleted file mode 100644 index dd34bd48b2c..00000000000 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApplicationDelegates.kt +++ /dev/null @@ -1,29 +0,0 @@ -package org.openapitools.client.infrastructure - -import kotlin.properties.ReadWriteProperty -import kotlin.reflect.KProperty - -object ApplicationDelegates { - /** - * Provides a property delegate, allowing the property to be set once and only once. - * - * If unset (no default value), a get on the property will throw [IllegalStateException]. - */ - fun <T> setOnce(defaultValue: T? = null) : ReadWriteProperty<Any?, T> = SetOnce(defaultValue) - - private class SetOnce<T>(defaultValue: T? = null) : ReadWriteProperty<Any?, T> { - private var isSet = false - private var value: T? = defaultValue - - override fun getValue(thisRef: Any?, property: KProperty<*>): T { - return value ?: throw IllegalStateException("${property.name} not initialized") - } - - override fun setValue(thisRef: Any?, property: KProperty<*>, value: T) = synchronized(this) { - if (!isSet) { - this.value = value - isSet = true - } - } - } -} \ No newline at end of file diff --git a/samples/server/petstore/kotlin-server/ktor/.openapi-generator-ignore b/samples/server/petstore/kotlin-server/ktor/.openapi-generator-ignore index cabbe3494d4..7484ee590a3 100644 --- a/samples/server/petstore/kotlin-server/ktor/.openapi-generator-ignore +++ b/samples/server/petstore/kotlin-server/ktor/.openapi-generator-ignore @@ -1,3 +1,23 @@ # OpenAPI Generator Ignore -pom.xml +# Generated by openapi-generator https://github.com/openapitools/openapi-generator +# Use this file to prevent files from being overwritten by the generator. +# The patterns follow closely to .gitignore or .dockerignore. + +# As an example, the C# client generator defines ApiClient.cs. +# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line: +#ApiClient.cs + +# You can match any string of characters against a directory, file or extension with a single asterisk (*): +#foo/*/qux +# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux + +# You can recursively match patterns against a directory, file or extension with a double asterisk (**): +#foo/**/qux +# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux + +# You can also negate patterns with an exclamation (!). +# For example, you can ignore all files in a docs folder with the file extension .md: +#docs/*.md +# Then explicitly reverse the ignore rule for a single file: +#!docs/README.md diff --git a/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES b/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES index 10c026f11ff..af1c3167e9a 100644 --- a/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore Dockerfile README.md build.gradle diff --git a/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES index c02ae2405be..5a3f8bacb3d 100644 --- a/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle.kts pom.xml diff --git a/samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject.kt b/samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject.kt deleted file mode 100644 index 257970fa6be..00000000000 --- a/samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject.kt +++ /dev/null @@ -1,30 +0,0 @@ -package org.openapitools.model - -import java.util.Objects -import com.fasterxml.jackson.annotation.JsonProperty -import javax.validation.constraints.DecimalMax -import javax.validation.constraints.DecimalMin -import javax.validation.constraints.Max -import javax.validation.constraints.Min -import javax.validation.constraints.NotNull -import javax.validation.constraints.Pattern -import javax.validation.constraints.Size -import javax.validation.Valid -import io.swagger.annotations.ApiModelProperty - -/** - * - * @param name Updated name of the pet - * @param status Updated status of the pet - */ -data class InlineObject( - - @ApiModelProperty(example = "null", value = "Updated name of the pet") - @field:JsonProperty("name") val name: kotlin.String? = null, - - @ApiModelProperty(example = "null", value = "Updated status of the pet") - @field:JsonProperty("status") val status: kotlin.String? = null -) { - -} - diff --git a/samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject1.kt b/samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject1.kt deleted file mode 100644 index 60e6e76df23..00000000000 --- a/samples/server/petstore/kotlin-springboot-delegate/src/main/kotlin/org/openapitools/model/InlineObject1.kt +++ /dev/null @@ -1,31 +0,0 @@ -package org.openapitools.model - -import java.util.Objects -import com.fasterxml.jackson.annotation.JsonProperty -import javax.validation.constraints.DecimalMax -import javax.validation.constraints.DecimalMin -import javax.validation.constraints.Max -import javax.validation.constraints.Min -import javax.validation.constraints.NotNull -import javax.validation.constraints.Pattern -import javax.validation.constraints.Size -import javax.validation.Valid -import io.swagger.annotations.ApiModelProperty - -/** - * - * @param additionalMetadata Additional data to pass to server - * @param file file to upload - */ -data class InlineObject1( - - @ApiModelProperty(example = "null", value = "Additional data to pass to server") - @field:JsonProperty("additionalMetadata") val additionalMetadata: kotlin.String? = null, - - @field:Valid - @ApiModelProperty(example = "null", value = "file to upload") - @field:JsonProperty("file") val file: org.springframework.core.io.Resource? = null -) { - -} - diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES index 612ea14bbdb..93eaa304129 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle.kts pom.xml @@ -5,13 +6,13 @@ settings.gradle src/main/kotlin/org/openapitools/Application.kt src/main/kotlin/org/openapitools/api/ApiUtil.kt src/main/kotlin/org/openapitools/api/Exceptions.kt -src/main/kotlin/org/openapitools/api/PetApi.kt +src/main/kotlin/org/openapitools/api/PetApiController.kt src/main/kotlin/org/openapitools/api/PetApiService.kt src/main/kotlin/org/openapitools/api/PetApiServiceImpl.kt -src/main/kotlin/org/openapitools/api/StoreApi.kt +src/main/kotlin/org/openapitools/api/StoreApiController.kt src/main/kotlin/org/openapitools/api/StoreApiService.kt src/main/kotlin/org/openapitools/api/StoreApiServiceImpl.kt -src/main/kotlin/org/openapitools/api/UserApi.kt +src/main/kotlin/org/openapitools/api/UserApiController.kt src/main/kotlin/org/openapitools/api/UserApiService.kt src/main/kotlin/org/openapitools/api/UserApiServiceImpl.kt src/main/kotlin/org/openapitools/model/Category.kt @@ -21,3 +22,6 @@ src/main/kotlin/org/openapitools/model/Pet.kt src/main/kotlin/org/openapitools/model/Tag.kt src/main/kotlin/org/openapitools/model/User.kt src/main/resources/application.yaml +src/test/kotlin/org/openapitools/api/PetApiTest.kt +src/test/kotlin/org/openapitools/api/StoreApiTest.kt +src/test/kotlin/org/openapitools/api/UserApiTest.kt diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/VERSION b/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/VERSION index 3fa3b389a57..4077803655c 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/VERSION +++ b/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/VERSION @@ -1 +1 @@ -5.0.1-SNAPSHOT \ No newline at end of file +5.3.1-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/build.gradle.kts b/samples/server/petstore/kotlin-springboot-modelMutable/build.gradle.kts index 2b99799bd53..ea7f93398da 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/build.gradle.kts +++ b/samples/server/petstore/kotlin-springboot-modelMutable/build.gradle.kts @@ -30,7 +30,7 @@ plugins { } dependencies { - val kotlinxCoroutinesVersion="1.2.0" + val kotlinxCoroutinesVersion="1.2.0" compile("org.jetbrains.kotlin:kotlin-stdlib-jdk8") compile("org.jetbrains.kotlin:kotlin-reflect") compile("org.springframework.boot:spring-boot-starter-web") @@ -46,7 +46,7 @@ dependencies { } repositories { - maven { url = uri("https://repo1.maven.org/maven2") } - maven { url = uri("https://repo.spring.io/snapshot") } - maven { url = uri("https://repo.spring.io/milestone") } + maven { url = uri("https://repo1.maven.org/maven2") } + maven { url = uri("https://repo.spring.io/snapshot") } + maven { url = uri("https://repo.spring.io/milestone") } } diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/settings.gradle b/samples/server/petstore/kotlin-springboot-modelMutable/settings.gradle index e9bd5d32d7c..14844905cd4 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/settings.gradle +++ b/samples/server/petstore/kotlin-springboot-modelMutable/settings.gradle @@ -1,15 +1,15 @@ pluginManagement { - repositories { - maven { url = uri("https://repo.spring.io/snapshot") } - maven { url = uri("https://repo.spring.io/milestone") } - gradlePluginPortal() - } - resolutionStrategy { - eachPlugin { - if (requested.id.id == "org.springframework.boot") { - useModule("org.springframework.boot:spring-boot-gradle-plugin:${requested.version}") - } - } - } + repositories { + maven { url = uri("https://repo.spring.io/snapshot") } + maven { url = uri("https://repo.spring.io/milestone") } + gradlePluginPortal() + } + resolutionStrategy { + eachPlugin { + if (requested.id.id == "org.springframework.boot") { + useModule("org.springframework.boot:spring-boot-gradle-plugin:${requested.version}") + } + } + } } -rootProject.name = "openapi-spring" \ No newline at end of file +rootProject.name = "openapi-spring" diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApi.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiController.kt similarity index 95% rename from samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApi.kt rename to samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiController.kt index 9de503175ac..a26504324da 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApi.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiController.kt @@ -43,7 +43,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 405, message = "Invalid input")]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/pet"], consumes = ["application/json", "application/xml"] ) @@ -59,7 +60,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 400, message = "Invalid pet value")]) - @DeleteMapping( + @RequestMapping( + method = [RequestMethod.DELETE], value = ["/pet/{petId}"] ) fun deletePet(@ApiParam(value = "Pet id to delete", required=true) @PathVariable("petId") petId: kotlin.Long @@ -77,7 +79,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = Pet::class, responseContainer = "List"),ApiResponse(code = 400, message = "Invalid status value")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/pet/findByStatus"], produces = ["application/xml", "application/json"] ) @@ -95,7 +98,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = Pet::class, responseContainer = "List"),ApiResponse(code = 400, message = "Invalid tag value")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/pet/findByTags"], produces = ["application/xml", "application/json"] ) @@ -112,7 +116,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "api_key")]) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = Pet::class),ApiResponse(code = 400, message = "Invalid ID supplied"),ApiResponse(code = 404, message = "Pet not found")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/pet/{petId}"], produces = ["application/xml", "application/json"] ) @@ -128,7 +133,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 400, message = "Invalid ID supplied"),ApiResponse(code = 404, message = "Pet not found"),ApiResponse(code = 405, message = "Validation exception")]) - @PutMapping( + @RequestMapping( + method = [RequestMethod.PUT], value = ["/pet"], consumes = ["application/json", "application/xml"] ) @@ -144,7 +150,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 405, message = "Invalid input")]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/pet/{petId}"], consumes = ["application/x-www-form-urlencoded"] ) @@ -163,7 +170,8 @@ class PetApiController(@Autowired(required = true) val service: PetApiService) { authorizations = [Authorization(value = "petstore_auth", scopes = [AuthorizationScope(scope = "write:pets", description = "modify pets in your account"), AuthorizationScope(scope = "read:pets", description = "read your pets")])]) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = ModelApiResponse::class)]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/pet/{petId}/uploadImage"], produces = ["application/json"], consumes = ["multipart/form-data"] diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiService.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiService.kt index f3f2fd68b6c..ee0e3bef83c 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiService.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/PetApiService.kt @@ -2,21 +2,93 @@ package org.openapitools.api import org.openapitools.model.ModelApiResponse import org.openapitools.model.Pet + interface PetApiService { - fun addPet(body: Pet): Unit + /** + * POST /pet : Add a new pet to the store + * + * @param body Pet object that needs to be added to the store (required) + * @return Invalid input (status code 405) + * @see PetApi#addPet + */ + fun addPet(body: Pet): Unit - fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?): Unit + /** + * DELETE /pet/{petId} : Deletes a pet + * + * @param petId Pet id to delete (required) + * @param apiKey (optional) + * @return Invalid pet value (status code 400) + * @see PetApi#deletePet + */ + fun deletePet(petId: kotlin.Long, apiKey: kotlin.String?): Unit - fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>): List<Pet> + /** + * GET /pet/findByStatus : Finds Pets by status + * Multiple status values can be provided with comma separated strings + * + * @param status Status values that need to be considered for filter (required) + * @return successful operation (status code 200) + * or Invalid status value (status code 400) + * @see PetApi#findPetsByStatus + */ + fun findPetsByStatus(status: kotlin.collections.List<kotlin.String>): List<Pet> - fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>): List<Pet> + /** + * GET /pet/findByTags : Finds Pets by tags + * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. + * + * @param tags Tags to filter by (required) + * @return successful operation (status code 200) + * or Invalid tag value (status code 400) + * @deprecated + * @see PetApi#findPetsByTags + */ + fun findPetsByTags(tags: kotlin.collections.List<kotlin.String>): List<Pet> - fun getPetById(petId: kotlin.Long): Pet + /** + * GET /pet/{petId} : Find pet by ID + * Returns a single pet + * + * @param petId ID of pet to return (required) + * @return successful operation (status code 200) + * or Invalid ID supplied (status code 400) + * or Pet not found (status code 404) + * @see PetApi#getPetById + */ + fun getPetById(petId: kotlin.Long): Pet - fun updatePet(body: Pet): Unit + /** + * PUT /pet : Update an existing pet + * + * @param body Pet object that needs to be added to the store (required) + * @return Invalid ID supplied (status code 400) + * or Pet not found (status code 404) + * or Validation exception (status code 405) + * @see PetApi#updatePet + */ + fun updatePet(body: Pet): Unit - fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?): Unit + /** + * POST /pet/{petId} : Updates a pet in the store with form data + * + * @param petId ID of pet that needs to be updated (required) + * @param name Updated name of the pet (optional) + * @param status Updated status of the pet (optional) + * @return Invalid input (status code 405) + * @see PetApi#updatePetWithForm + */ + fun updatePetWithForm(petId: kotlin.Long, name: kotlin.String?, status: kotlin.String?): Unit - fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: org.springframework.core.io.Resource?): ModelApiResponse + /** + * POST /pet/{petId}/uploadImage : uploads an image + * + * @param petId ID of pet to update (required) + * @param additionalMetadata Additional data to pass to server (optional) + * @param file file to upload (optional) + * @return successful operation (status code 200) + * @see PetApi#uploadFile + */ + fun uploadFile(petId: kotlin.Long, additionalMetadata: kotlin.String?, file: org.springframework.core.io.Resource?): ModelApiResponse } diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApi.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiController.kt similarity index 94% rename from samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApi.kt rename to samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiController.kt index 3b82141c4df..e2be73b4ec3 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApi.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiController.kt @@ -41,7 +41,8 @@ class StoreApiController(@Autowired(required = true) val service: StoreApiServic notes = "For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors") @ApiResponses( value = [ApiResponse(code = 400, message = "Invalid ID supplied"),ApiResponse(code = 404, message = "Order not found")]) - @DeleteMapping( + @RequestMapping( + method = [RequestMethod.DELETE], value = ["/store/order/{orderId}"] ) fun deleteOrder(@ApiParam(value = "ID of the order that needs to be deleted", required=true) @PathVariable("orderId") orderId: kotlin.String @@ -58,7 +59,8 @@ class StoreApiController(@Autowired(required = true) val service: StoreApiServic authorizations = [Authorization(value = "api_key")]) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = kotlin.collections.Map::class, responseContainer = "Map")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/store/inventory"], produces = ["application/json"] ) @@ -73,7 +75,8 @@ class StoreApiController(@Autowired(required = true) val service: StoreApiServic response = Order::class) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = Order::class),ApiResponse(code = 400, message = "Invalid ID supplied"),ApiResponse(code = 404, message = "Order not found")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/store/order/{orderId}"], produces = ["application/xml", "application/json"] ) @@ -89,7 +92,8 @@ class StoreApiController(@Autowired(required = true) val service: StoreApiServic response = Order::class) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = Order::class),ApiResponse(code = 400, message = "Invalid Order")]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/store/order"], produces = ["application/xml", "application/json"] ) diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiService.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiService.kt index d4a4ef9507f..6de3e6cc1de 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiService.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/StoreApiService.kt @@ -1,13 +1,48 @@ package org.openapitools.api import org.openapitools.model.Order + interface StoreApiService { - fun deleteOrder(orderId: kotlin.String): Unit + /** + * DELETE /store/order/{orderId} : Delete purchase order by ID + * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors + * + * @param orderId ID of the order that needs to be deleted (required) + * @return Invalid ID supplied (status code 400) + * or Order not found (status code 404) + * @see StoreApi#deleteOrder + */ + fun deleteOrder(orderId: kotlin.String): Unit - fun getInventory(): Map<String, kotlin.Int> + /** + * GET /store/inventory : Returns pet inventories by status + * Returns a map of status codes to quantities + * + * @return successful operation (status code 200) + * @see StoreApi#getInventory + */ + fun getInventory(): Map<String, kotlin.Int> - fun getOrderById(orderId: kotlin.Long): Order + /** + * GET /store/order/{orderId} : Find purchase order by ID + * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions + * + * @param orderId ID of pet that needs to be fetched (required) + * @return successful operation (status code 200) + * or Invalid ID supplied (status code 400) + * or Order not found (status code 404) + * @see StoreApi#getOrderById + */ + fun getOrderById(orderId: kotlin.Long): Order - fun placeOrder(body: Order): Order + /** + * POST /store/order : Place an order for a pet + * + * @param body order placed for purchasing the pet (required) + * @return successful operation (status code 200) + * or Invalid Order (status code 400) + * @see StoreApi#placeOrder + */ + fun placeOrder(body: Order): Order } diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApi.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiController.kt similarity index 92% rename from samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApi.kt rename to samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiController.kt index 7071afde110..f7c4144fbdb 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApi.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiController.kt @@ -41,7 +41,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) notes = "This can only be done by the logged in user.") @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation")]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/user"] ) fun createUser(@ApiParam(value = "Created user object" ,required=true ) @Valid @RequestBody body: User @@ -55,7 +56,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) notes = "") @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation")]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/user/createWithArray"] ) fun createUsersWithArrayInput(@ApiParam(value = "List of user object" ,required=true ) @Valid @RequestBody body: kotlin.collections.List<User> @@ -69,7 +71,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) notes = "") @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation")]) - @PostMapping( + @RequestMapping( + method = [RequestMethod.POST], value = ["/user/createWithList"] ) fun createUsersWithListInput(@ApiParam(value = "List of user object" ,required=true ) @Valid @RequestBody body: kotlin.collections.List<User> @@ -83,7 +86,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) notes = "This can only be done by the logged in user.") @ApiResponses( value = [ApiResponse(code = 400, message = "Invalid username supplied"),ApiResponse(code = 404, message = "User not found")]) - @DeleteMapping( + @RequestMapping( + method = [RequestMethod.DELETE], value = ["/user/{username}"] ) fun deleteUser(@ApiParam(value = "The name that needs to be deleted", required=true) @PathVariable("username") username: kotlin.String @@ -98,7 +102,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) response = User::class) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = User::class),ApiResponse(code = 400, message = "Invalid username supplied"),ApiResponse(code = 404, message = "User not found")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/user/{username}"], produces = ["application/xml", "application/json"] ) @@ -114,7 +119,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) response = kotlin.String::class) @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation", response = kotlin.String::class),ApiResponse(code = 400, message = "Invalid username/password supplied")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/user/login"], produces = ["application/xml", "application/json"] ) @@ -130,7 +136,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) notes = "") @ApiResponses( value = [ApiResponse(code = 200, message = "successful operation")]) - @GetMapping( + @RequestMapping( + method = [RequestMethod.GET], value = ["/user/logout"] ) fun logoutUser(): ResponseEntity<Unit> { @@ -143,7 +150,8 @@ class UserApiController(@Autowired(required = true) val service: UserApiService) notes = "This can only be done by the logged in user.") @ApiResponses( value = [ApiResponse(code = 400, message = "Invalid user supplied"),ApiResponse(code = 404, message = "User not found")]) - @PutMapping( + @RequestMapping( + method = [RequestMethod.PUT], value = ["/user/{username}"] ) fun updateUser(@ApiParam(value = "name that need to be deleted", required=true) @PathVariable("username") username: kotlin.String diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiService.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiService.kt index 491705c3b50..a1bcf6be237 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiService.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/main/kotlin/org/openapitools/api/UserApiService.kt @@ -1,21 +1,87 @@ package org.openapitools.api import org.openapitools.model.User + interface UserApiService { - fun createUser(body: User): Unit + /** + * POST /user : Create user + * This can only be done by the logged in user. + * + * @param body Created user object (required) + * @return successful operation (status code 200) + * @see UserApi#createUser + */ + fun createUser(body: User): Unit - fun createUsersWithArrayInput(body: kotlin.collections.List<User>): Unit + /** + * POST /user/createWithArray : Creates list of users with given input array + * + * @param body List of user object (required) + * @return successful operation (status code 200) + * @see UserApi#createUsersWithArrayInput + */ + fun createUsersWithArrayInput(body: kotlin.collections.List<User>): Unit - fun createUsersWithListInput(body: kotlin.collections.List<User>): Unit + /** + * POST /user/createWithList : Creates list of users with given input array + * + * @param body List of user object (required) + * @return successful operation (status code 200) + * @see UserApi#createUsersWithListInput + */ + fun createUsersWithListInput(body: kotlin.collections.List<User>): Unit - fun deleteUser(username: kotlin.String): Unit + /** + * DELETE /user/{username} : Delete user + * This can only be done by the logged in user. + * + * @param username The name that needs to be deleted (required) + * @return Invalid username supplied (status code 400) + * or User not found (status code 404) + * @see UserApi#deleteUser + */ + fun deleteUser(username: kotlin.String): Unit - fun getUserByName(username: kotlin.String): User + /** + * GET /user/{username} : Get user by user name + * + * @param username The name that needs to be fetched. Use user1 for testing. (required) + * @return successful operation (status code 200) + * or Invalid username supplied (status code 400) + * or User not found (status code 404) + * @see UserApi#getUserByName + */ + fun getUserByName(username: kotlin.String): User - fun loginUser(username: kotlin.String, password: kotlin.String): kotlin.String + /** + * GET /user/login : Logs user into the system + * + * @param username The user name for login (required) + * @param password The password for login in clear text (required) + * @return successful operation (status code 200) + * or Invalid username/password supplied (status code 400) + * @see UserApi#loginUser + */ + fun loginUser(username: kotlin.String, password: kotlin.String): kotlin.String - fun logoutUser(): Unit + /** + * GET /user/logout : Logs out current logged in user session + * + * @return successful operation (status code 200) + * @see UserApi#logoutUser + */ + fun logoutUser(): Unit - fun updateUser(username: kotlin.String, body: User): Unit + /** + * PUT /user/{username} : Updated user + * This can only be done by the logged in user. + * + * @param username name that need to be deleted (required) + * @param body Updated user object (required) + * @return Invalid user supplied (status code 400) + * or User not found (status code 404) + * @see UserApi#updateUser + */ + fun updateUser(username: kotlin.String, body: User): Unit } diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/PetApiTest.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/PetApiTest.kt index d621c166966..0d3ccd3989f 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/PetApiTest.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/PetApiTest.kt @@ -3,7 +3,6 @@ package org.openapitools.api import org.openapitools.model.ModelApiResponse import org.openapitools.model.Pet import org.junit.jupiter.api.Test - import org.springframework.http.ResponseEntity class PetApiTest { @@ -11,138 +10,121 @@ class PetApiTest { private val service: PetApiService = PetApiServiceImpl() private val api: PetApiController = PetApiController(service) - /** - * Add a new pet to the store - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.addPet + * + * @throws ApiException + * if the Api call fails + */ @Test fun addPetTest() { - val body:Pet? = null - val response: ResponseEntity<Unit> = api.addPet(body!!) + val body:Pet = TODO() + val response: ResponseEntity<Unit> = api.addPet(body) // TODO: test validations } - + /** - * Deletes a pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.deletePet + * + * @throws ApiException + * if the Api call fails + */ @Test fun deletePetTest() { - val petId:kotlin.Long? = null - val apiKey:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deletePet(petId!!, apiKey!!) + val petId:kotlin.Long = TODO() + val apiKey:kotlin.String? = TODO() + val response: ResponseEntity<Unit> = api.deletePet(petId, apiKey) // TODO: test validations } - + /** - * Finds Pets by status - * - * Multiple status values can be provided with comma separated strings - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.findPetsByStatus + * + * @throws ApiException + * if the Api call fails + */ @Test fun findPetsByStatusTest() { - val status:kotlin.collections.List<kotlin.String>? = null - val response: ResponseEntity<List<Pet>> = api.findPetsByStatus(status!!) + val status:kotlin.collections.List<kotlin.String> = TODO() + val response: ResponseEntity<List<Pet>> = api.findPetsByStatus(status) // TODO: test validations } - + /** - * Finds Pets by tags - * - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.findPetsByTags + * + * @throws ApiException + * if the Api call fails + */ @Test fun findPetsByTagsTest() { - val tags:kotlin.collections.List<kotlin.String>? = null - val response: ResponseEntity<List<Pet>> = api.findPetsByTags(tags!!) + val tags:kotlin.collections.List<kotlin.String> = TODO() + val response: ResponseEntity<List<Pet>> = api.findPetsByTags(tags) // TODO: test validations } - + /** - * Find pet by ID - * - * Returns a single pet - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.getPetById + * + * @throws ApiException + * if the Api call fails + */ @Test fun getPetByIdTest() { - val petId:kotlin.Long? = null - val response: ResponseEntity<Pet> = api.getPetById(petId!!) + val petId:kotlin.Long = TODO() + val response: ResponseEntity<Pet> = api.getPetById(petId) // TODO: test validations } - + /** - * Update an existing pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.updatePet + * + * @throws ApiException + * if the Api call fails + */ @Test fun updatePetTest() { - val body:Pet? = null - val response: ResponseEntity<Unit> = api.updatePet(body!!) + val body:Pet = TODO() + val response: ResponseEntity<Unit> = api.updatePet(body) // TODO: test validations } - + /** - * Updates a pet in the store with form data - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.updatePetWithForm + * + * @throws ApiException + * if the Api call fails + */ @Test fun updatePetWithFormTest() { - val petId:kotlin.Long? = null - val name:kotlin.String? = null - val status:kotlin.String? = null - val response: ResponseEntity<Unit> = api.updatePetWithForm(petId!!, name!!, status!!) + val petId:kotlin.Long = TODO() + val name:kotlin.String? = TODO() + val status:kotlin.String? = TODO() + val response: ResponseEntity<Unit> = api.updatePetWithForm(petId, name, status) // TODO: test validations } - + /** - * uploads an image - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.uploadFile + * + * @throws ApiException + * if the Api call fails + */ @Test fun uploadFileTest() { - val petId:kotlin.Long? = null - val additionalMetadata:kotlin.String? = null - val file:org.springframework.core.io.Resource? = null - val response: ResponseEntity<ModelApiResponse> = api.uploadFile(petId!!, additionalMetadata!!, file!!) + val petId:kotlin.Long = TODO() + val additionalMetadata:kotlin.String? = TODO() + val file:org.springframework.core.io.Resource? = TODO() + val response: ResponseEntity<ModelApiResponse> = api.uploadFile(petId, additionalMetadata, file) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/StoreApiTest.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/StoreApiTest.kt index 82b91cd652b..fcb00e99e99 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/StoreApiTest.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/StoreApiTest.kt @@ -2,7 +2,6 @@ package org.openapitools.api import org.openapitools.model.Order import org.junit.jupiter.api.Test - import org.springframework.http.ResponseEntity class StoreApiTest { @@ -10,68 +9,59 @@ class StoreApiTest { private val service: StoreApiService = StoreApiServiceImpl() private val api: StoreApiController = StoreApiController(service) - /** - * Delete purchase order by ID - * - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.deleteOrder + * + * @throws ApiException + * if the Api call fails + */ @Test fun deleteOrderTest() { - val orderId:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deleteOrder(orderId!!) + val orderId:kotlin.String = TODO() + val response: ResponseEntity<Unit> = api.deleteOrder(orderId) // TODO: test validations } - + /** - * Returns pet inventories by status - * - * Returns a map of status codes to quantities - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.getInventory + * + * @throws ApiException + * if the Api call fails + */ @Test fun getInventoryTest() { val response: ResponseEntity<Map<String, kotlin.Int>> = api.getInventory() // TODO: test validations } - + /** - * Find purchase order by ID - * - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.getOrderById + * + * @throws ApiException + * if the Api call fails + */ @Test fun getOrderByIdTest() { - val orderId:kotlin.Long? = null - val response: ResponseEntity<Order> = api.getOrderById(orderId!!) + val orderId:kotlin.Long = TODO() + val response: ResponseEntity<Order> = api.getOrderById(orderId) // TODO: test validations } - + /** - * Place an order for a pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.placeOrder + * + * @throws ApiException + * if the Api call fails + */ @Test fun placeOrderTest() { - val body:Order? = null - val response: ResponseEntity<Order> = api.placeOrder(body!!) + val body:Order = TODO() + val response: ResponseEntity<Order> = api.placeOrder(body) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/UserApiTest.kt b/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/UserApiTest.kt index 14917f70aeb..c3f07290cfe 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/UserApiTest.kt +++ b/samples/server/petstore/kotlin-springboot-modelMutable/src/test/kotlin/org/openapitools/api/UserApiTest.kt @@ -2,7 +2,6 @@ package org.openapitools.api import org.openapitools.model.User import org.junit.jupiter.api.Test - import org.springframework.http.ResponseEntity class UserApiTest { @@ -10,134 +9,117 @@ class UserApiTest { private val service: UserApiService = UserApiServiceImpl() private val api: UserApiController = UserApiController(service) - /** - * Create user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUserTest() { - val body:User? = null - val response: ResponseEntity<Unit> = api.createUser(body!!) + val body:User = TODO() + val response: ResponseEntity<Unit> = api.createUser(body) // TODO: test validations } - + /** - * Creates list of users with given input array - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUsersWithArrayInput + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUsersWithArrayInputTest() { - val body:kotlin.collections.List<User>? = null - val response: ResponseEntity<Unit> = api.createUsersWithArrayInput(body!!) + val body:kotlin.collections.List<User> = TODO() + val response: ResponseEntity<Unit> = api.createUsersWithArrayInput(body) // TODO: test validations } - + /** - * Creates list of users with given input array - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUsersWithListInput + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUsersWithListInputTest() { - val body:kotlin.collections.List<User>? = null - val response: ResponseEntity<Unit> = api.createUsersWithListInput(body!!) + val body:kotlin.collections.List<User> = TODO() + val response: ResponseEntity<Unit> = api.createUsersWithListInput(body) // TODO: test validations } - + /** - * Delete user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.deleteUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun deleteUserTest() { - val username:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deleteUser(username!!) + val username:kotlin.String = TODO() + val response: ResponseEntity<Unit> = api.deleteUser(username) // TODO: test validations } - + /** - * Get user by user name - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.getUserByName + * + * @throws ApiException + * if the Api call fails + */ @Test fun getUserByNameTest() { - val username:kotlin.String? = null - val response: ResponseEntity<User> = api.getUserByName(username!!) + val username:kotlin.String = TODO() + val response: ResponseEntity<User> = api.getUserByName(username) // TODO: test validations } - + /** - * Logs user into the system - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.loginUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun loginUserTest() { - val username:kotlin.String? = null - val password:kotlin.String? = null - val response: ResponseEntity<kotlin.String> = api.loginUser(username!!, password!!) + val username:kotlin.String = TODO() + val password:kotlin.String = TODO() + val response: ResponseEntity<kotlin.String> = api.loginUser(username, password) // TODO: test validations } - + /** - * Logs out current logged in user session - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.logoutUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun logoutUserTest() { val response: ResponseEntity<Unit> = api.logoutUser() // TODO: test validations } - + /** - * Updated user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.updateUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun updateUserTest() { - val username:kotlin.String? = null - val body:User? = null - val response: ResponseEntity<Unit> = api.updateUser(username!!, body!!) + val username:kotlin.String = TODO() + val body:User = TODO() + val response: ResponseEntity<Unit> = api.updateUser(username, body) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES index fdc7a16af74..3627649a5b3 100644 --- a/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle.kts pom.xml @@ -20,3 +21,6 @@ src/main/kotlin/org/openapitools/model/Pet.kt src/main/kotlin/org/openapitools/model/Tag.kt src/main/kotlin/org/openapitools/model/User.kt src/main/resources/application.yaml +src/test/kotlin/org/openapitools/api/PetApiTest.kt +src/test/kotlin/org/openapitools/api/StoreApiTest.kt +src/test/kotlin/org/openapitools/api/UserApiTest.kt diff --git a/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/PetApiTest.kt b/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/PetApiTest.kt index f43c6ecf7ca..bbc9b118e24 100644 --- a/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/PetApiTest.kt +++ b/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/PetApiTest.kt @@ -3,7 +3,6 @@ package org.openapitools.api import org.openapitools.model.ModelApiResponse import org.openapitools.model.Pet import org.junit.jupiter.api.Test - import kotlinx.coroutines.flow.Flow; import kotlinx.coroutines.test.runBlockingTest import org.springframework.http.ResponseEntity @@ -13,138 +12,121 @@ class PetApiTest { private val service: PetApiService = PetApiServiceImpl() private val api: PetApiController = PetApiController(service) - /** - * Add a new pet to the store - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.addPet + * + * @throws ApiException + * if the Api call fails + */ @Test fun addPetTest() = runBlockingTest { - val body:Pet? = null - val response: ResponseEntity<Unit> = api.addPet(body!!) + val body:Pet = TODO() + val response: ResponseEntity<Unit> = api.addPet(body) // TODO: test validations } - + /** - * Deletes a pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.deletePet + * + * @throws ApiException + * if the Api call fails + */ @Test fun deletePetTest() = runBlockingTest { - val petId:kotlin.Long? = null - val apiKey:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deletePet(petId!!, apiKey!!) + val petId:kotlin.Long = TODO() + val apiKey:kotlin.String? = TODO() + val response: ResponseEntity<Unit> = api.deletePet(petId, apiKey) // TODO: test validations } - + /** - * Finds Pets by status - * - * Multiple status values can be provided with comma separated strings - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.findPetsByStatus + * + * @throws ApiException + * if the Api call fails + */ @Test fun findPetsByStatusTest() = runBlockingTest { - val status:kotlin.collections.List<kotlin.String>? = null - val response: ResponseEntity<Flow<Pet>> = api.findPetsByStatus(status!!) + val status:kotlin.collections.List<kotlin.String> = TODO() + val response: ResponseEntity<Flow<Pet>> = api.findPetsByStatus(status) // TODO: test validations } - + /** - * Finds Pets by tags - * - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.findPetsByTags + * + * @throws ApiException + * if the Api call fails + */ @Test fun findPetsByTagsTest() = runBlockingTest { - val tags:kotlin.collections.List<kotlin.String>? = null - val response: ResponseEntity<Flow<Pet>> = api.findPetsByTags(tags!!) + val tags:kotlin.collections.List<kotlin.String> = TODO() + val response: ResponseEntity<Flow<Pet>> = api.findPetsByTags(tags) // TODO: test validations } - + /** - * Find pet by ID - * - * Returns a single pet - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.getPetById + * + * @throws ApiException + * if the Api call fails + */ @Test fun getPetByIdTest() = runBlockingTest { - val petId:kotlin.Long? = null - val response: ResponseEntity<Pet> = api.getPetById(petId!!) + val petId:kotlin.Long = TODO() + val response: ResponseEntity<Pet> = api.getPetById(petId) // TODO: test validations } - + /** - * Update an existing pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.updatePet + * + * @throws ApiException + * if the Api call fails + */ @Test fun updatePetTest() = runBlockingTest { - val body:Pet? = null - val response: ResponseEntity<Unit> = api.updatePet(body!!) + val body:Pet = TODO() + val response: ResponseEntity<Unit> = api.updatePet(body) // TODO: test validations } - + /** - * Updates a pet in the store with form data - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.updatePetWithForm + * + * @throws ApiException + * if the Api call fails + */ @Test fun updatePetWithFormTest() = runBlockingTest { - val petId:kotlin.Long? = null - val name:kotlin.String? = null - val status:kotlin.String? = null - val response: ResponseEntity<Unit> = api.updatePetWithForm(petId!!, name!!, status!!) + val petId:kotlin.Long = TODO() + val name:kotlin.String? = TODO() + val status:kotlin.String? = TODO() + val response: ResponseEntity<Unit> = api.updatePetWithForm(petId, name, status) // TODO: test validations } - + /** - * uploads an image - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.uploadFile + * + * @throws ApiException + * if the Api call fails + */ @Test fun uploadFileTest() = runBlockingTest { - val petId:kotlin.Long? = null - val additionalMetadata:kotlin.String? = null - val file:org.springframework.core.io.Resource? = null - val response: ResponseEntity<ModelApiResponse> = api.uploadFile(petId!!, additionalMetadata!!, file!!) + val petId:kotlin.Long = TODO() + val additionalMetadata:kotlin.String? = TODO() + val file:org.springframework.core.io.Resource? = TODO() + val response: ResponseEntity<ModelApiResponse> = api.uploadFile(petId, additionalMetadata, file) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/StoreApiTest.kt b/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/StoreApiTest.kt index 31c0a2e0713..1db01446d86 100644 --- a/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/StoreApiTest.kt +++ b/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/StoreApiTest.kt @@ -2,7 +2,6 @@ package org.openapitools.api import org.openapitools.model.Order import org.junit.jupiter.api.Test - import kotlinx.coroutines.flow.Flow; import kotlinx.coroutines.test.runBlockingTest import org.springframework.http.ResponseEntity @@ -12,68 +11,59 @@ class StoreApiTest { private val service: StoreApiService = StoreApiServiceImpl() private val api: StoreApiController = StoreApiController(service) - /** - * Delete purchase order by ID - * - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.deleteOrder + * + * @throws ApiException + * if the Api call fails + */ @Test fun deleteOrderTest() = runBlockingTest { - val orderId:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deleteOrder(orderId!!) + val orderId:kotlin.String = TODO() + val response: ResponseEntity<Unit> = api.deleteOrder(orderId) // TODO: test validations } - + /** - * Returns pet inventories by status - * - * Returns a map of status codes to quantities - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.getInventory + * + * @throws ApiException + * if the Api call fails + */ @Test fun getInventoryTest() = runBlockingTest { val response: ResponseEntity<Map<String, kotlin.Int>> = api.getInventory() // TODO: test validations } - + /** - * Find purchase order by ID - * - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.getOrderById + * + * @throws ApiException + * if the Api call fails + */ @Test fun getOrderByIdTest() = runBlockingTest { - val orderId:kotlin.Long? = null - val response: ResponseEntity<Order> = api.getOrderById(orderId!!) + val orderId:kotlin.Long = TODO() + val response: ResponseEntity<Order> = api.getOrderById(orderId) // TODO: test validations } - + /** - * Place an order for a pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.placeOrder + * + * @throws ApiException + * if the Api call fails + */ @Test fun placeOrderTest() = runBlockingTest { - val body:Order? = null - val response: ResponseEntity<Order> = api.placeOrder(body!!) + val body:Order = TODO() + val response: ResponseEntity<Order> = api.placeOrder(body) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/UserApiTest.kt b/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/UserApiTest.kt index 3d467deb14f..126e0700f79 100644 --- a/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/UserApiTest.kt +++ b/samples/server/petstore/kotlin-springboot-reactive/src/test/kotlin/org/openapitools/api/UserApiTest.kt @@ -2,7 +2,6 @@ package org.openapitools.api import org.openapitools.model.User import org.junit.jupiter.api.Test - import kotlinx.coroutines.flow.Flow; import kotlinx.coroutines.test.runBlockingTest import org.springframework.http.ResponseEntity @@ -12,134 +11,117 @@ class UserApiTest { private val service: UserApiService = UserApiServiceImpl() private val api: UserApiController = UserApiController(service) - /** - * Create user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUserTest() = runBlockingTest { - val body:User? = null - val response: ResponseEntity<Unit> = api.createUser(body!!) + val body:User = TODO() + val response: ResponseEntity<Unit> = api.createUser(body) // TODO: test validations } - + /** - * Creates list of users with given input array - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUsersWithArrayInput + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUsersWithArrayInputTest() = runBlockingTest { - val body:kotlin.collections.List<User>? = null - val response: ResponseEntity<Unit> = api.createUsersWithArrayInput(body!!) + val body:kotlin.collections.List<User> = TODO() + val response: ResponseEntity<Unit> = api.createUsersWithArrayInput(body) // TODO: test validations } - + /** - * Creates list of users with given input array - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUsersWithListInput + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUsersWithListInputTest() = runBlockingTest { - val body:kotlin.collections.List<User>? = null - val response: ResponseEntity<Unit> = api.createUsersWithListInput(body!!) + val body:kotlin.collections.List<User> = TODO() + val response: ResponseEntity<Unit> = api.createUsersWithListInput(body) // TODO: test validations } - + /** - * Delete user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.deleteUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun deleteUserTest() = runBlockingTest { - val username:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deleteUser(username!!) + val username:kotlin.String = TODO() + val response: ResponseEntity<Unit> = api.deleteUser(username) // TODO: test validations } - + /** - * Get user by user name - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.getUserByName + * + * @throws ApiException + * if the Api call fails + */ @Test fun getUserByNameTest() = runBlockingTest { - val username:kotlin.String? = null - val response: ResponseEntity<User> = api.getUserByName(username!!) + val username:kotlin.String = TODO() + val response: ResponseEntity<User> = api.getUserByName(username) // TODO: test validations } - + /** - * Logs user into the system - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.loginUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun loginUserTest() = runBlockingTest { - val username:kotlin.String? = null - val password:kotlin.String? = null - val response: ResponseEntity<kotlin.String> = api.loginUser(username!!, password!!) + val username:kotlin.String = TODO() + val password:kotlin.String = TODO() + val response: ResponseEntity<kotlin.String> = api.loginUser(username, password) // TODO: test validations } - + /** - * Logs out current logged in user session - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.logoutUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun logoutUserTest() = runBlockingTest { val response: ResponseEntity<Unit> = api.logoutUser() // TODO: test validations } - + /** - * Updated user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.updateUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun updateUserTest() = runBlockingTest { - val username:kotlin.String? = null - val body:User? = null - val response: ResponseEntity<Unit> = api.updateUser(username!!, body!!) + val username:kotlin.String = TODO() + val body:User = TODO() + val response: ResponseEntity<Unit> = api.updateUser(username, body) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES index 50a9d2bc75d..93eaa304129 100644 --- a/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md build.gradle.kts pom.xml @@ -21,3 +22,6 @@ src/main/kotlin/org/openapitools/model/Pet.kt src/main/kotlin/org/openapitools/model/Tag.kt src/main/kotlin/org/openapitools/model/User.kt src/main/resources/application.yaml +src/test/kotlin/org/openapitools/api/PetApiTest.kt +src/test/kotlin/org/openapitools/api/StoreApiTest.kt +src/test/kotlin/org/openapitools/api/UserApiTest.kt diff --git a/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/PetApiTest.kt b/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/PetApiTest.kt index d621c166966..0d3ccd3989f 100644 --- a/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/PetApiTest.kt +++ b/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/PetApiTest.kt @@ -3,7 +3,6 @@ package org.openapitools.api import org.openapitools.model.ModelApiResponse import org.openapitools.model.Pet import org.junit.jupiter.api.Test - import org.springframework.http.ResponseEntity class PetApiTest { @@ -11,138 +10,121 @@ class PetApiTest { private val service: PetApiService = PetApiServiceImpl() private val api: PetApiController = PetApiController(service) - /** - * Add a new pet to the store - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.addPet + * + * @throws ApiException + * if the Api call fails + */ @Test fun addPetTest() { - val body:Pet? = null - val response: ResponseEntity<Unit> = api.addPet(body!!) + val body:Pet = TODO() + val response: ResponseEntity<Unit> = api.addPet(body) // TODO: test validations } - + /** - * Deletes a pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.deletePet + * + * @throws ApiException + * if the Api call fails + */ @Test fun deletePetTest() { - val petId:kotlin.Long? = null - val apiKey:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deletePet(petId!!, apiKey!!) + val petId:kotlin.Long = TODO() + val apiKey:kotlin.String? = TODO() + val response: ResponseEntity<Unit> = api.deletePet(petId, apiKey) // TODO: test validations } - + /** - * Finds Pets by status - * - * Multiple status values can be provided with comma separated strings - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.findPetsByStatus + * + * @throws ApiException + * if the Api call fails + */ @Test fun findPetsByStatusTest() { - val status:kotlin.collections.List<kotlin.String>? = null - val response: ResponseEntity<List<Pet>> = api.findPetsByStatus(status!!) + val status:kotlin.collections.List<kotlin.String> = TODO() + val response: ResponseEntity<List<Pet>> = api.findPetsByStatus(status) // TODO: test validations } - + /** - * Finds Pets by tags - * - * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.findPetsByTags + * + * @throws ApiException + * if the Api call fails + */ @Test fun findPetsByTagsTest() { - val tags:kotlin.collections.List<kotlin.String>? = null - val response: ResponseEntity<List<Pet>> = api.findPetsByTags(tags!!) + val tags:kotlin.collections.List<kotlin.String> = TODO() + val response: ResponseEntity<List<Pet>> = api.findPetsByTags(tags) // TODO: test validations } - + /** - * Find pet by ID - * - * Returns a single pet - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.getPetById + * + * @throws ApiException + * if the Api call fails + */ @Test fun getPetByIdTest() { - val petId:kotlin.Long? = null - val response: ResponseEntity<Pet> = api.getPetById(petId!!) + val petId:kotlin.Long = TODO() + val response: ResponseEntity<Pet> = api.getPetById(petId) // TODO: test validations } - + /** - * Update an existing pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.updatePet + * + * @throws ApiException + * if the Api call fails + */ @Test fun updatePetTest() { - val body:Pet? = null - val response: ResponseEntity<Unit> = api.updatePet(body!!) + val body:Pet = TODO() + val response: ResponseEntity<Unit> = api.updatePet(body) // TODO: test validations } - + /** - * Updates a pet in the store with form data - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.updatePetWithForm + * + * @throws ApiException + * if the Api call fails + */ @Test fun updatePetWithFormTest() { - val petId:kotlin.Long? = null - val name:kotlin.String? = null - val status:kotlin.String? = null - val response: ResponseEntity<Unit> = api.updatePetWithForm(petId!!, name!!, status!!) + val petId:kotlin.Long = TODO() + val name:kotlin.String? = TODO() + val status:kotlin.String? = TODO() + val response: ResponseEntity<Unit> = api.updatePetWithForm(petId, name, status) // TODO: test validations } - + /** - * uploads an image - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test PetApiController.uploadFile + * + * @throws ApiException + * if the Api call fails + */ @Test fun uploadFileTest() { - val petId:kotlin.Long? = null - val additionalMetadata:kotlin.String? = null - val file:org.springframework.core.io.Resource? = null - val response: ResponseEntity<ModelApiResponse> = api.uploadFile(petId!!, additionalMetadata!!, file!!) + val petId:kotlin.Long = TODO() + val additionalMetadata:kotlin.String? = TODO() + val file:org.springframework.core.io.Resource? = TODO() + val response: ResponseEntity<ModelApiResponse> = api.uploadFile(petId, additionalMetadata, file) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/StoreApiTest.kt b/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/StoreApiTest.kt index 82b91cd652b..fcb00e99e99 100644 --- a/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/StoreApiTest.kt +++ b/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/StoreApiTest.kt @@ -2,7 +2,6 @@ package org.openapitools.api import org.openapitools.model.Order import org.junit.jupiter.api.Test - import org.springframework.http.ResponseEntity class StoreApiTest { @@ -10,68 +9,59 @@ class StoreApiTest { private val service: StoreApiService = StoreApiServiceImpl() private val api: StoreApiController = StoreApiController(service) - /** - * Delete purchase order by ID - * - * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.deleteOrder + * + * @throws ApiException + * if the Api call fails + */ @Test fun deleteOrderTest() { - val orderId:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deleteOrder(orderId!!) + val orderId:kotlin.String = TODO() + val response: ResponseEntity<Unit> = api.deleteOrder(orderId) // TODO: test validations } - + /** - * Returns pet inventories by status - * - * Returns a map of status codes to quantities - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.getInventory + * + * @throws ApiException + * if the Api call fails + */ @Test fun getInventoryTest() { val response: ResponseEntity<Map<String, kotlin.Int>> = api.getInventory() // TODO: test validations } - + /** - * Find purchase order by ID - * - * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.getOrderById + * + * @throws ApiException + * if the Api call fails + */ @Test fun getOrderByIdTest() { - val orderId:kotlin.Long? = null - val response: ResponseEntity<Order> = api.getOrderById(orderId!!) + val orderId:kotlin.Long = TODO() + val response: ResponseEntity<Order> = api.getOrderById(orderId) // TODO: test validations } - + /** - * Place an order for a pet - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test StoreApiController.placeOrder + * + * @throws ApiException + * if the Api call fails + */ @Test fun placeOrderTest() { - val body:Order? = null - val response: ResponseEntity<Order> = api.placeOrder(body!!) + val body:Order = TODO() + val response: ResponseEntity<Order> = api.placeOrder(body) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/UserApiTest.kt b/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/UserApiTest.kt index 14917f70aeb..c3f07290cfe 100644 --- a/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/UserApiTest.kt +++ b/samples/server/petstore/kotlin-springboot/src/test/kotlin/org/openapitools/api/UserApiTest.kt @@ -2,7 +2,6 @@ package org.openapitools.api import org.openapitools.model.User import org.junit.jupiter.api.Test - import org.springframework.http.ResponseEntity class UserApiTest { @@ -10,134 +9,117 @@ class UserApiTest { private val service: UserApiService = UserApiServiceImpl() private val api: UserApiController = UserApiController(service) - /** - * Create user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUserTest() { - val body:User? = null - val response: ResponseEntity<Unit> = api.createUser(body!!) + val body:User = TODO() + val response: ResponseEntity<Unit> = api.createUser(body) // TODO: test validations } - + /** - * Creates list of users with given input array - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUsersWithArrayInput + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUsersWithArrayInputTest() { - val body:kotlin.collections.List<User>? = null - val response: ResponseEntity<Unit> = api.createUsersWithArrayInput(body!!) + val body:kotlin.collections.List<User> = TODO() + val response: ResponseEntity<Unit> = api.createUsersWithArrayInput(body) // TODO: test validations } - + /** - * Creates list of users with given input array - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.createUsersWithListInput + * + * @throws ApiException + * if the Api call fails + */ @Test fun createUsersWithListInputTest() { - val body:kotlin.collections.List<User>? = null - val response: ResponseEntity<Unit> = api.createUsersWithListInput(body!!) + val body:kotlin.collections.List<User> = TODO() + val response: ResponseEntity<Unit> = api.createUsersWithListInput(body) // TODO: test validations } - + /** - * Delete user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.deleteUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun deleteUserTest() { - val username:kotlin.String? = null - val response: ResponseEntity<Unit> = api.deleteUser(username!!) + val username:kotlin.String = TODO() + val response: ResponseEntity<Unit> = api.deleteUser(username) // TODO: test validations } - + /** - * Get user by user name - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.getUserByName + * + * @throws ApiException + * if the Api call fails + */ @Test fun getUserByNameTest() { - val username:kotlin.String? = null - val response: ResponseEntity<User> = api.getUserByName(username!!) + val username:kotlin.String = TODO() + val response: ResponseEntity<User> = api.getUserByName(username) // TODO: test validations } - + /** - * Logs user into the system - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.loginUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun loginUserTest() { - val username:kotlin.String? = null - val password:kotlin.String? = null - val response: ResponseEntity<kotlin.String> = api.loginUser(username!!, password!!) + val username:kotlin.String = TODO() + val password:kotlin.String = TODO() + val response: ResponseEntity<kotlin.String> = api.loginUser(username, password) // TODO: test validations } - + /** - * Logs out current logged in user session - * - * - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.logoutUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun logoutUserTest() { val response: ResponseEntity<Unit> = api.logoutUser() // TODO: test validations } - + /** - * Updated user - * - * This can only be done by the logged in user. - * - * @throws ApiException - * if the Api call fails - */ + * To test UserApiController.updateUser + * + * @throws ApiException + * if the Api call fails + */ @Test fun updateUserTest() { - val username:kotlin.String? = null - val body:User? = null - val response: ResponseEntity<Unit> = api.updateUser(username!!, body!!) + val username:kotlin.String = TODO() + val body:User = TODO() + val response: ResponseEntity<Unit> = api.updateUser(username, body) // TODO: test validations } - + } diff --git a/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES b/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES index cf01966a4dd..d500de57474 100644 --- a/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.openapi-generator-ignore README.md pom.xml src/main/kotlin/org/openapitools/server/api/model/ApiResponse.kt diff --git a/samples/server/petstore/kotlin/vertx/.openapi-generator/VERSION b/samples/server/petstore/kotlin/vertx/.openapi-generator/VERSION index 3fa3b389a57..4077803655c 100644 --- a/samples/server/petstore/kotlin/vertx/.openapi-generator/VERSION +++ b/samples/server/petstore/kotlin/vertx/.openapi-generator/VERSION @@ -1 +1 @@ -5.0.1-SNAPSHOT \ No newline at end of file +5.3.1-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/kotlin/vertx/pom.xml b/samples/server/petstore/kotlin/vertx/pom.xml index 9d151636971..f7dce917e48 100644 --- a/samples/server/petstore/kotlin/vertx/pom.xml +++ b/samples/server/petstore/kotlin/vertx/pom.xml @@ -1,14 +1,14 @@ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> - + <groupId>org.openapitools</groupId> <artifactId>openapi-kotlin-vertx-server</artifactId> <version>1.0.0-SNAPSHOT</version> <packaging>jar</packaging> - + <name>OpenAPI Petstore</name> - + <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> diff --git a/samples/server/petstore/kotlin/vertx/src/main/kotlin/org/openapitools/server/api/model/Order.kt b/samples/server/petstore/kotlin/vertx/src/main/kotlin/org/openapitools/server/api/model/Order.kt index f3dfdd42e31..a25f7e74bc7 100644 --- a/samples/server/petstore/kotlin/vertx/src/main/kotlin/org/openapitools/server/api/model/Order.kt +++ b/samples/server/petstore/kotlin/vertx/src/main/kotlin/org/openapitools/server/api/model/Order.kt @@ -34,7 +34,7 @@ data class Order ( var shipDate: java.time.OffsetDateTime? = null, /* Order Status */ var status: Order.Status? = null, - var complete: kotlin.Boolean? = null + var complete: kotlin.Boolean? = false ) { /** -- GitLab From 1c7d88235904dbd98ac77d540f96ddd074f11712 Mon Sep 17 00:00:00 2001 From: Bruno Coelho <4brunu@gmail.com> Date: Thu, 9 Dec 2021 14:20:35 +0000 Subject: [PATCH 2/2] [kotlin][client] remove old Date usage --- .../.openapi-generator/FILES | 1 - .../kotlin-gson/.openapi-generator/FILES | 1 - .../kotlin-jackson/.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 5 -- .../kotlin-nonpublic/.openapi-generator/FILES | 1 - .../kotlin-nullable/.openapi-generator/FILES | 1 - .../kotlin-okhttp3/.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../kotlin-retrofit2/.openapi-generator/FILES | 1 - .../kotlin-string/.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../petstore/kotlin/.openapi-generator/FILES | 1 - .../ktor/.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 1 - .../.openapi-generator/FILES | 4 -- .../kotlin-springboot-modelMutable/pom.xml | 66 +++++++++---------- .../.openapi-generator/FILES | 4 -- .../.openapi-generator/FILES | 4 -- .../kotlin/vertx/.openapi-generator/FILES | 1 - 24 files changed, 33 insertions(+), 69 deletions(-) diff --git a/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES b/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES index dd448f00b9d..bb98f9a0031 100644 --- a/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-enum-default-value/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/DefaultApi.md diff --git a/samples/client/petstore/kotlin-gson/.openapi-generator/FILES b/samples/client/petstore/kotlin-gson/.openapi-generator/FILES index 49c37f92d4b..7c2c24c0ba6 100644 --- a/samples/client/petstore/kotlin-gson/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-gson/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES b/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES index cc7d4565863..816d952128d 100644 --- a/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-jackson/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES b/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-json-request-string/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES index 49c37f92d4b..7c2c24c0ba6 100644 --- a/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-jvm-okhttp4-coroutines/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES b/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-moshi-codegen/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES b/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES index abb56b172d3..d95b6af6c45 100644 --- a/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-multiplatform/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle.kts docs/ApiResponse.md @@ -10,10 +9,6 @@ docs/StoreApi.md docs/Tag.md docs/User.md docs/UserApi.md -gradle/wrapper/gradle-wrapper.jar -gradle/wrapper/gradle-wrapper.properties -gradlew -gradlew.bat settings.gradle.kts src/commonMain/kotlin/org/openapitools/client/apis/PetApi.kt src/commonMain/kotlin/org/openapitools/client/apis/StoreApi.kt diff --git a/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES b/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-nonpublic/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES b/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-nullable/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES b/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-okhttp3/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES index d252c0a2ec4..7d7727f8fb0 100644 --- a/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-retrofit2-kotlinx_serialization/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES b/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES index ce4a64cc477..04b505d1f17 100644 --- a/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-retrofit2-rx3/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES b/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES index ce4a64cc477..04b505d1f17 100644 --- a/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-retrofit2/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-string/.openapi-generator/FILES b/samples/client/petstore/kotlin-string/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-string/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-string/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES b/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-threetenbp/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES b/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES index 400b0a0f077..c817d802484 100644 --- a/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin-uppercase-enum/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/EnumApi.md diff --git a/samples/client/petstore/kotlin/.openapi-generator/FILES b/samples/client/petstore/kotlin/.openapi-generator/FILES index e44407e011d..16c712325f8 100644 --- a/samples/client/petstore/kotlin/.openapi-generator/FILES +++ b/samples/client/petstore/kotlin/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle docs/ApiResponse.md diff --git a/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES b/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES index af1c3167e9a..10c026f11ff 100644 --- a/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-server/ktor/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore Dockerfile README.md build.gradle diff --git a/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES index 5a3f8bacb3d..c02ae2405be 100644 --- a/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot-delegate/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle.kts pom.xml diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES index 93eaa304129..50a9d2bc75d 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot-modelMutable/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle.kts pom.xml @@ -22,6 +21,3 @@ src/main/kotlin/org/openapitools/model/Pet.kt src/main/kotlin/org/openapitools/model/Tag.kt src/main/kotlin/org/openapitools/model/User.kt src/main/resources/application.yaml -src/test/kotlin/org/openapitools/api/PetApiTest.kt -src/test/kotlin/org/openapitools/api/StoreApiTest.kt -src/test/kotlin/org/openapitools/api/UserApiTest.kt diff --git a/samples/server/petstore/kotlin-springboot-modelMutable/pom.xml b/samples/server/petstore/kotlin-springboot-modelMutable/pom.xml index 1bfa3bec626..f7094ec0e10 100644 --- a/samples/server/petstore/kotlin-springboot-modelMutable/pom.xml +++ b/samples/server/petstore/kotlin-springboot-modelMutable/pom.xml @@ -7,7 +7,7 @@ <version>1.0.0</version> <properties> <kotlin.version>1.3.30</kotlin.version> - <kotlinx-coroutines.version>1.2.0</kotlinx-coroutines.version> + <kotlinx-coroutines.version>1.2.0</kotlinx-coroutines.version> <jakarta-annotation-version>1.3.5</jakarta-annotation-version> </properties> <parent> @@ -111,8 +111,8 @@ </dependency> <!-- Bean Validation API support --> <dependency> - <groupId>javax.validation</groupId> - <artifactId>validation-api</artifactId> + <groupId>jakarta.validation</groupId> + <artifactId>jakarta.validation-api</artifactId> </dependency> <dependency> <groupId>jakarta.annotation</groupId> @@ -127,34 +127,34 @@ <scope>test</scope> </dependency> </dependencies> - <repositories> - <repository> - <id>spring-snapshots</id> - <name>Spring Snapshots</name> - <url>https://repo.spring.io/snapshot</url> - <snapshots> - <enabled>true</enabled> - </snapshots> - </repository> - <repository> - <id>spring-milestones</id> - <name>Spring Milestones</name> - <url>https://repo.spring.io/milestone</url> - </repository> - </repositories> - <pluginRepositories> - <pluginRepository> - <id>spring-snapshots</id> - <name>Spring Snapshots</name> - <url>https://repo.spring.io/snapshot</url> - <snapshots> - <enabled>true</enabled> - </snapshots> - </pluginRepository> - <pluginRepository> - <id>spring-milestones</id> - <name>Spring Milestones</name> - <url>https://repo.spring.io/milestone</url> - </pluginRepository> - </pluginRepositories> + <repositories> + <repository> + <id>spring-snapshots</id> + <name>Spring Snapshots</name> + <url>https://repo.spring.io/snapshot</url> + <snapshots> + <enabled>true</enabled> + </snapshots> + </repository> + <repository> + <id>spring-milestones</id> + <name>Spring Milestones</name> + <url>https://repo.spring.io/milestone</url> + </repository> + </repositories> + <pluginRepositories> + <pluginRepository> + <id>spring-snapshots</id> + <name>Spring Snapshots</name> + <url>https://repo.spring.io/snapshot</url> + <snapshots> + <enabled>true</enabled> + </snapshots> + </pluginRepository> + <pluginRepository> + <id>spring-milestones</id> + <name>Spring Milestones</name> + <url>https://repo.spring.io/milestone</url> + </pluginRepository> + </pluginRepositories> </project> diff --git a/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES index 3627649a5b3..fdc7a16af74 100644 --- a/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot-reactive/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle.kts pom.xml @@ -21,6 +20,3 @@ src/main/kotlin/org/openapitools/model/Pet.kt src/main/kotlin/org/openapitools/model/Tag.kt src/main/kotlin/org/openapitools/model/User.kt src/main/resources/application.yaml -src/test/kotlin/org/openapitools/api/PetApiTest.kt -src/test/kotlin/org/openapitools/api/StoreApiTest.kt -src/test/kotlin/org/openapitools/api/UserApiTest.kt diff --git a/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES b/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES index 93eaa304129..50a9d2bc75d 100644 --- a/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin-springboot/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md build.gradle.kts pom.xml @@ -22,6 +21,3 @@ src/main/kotlin/org/openapitools/model/Pet.kt src/main/kotlin/org/openapitools/model/Tag.kt src/main/kotlin/org/openapitools/model/User.kt src/main/resources/application.yaml -src/test/kotlin/org/openapitools/api/PetApiTest.kt -src/test/kotlin/org/openapitools/api/StoreApiTest.kt -src/test/kotlin/org/openapitools/api/UserApiTest.kt diff --git a/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES b/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES index d500de57474..cf01966a4dd 100644 --- a/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES +++ b/samples/server/petstore/kotlin/vertx/.openapi-generator/FILES @@ -1,4 +1,3 @@ -.openapi-generator-ignore README.md pom.xml src/main/kotlin/org/openapitools/server/api/model/ApiResponse.kt -- GitLab