From 7c133be61791b714920a194bd48fd61c51b63311 Mon Sep 17 00:00:00 2001
From: Bruno Coelho <4brunu@users.noreply.github.com>
Date: Thu, 23 Sep 2021 03:53:57 +0100
Subject: [PATCH] [swift5][client] add support for async await (#10442)
* [swift5][client] add support for async await
* [swift5][client] disable CI for the async await sample project temporarily
---
bin/configs/swift5-asyncAwaitLibrary.yaml | 11 +
docs/generators/swift5.md | 2 +-
.../languages/Swift5ClientCodegen.java | 6 +-
.../src/main/resources/swift5/api.mustache | 48 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../swift5/asyncAwaitLibrary/.gitignore | 105 +++
.../.openapi-generator-ignore | 23 +
.../.openapi-generator/FILES | 110 +++
.../.openapi-generator/VERSION | 1 +
.../swift5/asyncAwaitLibrary/Cartfile | 1 +
.../swift5/asyncAwaitLibrary/Info.plist | 22 +
.../swift5/asyncAwaitLibrary/Package.resolved | 16 +
.../swift5/asyncAwaitLibrary/Package.swift | 33 +
.../asyncAwaitLibrary/PetstoreClient.podspec | 15 +
.../PetstoreClient.xcodeproj/project.pbxproj | 537 +++++++++++++
.../xcschemes/PetstoreClient.xcscheme | 93 +++
.../Classes/OpenAPIs/APIHelper.swift | 71 ++
.../Classes/OpenAPIs/APIs.swift | 69 ++
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 60 ++
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 723 ++++++++++++++++++
.../APIs/FakeClassnameTags123API.swift | 63 ++
.../Classes/OpenAPIs/APIs/PetAPI.swift | 513 +++++++++++++
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 204 +++++
.../Classes/OpenAPIs/APIs/UserAPI.swift | 393 ++++++++++
.../Classes/OpenAPIs/CodableHelper.swift | 49 ++
.../Classes/OpenAPIs/Configuration.swift | 15 +
.../Classes/OpenAPIs/Extensions.swift | 188 +++++
.../Classes/OpenAPIs/JSONDataEncoding.swift | 53 ++
.../Classes/OpenAPIs/JSONEncodingHelper.swift | 45 ++
.../Classes/OpenAPIs/Models.swift | 54 ++
.../Models/AdditionalPropertiesClass.swift | 36 +
.../Classes/OpenAPIs/Models/Animal.swift | 36 +
.../Classes/OpenAPIs/Models/AnimalFarm.swift | 13 +
.../Classes/OpenAPIs/Models/ApiResponse.swift | 40 +
.../Models/ArrayOfArrayOfNumberOnly.swift | 32 +
.../OpenAPIs/Models/ArrayOfNumberOnly.swift | 32 +
.../Classes/OpenAPIs/Models/ArrayTest.swift | 40 +
.../OpenAPIs/Models/Capitalization.swift | 53 ++
.../Classes/OpenAPIs/Models/Cat.swift | 40 +
.../Classes/OpenAPIs/Models/CatAllOf.swift | 32 +
.../Classes/OpenAPIs/Models/Category.swift | 36 +
.../Classes/OpenAPIs/Models/ClassModel.swift | 33 +
.../Classes/OpenAPIs/Models/Client.swift | 32 +
.../Classes/OpenAPIs/Models/Dog.swift | 40 +
.../Classes/OpenAPIs/Models/DogAllOf.swift | 32 +
.../Classes/OpenAPIs/Models/EnumArrays.swift | 44 ++
.../Classes/OpenAPIs/Models/EnumClass.swift | 17 +
.../Classes/OpenAPIs/Models/EnumTest.swift | 66 ++
.../Classes/OpenAPIs/Models/File.swift | 34 +
.../OpenAPIs/Models/FileSchemaTestClass.swift | 36 +
.../Classes/OpenAPIs/Models/FormatTest.swift | 80 ++
.../OpenAPIs/Models/HasOnlyReadOnly.swift | 36 +
.../Classes/OpenAPIs/Models/List.swift | 32 +
.../Classes/OpenAPIs/Models/MapTest.swift | 48 ++
...opertiesAndAdditionalPropertiesClass.swift | 40 +
.../OpenAPIs/Models/Model200Response.swift | 37 +
.../Classes/OpenAPIs/Models/Name.swift | 45 ++
.../Classes/OpenAPIs/Models/NumberOnly.swift | 32 +
.../Classes/OpenAPIs/Models/Order.swift | 58 ++
.../OpenAPIs/Models/OuterComposite.swift | 40 +
.../Classes/OpenAPIs/Models/OuterEnum.swift | 17 +
.../Classes/OpenAPIs/Models/Pet.swift | 58 ++
.../OpenAPIs/Models/ReadOnlyFirst.swift | 36 +
.../Classes/OpenAPIs/Models/Return.swift | 33 +
.../OpenAPIs/Models/SpecialModelName.swift | 32 +
.../OpenAPIs/Models/StringBooleanMap.swift | 52 ++
.../Classes/OpenAPIs/Models/Tag.swift | 36 +
.../OpenAPIs/Models/TypeHolderDefault.swift | 48 ++
.../OpenAPIs/Models/TypeHolderExample.swift | 48 ++
.../Classes/OpenAPIs/Models/User.swift | 61 ++
.../OpenAPIs/OpenISO8601DateFormatter.swift | 44 ++
.../OpenAPIs/SynchronizedDictionary.swift | 36 +
.../OpenAPIs/URLSessionImplementations.swift | 649 ++++++++++++++++
.../swift5/asyncAwaitLibrary/README.md | 141 ++++
.../docs/AdditionalPropertiesClass.md | 11 +
.../swift5/asyncAwaitLibrary/docs/Animal.md | 11 +
.../asyncAwaitLibrary/docs/AnimalFarm.md | 9 +
.../asyncAwaitLibrary/docs/AnotherFakeAPI.md | 59 ++
.../asyncAwaitLibrary/docs/ApiResponse.md | 12 +
.../docs/ArrayOfArrayOfNumberOnly.md | 10 +
.../docs/ArrayOfNumberOnly.md | 10 +
.../asyncAwaitLibrary/docs/ArrayTest.md | 12 +
.../asyncAwaitLibrary/docs/Capitalization.md | 15 +
.../swift5/asyncAwaitLibrary/docs/Cat.md | 10 +
.../swift5/asyncAwaitLibrary/docs/CatAllOf.md | 10 +
.../swift5/asyncAwaitLibrary/docs/Category.md | 11 +
.../asyncAwaitLibrary/docs/ClassModel.md | 10 +
.../swift5/asyncAwaitLibrary/docs/Client.md | 10 +
.../swift5/asyncAwaitLibrary/docs/Dog.md | 10 +
.../swift5/asyncAwaitLibrary/docs/DogAllOf.md | 10 +
.../asyncAwaitLibrary/docs/EnumArrays.md | 11 +
.../asyncAwaitLibrary/docs/EnumClass.md | 9 +
.../swift5/asyncAwaitLibrary/docs/EnumTest.md | 14 +
.../swift5/asyncAwaitLibrary/docs/FakeAPI.md | 662 ++++++++++++++++
.../docs/FakeClassnameTags123API.md | 59 ++
.../swift5/asyncAwaitLibrary/docs/File.md | 10 +
.../docs/FileSchemaTestClass.md | 11 +
.../asyncAwaitLibrary/docs/FormatTest.md | 22 +
.../asyncAwaitLibrary/docs/HasOnlyReadOnly.md | 11 +
.../swift5/asyncAwaitLibrary/docs/List.md | 10 +
.../swift5/asyncAwaitLibrary/docs/MapTest.md | 13 +
...dPropertiesAndAdditionalPropertiesClass.md | 12 +
.../docs/Model200Response.md | 11 +
.../swift5/asyncAwaitLibrary/docs/Name.md | 13 +
.../asyncAwaitLibrary/docs/NumberOnly.md | 10 +
.../swift5/asyncAwaitLibrary/docs/Order.md | 15 +
.../asyncAwaitLibrary/docs/OuterComposite.md | 12 +
.../asyncAwaitLibrary/docs/OuterEnum.md | 9 +
.../swift5/asyncAwaitLibrary/docs/Pet.md | 15 +
.../swift5/asyncAwaitLibrary/docs/PetAPI.md | 469 ++++++++++++
.../asyncAwaitLibrary/docs/ReadOnlyFirst.md | 11 +
.../swift5/asyncAwaitLibrary/docs/Return.md | 10 +
.../docs/SpecialModelName.md | 10 +
.../swift5/asyncAwaitLibrary/docs/StoreAPI.md | 206 +++++
.../docs/StringBooleanMap.md | 9 +
.../swift5/asyncAwaitLibrary/docs/Tag.md | 11 +
.../docs/TypeHolderDefault.md | 14 +
.../docs/TypeHolderExample.md | 14 +
.../swift5/asyncAwaitLibrary/docs/User.md | 17 +
.../swift5/asyncAwaitLibrary/docs/UserAPI.md | 406 ++++++++++
.../swift5/asyncAwaitLibrary/git_push.sh | 57 ++
.../petstore/swift5/asyncAwaitLibrary/pom.xml | 43 ++
.../swift5/asyncAwaitLibrary/project.yml | 15 +
.../swift5/asyncAwaitLibrary/run_spmbuild.sh | 3 +
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 6 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 72 +-
.../APIs/FakeClassnameTags123API.swift | 6 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 54 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 24 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 48 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 28 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 16 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../Classes/OpenAPIs/APIs/DefaultAPI.swift | 2 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
.../client/petstore/swift5/swift5_test_all.sh | 1 +
.../PetstoreClient/APIs/AnotherFakeAPI.swift | 2 +-
.../Sources/PetstoreClient/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Sources/PetstoreClient/APIs/PetAPI.swift | 18 +-
.../PetstoreClient/APIs/StoreAPI.swift | 8 +-
.../Sources/PetstoreClient/APIs/UserAPI.swift | 16 +-
.../OpenAPIs/APIs/AnotherFakeAPI.swift | 2 +-
.../Classes/OpenAPIs/APIs/FakeAPI.swift | 24 +-
.../APIs/FakeClassnameTags123API.swift | 2 +-
.../Classes/OpenAPIs/APIs/PetAPI.swift | 18 +-
.../Classes/OpenAPIs/APIs/StoreAPI.swift | 8 +-
.../Classes/OpenAPIs/APIs/UserAPI.swift | 16 +-
194 files changed, 8900 insertions(+), 487 deletions(-)
create mode 100644 bin/configs/swift5-asyncAwaitLibrary.yaml
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/.gitignore
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator-ignore
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/FILES
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/VERSION
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/Cartfile
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/Info.plist
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/Package.resolved
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/Package.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.podspec
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/project.pbxproj
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Extensions.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONDataEncoding.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/OpenISO8601DateFormatter.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/SynchronizedDictionary.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/URLSessionImplementations.swift
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/README.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/AdditionalPropertiesClass.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Animal.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnimalFarm.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnotherFakeAPI.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/ApiResponse.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfArrayOfNumberOnly.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfNumberOnly.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayTest.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Capitalization.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Cat.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/CatAllOf.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Category.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/ClassModel.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Client.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Dog.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/DogAllOf.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumArrays.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumClass.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumTest.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeAPI.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeClassnameTags123API.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/File.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/FileSchemaTestClass.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/FormatTest.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/HasOnlyReadOnly.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/List.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/MapTest.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Model200Response.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Name.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/NumberOnly.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Order.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterComposite.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterEnum.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Pet.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/PetAPI.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/ReadOnlyFirst.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Return.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/SpecialModelName.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/StoreAPI.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/StringBooleanMap.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/Tag.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderDefault.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderExample.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/User.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/docs/UserAPI.md
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/git_push.sh
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/pom.xml
create mode 100644 samples/client/petstore/swift5/asyncAwaitLibrary/project.yml
create mode 100755 samples/client/petstore/swift5/asyncAwaitLibrary/run_spmbuild.sh
diff --git a/bin/configs/swift5-asyncAwaitLibrary.yaml b/bin/configs/swift5-asyncAwaitLibrary.yaml
new file mode 100644
index 00000000000..fed714a2d68
--- /dev/null
+++ b/bin/configs/swift5-asyncAwaitLibrary.yaml
@@ -0,0 +1,11 @@
+generatorName: swift5
+outputDir: samples/client/petstore/swift5/asyncAwaitLibrary
+inputSpec: modules/openapi-generator/src/test/resources/2_0/swift/petstore-with-fake-endpoints-models-for-testing.yaml
+templateDir: modules/openapi-generator/src/main/resources/swift5
+generateAliasAsModel: true
+additionalProperties:
+ responseAs: AsyncAwait
+ podAuthors: ""
+ podSummary: PetstoreClient
+ projectName: PetstoreClient
+ podHomepage: https://github.com/openapitools/openapi-generator
diff --git a/docs/generators/swift5.md b/docs/generators/swift5.md
index 33f1a29ca77..e74a239be25 100644
--- a/docs/generators/swift5.md
+++ b/docs/generators/swift5.md
@@ -34,7 +34,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|projectName|Project name in Xcode| |null|
|readonlyProperties|Make properties readonly (default: false)| |null|
|removeMigrationProjectNameClass|Make properties removeMigrationProjectNameClass (default: false)| |null|
-|responseAs|Optionally use libraries to manage response. Currently PromiseKit, RxSwift, Result, Combine are available.| |null|
+|responseAs|Optionally use libraries to manage response. Currently PromiseKit, RxSwift, Result, Combine, AsyncAwait are available.| |null|
|sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true|
|sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |true|
|swiftPackagePath|Set a custom source path instead of OpenAPIClient/Classes/OpenAPIs.| |null|
diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java
index 5fadeb9d41f..df038dad832 100644
--- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java
+++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java
@@ -76,7 +76,8 @@ public class Swift5ClientCodegen extends DefaultCodegen implements CodegenConfig
protected static final String RESPONSE_LIBRARY_RX_SWIFT = "RxSwift";
protected static final String RESPONSE_LIBRARY_RESULT = "Result";
protected static final String RESPONSE_LIBRARY_COMBINE = "Combine";
- protected static final String[] RESPONSE_LIBRARIES = {RESPONSE_LIBRARY_PROMISE_KIT, RESPONSE_LIBRARY_RX_SWIFT, RESPONSE_LIBRARY_RESULT, RESPONSE_LIBRARY_COMBINE};
+ protected static final String RESPONSE_LIBRARY_ASYNC_AWAIT = "AsyncAwait";
+ protected static final String[] RESPONSE_LIBRARIES = {RESPONSE_LIBRARY_PROMISE_KIT, RESPONSE_LIBRARY_RX_SWIFT, RESPONSE_LIBRARY_RESULT, RESPONSE_LIBRARY_COMBINE, RESPONSE_LIBRARY_ASYNC_AWAIT};
protected String projectName = "OpenAPIClient";
protected boolean nonPublicApi = false;
protected boolean objcCompatible = false;
@@ -443,6 +444,9 @@ public class Swift5ClientCodegen extends DefaultCodegen implements CodegenConfig
if (ArrayUtils.contains(responseAs, RESPONSE_LIBRARY_COMBINE)) {
additionalProperties.put("useCombine", true);
}
+ if (ArrayUtils.contains(responseAs, RESPONSE_LIBRARY_ASYNC_AWAIT)) {
+ additionalProperties.put("useAsyncAwait", true);
+ }
// Setup readonlyProperties option, which declares properties so they can only
// be set at initialization
diff --git a/modules/openapi-generator/src/main/resources/swift5/api.mustache b/modules/openapi-generator/src/main/resources/swift5/api.mustache
index b3d89985a46..88e705c7645 100644
--- a/modules/openapi-generator/src/main/resources/swift5/api.mustache
+++ b/modules/openapi-generator/src/main/resources/swift5/api.mustache
@@ -44,6 +44,7 @@ extension {{projectName}}API {
{{^useRxSwift}}
{{^useResult}}
{{^useCombine}}
+{{^useAsyncAwait}}
/**
{{#summary}}
{{{.}}}
@@ -56,7 +57,7 @@ extension {{projectName}}API {
@available(*, deprecated, message: "This operation is deprecated.")
{{/isDeprecated}}
{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}apiResponseQueue: DispatchQueue = {{projectName}}API.apiResponseQueue, completion: @escaping ((_ data: {{{returnType}}}{{^returnType}}Void{{/returnType}}?, _ error: Error?) -> Void)) {
- {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result -> Void in
+ {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result in
switch result {
{{#returnType}}
case let .success(response):
@@ -71,6 +72,7 @@ extension {{projectName}}API {
}
}
}
+{{/useAsyncAwait}}
{{/useCombine}}
{{/useResult}}
{{/useRxSwift}}
@@ -90,7 +92,7 @@ extension {{projectName}}API {
{{/isDeprecated}}
{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}} {{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}apiResponseQueue: DispatchQueue = {{projectName}}API.apiResponseQueue) -> Promise<{{{returnType}}}{{^returnType}}Void{{/returnType}}> {
let deferred = Promise<{{{returnType}}}{{^returnType}}Void{{/returnType}}>.pending()
- {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result -> Void in
+ {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result in
switch result {
{{#returnType}}
case let .success(response):
@@ -121,7 +123,7 @@ extension {{projectName}}API {
{{/isDeprecated}}
{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}apiResponseQueue: DispatchQueue = {{projectName}}API.apiResponseQueue) -> Observable<{{{returnType}}}{{^returnType}}Void{{/returnType}}> {
return Observable.create { observer -> Disposable in
- {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result -> Void in
+ {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result in
switch result {
{{#returnType}}
case let .success(response):
@@ -153,10 +155,10 @@ extension {{projectName}}API {
{{#isDeprecated}}
@available(*, deprecated, message: "This operation is deprecated.")
{{/isDeprecated}}
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}apiResponseQueue: DispatchQueue = {{projectName}}API.apiResponseQueue) -> AnyPublisher<{{{returnType}}}{{^returnType}}Void{{/returnType}}, Error> {
- return Future<{{{returnType}}}{{^returnType}}Void{{/returnType}}, Error>.init { promise in
- {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result -> Void in
+ return Future<{{{returnType}}}{{^returnType}}Void{{/returnType}}, Error> { promise in
+ {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result in
switch result {
{{#returnType}}
case let .success(response):
@@ -174,6 +176,38 @@ extension {{projectName}}API {
}
#endif
{{/useCombine}}
+{{#useAsyncAwait}}
+ /**
+ {{#summary}}
+ {{{.}}}
+ {{/summary}}{{#allParams}}
+ - parameter {{paramName}}: ({{#isFormParam}}form{{/isFormParam}}{{#isQueryParam}}query{{/isQueryParam}}{{#isPathParam}}path{{/isPathParam}}{{#isHeaderParam}}header{{/isHeaderParam}}{{#isBodyParam}}body{{/isBodyParam}}) {{description}} {{^required}}(optional{{#defaultValue}}, default to {{{.}}}{{/defaultValue}}){{/required}}{{/allParams}}
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: {{{returnType}}}{{^returnType}}Void{{/returnType}}
+ */
+ {{#isDeprecated}}
+ @available(*, deprecated, message: "This operation is deprecated.")
+ {{/isDeprecated}}
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}apiResponseQueue: DispatchQueue = {{projectName}}API.apiResponseQueue) async throws{{#returnType}} -> {{{returnType}}}{{/returnType}} {
+ return try await withCheckedThrowingContinuation { continuation in
+ {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result in
+ switch result {
+ {{#returnType}}
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ {{/returnType}}
+ {{^returnType}}
+ case .success:
+ continuation.resume(returning: ())
+ {{/returnType}}
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+{{/useAsyncAwait}}
{{#useResult}}
/**
{{#summary}}
@@ -187,7 +221,7 @@ extension {{projectName}}API {
@available(*, deprecated, message: "This operation is deprecated.")
{{/isDeprecated}}
open class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}apiResponseQueue: DispatchQueue = {{projectName}}API.apiResponseQueue, completion: @escaping ((_ result: Swift.Result<{{{returnType}}}{{^returnType}}Void{{/returnType}}, Error>) -> Void)) {
- {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result -> Void in
+ {{operationId}}WithRequestBuilder({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).execute(apiResponseQueue) { result in
switch result {
{{#returnType}}
case let .success(response):
diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index 8099bf1c37c..43abbb33519 100644
--- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -20,7 +20,7 @@ open class AnotherFakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func call123testSpecialTags(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
- call123testSpecialTagsWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ call123testSpecialTagsWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index 5f58bd5c37b..7f43de2f5ea 100644
--- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -19,7 +19,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func fakeOuterBooleanSerialize(body: Bool? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Bool?, _ error: Error?) -> Void)) {
- fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -60,7 +60,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: OuterComposite?, _ error: Error?) -> Void)) {
- fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -101,7 +101,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func fakeOuterNumberSerialize(body: Double? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Double?, _ error: Error?) -> Void)) {
- fakeOuterNumberSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ fakeOuterNumberSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -142,7 +142,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func fakeOuterStringSerialize(body: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
- fakeOuterStringSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ fakeOuterStringSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -183,7 +183,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testBodyWithFileSchema(body: FileSchemaTestClass, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testBodyWithFileSchemaWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ testBodyWithFileSchemaWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -225,7 +225,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testBodyWithQueryParams(query: String, body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute(apiResponseQueue) { result -> Void in
+ testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -270,7 +270,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testClientModel(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
- testClientModelWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ testClientModelWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -326,7 +326,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute(apiResponseQueue) { result -> Void in
+ testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -477,7 +477,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute(apiResponseQueue) { result -> Void in
+ testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -546,7 +546,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute(apiResponseQueue) { result -> Void in
+ testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -601,7 +601,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testInlineAdditionalProperties(param: [String: String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute(apiResponseQueue) { result -> Void in
+ testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -644,7 +644,7 @@ open class FakeAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testJsonFormData(param: String, param2: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute(apiResponseQueue) { result -> Void in
+ testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index ca7ca48c4e8..34c654e4499 100644
--- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -20,7 +20,7 @@ open class FakeClassnameTags123API {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func testClassname(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Client?, _ error: Error?) -> Void)) {
- testClassnameWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ testClassnameWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
index 49530dc2840..29d68b9f526 100644
--- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -20,7 +20,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func addPet(body: Pet, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- addPetWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ addPetWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -66,7 +66,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func deletePet(petId: Int64, apiKey: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute(apiResponseQueue) { result -> Void in
+ deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -124,7 +124,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func findPetsByStatus(status: [String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
- findPetsByStatusWithRequestBuilder(status: status).execute(apiResponseQueue) { result -> Void in
+ findPetsByStatusWithRequestBuilder(status: status).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -174,7 +174,7 @@ open class PetAPI {
*/
@available(*, deprecated, message: "This operation is deprecated.")
open class func findPetsByTags(tags: [String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: [Pet]?, _ error: Error?) -> Void)) {
- findPetsByTagsWithRequestBuilder(tags: tags).execute(apiResponseQueue) { result -> Void in
+ findPetsByTagsWithRequestBuilder(tags: tags).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -224,7 +224,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func getPetById(petId: Int64, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Pet?, _ error: Error?) -> Void)) {
- getPetByIdWithRequestBuilder(petId: petId).execute(apiResponseQueue) { result -> Void in
+ getPetByIdWithRequestBuilder(petId: petId).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -273,7 +273,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func updatePet(body: Pet, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- updatePetWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ updatePetWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -320,7 +320,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute(apiResponseQueue) { result -> Void in
+ updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -378,7 +378,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
- uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute(apiResponseQueue) { result -> Void in
+ uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -436,7 +436,7 @@ open class PetAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: ApiResponse?, _ error: Error?) -> Void)) {
- uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute(apiResponseQueue) { result -> Void in
+ uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
index 8555e093682..fbe47386f98 100644
--- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -20,7 +20,7 @@ open class StoreAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func deleteOrder(orderId: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- deleteOrderWithRequestBuilder(orderId: orderId).execute(apiResponseQueue) { result -> Void in
+ deleteOrderWithRequestBuilder(orderId: orderId).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -65,7 +65,7 @@ open class StoreAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func getInventory(apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: [String: Int]?, _ error: Error?) -> Void)) {
- getInventoryWithRequestBuilder().execute(apiResponseQueue) { result -> Void in
+ getInventoryWithRequestBuilder().execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -110,7 +110,7 @@ open class StoreAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func getOrderById(orderId: Int64, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
- getOrderByIdWithRequestBuilder(orderId: orderId).execute(apiResponseQueue) { result -> Void in
+ getOrderByIdWithRequestBuilder(orderId: orderId).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -156,7 +156,7 @@ open class StoreAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func placeOrder(body: Order, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Order?, _ error: Error?) -> Void)) {
- placeOrderWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ placeOrderWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
index 49132e5612f..f61db9b14f2 100644
--- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -20,7 +20,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func createUser(body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- createUserWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ createUserWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -63,7 +63,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func createUsersWithArrayInput(body: [User], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- createUsersWithArrayInputWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ createUsersWithArrayInputWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -105,7 +105,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func createUsersWithListInput(body: [User], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- createUsersWithListInputWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ createUsersWithListInputWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -147,7 +147,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func deleteUser(username: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- deleteUserWithRequestBuilder(username: username).execute(apiResponseQueue) { result -> Void in
+ deleteUserWithRequestBuilder(username: username).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -193,7 +193,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func getUserByName(username: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: User?, _ error: Error?) -> Void)) {
- getUserByNameWithRequestBuilder(username: username).execute(apiResponseQueue) { result -> Void in
+ getUserByNameWithRequestBuilder(username: username).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -239,7 +239,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func loginUser(username: String, password: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: String?, _ error: Error?) -> Void)) {
- loginUserWithRequestBuilder(username: username, password: password).execute(apiResponseQueue) { result -> Void in
+ loginUserWithRequestBuilder(username: username, password: password).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
completion(response.body, nil)
@@ -286,7 +286,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func logoutUser(apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- logoutUserWithRequestBuilder().execute(apiResponseQueue) { result -> Void in
+ logoutUserWithRequestBuilder().execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
@@ -328,7 +328,7 @@ open class UserAPI {
- parameter completion: completion handler to receive the data and the error objects
*/
open class func updateUser(username: String, body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) {
- updateUserWithRequestBuilder(username: username, body: body).execute(apiResponseQueue) { result -> Void in
+ updateUserWithRequestBuilder(username: username, body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
completion((), nil)
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/.gitignore b/samples/client/petstore/swift5/asyncAwaitLibrary/.gitignore
new file mode 100644
index 00000000000..627d360a903
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/.gitignore
@@ -0,0 +1,105 @@
+# Created by https://www.toptal.com/developers/gitignore/api/swift,xcode
+# Edit at https://www.toptal.com/developers/gitignore?templates=swift,xcode
+
+### Swift ###
+# Xcode
+#
+# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
+
+## User settings
+xcuserdata/
+
+## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9)
+*.xcscmblueprint
+*.xccheckout
+
+## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4)
+build/
+DerivedData/
+*.moved-aside
+*.pbxuser
+!default.pbxuser
+*.mode1v3
+!default.mode1v3
+*.mode2v3
+!default.mode2v3
+*.perspectivev3
+!default.perspectivev3
+
+## Obj-C/Swift specific
+*.hmap
+
+## App packaging
+*.ipa
+*.dSYM.zip
+*.dSYM
+
+## Playgrounds
+timeline.xctimeline
+playground.xcworkspace
+
+# Swift Package Manager
+# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.
+# Packages/
+# Package.pins
+# Package.resolved
+# *.xcodeproj
+# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata
+# hence it is not needed unless you have added a package configuration file to your project
+# .swiftpm
+
+.build/
+
+# CocoaPods
+# We recommend against adding the Pods directory to your .gitignore. However
+# you should judge for yourself, the pros and cons are mentioned at:
+# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
+# Pods/
+# Add this line if you want to avoid checking in source code from the Xcode workspace
+# *.xcworkspace
+
+# Carthage
+# Add this line if you want to avoid checking in source code from Carthage dependencies.
+# Carthage/Checkouts
+
+Carthage/Build/
+
+# Add this lines if you are using Accio dependency management (Deprecated since Xcode 12)
+# Dependencies/
+# .accio/
+
+# fastlane
+# It is recommended to not store the screenshots in the git repo.
+# Instead, use fastlane to re-generate the screenshots whenever they are needed.
+# For more information about the recommended setup visit:
+# https://docs.fastlane.tools/best-practices/source-control/#source-control
+
+fastlane/report.xml
+fastlane/Preview.html
+fastlane/screenshots/**/*.png
+fastlane/test_output
+
+# Code Injection
+# After new code Injection tools there's a generated folder /iOSInjectionProject
+# https://github.com/johnno1962/injectionforxcode
+
+iOSInjectionProject/
+
+### Xcode ###
+# Xcode
+# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
+
+
+
+
+## Gcc Patch
+/*.gcno
+
+### Xcode Patch ###
+*.xcodeproj/*
+!*.xcodeproj/project.pbxproj
+!*.xcodeproj/xcshareddata/
+!*.xcworkspace/contents.xcworkspacedata
+**/xcshareddata/WorkspaceSettings.xcsettings
+
+# End of https://www.toptal.com/developers/gitignore/api/swift,xcode
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator-ignore b/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator-ignore
new file mode 100644
index 00000000000..7484ee590a3
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator-ignore
@@ -0,0 +1,23 @@
+# OpenAPI Generator Ignore
+# 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/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/FILES b/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/FILES
new file mode 100644
index 00000000000..c81943baf2a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/FILES
@@ -0,0 +1,110 @@
+.gitignore
+Cartfile
+Package.swift
+PetstoreClient.podspec
+PetstoreClient/Classes/OpenAPIs/APIHelper.swift
+PetstoreClient/Classes/OpenAPIs/APIs.swift
+PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
+PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
+PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
+PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
+PetstoreClient/Classes/OpenAPIs/Configuration.swift
+PetstoreClient/Classes/OpenAPIs/Extensions.swift
+PetstoreClient/Classes/OpenAPIs/JSONDataEncoding.swift
+PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
+PetstoreClient/Classes/OpenAPIs/Models.swift
+PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
+PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
+PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
+PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
+PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
+PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
+PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
+PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
+PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
+PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
+PetstoreClient/Classes/OpenAPIs/Models/Category.swift
+PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
+PetstoreClient/Classes/OpenAPIs/Models/Client.swift
+PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
+PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
+PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
+PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
+PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
+PetstoreClient/Classes/OpenAPIs/Models/File.swift
+PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
+PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
+PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
+PetstoreClient/Classes/OpenAPIs/Models/List.swift
+PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
+PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
+PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
+PetstoreClient/Classes/OpenAPIs/Models/Name.swift
+PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
+PetstoreClient/Classes/OpenAPIs/Models/Order.swift
+PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
+PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
+PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
+PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
+PetstoreClient/Classes/OpenAPIs/Models/Return.swift
+PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
+PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
+PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
+PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
+PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
+PetstoreClient/Classes/OpenAPIs/Models/User.swift
+PetstoreClient/Classes/OpenAPIs/OpenISO8601DateFormatter.swift
+PetstoreClient/Classes/OpenAPIs/SynchronizedDictionary.swift
+PetstoreClient/Classes/OpenAPIs/URLSessionImplementations.swift
+README.md
+docs/AdditionalPropertiesClass.md
+docs/Animal.md
+docs/AnimalFarm.md
+docs/AnotherFakeAPI.md
+docs/ApiResponse.md
+docs/ArrayOfArrayOfNumberOnly.md
+docs/ArrayOfNumberOnly.md
+docs/ArrayTest.md
+docs/Capitalization.md
+docs/Cat.md
+docs/CatAllOf.md
+docs/Category.md
+docs/ClassModel.md
+docs/Client.md
+docs/Dog.md
+docs/DogAllOf.md
+docs/EnumArrays.md
+docs/EnumClass.md
+docs/EnumTest.md
+docs/FakeAPI.md
+docs/FakeClassnameTags123API.md
+docs/File.md
+docs/FileSchemaTestClass.md
+docs/FormatTest.md
+docs/HasOnlyReadOnly.md
+docs/List.md
+docs/MapTest.md
+docs/MixedPropertiesAndAdditionalPropertiesClass.md
+docs/Model200Response.md
+docs/Name.md
+docs/NumberOnly.md
+docs/Order.md
+docs/OuterComposite.md
+docs/OuterEnum.md
+docs/Pet.md
+docs/PetAPI.md
+docs/ReadOnlyFirst.md
+docs/Return.md
+docs/SpecialModelName.md
+docs/StoreAPI.md
+docs/StringBooleanMap.md
+docs/Tag.md
+docs/TypeHolderDefault.md
+docs/TypeHolderExample.md
+docs/User.md
+docs/UserAPI.md
+git_push.sh
+project.yml
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/VERSION b/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/VERSION
new file mode 100644
index 00000000000..4b448de535c
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/.openapi-generator/VERSION
@@ -0,0 +1 @@
+5.3.0-SNAPSHOT
\ No newline at end of file
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/Cartfile b/samples/client/petstore/swift5/asyncAwaitLibrary/Cartfile
new file mode 100644
index 00000000000..3f7e6304cab
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/Cartfile
@@ -0,0 +1 @@
+github "Flight-School/AnyCodable" ~> 0.6.1
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/Info.plist b/samples/client/petstore/swift5/asyncAwaitLibrary/Info.plist
new file mode 100644
index 00000000000..323e5ecfc42
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ $(PRODUCT_NAME)
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleVersion
+ 1
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/Package.resolved b/samples/client/petstore/swift5/asyncAwaitLibrary/Package.resolved
new file mode 100644
index 00000000000..79610c3b3b3
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/Package.resolved
@@ -0,0 +1,16 @@
+{
+ "object": {
+ "pins": [
+ {
+ "package": "AnyCodable",
+ "repositoryURL": "https://github.com/Flight-School/AnyCodable",
+ "state": {
+ "branch": null,
+ "revision": "69261f239f0fffaf51495dadc4f8483fbfe97025",
+ "version": "0.6.1"
+ }
+ }
+ ]
+ },
+ "version": 1
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/Package.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/Package.swift
new file mode 100644
index 00000000000..87bb775fb72
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/Package.swift
@@ -0,0 +1,33 @@
+// swift-tools-version:5.1
+
+import PackageDescription
+
+let package = Package(
+ name: "PetstoreClient",
+ platforms: [
+ .iOS(.v9),
+ .macOS(.v10_11),
+ .tvOS(.v9),
+ .watchOS(.v3),
+ ],
+ products: [
+ // Products define the executables and libraries produced by a package, and make them visible to other packages.
+ .library(
+ name: "PetstoreClient",
+ targets: ["PetstoreClient"]
+ ),
+ ],
+ dependencies: [
+ // Dependencies declare other packages that this package depends on.
+ .package(url: "https://github.com/Flight-School/AnyCodable", from: "0.6.1"),
+ ],
+ targets: [
+ // Targets are the basic building blocks of a package. A target can define a module or a test suite.
+ // Targets can depend on other targets in this package, and on products in packages which this package depends on.
+ .target(
+ name: "PetstoreClient",
+ dependencies: ["AnyCodable", ],
+ path: "PetstoreClient/Classes"
+ ),
+ ]
+)
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.podspec b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.podspec
new file mode 100644
index 00000000000..0e6bf7ec024
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.podspec
@@ -0,0 +1,15 @@
+Pod::Spec.new do |s|
+ s.name = 'PetstoreClient'
+ s.ios.deployment_target = '9.0'
+ s.osx.deployment_target = '10.11'
+ s.tvos.deployment_target = '9.0'
+ s.watchos.deployment_target = '3.0'
+ s.version = '1.0.0'
+ s.source = { :git => 'git@github.com:OpenAPITools/openapi-generator.git', :tag => 'v1.0.0' }
+ s.authors = ''
+ s.license = 'Proprietary'
+ s.homepage = 'https://github.com/openapitools/openapi-generator'
+ s.summary = 'PetstoreClient'
+ s.source_files = 'PetstoreClient/Classes/**/*.swift'
+ s.dependency 'AnyCodable-FlightSchool', '~> 0.6.1'
+end
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/project.pbxproj
new file mode 100644
index 00000000000..7c3beef86d8
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/project.pbxproj
@@ -0,0 +1,537 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 51;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 0299339D13C3571C4C57368A /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E7B833748B4F0C7CDA90C6 /* ApiResponse.swift */; };
+ 081C0B80A989B1AAF2665121 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7986861626C2B1CB49AD7000 /* MapTest.swift */; };
+ 0C1E4C682F2D0AF7D9E431EE /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6C3E1129526A353B963EFD7 /* Dog.swift */; };
+ 0E6932F1C55BA6880693C478 /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B2E9EF856E89FEAA359A3A /* Order.swift */; };
+ 1E6C7C7F271A802DF8099330 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897716962D472FE162B723CB /* APIHelper.swift */; };
+ 248F2F0F29E8FDAE9CAD64C5 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 396DEF3156BA0D12D0FC5C3C /* AdditionalPropertiesClass.swift */; };
+ 269E3103C458C78EA5726EE2 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8C298FC8929DCB369053F11 /* Extensions.swift */; };
+ 294CDFA409BC369C0FDC5FB3 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 386FD590658E90509C121118 /* SpecialModelName.swift */; };
+ 2B441CDFFFDDB343C04F5375 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95568E7C35F119EB4A12B498 /* Animal.swift */; };
+ 2C29D5B60E00DDA3878F1BDE /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECFEB4C6C257B3BB3CEA36D1 /* Pet.swift */; };
+ 31DFF71D8CCCA0D2D2F8AC90 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5565A447062C7B8F695F451 /* User.swift */; };
+ 34C26979F4678B5B579D26E8 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B42354B407EC173BEB54E042 /* FakeClassnameTags123API.swift */; };
+ 3691B017D3AA18404A563C67 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B65BB72353DA24536A9049BE /* ArrayOfNumberOnly.swift */; };
+ 37DEADD6CD0496690725B8A7 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AD994DFAA0DA93C188A4DBA /* Name.swift */; };
+ 40E3027D2E38D8329C6AB01F /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37DF825B8F3BADA2B2537D17 /* APIs.swift */; };
+ 41A491E9B577C510F927D126 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C15008AABC804EB6FB4CDAC6 /* OuterEnum.swift */; };
+ 45B3B29D7A62049F824751F8 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D22BE01748F51106DE02332 /* AnimalFarm.swift */; };
+ 4A344DF7ECE721B4BBEDCB4A /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0F94F512DFBC09F9CC79A /* CatAllOf.swift */; };
+ 4B4BE77747413A9188CDABD2 /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B1B8B838B5D9D312F2002EB /* ArrayOfArrayOfNumberOnly.swift */; };
+ 555DEA47352B42E49082922B /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8E0B16084741FCB82389F58 /* NumberOnly.swift */; };
+ 5695497F5DBF6C08842755A3 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBC76F6D4D2AA8084B7EB50E /* TypeHolderDefault.swift */; };
+ 61322FC4325F1A4FF24ACA48 /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10503995D9EFD031A2EFB576 /* EnumArrays.swift */; };
+ 64C48E3658CF53EBE8AF82F9 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8D5F382979854D47F18DB1 /* UserAPI.swift */; };
+ 6B638A04B34C82B2091D6EDD /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3156CE41C001C80379B84BDB /* FormatTest.swift */; };
+ 6FBD978F4D1ED92E7071FFBB /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02A6F6BB2152ACEE1416D44A /* CodableHelper.swift */; };
+ 72547ECFB451A509409311EE /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28A444949BBC254798C3B3DD /* Configuration.swift */; };
+ 72CE544C52BB33778D1B89B8 /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A21A69C8402A60E01116ABBD /* DogAllOf.swift */; };
+ 7441BBA84C31E06400338F89 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C30827D8EAF8EA684E7BCEA /* ClassModel.swift */; };
+ 7588B7E2960253174ADCCF16 /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D710108A69DD8A5297F926 /* JSONEncodingHelper.swift */; };
+ 86DE714469BE8BA28AFF710F /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C7FBC641752D2E13B150973 /* HasOnlyReadOnly.swift */; };
+ 914F4D1FCB17773C067C4E68 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FD42727E001E799E458C292 /* ReadOnlyFirst.swift */; };
+ 922BDADAB291907A7FD14314 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4E0AD8F60A91F72C7687560 /* OuterComposite.swift */; };
+ 97F7B85BF07A325EEBF92C93 /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3933D3B2A3AC4577094D0C23 /* File.swift */; };
+ 9CA19AA4483F6EB50270A81E /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A6070F581E611FF44AFD40A /* List.swift */; };
+ 9CF06ACDA32CB0C3E74E435C /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82A2C3DC2235F0114C2B08E5 /* Model200Response.swift */; };
+ 9D22720B1B12BE43D3B45ADE /* JSONDataEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10A7A27EE12A4DFEA1C0EE35 /* JSONDataEncoding.swift */; };
+ 9DA1C6F8B4D6C8595F28C098 /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD60AEA646791E0EDE885DE1 /* EnumTest.swift */; };
+ A3E16915AA7FD644C4FE162E /* URLSessionImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11F49B24B6239C324722572C /* URLSessionImplementations.swift */; };
+ A6E50CC6845FE58D8C236253 /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = C81447828475F76C5CF4F08A /* Return.swift */; };
+ A6E5A5629495DB0ED672B06F /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A019F500E546A3292CE716A /* PetAPI.swift */; };
+ A85E190556818FFA79896E92 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1A0379CDFC55705AE76C998 /* ArrayTest.swift */; };
+ ACF3037926301D4D6E848745 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B2C97AE6ACA1E5FB88F5BAA /* EnumClass.swift */; };
+ AD3A3107C12F2634CD22163B /* SynchronizedDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = D138F6DA6160301F9281383E /* SynchronizedDictionary.swift */; };
+ AD594BFB99E31A5E07579237 /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = A913A57E72D723632E9A718F /* Client.swift */; };
+ B301DB1B80F37C757550AA17 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9AD714C7CC59BDD18DE8DF4E /* MixedPropertiesAndAdditionalPropertiesClass.swift */; };
+ B3E35FE2773D4A8BA15CFA88 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2896F8BFD1AA2965C8A3015 /* Tag.swift */; };
+ B637B9432565A6A8E7C73E7F /* OpenISO8601DateFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD7A1702ACD8737DED6588CD /* OpenISO8601DateFormatter.swift */; };
+ BB1F3C6D50B8F0A8CC4F1749 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = A7B38FA00A494D13F4C382A3 /* Capitalization.swift */; };
+ CA9B9B19882EA044EAD0B359 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DF24D2714B9C4CF14146E88 /* AnotherFakeAPI.swift */; };
+ CB68ABDBAADAF6B8D7B93A5D /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A53274D99BBDE1B79BF3521C /* StoreAPI.swift */; };
+ D3BAB7C7A607392CA838C580 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8699F7966F748ED026A6FB4C /* Models.swift */; };
+ D95A5F83AAA7D5C95A29AB83 /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 212AA914B7F1793A4E32C119 /* Cat.swift */; };
+ DDBD4C0FBA3CD6A4DA3DF376 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E00950725DC44436C5E238C /* FakeAPI.swift */; };
+ DDF1D589267D56D9BED3C6E5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B3666552AA854DAF9C480A3 /* FileSchemaTestClass.swift */; };
+ E8A58C6414E88AF3EAE45B69 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F2985D01F8D60A4B1925C69 /* Category.swift */; };
+ EDFC6C5121A43997014049CB /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47B4DEBABEFE140768CFB70B /* StringBooleanMap.swift */; };
+ FECA2E8C9D0BDFEC459E8996 /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19B65C66C97F082718DDD703 /* TypeHolderExample.swift */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 02A6F6BB2152ACEE1416D44A /* CodableHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CodableHelper.swift; sourceTree = ""; };
+ 10503995D9EFD031A2EFB576 /* EnumArrays.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; };
+ 10A7A27EE12A4DFEA1C0EE35 /* JSONDataEncoding.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONDataEncoding.swift; sourceTree = ""; };
+ 11F49B24B6239C324722572C /* URLSessionImplementations.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = URLSessionImplementations.swift; sourceTree = ""; };
+ 164AD6EC9C4CCF634D7C4590 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 19B65C66C97F082718DDD703 /* TypeHolderExample.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = ""; };
+ 212AA914B7F1793A4E32C119 /* Cat.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; };
+ 27B2E9EF856E89FEAA359A3A /* Order.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; };
+ 28A444949BBC254798C3B3DD /* Configuration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Configuration.swift; sourceTree = ""; };
+ 3156CE41C001C80379B84BDB /* FormatTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; };
+ 35D710108A69DD8A5297F926 /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONEncodingHelper.swift; sourceTree = ""; };
+ 37DF825B8F3BADA2B2537D17 /* APIs.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIs.swift; sourceTree = ""; };
+ 386FD590658E90509C121118 /* SpecialModelName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; };
+ 3933D3B2A3AC4577094D0C23 /* File.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; };
+ 396DEF3156BA0D12D0FC5C3C /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; };
+ 3AD0F94F512DFBC09F9CC79A /* CatAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = ""; };
+ 3C30827D8EAF8EA684E7BCEA /* ClassModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; };
+ 47B4DEBABEFE140768CFB70B /* StringBooleanMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; };
+ 4B2C97AE6ACA1E5FB88F5BAA /* EnumClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; };
+ 4B3666552AA854DAF9C480A3 /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; };
+ 4C7FBC641752D2E13B150973 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; };
+ 5AD994DFAA0DA93C188A4DBA /* Name.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; };
+ 6E00950725DC44436C5E238C /* FakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; };
+ 6F2985D01F8D60A4B1925C69 /* Category.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; };
+ 6FD42727E001E799E458C292 /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; };
+ 7986861626C2B1CB49AD7000 /* MapTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; };
+ 7A6070F581E611FF44AFD40A /* List.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; };
+ 7B1B8B838B5D9D312F2002EB /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; };
+ 7C8D5F382979854D47F18DB1 /* UserAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; };
+ 82A2C3DC2235F0114C2B08E5 /* Model200Response.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; };
+ 8699F7966F748ED026A6FB4C /* Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Models.swift; sourceTree = ""; };
+ 897716962D472FE162B723CB /* APIHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = APIHelper.swift; sourceTree = ""; };
+ 8D22BE01748F51106DE02332 /* AnimalFarm.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; };
+ 95568E7C35F119EB4A12B498 /* Animal.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; };
+ 9A019F500E546A3292CE716A /* PetAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; };
+ 9AD714C7CC59BDD18DE8DF4E /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; };
+ 9DF24D2714B9C4CF14146E88 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; };
+ A21A69C8402A60E01116ABBD /* DogAllOf.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = ""; };
+ A53274D99BBDE1B79BF3521C /* StoreAPI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; };
+ A7B38FA00A494D13F4C382A3 /* Capitalization.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; };
+ A8E7B833748B4F0C7CDA90C6 /* ApiResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; };
+ A913A57E72D723632E9A718F /* Client.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; };
+ B2896F8BFD1AA2965C8A3015 /* Tag.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; };
+ B42354B407EC173BEB54E042 /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; };
+ B65BB72353DA24536A9049BE /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; };
+ B8C298FC8929DCB369053F11 /* Extensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Extensions.swift; sourceTree = ""; };
+ B8E0B16084741FCB82389F58 /* NumberOnly.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; };
+ C15008AABC804EB6FB4CDAC6 /* OuterEnum.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; };
+ C6C3E1129526A353B963EFD7 /* Dog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; };
+ C81447828475F76C5CF4F08A /* Return.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; };
+ D138F6DA6160301F9281383E /* SynchronizedDictionary.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SynchronizedDictionary.swift; sourceTree = ""; };
+ E5565A447062C7B8F695F451 /* User.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; };
+ EBC76F6D4D2AA8084B7EB50E /* TypeHolderDefault.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = ""; };
+ ECFEB4C6C257B3BB3CEA36D1 /* Pet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; };
+ F1A0379CDFC55705AE76C998 /* ArrayTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; };
+ F4E0AD8F60A91F72C7687560 /* OuterComposite.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; };
+ FD60AEA646791E0EDE885DE1 /* EnumTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; };
+ FD7A1702ACD8737DED6588CD /* OpenISO8601DateFormatter.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OpenISO8601DateFormatter.swift; sourceTree = ""; };
+/* End PBXFileReference section */
+
+/* Begin PBXGroup section */
+ 4FBDCF1330A9AB9122780DB3 /* Models */ = {
+ isa = PBXGroup;
+ children = (
+ 396DEF3156BA0D12D0FC5C3C /* AdditionalPropertiesClass.swift */,
+ 95568E7C35F119EB4A12B498 /* Animal.swift */,
+ 8D22BE01748F51106DE02332 /* AnimalFarm.swift */,
+ A8E7B833748B4F0C7CDA90C6 /* ApiResponse.swift */,
+ 7B1B8B838B5D9D312F2002EB /* ArrayOfArrayOfNumberOnly.swift */,
+ B65BB72353DA24536A9049BE /* ArrayOfNumberOnly.swift */,
+ F1A0379CDFC55705AE76C998 /* ArrayTest.swift */,
+ A7B38FA00A494D13F4C382A3 /* Capitalization.swift */,
+ 212AA914B7F1793A4E32C119 /* Cat.swift */,
+ 3AD0F94F512DFBC09F9CC79A /* CatAllOf.swift */,
+ 6F2985D01F8D60A4B1925C69 /* Category.swift */,
+ 3C30827D8EAF8EA684E7BCEA /* ClassModel.swift */,
+ A913A57E72D723632E9A718F /* Client.swift */,
+ C6C3E1129526A353B963EFD7 /* Dog.swift */,
+ A21A69C8402A60E01116ABBD /* DogAllOf.swift */,
+ 10503995D9EFD031A2EFB576 /* EnumArrays.swift */,
+ 4B2C97AE6ACA1E5FB88F5BAA /* EnumClass.swift */,
+ FD60AEA646791E0EDE885DE1 /* EnumTest.swift */,
+ 3933D3B2A3AC4577094D0C23 /* File.swift */,
+ 4B3666552AA854DAF9C480A3 /* FileSchemaTestClass.swift */,
+ 3156CE41C001C80379B84BDB /* FormatTest.swift */,
+ 4C7FBC641752D2E13B150973 /* HasOnlyReadOnly.swift */,
+ 7A6070F581E611FF44AFD40A /* List.swift */,
+ 7986861626C2B1CB49AD7000 /* MapTest.swift */,
+ 9AD714C7CC59BDD18DE8DF4E /* MixedPropertiesAndAdditionalPropertiesClass.swift */,
+ 82A2C3DC2235F0114C2B08E5 /* Model200Response.swift */,
+ 5AD994DFAA0DA93C188A4DBA /* Name.swift */,
+ B8E0B16084741FCB82389F58 /* NumberOnly.swift */,
+ 27B2E9EF856E89FEAA359A3A /* Order.swift */,
+ F4E0AD8F60A91F72C7687560 /* OuterComposite.swift */,
+ C15008AABC804EB6FB4CDAC6 /* OuterEnum.swift */,
+ ECFEB4C6C257B3BB3CEA36D1 /* Pet.swift */,
+ 6FD42727E001E799E458C292 /* ReadOnlyFirst.swift */,
+ C81447828475F76C5CF4F08A /* Return.swift */,
+ 386FD590658E90509C121118 /* SpecialModelName.swift */,
+ 47B4DEBABEFE140768CFB70B /* StringBooleanMap.swift */,
+ B2896F8BFD1AA2965C8A3015 /* Tag.swift */,
+ EBC76F6D4D2AA8084B7EB50E /* TypeHolderDefault.swift */,
+ 19B65C66C97F082718DDD703 /* TypeHolderExample.swift */,
+ E5565A447062C7B8F695F451 /* User.swift */,
+ );
+ path = Models;
+ sourceTree = "";
+ };
+ 5FBA6AE5F64CD737F88B4565 = {
+ isa = PBXGroup;
+ children = (
+ 9B364C01750D7AA4F983B9E7 /* PetstoreClient */,
+ 857F0DEA1890CE66D6DAD556 /* Products */,
+ );
+ sourceTree = "";
+ };
+ 67BF3478113E6B4DF1C4E04F /* OpenAPIs */ = {
+ isa = PBXGroup;
+ children = (
+ 897716962D472FE162B723CB /* APIHelper.swift */,
+ 37DF825B8F3BADA2B2537D17 /* APIs.swift */,
+ 02A6F6BB2152ACEE1416D44A /* CodableHelper.swift */,
+ 28A444949BBC254798C3B3DD /* Configuration.swift */,
+ B8C298FC8929DCB369053F11 /* Extensions.swift */,
+ 10A7A27EE12A4DFEA1C0EE35 /* JSONDataEncoding.swift */,
+ 35D710108A69DD8A5297F926 /* JSONEncodingHelper.swift */,
+ 8699F7966F748ED026A6FB4C /* Models.swift */,
+ FD7A1702ACD8737DED6588CD /* OpenISO8601DateFormatter.swift */,
+ D138F6DA6160301F9281383E /* SynchronizedDictionary.swift */,
+ 11F49B24B6239C324722572C /* URLSessionImplementations.swift */,
+ F956D0CCAE23BCFD1C7BDD5D /* APIs */,
+ 4FBDCF1330A9AB9122780DB3 /* Models */,
+ );
+ path = OpenAPIs;
+ sourceTree = "";
+ };
+ 857F0DEA1890CE66D6DAD556 /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 164AD6EC9C4CCF634D7C4590 /* PetstoreClient.framework */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ 9B364C01750D7AA4F983B9E7 /* PetstoreClient */ = {
+ isa = PBXGroup;
+ children = (
+ EF4C81BDD734856ED5023B77 /* Classes */,
+ );
+ path = PetstoreClient;
+ sourceTree = "";
+ };
+ EF4C81BDD734856ED5023B77 /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ 67BF3478113E6B4DF1C4E04F /* OpenAPIs */,
+ );
+ path = Classes;
+ sourceTree = "";
+ };
+ F956D0CCAE23BCFD1C7BDD5D /* APIs */ = {
+ isa = PBXGroup;
+ children = (
+ 9DF24D2714B9C4CF14146E88 /* AnotherFakeAPI.swift */,
+ 6E00950725DC44436C5E238C /* FakeAPI.swift */,
+ B42354B407EC173BEB54E042 /* FakeClassnameTags123API.swift */,
+ 9A019F500E546A3292CE716A /* PetAPI.swift */,
+ A53274D99BBDE1B79BF3521C /* StoreAPI.swift */,
+ 7C8D5F382979854D47F18DB1 /* UserAPI.swift */,
+ );
+ path = APIs;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ C1282C2230015E0D204BEAED /* PetstoreClient */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = B46EDEB1A7F0D78FE6394544 /* Build configuration list for PBXNativeTarget "PetstoreClient" */;
+ buildPhases = (
+ E539708354CE60FE486F81ED /* Sources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = PetstoreClient;
+ productName = PetstoreClient;
+ productReference = 164AD6EC9C4CCF634D7C4590 /* PetstoreClient.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ E7D276EE2369D8C455513C2E /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastUpgradeCheck = 1020;
+ TargetAttributes = {
+ };
+ };
+ buildConfigurationList = ECAB17FF35111B5E14DAAC08 /* Build configuration list for PBXProject "PetstoreClient" */;
+ compatibilityVersion = "Xcode 10.0";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ );
+ mainGroup = 5FBA6AE5F64CD737F88B4565;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ C1282C2230015E0D204BEAED /* PetstoreClient */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXSourcesBuildPhase section */
+ E539708354CE60FE486F81ED /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 1E6C7C7F271A802DF8099330 /* APIHelper.swift in Sources */,
+ 40E3027D2E38D8329C6AB01F /* APIs.swift in Sources */,
+ 248F2F0F29E8FDAE9CAD64C5 /* AdditionalPropertiesClass.swift in Sources */,
+ 2B441CDFFFDDB343C04F5375 /* Animal.swift in Sources */,
+ 45B3B29D7A62049F824751F8 /* AnimalFarm.swift in Sources */,
+ CA9B9B19882EA044EAD0B359 /* AnotherFakeAPI.swift in Sources */,
+ 0299339D13C3571C4C57368A /* ApiResponse.swift in Sources */,
+ 4B4BE77747413A9188CDABD2 /* ArrayOfArrayOfNumberOnly.swift in Sources */,
+ 3691B017D3AA18404A563C67 /* ArrayOfNumberOnly.swift in Sources */,
+ A85E190556818FFA79896E92 /* ArrayTest.swift in Sources */,
+ BB1F3C6D50B8F0A8CC4F1749 /* Capitalization.swift in Sources */,
+ D95A5F83AAA7D5C95A29AB83 /* Cat.swift in Sources */,
+ 4A344DF7ECE721B4BBEDCB4A /* CatAllOf.swift in Sources */,
+ E8A58C6414E88AF3EAE45B69 /* Category.swift in Sources */,
+ 7441BBA84C31E06400338F89 /* ClassModel.swift in Sources */,
+ AD594BFB99E31A5E07579237 /* Client.swift in Sources */,
+ 6FBD978F4D1ED92E7071FFBB /* CodableHelper.swift in Sources */,
+ 72547ECFB451A509409311EE /* Configuration.swift in Sources */,
+ 0C1E4C682F2D0AF7D9E431EE /* Dog.swift in Sources */,
+ 72CE544C52BB33778D1B89B8 /* DogAllOf.swift in Sources */,
+ 61322FC4325F1A4FF24ACA48 /* EnumArrays.swift in Sources */,
+ ACF3037926301D4D6E848745 /* EnumClass.swift in Sources */,
+ 9DA1C6F8B4D6C8595F28C098 /* EnumTest.swift in Sources */,
+ 269E3103C458C78EA5726EE2 /* Extensions.swift in Sources */,
+ DDBD4C0FBA3CD6A4DA3DF376 /* FakeAPI.swift in Sources */,
+ 34C26979F4678B5B579D26E8 /* FakeClassnameTags123API.swift in Sources */,
+ 97F7B85BF07A325EEBF92C93 /* File.swift in Sources */,
+ DDF1D589267D56D9BED3C6E5 /* FileSchemaTestClass.swift in Sources */,
+ 6B638A04B34C82B2091D6EDD /* FormatTest.swift in Sources */,
+ 86DE714469BE8BA28AFF710F /* HasOnlyReadOnly.swift in Sources */,
+ 9D22720B1B12BE43D3B45ADE /* JSONDataEncoding.swift in Sources */,
+ 7588B7E2960253174ADCCF16 /* JSONEncodingHelper.swift in Sources */,
+ 9CA19AA4483F6EB50270A81E /* List.swift in Sources */,
+ 081C0B80A989B1AAF2665121 /* MapTest.swift in Sources */,
+ B301DB1B80F37C757550AA17 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */,
+ 9CF06ACDA32CB0C3E74E435C /* Model200Response.swift in Sources */,
+ D3BAB7C7A607392CA838C580 /* Models.swift in Sources */,
+ 37DEADD6CD0496690725B8A7 /* Name.swift in Sources */,
+ 555DEA47352B42E49082922B /* NumberOnly.swift in Sources */,
+ B637B9432565A6A8E7C73E7F /* OpenISO8601DateFormatter.swift in Sources */,
+ 0E6932F1C55BA6880693C478 /* Order.swift in Sources */,
+ 922BDADAB291907A7FD14314 /* OuterComposite.swift in Sources */,
+ 41A491E9B577C510F927D126 /* OuterEnum.swift in Sources */,
+ 2C29D5B60E00DDA3878F1BDE /* Pet.swift in Sources */,
+ A6E5A5629495DB0ED672B06F /* PetAPI.swift in Sources */,
+ 914F4D1FCB17773C067C4E68 /* ReadOnlyFirst.swift in Sources */,
+ A6E50CC6845FE58D8C236253 /* Return.swift in Sources */,
+ 294CDFA409BC369C0FDC5FB3 /* SpecialModelName.swift in Sources */,
+ CB68ABDBAADAF6B8D7B93A5D /* StoreAPI.swift in Sources */,
+ EDFC6C5121A43997014049CB /* StringBooleanMap.swift in Sources */,
+ AD3A3107C12F2634CD22163B /* SynchronizedDictionary.swift in Sources */,
+ B3E35FE2773D4A8BA15CFA88 /* Tag.swift in Sources */,
+ 5695497F5DBF6C08842755A3 /* TypeHolderDefault.swift in Sources */,
+ FECA2E8C9D0BDFEC459E8996 /* TypeHolderExample.swift in Sources */,
+ A3E16915AA7FD644C4FE162E /* URLSessionImplementations.swift in Sources */,
+ 31DFF71D8CCCA0D2D2F8AC90 /* User.swift in Sources */,
+ 64C48E3658CF53EBE8AF82F9 /* UserAPI.swift in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ 3B2C02AFB91CB5C82766ED5C /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ APPLICATION_EXTENSION_API_ONLY = YES;
+ CODE_SIGN_IDENTITY = "";
+ CURRENT_PROJECT_VERSION = 1;
+ DEFINES_MODULE = YES;
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ SDKROOT = iphoneos;
+ SKIP_INSTALL = YES;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ VERSIONING_SYSTEM = "apple-generic";
+ };
+ name = Release;
+ };
+ A9EB0A02B94C427CBACFEC7C /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PREPROCESSOR_DEFINITIONS = (
+ "$(inherited)",
+ "DEBUG=1",
+ );
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ MTL_ENABLE_DEBUG_INFO = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = iphoneos;
+ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
+ SWIFT_VERSION = 5.0;
+ };
+ name = Debug;
+ };
+ DD3EEB93949E9EBA4437E9CD /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ APPLICATION_EXTENSION_API_ONLY = YES;
+ CODE_SIGN_IDENTITY = "";
+ CURRENT_PROJECT_VERSION = 1;
+ DEFINES_MODULE = YES;
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ DYLIB_INSTALL_NAME_BASE = "@rpath";
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
+ IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ SDKROOT = iphoneos;
+ SKIP_INSTALL = YES;
+ TARGETED_DEVICE_FAMILY = "1,2";
+ VERSIONING_SYSTEM = "apple-generic";
+ };
+ name = Debug;
+ };
+ F81D4E5FECD46E9AA6DD2C29 /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_NONNULL = YES;
+ CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
+ CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
+ CLANG_CXX_LIBRARY = "libc++";
+ CLANG_ENABLE_MODULES = YES;
+ CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
+ CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
+ CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
+ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
+ CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
+ CLANG_WARN_EMPTY_BODY = YES;
+ CLANG_WARN_ENUM_CONVERSION = YES;
+ CLANG_WARN_INFINITE_RECURSION = YES;
+ CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
+ CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
+ CLANG_WARN_SUSPICIOUS_MOVE = YES;
+ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
+ CLANG_WARN_UNREACHABLE_CODE = YES;
+ CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
+ COPY_PHASE_STRIP = NO;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ ENABLE_NS_ASSERTIONS = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ GCC_C_LANGUAGE_STANDARD = gnu11;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
+ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
+ GCC_WARN_UNUSED_FUNCTION = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = iphoneos;
+ SWIFT_COMPILATION_MODE = wholemodule;
+ SWIFT_VERSION = 5.0;
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ B46EDEB1A7F0D78FE6394544 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ DD3EEB93949E9EBA4437E9CD /* Debug */,
+ 3B2C02AFB91CB5C82766ED5C /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Debug;
+ };
+ ECAB17FF35111B5E14DAAC08 /* Build configuration list for PBXProject "PetstoreClient" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ A9EB0A02B94C427CBACFEC7C /* Debug */,
+ F81D4E5FECD46E9AA6DD2C29 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Debug;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = E7D276EE2369D8C455513C2E /* Project object */;
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
new file mode 100644
index 00000000000..ce431fd1d1d
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient.xcodeproj/xcshareddata/xcschemes/PetstoreClient.xcscheme
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
new file mode 100644
index 00000000000..f7bb5274bd9
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIHelper.swift
@@ -0,0 +1,71 @@
+// APIHelper.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct APIHelper {
+ public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? {
+ let destination = source.reduce(into: [String: Any]()) { result, item in
+ if let value = item.value {
+ result[item.key] = value
+ }
+ }
+
+ if destination.isEmpty {
+ return nil
+ }
+ return destination
+ }
+
+ public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] {
+ return source.reduce(into: [String: String]()) { result, item in
+ if let collection = item.value as? [Any?] {
+ result[item.key] = collection.filter { $0 != nil }.map { "\($0!)" }.joined(separator: ",")
+ } else if let value: Any = item.value {
+ result[item.key] = "\(value)"
+ }
+ }
+ }
+
+ public static func convertBoolToString(_ source: [String: Any]?) -> [String: Any]? {
+ guard let source = source else {
+ return nil
+ }
+
+ return source.reduce(into: [String: Any]()) { result, item in
+ switch item.value {
+ case let x as Bool:
+ result[item.key] = x.description
+ default:
+ result[item.key] = item.value
+ }
+ }
+ }
+
+ public static func mapValueToPathItem(_ source: Any) -> Any {
+ if let collection = source as? [Any?] {
+ return collection.filter { $0 != nil }.map { "\($0!)" }.joined(separator: ",")
+ }
+ return source
+ }
+
+ public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? {
+ let destination = source.filter { $0.value != nil }.reduce(into: [URLQueryItem]()) { result, item in
+ if let collection = item.value as? [Any?] {
+ collection.filter { $0 != nil }.map { "\($0!)" }.forEach { value in
+ result.append(URLQueryItem(name: item.key, value: value))
+ }
+ } else if let value = item.value {
+ result.append(URLQueryItem(name: item.key, value: "\(value)"))
+ }
+ }
+
+ if destination.isEmpty {
+ return nil
+ }
+ return destination
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift
new file mode 100644
index 00000000000..38ffbb4394a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift
@@ -0,0 +1,69 @@
+// APIs.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+// We reverted the change of PetstoreClientAPI to PetstoreClient introduced in https://github.com/OpenAPITools/openapi-generator/pull/9624
+// Because it was causing the following issue https://github.com/OpenAPITools/openapi-generator/issues/9953
+// If you are affected by this issue, please consider removing the following two lines,
+// By setting the option removeMigrationProjectNameClass to true in the generator
+@available(*, deprecated, renamed: "PetstoreClientAPI")
+public typealias PetstoreClient = PetstoreClientAPI
+
+open class PetstoreClientAPI {
+ public static var basePath = "http://petstore.swagger.io:80/v2"
+ public static var customHeaders: [String: String] = [:]
+ public static var credential: URLCredential?
+ public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory()
+ public static var apiResponseQueue: DispatchQueue = .main
+}
+
+open class RequestBuilder {
+ var credential: URLCredential?
+ var headers: [String: String]
+ public let parameters: [String: Any]?
+ public let method: String
+ public let URLString: String
+
+ /// Optional block to obtain a reference to the request's progress instance when available.
+ /// With the URLSession http client the request's progress only works on iOS 11.0, macOS 10.13, macCatalyst 13.0, tvOS 11.0, watchOS 4.0.
+ /// If you need to get the request's progress in older OS versions, please use Alamofire http client.
+ public var onProgressReady: ((Progress) -> Void)?
+
+ required public init(method: String, URLString: String, parameters: [String: Any]?, headers: [String: String] = [:]) {
+ self.method = method
+ self.URLString = URLString
+ self.parameters = parameters
+ self.headers = headers
+
+ addHeaders(PetstoreClientAPI.customHeaders)
+ }
+
+ open func addHeaders(_ aHeaders: [String: String]) {
+ for (header, value) in aHeaders {
+ headers[header] = value
+ }
+ }
+
+ open func execute(_ apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, _ completion: @escaping (_ result: Swift.Result, Error>) -> Void) { }
+
+ public func addHeader(name: String, value: String) -> Self {
+ if !value.isEmpty {
+ headers[name] = value
+ }
+ return self
+ }
+
+ open func addCredential() -> Self {
+ credential = PetstoreClientAPI.credential
+ return self
+ }
+}
+
+public protocol RequestBuilderFactory {
+ func getNonDecodableBuilder() -> RequestBuilder.Type
+ func getBuilder() -> RequestBuilder.Type
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
new file mode 100644
index 00000000000..4b777e5291a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -0,0 +1,60 @@
+//
+// AnotherFakeAPI.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+open class AnotherFakeAPI {
+
+ /**
+ To test special tags
+
+ - parameter body: (body) client model
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Client
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func call123testSpecialTags(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Client {
+ return try await withCheckedThrowingContinuation { continuation in
+ call123testSpecialTagsWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ To test special tags
+ - PATCH /another-fake/dummy
+ - To test special tags and operation ID starting with number
+ - parameter body: (body) client model
+ - returns: RequestBuilder
+ */
+ open class func call123testSpecialTagsWithRequestBuilder(body: Client) -> RequestBuilder {
+ let localVariablePath = "/another-fake/dummy"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "PATCH", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
new file mode 100644
index 00000000000..4e950ffbc77
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -0,0 +1,723 @@
+//
+// FakeAPI.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+open class FakeAPI {
+
+ /**
+
+ - parameter body: (body) Input boolean as post body (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Bool
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func fakeOuterBooleanSerialize(body: Bool? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Bool {
+ return try await withCheckedThrowingContinuation { continuation in
+ fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ - POST /fake/outer/boolean
+ - Test serialization of outer boolean types
+ - parameter body: (body) Input boolean as post body (optional)
+ - returns: RequestBuilder
+ */
+ open class func fakeOuterBooleanSerializeWithRequestBuilder(body: Bool? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake/outer/boolean"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+
+ - parameter body: (body) Input composite as post body (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: OuterComposite
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> OuterComposite {
+ return try await withCheckedThrowingContinuation { continuation in
+ fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ - POST /fake/outer/composite
+ - Test serialization of object with outer number type
+ - parameter body: (body) Input composite as post body (optional)
+ - returns: RequestBuilder
+ */
+ open class func fakeOuterCompositeSerializeWithRequestBuilder(body: OuterComposite? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake/outer/composite"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+
+ - parameter body: (body) Input number as post body (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Double
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func fakeOuterNumberSerialize(body: Double? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Double {
+ return try await withCheckedThrowingContinuation { continuation in
+ fakeOuterNumberSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ - POST /fake/outer/number
+ - Test serialization of outer number types
+ - parameter body: (body) Input number as post body (optional)
+ - returns: RequestBuilder
+ */
+ open class func fakeOuterNumberSerializeWithRequestBuilder(body: Double? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake/outer/number"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+
+ - parameter body: (body) Input string as post body (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: String
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func fakeOuterStringSerialize(body: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> String {
+ return try await withCheckedThrowingContinuation { continuation in
+ fakeOuterStringSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ - POST /fake/outer/string
+ - Test serialization of outer string types
+ - parameter body: (body) Input string as post body (optional)
+ - returns: RequestBuilder
+ */
+ open class func fakeOuterStringSerializeWithRequestBuilder(body: String? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake/outer/string"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+
+ - parameter body: (body)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testBodyWithFileSchema(body: FileSchemaTestClass, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testBodyWithFileSchemaWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ - PUT /fake/body-with-file-schema
+ - For this test, the body for this request much reference a schema named `File`.
+ - parameter body: (body)
+ - returns: RequestBuilder
+ */
+ open class func testBodyWithFileSchemaWithRequestBuilder(body: FileSchemaTestClass) -> RequestBuilder {
+ let localVariablePath = "/fake/body-with-file-schema"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "PUT", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+
+ - parameter query: (query)
+ - parameter body: (body)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testBodyWithQueryParams(query: String, body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ - PUT /fake/body-with-query-params
+ - parameter query: (query)
+ - parameter body: (body)
+ - returns: RequestBuilder
+ */
+ open class func testBodyWithQueryParamsWithRequestBuilder(query: String, body: User) -> RequestBuilder {
+ let localVariablePath = "/fake/body-with-query-params"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ var localVariableUrlComponents = URLComponents(string: localVariableURLString)
+ localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
+ "query": query.encodeToJSON(),
+ ])
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "PUT", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ To test \"client\" model
+
+ - parameter body: (body) client model
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Client
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testClientModel(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Client {
+ return try await withCheckedThrowingContinuation { continuation in
+ testClientModelWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ To test \"client\" model
+ - PATCH /fake
+ - To test \"client\" model
+ - parameter body: (body) client model
+ - returns: RequestBuilder
+ */
+ open class func testClientModelWithRequestBuilder(body: Client) -> RequestBuilder {
+ let localVariablePath = "/fake"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "PATCH", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+
+ - parameter number: (form) None
+ - parameter double: (form) None
+ - parameter patternWithoutDelimiter: (form) None
+ - parameter byte: (form) None
+ - parameter integer: (form) None (optional)
+ - parameter int32: (form) None (optional)
+ - parameter int64: (form) None (optional)
+ - parameter float: (form) None (optional)
+ - parameter string: (form) None (optional)
+ - parameter binary: (form) None (optional)
+ - parameter date: (form) None (optional)
+ - parameter dateTime: (form) None (optional)
+ - parameter password: (form) None (optional)
+ - parameter callback: (form) None (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+ - POST /fake
+ - Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+ - BASIC:
+ - type: http
+ - name: http_basic_test
+ - parameter number: (form) None
+ - parameter double: (form) None
+ - parameter patternWithoutDelimiter: (form) None
+ - parameter byte: (form) None
+ - parameter integer: (form) None (optional)
+ - parameter int32: (form) None (optional)
+ - parameter int64: (form) None (optional)
+ - parameter float: (form) None (optional)
+ - parameter string: (form) None (optional)
+ - parameter binary: (form) None (optional)
+ - parameter date: (form) None (optional)
+ - parameter dateTime: (form) None (optional)
+ - parameter password: (form) None (optional)
+ - parameter callback: (form) None (optional)
+ - returns: RequestBuilder
+ */
+ open class func testEndpointParametersWithRequestBuilder(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableFormParams: [String: Any?] = [
+ "integer": integer?.encodeToJSON(),
+ "int32": int32?.encodeToJSON(),
+ "int64": int64?.encodeToJSON(),
+ "number": number.encodeToJSON(),
+ "float": float?.encodeToJSON(),
+ "double": double.encodeToJSON(),
+ "string": string?.encodeToJSON(),
+ "pattern_without_delimiter": patternWithoutDelimiter.encodeToJSON(),
+ "byte": byte.encodeToJSON(),
+ "binary": binary?.encodeToJSON(),
+ "date": date?.encodeToJSON(),
+ "dateTime": dateTime?.encodeToJSON(),
+ "password": password?.encodeToJSON(),
+ "callback": callback?.encodeToJSON(),
+ ]
+
+ let localVariableNonNullParameters = APIHelper.rejectNil(localVariableFormParams)
+ let localVariableParameters = APIHelper.convertBoolToString(localVariableNonNullParameters)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "Content-Type": "application/x-www-form-urlencoded",
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ * enum for parameter enumHeaderStringArray
+ */
+ public enum EnumHeaderStringArray_testEnumParameters: String, CaseIterable {
+ case greaterThan = ">"
+ case dollar = "$"
+ }
+
+ /**
+ * enum for parameter enumHeaderString
+ */
+ public enum EnumHeaderString_testEnumParameters: String, CaseIterable {
+ case abc = "_abc"
+ case efg = "-efg"
+ case xyz = "(xyz)"
+ }
+
+ /**
+ * enum for parameter enumQueryStringArray
+ */
+ public enum EnumQueryStringArray_testEnumParameters: String, CaseIterable {
+ case greaterThan = ">"
+ case dollar = "$"
+ }
+
+ /**
+ * enum for parameter enumQueryString
+ */
+ public enum EnumQueryString_testEnumParameters: String, CaseIterable {
+ case abc = "_abc"
+ case efg = "-efg"
+ case xyz = "(xyz)"
+ }
+
+ /**
+ * enum for parameter enumQueryInteger
+ */
+ public enum EnumQueryInteger_testEnumParameters: Int, CaseIterable {
+ case _1 = 1
+ case number2 = -2
+ }
+
+ /**
+ * enum for parameter enumQueryDouble
+ */
+ public enum EnumQueryDouble_testEnumParameters: Double, CaseIterable {
+ case _11 = 1.1
+ case number12 = -1.2
+ }
+
+ /**
+ * enum for parameter enumFormStringArray
+ */
+ public enum EnumFormStringArray_testEnumParameters: String, CaseIterable {
+ case greaterThan = ">"
+ case dollar = "$"
+ }
+
+ /**
+ * enum for parameter enumFormString
+ */
+ public enum EnumFormString_testEnumParameters: String, CaseIterable {
+ case abc = "_abc"
+ case efg = "-efg"
+ case xyz = "(xyz)"
+ }
+
+ /**
+ To test enum parameters
+
+ - parameter enumHeaderStringArray: (header) Header parameter enum test (string array) (optional)
+ - parameter enumHeaderString: (header) Header parameter enum test (string) (optional, default to .efg)
+ - parameter enumQueryStringArray: (query) Query parameter enum test (string array) (optional)
+ - parameter enumQueryString: (query) Query parameter enum test (string) (optional, default to .efg)
+ - parameter enumQueryInteger: (query) Query parameter enum test (double) (optional)
+ - parameter enumQueryDouble: (query) Query parameter enum test (double) (optional)
+ - parameter enumFormStringArray: (form) Form parameter enum test (string array) (optional, default to .dollar)
+ - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .efg)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ To test enum parameters
+ - GET /fake
+ - To test enum parameters
+ - parameter enumHeaderStringArray: (header) Header parameter enum test (string array) (optional)
+ - parameter enumHeaderString: (header) Header parameter enum test (string) (optional, default to .efg)
+ - parameter enumQueryStringArray: (query) Query parameter enum test (string array) (optional)
+ - parameter enumQueryString: (query) Query parameter enum test (string) (optional, default to .efg)
+ - parameter enumQueryInteger: (query) Query parameter enum test (double) (optional)
+ - parameter enumQueryDouble: (query) Query parameter enum test (double) (optional)
+ - parameter enumFormStringArray: (form) Form parameter enum test (string array) (optional, default to .dollar)
+ - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .efg)
+ - returns: RequestBuilder
+ */
+ open class func testEnumParametersWithRequestBuilder(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableFormParams: [String: Any?] = [
+ "enum_form_string_array": enumFormStringArray?.encodeToJSON(),
+ "enum_form_string": enumFormString?.encodeToJSON(),
+ ]
+
+ let localVariableNonNullParameters = APIHelper.rejectNil(localVariableFormParams)
+ let localVariableParameters = APIHelper.convertBoolToString(localVariableNonNullParameters)
+
+ var localVariableUrlComponents = URLComponents(string: localVariableURLString)
+ localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
+ "enum_query_string_array": enumQueryStringArray?.encodeToJSON(),
+ "enum_query_string": enumQueryString?.encodeToJSON(),
+ "enum_query_integer": enumQueryInteger?.encodeToJSON(),
+ "enum_query_double": enumQueryDouble?.encodeToJSON(),
+ ])
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "Content-Type": "application/x-www-form-urlencoded",
+ "enum_header_string_array": enumHeaderStringArray?.encodeToJSON(),
+ "enum_header_string": enumHeaderString?.encodeToJSON(),
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Fake endpoint to test group parameters (optional)
+
+ - parameter requiredStringGroup: (query) Required String in group parameters
+ - parameter requiredBooleanGroup: (header) Required Boolean in group parameters
+ - parameter requiredInt64Group: (query) Required Integer in group parameters
+ - parameter stringGroup: (query) String in group parameters (optional)
+ - parameter booleanGroup: (header) Boolean in group parameters (optional)
+ - parameter int64Group: (query) Integer in group parameters (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Fake endpoint to test group parameters (optional)
+ - DELETE /fake
+ - Fake endpoint to test group parameters (optional)
+ - parameter requiredStringGroup: (query) Required String in group parameters
+ - parameter requiredBooleanGroup: (header) Required Boolean in group parameters
+ - parameter requiredInt64Group: (query) Required Integer in group parameters
+ - parameter stringGroup: (query) String in group parameters (optional)
+ - parameter booleanGroup: (header) Boolean in group parameters (optional)
+ - parameter int64Group: (query) Integer in group parameters (optional)
+ - returns: RequestBuilder
+ */
+ open class func testGroupParametersWithRequestBuilder(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> RequestBuilder {
+ let localVariablePath = "/fake"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ var localVariableUrlComponents = URLComponents(string: localVariableURLString)
+ localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
+ "required_string_group": requiredStringGroup.encodeToJSON(),
+ "required_int64_group": requiredInt64Group.encodeToJSON(),
+ "string_group": stringGroup?.encodeToJSON(),
+ "int64_group": int64Group?.encodeToJSON(),
+ ])
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "required_boolean_group": requiredBooleanGroup.encodeToJSON(),
+ "boolean_group": booleanGroup?.encodeToJSON(),
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "DELETE", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ test inline additionalProperties
+
+ - parameter param: (body) request body
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testInlineAdditionalProperties(param: [String: String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ test inline additionalProperties
+ - POST /fake/inline-additionalProperties
+ - parameter param: (body) request body
+ - returns: RequestBuilder
+ */
+ open class func testInlineAdditionalPropertiesWithRequestBuilder(param: [String: String]) -> RequestBuilder {
+ let localVariablePath = "/fake/inline-additionalProperties"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: param)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ test json serialization of form data
+
+ - parameter param: (form) field1
+ - parameter param2: (form) field2
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testJsonFormData(param: String, param2: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ test json serialization of form data
+ - GET /fake/jsonFormData
+ - parameter param: (form) field1
+ - parameter param2: (form) field2
+ - returns: RequestBuilder
+ */
+ open class func testJsonFormDataWithRequestBuilder(param: String, param2: String) -> RequestBuilder {
+ let localVariablePath = "/fake/jsonFormData"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableFormParams: [String: Any?] = [
+ "param": param.encodeToJSON(),
+ "param2": param2.encodeToJSON(),
+ ]
+
+ let localVariableNonNullParameters = APIHelper.rejectNil(localVariableFormParams)
+ let localVariableParameters = APIHelper.convertBoolToString(localVariableNonNullParameters)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "Content-Type": "application/x-www-form-urlencoded",
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
new file mode 100644
index 00000000000..83a249280d7
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -0,0 +1,63 @@
+//
+// FakeClassnameTags123API.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+open class FakeClassnameTags123API {
+
+ /**
+ To test class name in snake case
+
+ - parameter body: (body) client model
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Client
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func testClassname(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Client {
+ return try await withCheckedThrowingContinuation { continuation in
+ testClassnameWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ To test class name in snake case
+ - PATCH /fake_classname_test
+ - To test class name in snake case
+ - API Key:
+ - type: apiKey api_key_query (QUERY)
+ - name: api_key_query
+ - parameter body: (body) client model
+ - returns: RequestBuilder
+ */
+ open class func testClassnameWithRequestBuilder(body: Client) -> RequestBuilder {
+ let localVariablePath = "/fake_classname_test"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "PATCH", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
new file mode 100644
index 00000000000..434db991d21
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift
@@ -0,0 +1,513 @@
+//
+// PetAPI.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+open class PetAPI {
+
+ /**
+ Add a new pet to the store
+
+ - parameter body: (body) Pet object that needs to be added to the store
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func addPet(body: Pet, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ addPetWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Add a new pet to the store
+ - POST /pet
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter body: (body) Pet object that needs to be added to the store
+ - returns: RequestBuilder
+ */
+ open class func addPetWithRequestBuilder(body: Pet) -> RequestBuilder {
+ let localVariablePath = "/pet"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Deletes a pet
+
+ - parameter petId: (path) Pet id to delete
+ - parameter apiKey: (header) (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func deletePet(petId: Int64, apiKey: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Deletes a pet
+ - DELETE /pet/{petId}
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter petId: (path) Pet id to delete
+ - parameter apiKey: (header) (optional)
+ - returns: RequestBuilder
+ */
+ open class func deletePetWithRequestBuilder(petId: Int64, apiKey: String? = nil) -> RequestBuilder {
+ var localVariablePath = "/pet/{petId}"
+ let petIdPreEscape = "\(APIHelper.mapValueToPathItem(petId))"
+ let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "api_key": apiKey?.encodeToJSON(),
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "DELETE", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ * enum for parameter status
+ */
+ public enum Status_findPetsByStatus: String, CaseIterable {
+ case available = "available"
+ case pending = "pending"
+ case sold = "sold"
+ }
+
+ /**
+ Finds Pets by status
+
+ - parameter status: (query) Status values that need to be considered for filter
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: [Pet]
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func findPetsByStatus(status: [String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> [Pet] {
+ return try await withCheckedThrowingContinuation { continuation in
+ findPetsByStatusWithRequestBuilder(status: status).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Finds Pets by status
+ - GET /pet/findByStatus
+ - Multiple status values can be provided with comma separated strings
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter status: (query) Status values that need to be considered for filter
+ - returns: RequestBuilder<[Pet]>
+ */
+ open class func findPetsByStatusWithRequestBuilder(status: [String]) -> RequestBuilder<[Pet]> {
+ let localVariablePath = "/pet/findByStatus"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ var localVariableUrlComponents = URLComponents(string: localVariableURLString)
+ localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
+ "status": status.encodeToJSON(),
+ ])
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder<[Pet]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Finds Pets by tags
+
+ - parameter tags: (query) Tags to filter by
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: [Pet]
+ */
+ @available(*, deprecated, message: "This operation is deprecated.")
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func findPetsByTags(tags: [String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> [Pet] {
+ return try await withCheckedThrowingContinuation { continuation in
+ findPetsByTagsWithRequestBuilder(tags: tags).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Finds Pets by tags
+ - GET /pet/findByTags
+ - Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter tags: (query) Tags to filter by
+ - returns: RequestBuilder<[Pet]>
+ */
+ @available(*, deprecated, message: "This operation is deprecated.")
+ open class func findPetsByTagsWithRequestBuilder(tags: [String]) -> RequestBuilder<[Pet]> {
+ let localVariablePath = "/pet/findByTags"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ var localVariableUrlComponents = URLComponents(string: localVariableURLString)
+ localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
+ "tags": tags.encodeToJSON(),
+ ])
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder<[Pet]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Find pet by ID
+
+ - parameter petId: (path) ID of pet to return
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Pet
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func getPetById(petId: Int64, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Pet {
+ return try await withCheckedThrowingContinuation { continuation in
+ getPetByIdWithRequestBuilder(petId: petId).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Find pet by ID
+ - GET /pet/{petId}
+ - Returns a single pet
+ - API Key:
+ - type: apiKey api_key
+ - name: api_key
+ - parameter petId: (path) ID of pet to return
+ - returns: RequestBuilder
+ */
+ open class func getPetByIdWithRequestBuilder(petId: Int64) -> RequestBuilder {
+ var localVariablePath = "/pet/{petId}"
+ let petIdPreEscape = "\(APIHelper.mapValueToPathItem(petId))"
+ let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Update an existing pet
+
+ - parameter body: (body) Pet object that needs to be added to the store
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func updatePet(body: Pet, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ updatePetWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Update an existing pet
+ - PUT /pet
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter body: (body) Pet object that needs to be added to the store
+ - returns: RequestBuilder
+ */
+ open class func updatePetWithRequestBuilder(body: Pet) -> RequestBuilder {
+ let localVariablePath = "/pet"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "PUT", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Updates a pet in the store with form data
+
+ - parameter petId: (path) ID of pet that needs to be updated
+ - parameter name: (form) Updated name of the pet (optional)
+ - parameter status: (form) Updated status of the pet (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Updates a pet in the store with form data
+ - POST /pet/{petId}
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter petId: (path) ID of pet that needs to be updated
+ - parameter name: (form) Updated name of the pet (optional)
+ - parameter status: (form) Updated status of the pet (optional)
+ - returns: RequestBuilder
+ */
+ open class func updatePetWithFormWithRequestBuilder(petId: Int64, name: String? = nil, status: String? = nil) -> RequestBuilder {
+ var localVariablePath = "/pet/{petId}"
+ let petIdPreEscape = "\(APIHelper.mapValueToPathItem(petId))"
+ let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableFormParams: [String: Any?] = [
+ "name": name?.encodeToJSON(),
+ "status": status?.encodeToJSON(),
+ ]
+
+ let localVariableNonNullParameters = APIHelper.rejectNil(localVariableFormParams)
+ let localVariableParameters = APIHelper.convertBoolToString(localVariableNonNullParameters)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "Content-Type": "application/x-www-form-urlencoded",
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ uploads an image
+
+ - parameter petId: (path) ID of pet to update
+ - parameter additionalMetadata: (form) Additional data to pass to server (optional)
+ - parameter file: (form) file to upload (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: ApiResponse
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> ApiResponse {
+ return try await withCheckedThrowingContinuation { continuation in
+ uploadFileWithRequestBuilder(petId: petId, additionalMetadata: additionalMetadata, file: file).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ uploads an image
+ - POST /pet/{petId}/uploadImage
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter petId: (path) ID of pet to update
+ - parameter additionalMetadata: (form) Additional data to pass to server (optional)
+ - parameter file: (form) file to upload (optional)
+ - returns: RequestBuilder
+ */
+ open class func uploadFileWithRequestBuilder(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil) -> RequestBuilder {
+ var localVariablePath = "/pet/{petId}/uploadImage"
+ let petIdPreEscape = "\(APIHelper.mapValueToPathItem(petId))"
+ let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableFormParams: [String: Any?] = [
+ "additionalMetadata": additionalMetadata?.encodeToJSON(),
+ "file": file?.encodeToJSON(),
+ ]
+
+ let localVariableNonNullParameters = APIHelper.rejectNil(localVariableFormParams)
+ let localVariableParameters = APIHelper.convertBoolToString(localVariableNonNullParameters)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "Content-Type": "multipart/form-data",
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ uploads an image (required)
+
+ - parameter petId: (path) ID of pet to update
+ - parameter requiredFile: (form) file to upload
+ - parameter additionalMetadata: (form) Additional data to pass to server (optional)
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: ApiResponse
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> ApiResponse {
+ return try await withCheckedThrowingContinuation { continuation in
+ uploadFileWithRequiredFileWithRequestBuilder(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ uploads an image (required)
+ - POST /fake/{petId}/uploadImageWithRequiredFile
+ - OAuth:
+ - type: oauth2
+ - name: petstore_auth
+ - parameter petId: (path) ID of pet to update
+ - parameter requiredFile: (form) file to upload
+ - parameter additionalMetadata: (form) Additional data to pass to server (optional)
+ - returns: RequestBuilder
+ */
+ open class func uploadFileWithRequiredFileWithRequestBuilder(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil) -> RequestBuilder {
+ var localVariablePath = "/fake/{petId}/uploadImageWithRequiredFile"
+ let petIdPreEscape = "\(APIHelper.mapValueToPathItem(petId))"
+ let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableFormParams: [String: Any?] = [
+ "additionalMetadata": additionalMetadata?.encodeToJSON(),
+ "requiredFile": requiredFile.encodeToJSON(),
+ ]
+
+ let localVariableNonNullParameters = APIHelper.rejectNil(localVariableFormParams)
+ let localVariableParameters = APIHelper.convertBoolToString(localVariableNonNullParameters)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ "Content-Type": "multipart/form-data",
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
new file mode 100644
index 00000000000..42bb0a26c4a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift
@@ -0,0 +1,204 @@
+//
+// StoreAPI.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+open class StoreAPI {
+
+ /**
+ Delete purchase order by ID
+
+ - parameter orderId: (path) ID of the order that needs to be deleted
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func deleteOrder(orderId: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ deleteOrderWithRequestBuilder(orderId: orderId).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Delete purchase order by ID
+ - DELETE /store/order/{order_id}
+ - For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+ - parameter orderId: (path) ID of the order that needs to be deleted
+ - returns: RequestBuilder
+ */
+ open class func deleteOrderWithRequestBuilder(orderId: String) -> RequestBuilder {
+ var localVariablePath = "/store/order/{order_id}"
+ let orderIdPreEscape = "\(APIHelper.mapValueToPathItem(orderId))"
+ let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "DELETE", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Returns pet inventories by status
+
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: [String: Int]
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func getInventory(apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> [String: Int] {
+ return try await withCheckedThrowingContinuation { continuation in
+ getInventoryWithRequestBuilder().execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Returns pet inventories by status
+ - GET /store/inventory
+ - Returns a map of status codes to quantities
+ - API Key:
+ - type: apiKey api_key
+ - name: api_key
+ - returns: RequestBuilder<[String: Int]>
+ */
+ open class func getInventoryWithRequestBuilder() -> RequestBuilder<[String: Int]> {
+ let localVariablePath = "/store/inventory"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder<[String: Int]>.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Find purchase order by ID
+
+ - parameter orderId: (path) ID of pet that needs to be fetched
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Order
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func getOrderById(orderId: Int64, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Order {
+ return try await withCheckedThrowingContinuation { continuation in
+ getOrderByIdWithRequestBuilder(orderId: orderId).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Find purchase order by ID
+ - GET /store/order/{order_id}
+ - For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+ - parameter orderId: (path) ID of pet that needs to be fetched
+ - returns: RequestBuilder
+ */
+ open class func getOrderByIdWithRequestBuilder(orderId: Int64) -> RequestBuilder {
+ var localVariablePath = "/store/order/{order_id}"
+ let orderIdPreEscape = "\(APIHelper.mapValueToPathItem(orderId))"
+ let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Place an order for a pet
+
+ - parameter body: (body) order placed for purchasing the pet
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Order
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func placeOrder(body: Order, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> Order {
+ return try await withCheckedThrowingContinuation { continuation in
+ placeOrderWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Place an order for a pet
+ - POST /store/order
+ - parameter body: (body) order placed for purchasing the pet
+ - returns: RequestBuilder
+ */
+ open class func placeOrderWithRequestBuilder(body: Order) -> RequestBuilder {
+ let localVariablePath = "/store/order"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
new file mode 100644
index 00000000000..c26f2f6984a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift
@@ -0,0 +1,393 @@
+//
+// UserAPI.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+open class UserAPI {
+
+ /**
+ Create user
+
+ - parameter body: (body) Created user object
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func createUser(body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ createUserWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Create user
+ - POST /user
+ - This can only be done by the logged in user.
+ - parameter body: (body) Created user object
+ - returns: RequestBuilder
+ */
+ open class func createUserWithRequestBuilder(body: User) -> RequestBuilder {
+ let localVariablePath = "/user"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Creates list of users with given input array
+
+ - parameter body: (body) List of user object
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func createUsersWithArrayInput(body: [User], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ createUsersWithArrayInputWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Creates list of users with given input array
+ - POST /user/createWithArray
+ - parameter body: (body) List of user object
+ - returns: RequestBuilder
+ */
+ open class func createUsersWithArrayInputWithRequestBuilder(body: [User]) -> RequestBuilder {
+ let localVariablePath = "/user/createWithArray"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Creates list of users with given input array
+
+ - parameter body: (body) List of user object
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func createUsersWithListInput(body: [User], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ createUsersWithListInputWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Creates list of users with given input array
+ - POST /user/createWithList
+ - parameter body: (body) List of user object
+ - returns: RequestBuilder
+ */
+ open class func createUsersWithListInputWithRequestBuilder(body: [User]) -> RequestBuilder {
+ let localVariablePath = "/user/createWithList"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "POST", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Delete user
+
+ - parameter username: (path) The name that needs to be deleted
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func deleteUser(username: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ deleteUserWithRequestBuilder(username: username).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Delete user
+ - DELETE /user/{username}
+ - This can only be done by the logged in user.
+ - parameter username: (path) The name that needs to be deleted
+ - returns: RequestBuilder
+ */
+ open class func deleteUserWithRequestBuilder(username: String) -> RequestBuilder {
+ var localVariablePath = "/user/{username}"
+ let usernamePreEscape = "\(APIHelper.mapValueToPathItem(username))"
+ let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "DELETE", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Get user by user name
+
+ - parameter username: (path) The name that needs to be fetched. Use user1 for testing.
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: User
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func getUserByName(username: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> User {
+ return try await withCheckedThrowingContinuation { continuation in
+ getUserByNameWithRequestBuilder(username: username).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Get user by user name
+ - GET /user/{username}
+ - parameter username: (path) The name that needs to be fetched. Use user1 for testing.
+ - returns: RequestBuilder
+ */
+ open class func getUserByNameWithRequestBuilder(username: String) -> RequestBuilder {
+ var localVariablePath = "/user/{username}"
+ let usernamePreEscape = "\(APIHelper.mapValueToPathItem(username))"
+ let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Logs user into the system
+
+ - parameter username: (query) The user name for login
+ - parameter password: (query) The password for login in clear text
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: String
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func loginUser(username: String, password: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws -> String {
+ return try await withCheckedThrowingContinuation { continuation in
+ loginUserWithRequestBuilder(username: username, password: password).execute(apiResponseQueue) { result in
+ switch result {
+ case let .success(response):
+ continuation.resume(returning: response.body!)
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Logs user into the system
+ - GET /user/login
+ - responseHeaders: [X-Rate-Limit(Int), X-Expires-After(Date)]
+ - parameter username: (query) The user name for login
+ - parameter password: (query) The password for login in clear text
+ - returns: RequestBuilder
+ */
+ open class func loginUserWithRequestBuilder(username: String, password: String) -> RequestBuilder {
+ let localVariablePath = "/user/login"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ var localVariableUrlComponents = URLComponents(string: localVariableURLString)
+ localVariableUrlComponents?.queryItems = APIHelper.mapValuesToQueryItems([
+ "username": username.encodeToJSON(),
+ "password": password.encodeToJSON(),
+ ])
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Logs out current logged in user session
+
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func logoutUser(apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ logoutUserWithRequestBuilder().execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Logs out current logged in user session
+ - GET /user/logout
+ - returns: RequestBuilder
+ */
+ open class func logoutUserWithRequestBuilder() -> RequestBuilder {
+ let localVariablePath = "/user/logout"
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters: [String: Any]? = nil
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "GET", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+
+ /**
+ Updated user
+
+ - parameter username: (path) name that need to be deleted
+ - parameter body: (body) Updated user object
+ - parameter apiResponseQueue: The queue on which api response is dispatched.
+ - returns: Void
+ */
+ @available(macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0, *)
+ open class func updateUser(username: String, body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) async throws {
+ return try await withCheckedThrowingContinuation { continuation in
+ updateUserWithRequestBuilder(username: username, body: body).execute(apiResponseQueue) { result in
+ switch result {
+ case .success:
+ continuation.resume(returning: ())
+ case let .failure(error):
+ continuation.resume(throwing: error)
+ }
+ }
+ }
+ }
+
+ /**
+ Updated user
+ - PUT /user/{username}
+ - This can only be done by the logged in user.
+ - parameter username: (path) name that need to be deleted
+ - parameter body: (body) Updated user object
+ - returns: RequestBuilder
+ */
+ open class func updateUserWithRequestBuilder(username: String, body: User) -> RequestBuilder {
+ var localVariablePath = "/user/{username}"
+ let usernamePreEscape = "\(APIHelper.mapValueToPathItem(username))"
+ let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? ""
+ localVariablePath = localVariablePath.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil)
+ let localVariableURLString = PetstoreClientAPI.basePath + localVariablePath
+ let localVariableParameters = JSONEncodingHelper.encodingParameters(forEncodableObject: body)
+
+ let localVariableUrlComponents = URLComponents(string: localVariableURLString)
+
+ let localVariableNillableHeaders: [String: Any?] = [
+ :
+ ]
+
+ let localVariableHeaderParameters = APIHelper.rejectNilHeaders(localVariableNillableHeaders)
+
+ let localVariableRequestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder()
+
+ return localVariableRequestBuilder.init(method: "PUT", URLString: (localVariableUrlComponents?.string ?? localVariableURLString), parameters: localVariableParameters, headers: localVariableHeaderParameters)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
new file mode 100644
index 00000000000..09c82e53e13
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift
@@ -0,0 +1,49 @@
+//
+// CodableHelper.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+open class CodableHelper {
+ private static var customDateFormatter: DateFormatter?
+ private static var defaultDateFormatter: DateFormatter = OpenISO8601DateFormatter()
+
+ private static var customJSONDecoder: JSONDecoder?
+ private static var defaultJSONDecoder: JSONDecoder = {
+ let decoder = JSONDecoder()
+ decoder.dateDecodingStrategy = .formatted(CodableHelper.dateFormatter)
+ return decoder
+ }()
+
+ private static var customJSONEncoder: JSONEncoder?
+ private static var defaultJSONEncoder: JSONEncoder = {
+ let encoder = JSONEncoder()
+ encoder.dateEncodingStrategy = .formatted(CodableHelper.dateFormatter)
+ encoder.outputFormatting = .prettyPrinted
+ return encoder
+ }()
+
+ public static var dateFormatter: DateFormatter {
+ get { return customDateFormatter ?? defaultDateFormatter }
+ set { customDateFormatter = newValue }
+ }
+ public static var jsonDecoder: JSONDecoder {
+ get { return customJSONDecoder ?? defaultJSONDecoder }
+ set { customJSONDecoder = newValue }
+ }
+ public static var jsonEncoder: JSONEncoder {
+ get { return customJSONEncoder ?? defaultJSONEncoder }
+ set { customJSONEncoder = newValue }
+ }
+
+ open class func decode(_ type: T.Type, from data: Data) -> Swift.Result where T: Decodable {
+ return Swift.Result { try jsonDecoder.decode(type, from: data) }
+ }
+
+ open class func encode(_ value: T) -> Swift.Result where T: Encodable {
+ return Swift.Result { try jsonEncoder.encode(value) }
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift
new file mode 100644
index 00000000000..8fb05331889
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift
@@ -0,0 +1,15 @@
+// Configuration.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+open class Configuration {
+
+ // This value is used to configure the date formatter that is used to serialize dates into JSON format.
+ // You must set it prior to encoding any dates, and it will only be read once.
+ @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.")
+ public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Extensions.swift
new file mode 100644
index 00000000000..e23035dde30
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Extensions.swift
@@ -0,0 +1,188 @@
+// Extensions.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+extension Bool: JSONEncodable {
+ func encodeToJSON() -> Any { return self as Any }
+}
+
+extension Float: JSONEncodable {
+ func encodeToJSON() -> Any { return self as Any }
+}
+
+extension Int: JSONEncodable {
+ func encodeToJSON() -> Any { return self as Any }
+}
+
+extension Int32: JSONEncodable {
+ func encodeToJSON() -> Any { return NSNumber(value: self as Int32) }
+}
+
+extension Int64: JSONEncodable {
+ func encodeToJSON() -> Any { return NSNumber(value: self as Int64) }
+}
+
+extension Double: JSONEncodable {
+ func encodeToJSON() -> Any { return self as Any }
+}
+
+extension String: JSONEncodable {
+ func encodeToJSON() -> Any { return self as Any }
+}
+
+extension RawRepresentable where RawValue: JSONEncodable {
+ func encodeToJSON() -> Any { return self.rawValue as Any }
+}
+
+private func encodeIfPossible(_ object: T) -> Any {
+ if let encodableObject = object as? JSONEncodable {
+ return encodableObject.encodeToJSON()
+ } else {
+ return object as Any
+ }
+}
+
+extension Array: JSONEncodable {
+ func encodeToJSON() -> Any {
+ return self.map(encodeIfPossible)
+ }
+}
+
+extension Set: JSONEncodable {
+ func encodeToJSON() -> Any {
+ return Array(self).encodeToJSON()
+ }
+}
+
+extension Dictionary: JSONEncodable {
+ func encodeToJSON() -> Any {
+ var dictionary = [AnyHashable: Any]()
+ for (key, value) in self {
+ dictionary[key] = encodeIfPossible(value)
+ }
+ return dictionary as Any
+ }
+}
+
+extension Data: JSONEncodable {
+ func encodeToJSON() -> Any {
+ return self.base64EncodedString(options: Data.Base64EncodingOptions())
+ }
+}
+
+extension Date: JSONEncodable {
+ func encodeToJSON() -> Any {
+ return CodableHelper.dateFormatter.string(from: self) as Any
+ }
+}
+
+extension URL: JSONEncodable {
+ func encodeToJSON() -> Any {
+ return self
+ }
+}
+
+extension UUID: JSONEncodable {
+ func encodeToJSON() -> Any {
+ return self.uuidString
+ }
+}
+
+extension String: CodingKey {
+
+ public var stringValue: String {
+ return self
+ }
+
+ public init?(stringValue: String) {
+ self.init(stringLiteral: stringValue)
+ }
+
+ public var intValue: Int? {
+ return nil
+ }
+
+ public init?(intValue: Int) {
+ return nil
+ }
+
+}
+
+extension KeyedEncodingContainerProtocol {
+
+ public mutating func encodeArray(_ values: [T], forKey key: Self.Key) throws where T: Encodable {
+ var arrayContainer = nestedUnkeyedContainer(forKey: key)
+ try arrayContainer.encode(contentsOf: values)
+ }
+
+ public mutating func encodeArrayIfPresent(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable {
+ if let values = values {
+ try encodeArray(values, forKey: key)
+ }
+ }
+
+ public mutating func encodeMap(_ pairs: [Self.Key: T]) throws where T: Encodable {
+ for (key, value) in pairs {
+ try encode(value, forKey: key)
+ }
+ }
+
+ public mutating func encodeMapIfPresent(_ pairs: [Self.Key: T]?) throws where T: Encodable {
+ if let pairs = pairs {
+ try encodeMap(pairs)
+ }
+ }
+
+}
+
+extension KeyedDecodingContainerProtocol {
+
+ public func decodeArray(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable {
+ var tmpArray = [T]()
+
+ var nestedContainer = try nestedUnkeyedContainer(forKey: key)
+ while !nestedContainer.isAtEnd {
+ let arrayValue = try nestedContainer.decode(T.self)
+ tmpArray.append(arrayValue)
+ }
+
+ return tmpArray
+ }
+
+ public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable {
+ var tmpArray: [T]?
+
+ if contains(key) {
+ tmpArray = try decodeArray(T.self, forKey: key)
+ }
+
+ return tmpArray
+ }
+
+ public func decodeMap(_ type: T.Type, excludedKeys: Set) throws -> [Self.Key: T] where T: Decodable {
+ var map: [Self.Key: T] = [:]
+
+ for key in allKeys {
+ if !excludedKeys.contains(key) {
+ let value = try decode(T.self, forKey: key)
+ map[key] = value
+ }
+ }
+
+ return map
+ }
+
+}
+
+extension HTTPURLResponse {
+ var isStatusCodeSuccessful: Bool {
+ return Array(200 ..< 300).contains(statusCode)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONDataEncoding.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONDataEncoding.swift
new file mode 100644
index 00000000000..b79e9f5e64d
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONDataEncoding.swift
@@ -0,0 +1,53 @@
+//
+// JSONDataEncoding.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+public struct JSONDataEncoding {
+
+ // MARK: Properties
+
+ private static let jsonDataKey = "jsonData"
+
+ // MARK: Encoding
+
+ /// Creates a URL request by encoding parameters and applying them onto an existing request.
+ ///
+ /// - parameter urlRequest: The request to have parameters applied.
+ /// - parameter parameters: The parameters to apply. This should have a single key/value
+ /// pair with "jsonData" as the key and a Data object as the value.
+ ///
+ /// - throws: An `Error` if the encoding process encounters an error.
+ ///
+ /// - returns: The encoded request.
+ public func encode(_ urlRequest: URLRequest, with parameters: [String: Any]?) -> URLRequest {
+ var urlRequest = urlRequest
+
+ guard let jsonData = parameters?[JSONDataEncoding.jsonDataKey] as? Data, !jsonData.isEmpty else {
+ return urlRequest
+ }
+
+ if urlRequest.value(forHTTPHeaderField: "Content-Type") == nil {
+ urlRequest.setValue("application/json", forHTTPHeaderField: "Content-Type")
+ }
+
+ urlRequest.httpBody = jsonData
+
+ return urlRequest
+ }
+
+ public static func encodingParameters(jsonData: Data?) -> [String: Any]? {
+ var returnedParams: [String: Any]?
+ if let jsonData = jsonData, !jsonData.isEmpty {
+ var params: [String: Any] = [:]
+ params[jsonDataKey] = jsonData
+ returnedParams = params
+ }
+ return returnedParams
+ }
+
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
new file mode 100644
index 00000000000..02f78ffb470
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift
@@ -0,0 +1,45 @@
+//
+// JSONEncodingHelper.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+open class JSONEncodingHelper {
+
+ open class func encodingParameters(forEncodableObject encodableObj: T?) -> [String: Any]? {
+ var params: [String: Any]?
+
+ // Encode the Encodable object
+ if let encodableObj = encodableObj {
+ let encodeResult = CodableHelper.encode(encodableObj)
+ do {
+ let data = try encodeResult.get()
+ params = JSONDataEncoding.encodingParameters(jsonData: data)
+ } catch {
+ print(error.localizedDescription)
+ }
+ }
+
+ return params
+ }
+
+ open class func encodingParameters(forEncodableObject encodableObj: Any?) -> [String: Any]? {
+ var params: [String: Any]?
+
+ if let encodableObj = encodableObj {
+ do {
+ let data = try JSONSerialization.data(withJSONObject: encodableObj, options: .prettyPrinted)
+ params = JSONDataEncoding.encodingParameters(jsonData: data)
+ } catch {
+ print(error.localizedDescription)
+ return nil
+ }
+ }
+
+ return params
+ }
+
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models.swift
new file mode 100644
index 00000000000..96e26a20f7d
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models.swift
@@ -0,0 +1,54 @@
+// Models.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+protocol JSONEncodable {
+ func encodeToJSON() -> Any
+}
+
+public enum ErrorResponse: Error {
+ case error(Int, Data?, URLResponse?, Error)
+}
+
+public enum DownloadException: Error {
+ case responseDataMissing
+ case responseFailed
+ case requestMissing
+ case requestMissingPath
+ case requestMissingURL
+}
+
+public enum DecodableRequestBuilderError: Error {
+ case emptyDataResponse
+ case nilHTTPResponse
+ case unsuccessfulHTTPStatusCode
+ case jsonDecoding(DecodingError)
+ case generalError(Error)
+}
+
+open class Response {
+ public let statusCode: Int
+ public let header: [String: String]
+ public let body: T?
+
+ public init(statusCode: Int, header: [String: String], body: T?) {
+ self.statusCode = statusCode
+ self.header = header
+ self.body = body
+ }
+
+ public convenience init(response: HTTPURLResponse, body: T?) {
+ let rawHeader = response.allHeaderFields
+ var header = [String: String]()
+ for (key, value) in rawHeader {
+ if let key = key.base as? String, let value = value as? String {
+ header[key] = value
+ }
+ }
+ self.init(statusCode: response.statusCode, header: header, body: body)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
new file mode 100644
index 00000000000..621afb93561
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift
@@ -0,0 +1,36 @@
+//
+// AdditionalPropertiesClass.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct AdditionalPropertiesClass: Codable, Hashable {
+
+ public var mapString: [String: String]?
+ public var mapMapString: [String: [String: String]]?
+
+ public init(mapString: [String: String]? = nil, mapMapString: [String: [String: String]]? = nil) {
+ self.mapString = mapString
+ self.mapMapString = mapMapString
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case mapString = "map_string"
+ case mapMapString = "map_map_string"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(mapString, forKey: .mapString)
+ try container.encodeIfPresent(mapMapString, forKey: .mapMapString)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
new file mode 100644
index 00000000000..cdd4f5335b9
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift
@@ -0,0 +1,36 @@
+//
+// Animal.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Animal: Codable, Hashable {
+
+ public var className: String
+ public var color: String? = "red"
+
+ public init(className: String, color: String? = "red") {
+ self.className = className
+ self.color = color
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case className
+ case color
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encode(className, forKey: .className)
+ try container.encodeIfPresent(color, forKey: .color)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
new file mode 100644
index 00000000000..a0b09cb9761
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AnimalFarm.swift
@@ -0,0 +1,13 @@
+//
+// AnimalFarm.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public typealias AnimalFarm = [Animal]
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
new file mode 100644
index 00000000000..c365505ab9d
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift
@@ -0,0 +1,40 @@
+//
+// ApiResponse.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct ApiResponse: Codable, Hashable {
+
+ public var code: Int?
+ public var type: String?
+ public var message: String?
+
+ public init(code: Int? = nil, type: String? = nil, message: String? = nil) {
+ self.code = code
+ self.type = type
+ self.message = message
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case code
+ case type
+ case message
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(code, forKey: .code)
+ try container.encodeIfPresent(type, forKey: .type)
+ try container.encodeIfPresent(message, forKey: .message)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
new file mode 100644
index 00000000000..226f7456181
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift
@@ -0,0 +1,32 @@
+//
+// ArrayOfArrayOfNumberOnly.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct ArrayOfArrayOfNumberOnly: Codable, Hashable {
+
+ public var arrayArrayNumber: [[Double]]?
+
+ public init(arrayArrayNumber: [[Double]]? = nil) {
+ self.arrayArrayNumber = arrayArrayNumber
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case arrayArrayNumber = "ArrayArrayNumber"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
new file mode 100644
index 00000000000..39831127871
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift
@@ -0,0 +1,32 @@
+//
+// ArrayOfNumberOnly.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct ArrayOfNumberOnly: Codable, Hashable {
+
+ public var arrayNumber: [Double]?
+
+ public init(arrayNumber: [Double]? = nil) {
+ self.arrayNumber = arrayNumber
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case arrayNumber = "ArrayNumber"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
new file mode 100644
index 00000000000..8865d76bef2
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift
@@ -0,0 +1,40 @@
+//
+// ArrayTest.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct ArrayTest: Codable, Hashable {
+
+ public var arrayOfString: [String]?
+ public var arrayArrayOfInteger: [[Int64]]?
+ public var arrayArrayOfModel: [[ReadOnlyFirst]]?
+
+ public init(arrayOfString: [String]? = nil, arrayArrayOfInteger: [[Int64]]? = nil, arrayArrayOfModel: [[ReadOnlyFirst]]? = nil) {
+ self.arrayOfString = arrayOfString
+ self.arrayArrayOfInteger = arrayArrayOfInteger
+ self.arrayArrayOfModel = arrayArrayOfModel
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case arrayOfString = "array_of_string"
+ case arrayArrayOfInteger = "array_array_of_integer"
+ case arrayArrayOfModel = "array_array_of_model"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(arrayOfString, forKey: .arrayOfString)
+ try container.encodeIfPresent(arrayArrayOfInteger, forKey: .arrayArrayOfInteger)
+ try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
new file mode 100644
index 00000000000..71cd93bce5f
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift
@@ -0,0 +1,53 @@
+//
+// Capitalization.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Capitalization: Codable, Hashable {
+
+ public var smallCamel: String?
+ public var capitalCamel: String?
+ public var smallSnake: String?
+ public var capitalSnake: String?
+ public var sCAETHFlowPoints: String?
+ /** Name of the pet */
+ public var ATT_NAME: String?
+
+ public init(smallCamel: String? = nil, capitalCamel: String? = nil, smallSnake: String? = nil, capitalSnake: String? = nil, sCAETHFlowPoints: String? = nil, ATT_NAME: String? = nil) {
+ self.smallCamel = smallCamel
+ self.capitalCamel = capitalCamel
+ self.smallSnake = smallSnake
+ self.capitalSnake = capitalSnake
+ self.sCAETHFlowPoints = sCAETHFlowPoints
+ self.ATT_NAME = ATT_NAME
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case smallCamel
+ case capitalCamel = "CapitalCamel"
+ case smallSnake = "small_Snake"
+ case capitalSnake = "Capital_Snake"
+ case sCAETHFlowPoints = "SCA_ETH_Flow_Points"
+ case ATT_NAME
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(smallCamel, forKey: .smallCamel)
+ try container.encodeIfPresent(capitalCamel, forKey: .capitalCamel)
+ try container.encodeIfPresent(smallSnake, forKey: .smallSnake)
+ try container.encodeIfPresent(capitalSnake, forKey: .capitalSnake)
+ try container.encodeIfPresent(sCAETHFlowPoints, forKey: .sCAETHFlowPoints)
+ try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
new file mode 100644
index 00000000000..457e04bd475
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift
@@ -0,0 +1,40 @@
+//
+// Cat.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Cat: Codable, Hashable {
+
+ public var className: String
+ public var color: String? = "red"
+ public var declawed: Bool?
+
+ public init(className: String, color: String? = "red", declawed: Bool? = nil) {
+ self.className = className
+ self.color = color
+ self.declawed = declawed
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case className
+ case color
+ case declawed
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encode(className, forKey: .className)
+ try container.encodeIfPresent(color, forKey: .color)
+ try container.encodeIfPresent(declawed, forKey: .declawed)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
new file mode 100644
index 00000000000..8caebb1c206
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift
@@ -0,0 +1,32 @@
+//
+// CatAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct CatAllOf: Codable, Hashable {
+
+ public var declawed: Bool?
+
+ public init(declawed: Bool? = nil) {
+ self.declawed = declawed
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case declawed
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(declawed, forKey: .declawed)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
new file mode 100644
index 00000000000..89016ca353d
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift
@@ -0,0 +1,36 @@
+//
+// Category.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Category: Codable, Hashable {
+
+ public var id: Int64?
+ public var name: String? = "default-name"
+
+ public init(id: Int64? = nil, name: String? = "default-name") {
+ self.id = id
+ self.name = name
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case id
+ case name
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(id, forKey: .id)
+ try container.encode(name, forKey: .name)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
new file mode 100644
index 00000000000..16e69e560bd
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift
@@ -0,0 +1,33 @@
+//
+// ClassModel.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+/** Model for testing model with \"_class\" property */
+public struct ClassModel: Codable, Hashable {
+
+ public var _class: String?
+
+ public init(_class: String? = nil) {
+ self._class = _class
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case _class
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(_class, forKey: ._class)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
new file mode 100644
index 00000000000..60dbc5dc5c1
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift
@@ -0,0 +1,32 @@
+//
+// Client.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Client: Codable, Hashable {
+
+ public var client: String?
+
+ public init(client: String? = nil) {
+ self.client = client
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case client
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(client, forKey: .client)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
new file mode 100644
index 00000000000..658732a7f36
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift
@@ -0,0 +1,40 @@
+//
+// Dog.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Dog: Codable, Hashable {
+
+ public var className: String
+ public var color: String? = "red"
+ public var breed: String?
+
+ public init(className: String, color: String? = "red", breed: String? = nil) {
+ self.className = className
+ self.color = color
+ self.breed = breed
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case className
+ case color
+ case breed
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encode(className, forKey: .className)
+ try container.encodeIfPresent(color, forKey: .color)
+ try container.encodeIfPresent(breed, forKey: .breed)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
new file mode 100644
index 00000000000..82b0dedf35b
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift
@@ -0,0 +1,32 @@
+//
+// DogAllOf.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct DogAllOf: Codable, Hashable {
+
+ public var breed: String?
+
+ public init(breed: String? = nil) {
+ self.breed = breed
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case breed
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(breed, forKey: .breed)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
new file mode 100644
index 00000000000..1d8ce99539c
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift
@@ -0,0 +1,44 @@
+//
+// EnumArrays.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct EnumArrays: Codable, Hashable {
+
+ public enum JustSymbol: String, Codable, CaseIterable {
+ case greaterThanOrEqualTo = ">="
+ case dollar = "$"
+ }
+ public enum ArrayEnum: String, Codable, CaseIterable {
+ case fish = "fish"
+ case crab = "crab"
+ }
+ public var justSymbol: JustSymbol?
+ public var arrayEnum: [ArrayEnum]?
+
+ public init(justSymbol: JustSymbol? = nil, arrayEnum: [ArrayEnum]? = nil) {
+ self.justSymbol = justSymbol
+ self.arrayEnum = arrayEnum
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case justSymbol = "just_symbol"
+ case arrayEnum = "array_enum"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(justSymbol, forKey: .justSymbol)
+ try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
new file mode 100644
index 00000000000..6ea2895aee5
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumClass.swift
@@ -0,0 +1,17 @@
+//
+// EnumClass.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public enum EnumClass: String, Codable, CaseIterable {
+ case abc = "_abc"
+ case efg = "-efg"
+ case xyz = "(xyz)"
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
new file mode 100644
index 00000000000..8c8bca49774
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift
@@ -0,0 +1,66 @@
+//
+// EnumTest.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct EnumTest: Codable, Hashable {
+
+ public enum EnumString: String, Codable, CaseIterable {
+ case upper = "UPPER"
+ case lower = "lower"
+ case empty = ""
+ }
+ public enum EnumStringRequired: String, Codable, CaseIterable {
+ case upper = "UPPER"
+ case lower = "lower"
+ case empty = ""
+ }
+ public enum EnumInteger: Int, Codable, CaseIterable {
+ case _1 = 1
+ case number1 = -1
+ }
+ public enum EnumNumber: Double, Codable, CaseIterable {
+ case _11 = 1.1
+ case number12 = -1.2
+ }
+ public var enumString: EnumString?
+ public var enumStringRequired: EnumStringRequired
+ public var enumInteger: EnumInteger?
+ public var enumNumber: EnumNumber?
+ public var outerEnum: OuterEnum?
+
+ public init(enumString: EnumString? = nil, enumStringRequired: EnumStringRequired, enumInteger: EnumInteger? = nil, enumNumber: EnumNumber? = nil, outerEnum: OuterEnum? = nil) {
+ self.enumString = enumString
+ self.enumStringRequired = enumStringRequired
+ self.enumInteger = enumInteger
+ self.enumNumber = enumNumber
+ self.outerEnum = outerEnum
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case enumString = "enum_string"
+ case enumStringRequired = "enum_string_required"
+ case enumInteger = "enum_integer"
+ case enumNumber = "enum_number"
+ case outerEnum
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(enumString, forKey: .enumString)
+ try container.encode(enumStringRequired, forKey: .enumStringRequired)
+ try container.encodeIfPresent(enumInteger, forKey: .enumInteger)
+ try container.encodeIfPresent(enumNumber, forKey: .enumNumber)
+ try container.encodeIfPresent(outerEnum, forKey: .outerEnum)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift
new file mode 100644
index 00000000000..05dd5b1a825
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift
@@ -0,0 +1,34 @@
+//
+// File.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+/** Must be named `File` for test. */
+public struct File: Codable, Hashable {
+
+ /** Test capitalization */
+ public var sourceURI: String?
+
+ public init(sourceURI: String? = nil) {
+ self.sourceURI = sourceURI
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case sourceURI
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(sourceURI, forKey: .sourceURI)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
new file mode 100644
index 00000000000..3ca66a31359
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift
@@ -0,0 +1,36 @@
+//
+// FileSchemaTestClass.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct FileSchemaTestClass: Codable, Hashable {
+
+ public var file: File?
+ public var files: [File]?
+
+ public init(file: File? = nil, files: [File]? = nil) {
+ self.file = file
+ self.files = files
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case file
+ case files
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(file, forKey: .file)
+ try container.encodeIfPresent(files, forKey: .files)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
new file mode 100644
index 00000000000..a7a4b39e720
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift
@@ -0,0 +1,80 @@
+//
+// FormatTest.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct FormatTest: Codable, Hashable {
+
+ public var integer: Int?
+ public var int32: Int?
+ public var int64: Int64?
+ public var number: Double
+ public var float: Float?
+ public var double: Double?
+ public var string: String?
+ public var byte: Data
+ public var binary: URL?
+ public var date: Date
+ public var dateTime: Date?
+ public var uuid: UUID?
+ public var password: String
+
+ public init(integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, number: Double, float: Float? = nil, double: Double? = nil, string: String? = nil, byte: Data, binary: URL? = nil, date: Date, dateTime: Date? = nil, uuid: UUID? = nil, password: String) {
+ self.integer = integer
+ self.int32 = int32
+ self.int64 = int64
+ self.number = number
+ self.float = float
+ self.double = double
+ self.string = string
+ self.byte = byte
+ self.binary = binary
+ self.date = date
+ self.dateTime = dateTime
+ self.uuid = uuid
+ self.password = password
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case integer
+ case int32
+ case int64
+ case number
+ case float
+ case double
+ case string
+ case byte
+ case binary
+ case date
+ case dateTime
+ case uuid
+ case password
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(integer, forKey: .integer)
+ try container.encodeIfPresent(int32, forKey: .int32)
+ try container.encodeIfPresent(int64, forKey: .int64)
+ try container.encode(number, forKey: .number)
+ try container.encodeIfPresent(float, forKey: .float)
+ try container.encodeIfPresent(double, forKey: .double)
+ try container.encodeIfPresent(string, forKey: .string)
+ try container.encode(byte, forKey: .byte)
+ try container.encodeIfPresent(binary, forKey: .binary)
+ try container.encode(date, forKey: .date)
+ try container.encodeIfPresent(dateTime, forKey: .dateTime)
+ try container.encodeIfPresent(uuid, forKey: .uuid)
+ try container.encode(password, forKey: .password)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
new file mode 100644
index 00000000000..54ed8a723c6
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift
@@ -0,0 +1,36 @@
+//
+// HasOnlyReadOnly.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct HasOnlyReadOnly: Codable, Hashable {
+
+ public var bar: String?
+ public var foo: String?
+
+ public init(bar: String? = nil, foo: String? = nil) {
+ self.bar = bar
+ self.foo = foo
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case bar
+ case foo
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(bar, forKey: .bar)
+ try container.encodeIfPresent(foo, forKey: .foo)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift
new file mode 100644
index 00000000000..67e3048469f
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift
@@ -0,0 +1,32 @@
+//
+// List.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct List: Codable, Hashable {
+
+ public var _123list: String?
+
+ public init(_123list: String? = nil) {
+ self._123list = _123list
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case _123list = "123-list"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(_123list, forKey: ._123list)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
new file mode 100644
index 00000000000..1e728fcdf58
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift
@@ -0,0 +1,48 @@
+//
+// MapTest.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct MapTest: Codable, Hashable {
+
+ public enum MapOfEnumString: String, Codable, CaseIterable {
+ case upper = "UPPER"
+ case lower = "lower"
+ }
+ public var mapMapOfString: [String: [String: String]]?
+ public var mapOfEnumString: [String: String]?
+ public var directMap: [String: Bool]?
+ public var indirectMap: StringBooleanMap?
+
+ public init(mapMapOfString: [String: [String: String]]? = nil, mapOfEnumString: [String: String]? = nil, directMap: [String: Bool]? = nil, indirectMap: StringBooleanMap? = nil) {
+ self.mapMapOfString = mapMapOfString
+ self.mapOfEnumString = mapOfEnumString
+ self.directMap = directMap
+ self.indirectMap = indirectMap
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case mapMapOfString = "map_map_of_string"
+ case mapOfEnumString = "map_of_enum_string"
+ case directMap = "direct_map"
+ case indirectMap = "indirect_map"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(mapMapOfString, forKey: .mapMapOfString)
+ try container.encodeIfPresent(mapOfEnumString, forKey: .mapOfEnumString)
+ try container.encodeIfPresent(directMap, forKey: .directMap)
+ try container.encodeIfPresent(indirectMap, forKey: .indirectMap)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
new file mode 100644
index 00000000000..c79ca459217
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift
@@ -0,0 +1,40 @@
+//
+// MixedPropertiesAndAdditionalPropertiesClass.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable {
+
+ public var uuid: UUID?
+ public var dateTime: Date?
+ public var map: [String: Animal]?
+
+ public init(uuid: UUID? = nil, dateTime: Date? = nil, map: [String: Animal]? = nil) {
+ self.uuid = uuid
+ self.dateTime = dateTime
+ self.map = map
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case uuid
+ case dateTime
+ case map
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(uuid, forKey: .uuid)
+ try container.encodeIfPresent(dateTime, forKey: .dateTime)
+ try container.encodeIfPresent(map, forKey: .map)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
new file mode 100644
index 00000000000..23402143f71
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift
@@ -0,0 +1,37 @@
+//
+// Model200Response.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+/** Model for testing model name starting with number */
+public struct Model200Response: Codable, Hashable {
+
+ public var name: Int?
+ public var _class: String?
+
+ public init(name: Int? = nil, _class: String? = nil) {
+ self.name = name
+ self._class = _class
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case name
+ case _class = "class"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(name, forKey: .name)
+ try container.encodeIfPresent(_class, forKey: ._class)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
new file mode 100644
index 00000000000..a28f46a33ce
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift
@@ -0,0 +1,45 @@
+//
+// Name.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+/** Model for testing model name same as property name */
+public struct Name: Codable, Hashable {
+
+ public var name: Int
+ public var snakeCase: Int?
+ public var property: String?
+ public var _123number: Int?
+
+ public init(name: Int, snakeCase: Int? = nil, property: String? = nil, _123number: Int? = nil) {
+ self.name = name
+ self.snakeCase = snakeCase
+ self.property = property
+ self._123number = _123number
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case name
+ case snakeCase = "snake_case"
+ case property
+ case _123number = "123Number"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encode(name, forKey: .name)
+ try container.encodeIfPresent(snakeCase, forKey: .snakeCase)
+ try container.encodeIfPresent(property, forKey: .property)
+ try container.encodeIfPresent(_123number, forKey: ._123number)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
new file mode 100644
index 00000000000..87ceb64bb97
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift
@@ -0,0 +1,32 @@
+//
+// NumberOnly.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct NumberOnly: Codable, Hashable {
+
+ public var justNumber: Double?
+
+ public init(justNumber: Double? = nil) {
+ self.justNumber = justNumber
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case justNumber = "JustNumber"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(justNumber, forKey: .justNumber)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
new file mode 100644
index 00000000000..e2eeced4c57
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift
@@ -0,0 +1,58 @@
+//
+// Order.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Order: Codable, Hashable {
+
+ public enum Status: String, Codable, CaseIterable {
+ case placed = "placed"
+ case approved = "approved"
+ case delivered = "delivered"
+ }
+ public var id: Int64?
+ public var petId: Int64?
+ public var quantity: Int?
+ public var shipDate: Date?
+ /** Order Status */
+ public var status: Status?
+ public var complete: Bool? = false
+
+ public init(id: Int64? = nil, petId: Int64? = nil, quantity: Int? = nil, shipDate: Date? = nil, status: Status? = nil, complete: Bool? = false) {
+ self.id = id
+ self.petId = petId
+ self.quantity = quantity
+ self.shipDate = shipDate
+ self.status = status
+ self.complete = complete
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case id
+ case petId
+ case quantity
+ case shipDate
+ case status
+ case complete
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(id, forKey: .id)
+ try container.encodeIfPresent(petId, forKey: .petId)
+ try container.encodeIfPresent(quantity, forKey: .quantity)
+ try container.encodeIfPresent(shipDate, forKey: .shipDate)
+ try container.encodeIfPresent(status, forKey: .status)
+ try container.encodeIfPresent(complete, forKey: .complete)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
new file mode 100644
index 00000000000..edeaccaeaa6
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift
@@ -0,0 +1,40 @@
+//
+// OuterComposite.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct OuterComposite: Codable, Hashable {
+
+ public var myNumber: Double?
+ public var myString: String?
+ public var myBoolean: Bool?
+
+ public init(myNumber: Double? = nil, myString: String? = nil, myBoolean: Bool? = nil) {
+ self.myNumber = myNumber
+ self.myString = myString
+ self.myBoolean = myBoolean
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case myNumber = "my_number"
+ case myString = "my_string"
+ case myBoolean = "my_boolean"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(myNumber, forKey: .myNumber)
+ try container.encodeIfPresent(myString, forKey: .myString)
+ try container.encodeIfPresent(myBoolean, forKey: .myBoolean)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
new file mode 100644
index 00000000000..76c34b3c2ce
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterEnum.swift
@@ -0,0 +1,17 @@
+//
+// OuterEnum.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public enum OuterEnum: String, Codable, CaseIterable {
+ case placed = "placed"
+ case approved = "approved"
+ case delivered = "delivered"
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
new file mode 100644
index 00000000000..ddd1186b891
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift
@@ -0,0 +1,58 @@
+//
+// Pet.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Pet: Codable, Hashable {
+
+ public enum Status: String, Codable, CaseIterable {
+ case available = "available"
+ case pending = "pending"
+ case sold = "sold"
+ }
+ public var id: Int64?
+ public var category: Category?
+ public var name: String
+ public var photoUrls: [String]
+ public var tags: [Tag]?
+ /** pet status in the store */
+ public var status: Status?
+
+ public init(id: Int64? = nil, category: Category? = nil, name: String, photoUrls: [String], tags: [Tag]? = nil, status: Status? = nil) {
+ self.id = id
+ self.category = category
+ self.name = name
+ self.photoUrls = photoUrls
+ self.tags = tags
+ self.status = status
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case id
+ case category
+ case name
+ case photoUrls
+ case tags
+ case status
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(id, forKey: .id)
+ try container.encodeIfPresent(category, forKey: .category)
+ try container.encode(name, forKey: .name)
+ try container.encode(photoUrls, forKey: .photoUrls)
+ try container.encodeIfPresent(tags, forKey: .tags)
+ try container.encodeIfPresent(status, forKey: .status)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
new file mode 100644
index 00000000000..57ba3f577c8
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift
@@ -0,0 +1,36 @@
+//
+// ReadOnlyFirst.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct ReadOnlyFirst: Codable, Hashable {
+
+ public var bar: String?
+ public var baz: String?
+
+ public init(bar: String? = nil, baz: String? = nil) {
+ self.bar = bar
+ self.baz = baz
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case bar
+ case baz
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(bar, forKey: .bar)
+ try container.encodeIfPresent(baz, forKey: .baz)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
new file mode 100644
index 00000000000..afc2b51f8f3
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift
@@ -0,0 +1,33 @@
+//
+// Return.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+/** Model for testing reserved words */
+public struct Return: Codable, Hashable {
+
+ public var _return: Int?
+
+ public init(_return: Int? = nil) {
+ self._return = _return
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case _return = "return"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(_return, forKey: ._return)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
new file mode 100644
index 00000000000..bfe9723f888
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift
@@ -0,0 +1,32 @@
+//
+// SpecialModelName.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct SpecialModelName: Codable, Hashable {
+
+ public var specialPropertyName: Int64?
+
+ public init(specialPropertyName: Int64? = nil) {
+ self.specialPropertyName = specialPropertyName
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case specialPropertyName = "$special[property.name]"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
new file mode 100644
index 00000000000..126c35c85a6
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift
@@ -0,0 +1,52 @@
+//
+// StringBooleanMap.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct StringBooleanMap: Codable, Hashable {
+
+
+ public enum CodingKeys: CodingKey, CaseIterable {
+ }
+
+ public var additionalProperties: [String: Bool] = [:]
+
+ public subscript(key: String) -> Bool? {
+ get {
+ if let value = additionalProperties[key] {
+ return value
+ }
+ return nil
+ }
+
+ set {
+ additionalProperties[key] = newValue
+ }
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ var additionalPropertiesContainer = encoder.container(keyedBy: String.self)
+ try additionalPropertiesContainer.encodeMap(additionalProperties)
+ }
+
+ // Decodable protocol methods
+
+ public init(from decoder: Decoder) throws {
+ let container = try decoder.container(keyedBy: CodingKeys.self)
+
+ var nonAdditionalPropertyKeys = Set()
+ let additionalPropertiesContainer = try decoder.container(keyedBy: String.self)
+ additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
new file mode 100644
index 00000000000..07b826264f3
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift
@@ -0,0 +1,36 @@
+//
+// Tag.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct Tag: Codable, Hashable {
+
+ public var id: Int64?
+ public var name: String?
+
+ public init(id: Int64? = nil, name: String? = nil) {
+ self.id = id
+ self.name = name
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case id
+ case name
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(id, forKey: .id)
+ try container.encodeIfPresent(name, forKey: .name)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
new file mode 100644
index 00000000000..e58eecd960f
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift
@@ -0,0 +1,48 @@
+//
+// TypeHolderDefault.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct TypeHolderDefault: Codable, Hashable {
+
+ public var stringItem: String = "what"
+ public var numberItem: Double
+ public var integerItem: Int
+ public var boolItem: Bool = true
+ public var arrayItem: [Int]
+
+ public init(stringItem: String = "what", numberItem: Double, integerItem: Int, boolItem: Bool = true, arrayItem: [Int]) {
+ self.stringItem = stringItem
+ self.numberItem = numberItem
+ self.integerItem = integerItem
+ self.boolItem = boolItem
+ self.arrayItem = arrayItem
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case stringItem = "string_item"
+ case numberItem = "number_item"
+ case integerItem = "integer_item"
+ case boolItem = "bool_item"
+ case arrayItem = "array_item"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encode(stringItem, forKey: .stringItem)
+ try container.encode(numberItem, forKey: .numberItem)
+ try container.encode(integerItem, forKey: .integerItem)
+ try container.encode(boolItem, forKey: .boolItem)
+ try container.encode(arrayItem, forKey: .arrayItem)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
new file mode 100644
index 00000000000..6c22fdbae7a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift
@@ -0,0 +1,48 @@
+//
+// TypeHolderExample.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct TypeHolderExample: Codable, Hashable {
+
+ public var stringItem: String
+ public var numberItem: Double
+ public var integerItem: Int
+ public var boolItem: Bool
+ public var arrayItem: [Int]
+
+ public init(stringItem: String, numberItem: Double, integerItem: Int, boolItem: Bool, arrayItem: [Int]) {
+ self.stringItem = stringItem
+ self.numberItem = numberItem
+ self.integerItem = integerItem
+ self.boolItem = boolItem
+ self.arrayItem = arrayItem
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case stringItem = "string_item"
+ case numberItem = "number_item"
+ case integerItem = "integer_item"
+ case boolItem = "bool_item"
+ case arrayItem = "array_item"
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encode(stringItem, forKey: .stringItem)
+ try container.encode(numberItem, forKey: .numberItem)
+ try container.encode(integerItem, forKey: .integerItem)
+ try container.encode(boolItem, forKey: .boolItem)
+ try container.encode(arrayItem, forKey: .arrayItem)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift
new file mode 100644
index 00000000000..7afe359ae40
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift
@@ -0,0 +1,61 @@
+//
+// User.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if canImport(AnyCodable)
+import AnyCodable
+#endif
+
+public struct User: Codable, Hashable {
+
+ public var id: Int64?
+ public var username: String?
+ public var firstName: String?
+ public var lastName: String?
+ public var email: String?
+ public var password: String?
+ public var phone: String?
+ /** User Status */
+ public var userStatus: Int?
+
+ public init(id: Int64? = nil, username: String? = nil, firstName: String? = nil, lastName: String? = nil, email: String? = nil, password: String? = nil, phone: String? = nil, userStatus: Int? = nil) {
+ self.id = id
+ self.username = username
+ self.firstName = firstName
+ self.lastName = lastName
+ self.email = email
+ self.password = password
+ self.phone = phone
+ self.userStatus = userStatus
+ }
+
+ public enum CodingKeys: String, CodingKey, CaseIterable {
+ case id
+ case username
+ case firstName
+ case lastName
+ case email
+ case password
+ case phone
+ case userStatus
+ }
+
+ // Encodable protocol methods
+
+ public func encode(to encoder: Encoder) throws {
+ var container = encoder.container(keyedBy: CodingKeys.self)
+ try container.encodeIfPresent(id, forKey: .id)
+ try container.encodeIfPresent(username, forKey: .username)
+ try container.encodeIfPresent(firstName, forKey: .firstName)
+ try container.encodeIfPresent(lastName, forKey: .lastName)
+ try container.encodeIfPresent(email, forKey: .email)
+ try container.encodeIfPresent(password, forKey: .password)
+ try container.encodeIfPresent(phone, forKey: .phone)
+ try container.encodeIfPresent(userStatus, forKey: .userStatus)
+ }
+}
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/OpenISO8601DateFormatter.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/OpenISO8601DateFormatter.swift
new file mode 100644
index 00000000000..e06208074cd
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/OpenISO8601DateFormatter.swift
@@ -0,0 +1,44 @@
+//
+// OpenISO8601DateFormatter.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+// https://stackoverflow.com/a/50281094/976628
+public class OpenISO8601DateFormatter: DateFormatter {
+ static let withoutSeconds: DateFormatter = {
+ let formatter = DateFormatter()
+ formatter.calendar = Calendar(identifier: .iso8601)
+ formatter.locale = Locale(identifier: "en_US_POSIX")
+ formatter.timeZone = TimeZone(secondsFromGMT: 0)
+ formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"
+ return formatter
+ }()
+
+ private func setup() {
+ calendar = Calendar(identifier: .iso8601)
+ locale = Locale(identifier: "en_US_POSIX")
+ timeZone = TimeZone(secondsFromGMT: 0)
+ dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
+ }
+
+ override init() {
+ super.init()
+ setup()
+ }
+
+ required init?(coder aDecoder: NSCoder) {
+ super.init(coder: aDecoder)
+ setup()
+ }
+
+ override public func date(from string: String) -> Date? {
+ if let result = super.date(from: string) {
+ return result
+ }
+ return OpenISO8601DateFormatter.withoutSeconds.date(from: string)
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/SynchronizedDictionary.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/SynchronizedDictionary.swift
new file mode 100644
index 00000000000..acf7ff4031b
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/SynchronizedDictionary.swift
@@ -0,0 +1,36 @@
+// SynchronizedDictionary.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+
+internal struct SynchronizedDictionary {
+
+ private var dictionary = [K: V]()
+ private let queue = DispatchQueue(
+ label: "SynchronizedDictionary",
+ qos: DispatchQoS.userInitiated,
+ attributes: [DispatchQueue.Attributes.concurrent],
+ autoreleaseFrequency: DispatchQueue.AutoreleaseFrequency.inherit,
+ target: nil
+ )
+
+ internal subscript(key: K) -> V? {
+ get {
+ var value: V?
+
+ queue.sync {
+ value = self.dictionary[key]
+ }
+
+ return value
+ }
+ set {
+ queue.sync(flags: DispatchWorkItemFlags.barrier) {
+ self.dictionary[key] = newValue
+ }
+ }
+ }
+}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/URLSessionImplementations.swift b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/URLSessionImplementations.swift
new file mode 100644
index 00000000000..19c7d89462e
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/PetstoreClient/Classes/OpenAPIs/URLSessionImplementations.swift
@@ -0,0 +1,649 @@
+// URLSessionImplementations.swift
+//
+// Generated by openapi-generator
+// https://openapi-generator.tech
+//
+
+import Foundation
+#if !os(macOS)
+import MobileCoreServices
+#endif
+
+class URLSessionRequestBuilderFactory: RequestBuilderFactory {
+ func getNonDecodableBuilder() -> RequestBuilder.Type {
+ return URLSessionRequestBuilder.self
+ }
+
+ func getBuilder() -> RequestBuilder.Type {
+ return URLSessionDecodableRequestBuilder.self
+ }
+}
+
+// Store the URLSession to retain its reference
+private var urlSessionStore = SynchronizedDictionary()
+
+open class URLSessionRequestBuilder: RequestBuilder {
+
+ /**
+ May be assigned if you want to control the authentication challenges.
+ */
+ public var taskDidReceiveChallenge: ((URLSession, URLSessionTask, URLAuthenticationChallenge) -> (URLSession.AuthChallengeDisposition, URLCredential?))?
+
+ /**
+ May be assigned if you want to do any of those things:
+ - control the task completion
+ - intercept and handle errors like authorization
+ - retry the request.
+ */
+ @available(*, deprecated, message: "Please override execute() method to intercept and handle errors like authorization or retry the request. Check the Wiki for more info. https://github.com/OpenAPITools/openapi-generator/wiki/FAQ#how-do-i-implement-bearer-token-authentication-with-urlsession-on-the-swift-api-client")
+ public var taskCompletionShouldRetry: ((Data?, URLResponse?, Error?, @escaping (Bool) -> Void) -> Void)?
+
+ required public init(method: String, URLString: String, parameters: [String: Any]?, headers: [String: String] = [:]) {
+ super.init(method: method, URLString: URLString, parameters: parameters, headers: headers)
+ }
+
+ /**
+ May be overridden by a subclass if you want to control the URLSession
+ configuration.
+ */
+ open func createURLSession() -> URLSession {
+ let configuration = URLSessionConfiguration.default
+ configuration.httpAdditionalHeaders = buildHeaders()
+ let sessionDelegate = SessionDelegate()
+ sessionDelegate.credential = credential
+ sessionDelegate.taskDidReceiveChallenge = taskDidReceiveChallenge
+ return URLSession(configuration: configuration, delegate: sessionDelegate, delegateQueue: nil)
+ }
+
+ /**
+ May be overridden by a subclass if you want to control the Content-Type
+ that is given to an uploaded form part.
+
+ Return nil to use the default behavior (inferring the Content-Type from
+ the file extension). Return the desired Content-Type otherwise.
+ */
+ open func contentTypeForFormPart(fileURL: URL) -> String? {
+ return nil
+ }
+
+ /**
+ May be overridden by a subclass if you want to control the URLRequest
+ configuration (e.g. to override the cache policy).
+ */
+ open func createURLRequest(urlSession: URLSession, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) throws -> URLRequest {
+
+ guard let url = URL(string: URLString) else {
+ throw DownloadException.requestMissingURL
+ }
+
+ var originalRequest = URLRequest(url: url)
+
+ originalRequest.httpMethod = method.rawValue
+
+ headers.forEach { key, value in
+ originalRequest.setValue(value, forHTTPHeaderField: key)
+ }
+
+ buildHeaders().forEach { key, value in
+ originalRequest.setValue(value, forHTTPHeaderField: key)
+ }
+
+ let modifiedRequest = try encoding.encode(originalRequest, with: parameters)
+
+ return modifiedRequest
+ }
+
+ override open func execute(_ apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue, _ completion: @escaping (_ result: Swift.Result, Error>) -> Void) {
+ let urlSessionId = UUID().uuidString
+ // Create a new manager for each request to customize its request header
+ let urlSession = createURLSession()
+ urlSessionStore[urlSessionId] = urlSession
+
+ guard let xMethod = HTTPMethod(rawValue: method) else {
+ fatalError("Unsupported Http method - \(method)")
+ }
+
+ let encoding: ParameterEncoding
+
+ switch xMethod {
+ case .get, .head:
+ encoding = URLEncoding()
+
+ case .options, .post, .put, .patch, .delete, .trace, .connect:
+ let contentType = headers["Content-Type"] ?? "application/json"
+
+ if contentType == "application/json" {
+ encoding = JSONDataEncoding()
+ } else if contentType == "multipart/form-data" {
+ encoding = FormDataEncoding(contentTypeForFormPart: contentTypeForFormPart(fileURL:))
+ } else if contentType == "application/x-www-form-urlencoded" {
+ encoding = FormURLEncoding()
+ } else {
+ fatalError("Unsupported Media Type - \(contentType)")
+ }
+ }
+
+ let cleanupRequest = {
+ urlSessionStore[urlSessionId]?.finishTasksAndInvalidate()
+ urlSessionStore[urlSessionId] = nil
+ }
+
+ do {
+ let request = try createURLRequest(urlSession: urlSession, method: xMethod, encoding: encoding, headers: headers)
+
+ let dataTask = urlSession.dataTask(with: request) { data, response, error in
+
+ if let taskCompletionShouldRetry = self.taskCompletionShouldRetry {
+
+ taskCompletionShouldRetry(data, response, error) { shouldRetry in
+
+ if shouldRetry {
+ cleanupRequest()
+ self.execute(apiResponseQueue, completion)
+ } else {
+ apiResponseQueue.async {
+ self.processRequestResponse(urlRequest: request, data: data, response: response, error: error, completion: completion)
+ cleanupRequest()
+ }
+ }
+ }
+ } else {
+ apiResponseQueue.async {
+ self.processRequestResponse(urlRequest: request, data: data, response: response, error: error, completion: completion)
+ cleanupRequest()
+ }
+ }
+ }
+
+ if #available(iOS 11.0, macOS 10.13, macCatalyst 13.0, tvOS 11.0, watchOS 4.0, *) {
+ onProgressReady?(dataTask.progress)
+ }
+
+ dataTask.resume()
+
+ } catch {
+ apiResponseQueue.async {
+ cleanupRequest()
+ completion(.failure(ErrorResponse.error(415, nil, nil, error)))
+ }
+ }
+ }
+
+ fileprivate func processRequestResponse(urlRequest: URLRequest, data: Data?, response: URLResponse?, error: Error?, completion: @escaping (_ result: Swift.Result, Error>) -> Void) {
+
+ if let error = error {
+ completion(.failure(ErrorResponse.error(-1, data, response, error)))
+ return
+ }
+
+ guard let httpResponse = response as? HTTPURLResponse else {
+ completion(.failure(ErrorResponse.error(-2, data, response, DecodableRequestBuilderError.nilHTTPResponse)))
+ return
+ }
+
+ guard httpResponse.isStatusCodeSuccessful else {
+ completion(.failure(ErrorResponse.error(httpResponse.statusCode, data, response, DecodableRequestBuilderError.unsuccessfulHTTPStatusCode)))
+ return
+ }
+
+ switch T.self {
+ case is String.Type:
+
+ let body = data.flatMap { String(data: $0, encoding: .utf8) } ?? ""
+
+ completion(.success(Response(response: httpResponse, body: body as? T)))
+
+ case is URL.Type:
+ do {
+
+ guard error == nil else {
+ throw DownloadException.responseFailed
+ }
+
+ guard let data = data else {
+ throw DownloadException.responseDataMissing
+ }
+
+ let fileManager = FileManager.default
+ let cachesDirectory = fileManager.urls(for: .cachesDirectory, in: .userDomainMask)[0]
+ let requestURL = try getURL(from: urlRequest)
+
+ var requestPath = try getPath(from: requestURL)
+
+ if let headerFileName = getFileName(fromContentDisposition: httpResponse.allHeaderFields["Content-Disposition"] as? String) {
+ requestPath = requestPath.appending("/\(headerFileName)")
+ } else {
+ requestPath = requestPath.appending("/tmp.PetstoreClient.\(UUID().uuidString)")
+ }
+
+ let filePath = cachesDirectory.appendingPathComponent(requestPath)
+ let directoryPath = filePath.deletingLastPathComponent().path
+
+ try fileManager.createDirectory(atPath: directoryPath, withIntermediateDirectories: true, attributes: nil)
+ try data.write(to: filePath, options: .atomic)
+
+ completion(.success(Response(response: httpResponse, body: filePath as? T)))
+
+ } catch let requestParserError as DownloadException {
+ completion(.failure(ErrorResponse.error(400, data, response, requestParserError)))
+ } catch {
+ completion(.failure(ErrorResponse.error(400, data, response, error)))
+ }
+
+ case is Void.Type:
+
+ completion(.success(Response(response: httpResponse, body: nil)))
+
+ case is Data.Type:
+
+ completion(.success(Response(response: httpResponse, body: data as? T)))
+
+ default:
+
+ completion(.success(Response(response: httpResponse, body: data as? T)))
+ }
+
+ }
+
+ open func buildHeaders() -> [String: String] {
+ var httpHeaders: [String: String] = [:]
+ for (key, value) in headers {
+ httpHeaders[key] = value
+ }
+ for (key, value) in PetstoreClientAPI.customHeaders {
+ httpHeaders[key] = value
+ }
+ return httpHeaders
+ }
+
+ fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? {
+
+ guard let contentDisposition = contentDisposition else {
+ return nil
+ }
+
+ let items = contentDisposition.components(separatedBy: ";")
+
+ var filename: String?
+
+ for contentItem in items {
+
+ let filenameKey = "filename="
+ guard let range = contentItem.range(of: filenameKey) else {
+ continue
+ }
+
+ filename = contentItem
+ return filename?
+ .replacingCharacters(in: range, with: "")
+ .replacingOccurrences(of: "\"", with: "")
+ .trimmingCharacters(in: .whitespacesAndNewlines)
+ }
+
+ return filename
+
+ }
+
+ fileprivate func getPath(from url: URL) throws -> String {
+
+ guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else {
+ throw DownloadException.requestMissingPath
+ }
+
+ if path.hasPrefix("/") {
+ path.remove(at: path.startIndex)
+ }
+
+ return path
+
+ }
+
+ fileprivate func getURL(from urlRequest: URLRequest) throws -> URL {
+
+ guard let url = urlRequest.url else {
+ throw DownloadException.requestMissingURL
+ }
+
+ return url
+ }
+
+}
+
+open class URLSessionDecodableRequestBuilder: URLSessionRequestBuilder {
+ override fileprivate func processRequestResponse(urlRequest: URLRequest, data: Data?, response: URLResponse?, error: Error?, completion: @escaping (_ result: Swift.Result, Error>) -> Void) {
+
+ if let error = error {
+ completion(.failure(ErrorResponse.error(-1, data, response, error)))
+ return
+ }
+
+ guard let httpResponse = response as? HTTPURLResponse else {
+ completion(.failure(ErrorResponse.error(-2, data, response, DecodableRequestBuilderError.nilHTTPResponse)))
+ return
+ }
+
+ guard httpResponse.isStatusCodeSuccessful else {
+ completion(.failure(ErrorResponse.error(httpResponse.statusCode, data, response, DecodableRequestBuilderError.unsuccessfulHTTPStatusCode)))
+ return
+ }
+
+ switch T.self {
+ case is String.Type:
+
+ let body = data.flatMap { String(data: $0, encoding: .utf8) } ?? ""
+
+ completion(.success(Response(response: httpResponse, body: body as? T)))
+
+ case is URL.Type:
+ do {
+
+ guard error == nil else {
+ throw DownloadException.responseFailed
+ }
+
+ guard let data = data else {
+ throw DownloadException.responseDataMissing
+ }
+
+ let fileManager = FileManager.default
+ let cachesDirectory = fileManager.urls(for: .cachesDirectory, in: .userDomainMask)[0]
+ let requestURL = try getURL(from: urlRequest)
+
+ var requestPath = try getPath(from: requestURL)
+
+ if let headerFileName = getFileName(fromContentDisposition: httpResponse.allHeaderFields["Content-Disposition"] as? String) {
+ requestPath = requestPath.appending("/\(headerFileName)")
+ } else {
+ requestPath = requestPath.appending("/tmp.PetstoreClient.\(UUID().uuidString)")
+ }
+
+ let filePath = cachesDirectory.appendingPathComponent(requestPath)
+ let directoryPath = filePath.deletingLastPathComponent().path
+
+ try fileManager.createDirectory(atPath: directoryPath, withIntermediateDirectories: true, attributes: nil)
+ try data.write(to: filePath, options: .atomic)
+
+ completion(.success(Response(response: httpResponse, body: filePath as? T)))
+
+ } catch let requestParserError as DownloadException {
+ completion(.failure(ErrorResponse.error(400, data, response, requestParserError)))
+ } catch {
+ completion(.failure(ErrorResponse.error(400, data, response, error)))
+ }
+
+ case is Void.Type:
+
+ completion(.success(Response(response: httpResponse, body: nil)))
+
+ case is Data.Type:
+
+ completion(.success(Response(response: httpResponse, body: data as? T)))
+
+ default:
+
+ guard let data = data, !data.isEmpty else {
+ completion(.failure(ErrorResponse.error(httpResponse.statusCode, nil, response, DecodableRequestBuilderError.emptyDataResponse)))
+ return
+ }
+
+ let decodeResult = CodableHelper.decode(T.self, from: data)
+
+ switch decodeResult {
+ case let .success(decodableObj):
+ completion(.success(Response(response: httpResponse, body: decodableObj)))
+ case let .failure(error):
+ completion(.failure(ErrorResponse.error(httpResponse.statusCode, data, response, error)))
+ }
+ }
+ }
+}
+
+private class SessionDelegate: NSObject, URLSessionDelegate, URLSessionDataDelegate {
+
+ var credential: URLCredential?
+
+ var taskDidReceiveChallenge: ((URLSession, URLSessionTask, URLAuthenticationChallenge) -> (URLSession.AuthChallengeDisposition, URLCredential?))?
+
+ func urlSession(_ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) {
+
+ var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling
+
+ var credential: URLCredential?
+
+ if let taskDidReceiveChallenge = taskDidReceiveChallenge {
+ (disposition, credential) = taskDidReceiveChallenge(session, task, challenge)
+ } else {
+ if challenge.previousFailureCount > 0 {
+ disposition = .rejectProtectionSpace
+ } else {
+ credential = self.credential ?? session.configuration.urlCredentialStorage?.defaultCredential(for: challenge.protectionSpace)
+
+ if credential != nil {
+ disposition = .useCredential
+ }
+ }
+ }
+
+ completionHandler(disposition, credential)
+ }
+}
+
+public enum HTTPMethod: String {
+ case options = "OPTIONS"
+ case get = "GET"
+ case head = "HEAD"
+ case post = "POST"
+ case put = "PUT"
+ case patch = "PATCH"
+ case delete = "DELETE"
+ case trace = "TRACE"
+ case connect = "CONNECT"
+}
+
+public protocol ParameterEncoding {
+ func encode(_ urlRequest: URLRequest, with parameters: [String: Any]?) throws -> URLRequest
+}
+
+private class URLEncoding: ParameterEncoding {
+ func encode(_ urlRequest: URLRequest, with parameters: [String: Any]?) throws -> URLRequest {
+
+ var urlRequest = urlRequest
+
+ guard let parameters = parameters else { return urlRequest }
+
+ guard let url = urlRequest.url else {
+ throw DownloadException.requestMissingURL
+ }
+
+ if var urlComponents = URLComponents(url: url, resolvingAgainstBaseURL: false), !parameters.isEmpty {
+ urlComponents.queryItems = APIHelper.mapValuesToQueryItems(parameters)
+ urlRequest.url = urlComponents.url
+ }
+
+ return urlRequest
+ }
+}
+
+private class FormDataEncoding: ParameterEncoding {
+
+ let contentTypeForFormPart: (_ fileURL: URL) -> String?
+
+ init(contentTypeForFormPart: @escaping (_ fileURL: URL) -> String?) {
+ self.contentTypeForFormPart = contentTypeForFormPart
+ }
+
+ func encode(_ urlRequest: URLRequest, with parameters: [String: Any]?) throws -> URLRequest {
+
+ var urlRequest = urlRequest
+
+ guard let parameters = parameters, !parameters.isEmpty else {
+ return urlRequest
+ }
+
+ let boundary = "Boundary-\(UUID().uuidString)"
+
+ urlRequest.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")
+
+ for (key, value) in parameters {
+ switch value {
+ case let fileURL as URL:
+
+ urlRequest = try configureFileUploadRequest(
+ urlRequest: urlRequest,
+ boundary: boundary,
+ name: key,
+ fileURL: fileURL
+ )
+
+ case let string as String:
+
+ if let data = string.data(using: .utf8) {
+ urlRequest = configureDataUploadRequest(
+ urlRequest: urlRequest,
+ boundary: boundary,
+ name: key,
+ data: data
+ )
+ }
+
+ case let number as NSNumber:
+
+ if let data = number.stringValue.data(using: .utf8) {
+ urlRequest = configureDataUploadRequest(
+ urlRequest: urlRequest,
+ boundary: boundary,
+ name: key,
+ data: data
+ )
+ }
+
+ default:
+ fatalError("Unprocessable value \(value) with key \(key)")
+ }
+ }
+
+ var body = urlRequest.httpBody.orEmpty
+
+ body.append("\r\n--\(boundary)--\r\n")
+
+ urlRequest.httpBody = body
+
+ return urlRequest
+ }
+
+ private func configureFileUploadRequest(urlRequest: URLRequest, boundary: String, name: String, fileURL: URL) throws -> URLRequest {
+
+ var urlRequest = urlRequest
+
+ var body = urlRequest.httpBody.orEmpty
+
+ let fileData = try Data(contentsOf: fileURL)
+
+ let mimetype = contentTypeForFormPart(fileURL) ?? mimeType(for: fileURL)
+
+ let fileName = fileURL.lastPathComponent
+
+ // If we already added something then we need an additional newline.
+ if body.count > 0 {
+ body.append("\r\n")
+ }
+
+ // Value boundary.
+ body.append("--\(boundary)\r\n")
+
+ // Value headers.
+ body.append("Content-Disposition: form-data; name=\"\(name)\"; filename=\"\(fileName)\"\r\n")
+ body.append("Content-Type: \(mimetype)\r\n")
+
+ // Separate headers and body.
+ body.append("\r\n")
+
+ // The value data.
+ body.append(fileData)
+
+ urlRequest.httpBody = body
+
+ return urlRequest
+ }
+
+ private func configureDataUploadRequest(urlRequest: URLRequest, boundary: String, name: String, data: Data) -> URLRequest {
+
+ var urlRequest = urlRequest
+
+ var body = urlRequest.httpBody.orEmpty
+
+ // If we already added something then we need an additional newline.
+ if body.count > 0 {
+ body.append("\r\n")
+ }
+
+ // Value boundary.
+ body.append("--\(boundary)\r\n")
+
+ // Value headers.
+ body.append("Content-Disposition: form-data; name=\"\(name)\"\r\n")
+
+ // Separate headers and body.
+ body.append("\r\n")
+
+ // The value data.
+ body.append(data)
+
+ urlRequest.httpBody = body
+
+ return urlRequest
+
+ }
+
+ func mimeType(for url: URL) -> String {
+ let pathExtension = url.pathExtension
+
+ if let uti = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, pathExtension as NSString, nil)?.takeRetainedValue() {
+ if let mimetype = UTTypeCopyPreferredTagWithClass(uti, kUTTagClassMIMEType)?.takeRetainedValue() {
+ return mimetype as String
+ }
+ }
+ return "application/octet-stream"
+ }
+
+}
+
+private class FormURLEncoding: ParameterEncoding {
+ func encode(_ urlRequest: URLRequest, with parameters: [String: Any]?) throws -> URLRequest {
+
+ var urlRequest = urlRequest
+
+ var requestBodyComponents = URLComponents()
+ requestBodyComponents.queryItems = APIHelper.mapValuesToQueryItems(parameters ?? [:])
+
+ if urlRequest.value(forHTTPHeaderField: "Content-Type") == nil {
+ urlRequest.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
+ }
+
+ urlRequest.httpBody = requestBodyComponents.query?.data(using: .utf8)
+
+ return urlRequest
+ }
+}
+
+private extension Data {
+ /// Append string to Data
+ ///
+ /// Rather than littering my code with calls to `dataUsingEncoding` to convert strings to Data, and then add that data to the Data, this wraps it in a nice convenient little extension to Data. This converts using UTF-8.
+ ///
+ /// - parameter string: The string to be added to the `Data`.
+
+ mutating func append(_ string: String) {
+ if let data = string.data(using: .utf8) {
+ append(data)
+ }
+ }
+}
+
+private extension Optional where Wrapped == Data {
+ var orEmpty: Data {
+ self ?? Data()
+ }
+}
+
+extension JSONDataEncoding: ParameterEncoding {}
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/README.md b/samples/client/petstore/swift5/asyncAwaitLibrary/README.md
new file mode 100644
index 00000000000..1725415f7e0
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/README.md
@@ -0,0 +1,141 @@
+# Swift5 API client for PetstoreClient
+
+This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\
+
+## Overview
+This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://github.com/OAI/OpenAPI-Specification) from a remote server, you can easily generate an API client.
+
+- API version: 1.0.0
+- Package version:
+- Build package: org.openapitools.codegen.languages.Swift5ClientCodegen
+
+## Installation
+
+### Carthage
+
+Run `carthage update`
+
+### CocoaPods
+
+Run `pod install`
+
+## Documentation for API Endpoints
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Class | Method | HTTP request | Description
+------------ | ------------- | ------------- | -------------
+*AnotherFakeAPI* | [**call123testSpecialTags**](docs/AnotherFakeAPI.md#call123testspecialtags) | **PATCH** /another-fake/dummy | To test special tags
+*FakeAPI* | [**fakeOuterBooleanSerialize**](docs/FakeAPI.md#fakeouterbooleanserialize) | **POST** /fake/outer/boolean |
+*FakeAPI* | [**fakeOuterCompositeSerialize**](docs/FakeAPI.md#fakeoutercompositeserialize) | **POST** /fake/outer/composite |
+*FakeAPI* | [**fakeOuterNumberSerialize**](docs/FakeAPI.md#fakeouternumberserialize) | **POST** /fake/outer/number |
+*FakeAPI* | [**fakeOuterStringSerialize**](docs/FakeAPI.md#fakeouterstringserialize) | **POST** /fake/outer/string |
+*FakeAPI* | [**testBodyWithFileSchema**](docs/FakeAPI.md#testbodywithfileschema) | **PUT** /fake/body-with-file-schema |
+*FakeAPI* | [**testBodyWithQueryParams**](docs/FakeAPI.md#testbodywithqueryparams) | **PUT** /fake/body-with-query-params |
+*FakeAPI* | [**testClientModel**](docs/FakeAPI.md#testclientmodel) | **PATCH** /fake | To test \"client\" model
+*FakeAPI* | [**testEndpointParameters**](docs/FakeAPI.md#testendpointparameters) | **POST** /fake | Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+*FakeAPI* | [**testEnumParameters**](docs/FakeAPI.md#testenumparameters) | **GET** /fake | To test enum parameters
+*FakeAPI* | [**testGroupParameters**](docs/FakeAPI.md#testgroupparameters) | **DELETE** /fake | Fake endpoint to test group parameters (optional)
+*FakeAPI* | [**testInlineAdditionalProperties**](docs/FakeAPI.md#testinlineadditionalproperties) | **POST** /fake/inline-additionalProperties | test inline additionalProperties
+*FakeAPI* | [**testJsonFormData**](docs/FakeAPI.md#testjsonformdata) | **GET** /fake/jsonFormData | test json serialization of form data
+*FakeClassnameTags123API* | [**testClassname**](docs/FakeClassnameTags123API.md#testclassname) | **PATCH** /fake_classname_test | To test class name in snake case
+*PetAPI* | [**addPet**](docs/PetAPI.md#addpet) | **POST** /pet | Add a new pet to the store
+*PetAPI* | [**deletePet**](docs/PetAPI.md#deletepet) | **DELETE** /pet/{petId} | Deletes a pet
+*PetAPI* | [**findPetsByStatus**](docs/PetAPI.md#findpetsbystatus) | **GET** /pet/findByStatus | Finds Pets by status
+*PetAPI* | [**findPetsByTags**](docs/PetAPI.md#findpetsbytags) | **GET** /pet/findByTags | Finds Pets by tags
+*PetAPI* | [**getPetById**](docs/PetAPI.md#getpetbyid) | **GET** /pet/{petId} | Find pet by ID
+*PetAPI* | [**updatePet**](docs/PetAPI.md#updatepet) | **PUT** /pet | Update an existing pet
+*PetAPI* | [**updatePetWithForm**](docs/PetAPI.md#updatepetwithform) | **POST** /pet/{petId} | Updates a pet in the store with form data
+*PetAPI* | [**uploadFile**](docs/PetAPI.md#uploadfile) | **POST** /pet/{petId}/uploadImage | uploads an image
+*PetAPI* | [**uploadFileWithRequiredFile**](docs/PetAPI.md#uploadfilewithrequiredfile) | **POST** /fake/{petId}/uploadImageWithRequiredFile | uploads an image (required)
+*StoreAPI* | [**deleteOrder**](docs/StoreAPI.md#deleteorder) | **DELETE** /store/order/{order_id} | Delete purchase order by ID
+*StoreAPI* | [**getInventory**](docs/StoreAPI.md#getinventory) | **GET** /store/inventory | Returns pet inventories by status
+*StoreAPI* | [**getOrderById**](docs/StoreAPI.md#getorderbyid) | **GET** /store/order/{order_id} | Find purchase order by ID
+*StoreAPI* | [**placeOrder**](docs/StoreAPI.md#placeorder) | **POST** /store/order | Place an order for a pet
+*UserAPI* | [**createUser**](docs/UserAPI.md#createuser) | **POST** /user | Create user
+*UserAPI* | [**createUsersWithArrayInput**](docs/UserAPI.md#createuserswitharrayinput) | **POST** /user/createWithArray | Creates list of users with given input array
+*UserAPI* | [**createUsersWithListInput**](docs/UserAPI.md#createuserswithlistinput) | **POST** /user/createWithList | Creates list of users with given input array
+*UserAPI* | [**deleteUser**](docs/UserAPI.md#deleteuser) | **DELETE** /user/{username} | Delete user
+*UserAPI* | [**getUserByName**](docs/UserAPI.md#getuserbyname) | **GET** /user/{username} | Get user by user name
+*UserAPI* | [**loginUser**](docs/UserAPI.md#loginuser) | **GET** /user/login | Logs user into the system
+*UserAPI* | [**logoutUser**](docs/UserAPI.md#logoutuser) | **GET** /user/logout | Logs out current logged in user session
+*UserAPI* | [**updateUser**](docs/UserAPI.md#updateuser) | **PUT** /user/{username} | Updated user
+
+
+## Documentation For Models
+
+ - [AdditionalPropertiesClass](docs/AdditionalPropertiesClass.md)
+ - [Animal](docs/Animal.md)
+ - [AnimalFarm](docs/AnimalFarm.md)
+ - [ApiResponse](docs/ApiResponse.md)
+ - [ArrayOfArrayOfNumberOnly](docs/ArrayOfArrayOfNumberOnly.md)
+ - [ArrayOfNumberOnly](docs/ArrayOfNumberOnly.md)
+ - [ArrayTest](docs/ArrayTest.md)
+ - [Capitalization](docs/Capitalization.md)
+ - [Cat](docs/Cat.md)
+ - [CatAllOf](docs/CatAllOf.md)
+ - [Category](docs/Category.md)
+ - [ClassModel](docs/ClassModel.md)
+ - [Client](docs/Client.md)
+ - [Dog](docs/Dog.md)
+ - [DogAllOf](docs/DogAllOf.md)
+ - [EnumArrays](docs/EnumArrays.md)
+ - [EnumClass](docs/EnumClass.md)
+ - [EnumTest](docs/EnumTest.md)
+ - [File](docs/File.md)
+ - [FileSchemaTestClass](docs/FileSchemaTestClass.md)
+ - [FormatTest](docs/FormatTest.md)
+ - [HasOnlyReadOnly](docs/HasOnlyReadOnly.md)
+ - [List](docs/List.md)
+ - [MapTest](docs/MapTest.md)
+ - [MixedPropertiesAndAdditionalPropertiesClass](docs/MixedPropertiesAndAdditionalPropertiesClass.md)
+ - [Model200Response](docs/Model200Response.md)
+ - [Name](docs/Name.md)
+ - [NumberOnly](docs/NumberOnly.md)
+ - [Order](docs/Order.md)
+ - [OuterComposite](docs/OuterComposite.md)
+ - [OuterEnum](docs/OuterEnum.md)
+ - [Pet](docs/Pet.md)
+ - [ReadOnlyFirst](docs/ReadOnlyFirst.md)
+ - [Return](docs/Return.md)
+ - [SpecialModelName](docs/SpecialModelName.md)
+ - [StringBooleanMap](docs/StringBooleanMap.md)
+ - [Tag](docs/Tag.md)
+ - [TypeHolderDefault](docs/TypeHolderDefault.md)
+ - [TypeHolderExample](docs/TypeHolderExample.md)
+ - [User](docs/User.md)
+
+
+## Documentation For Authorization
+
+
+## api_key
+
+- **Type**: API key
+- **API key parameter name**: api_key
+- **Location**: HTTP header
+
+## api_key_query
+
+- **Type**: API key
+- **API key parameter name**: api_key_query
+- **Location**: URL query string
+
+## http_basic_test
+
+- **Type**: HTTP basic authentication
+
+## petstore_auth
+
+- **Type**: OAuth
+- **Flow**: implicit
+- **Authorization URL**: http://petstore.swagger.io/api/oauth/dialog
+- **Scopes**:
+ - **write:pets**: modify pets in your account
+ - **read:pets**: read your pets
+
+
+## Author
+
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AdditionalPropertiesClass.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AdditionalPropertiesClass.md
new file mode 100644
index 00000000000..1f222244134
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AdditionalPropertiesClass.md
@@ -0,0 +1,11 @@
+# AdditionalPropertiesClass
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**mapString** | **[String: String]** | | [optional]
+**mapMapString** | [String: [String: String]] | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Animal.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Animal.md
new file mode 100644
index 00000000000..69c601455cd
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Animal.md
@@ -0,0 +1,11 @@
+# Animal
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**className** | **String** | |
+**color** | **String** | | [optional] [default to "red"]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnimalFarm.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnimalFarm.md
new file mode 100644
index 00000000000..df6bab21dae
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnimalFarm.md
@@ -0,0 +1,9 @@
+# AnimalFarm
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnotherFakeAPI.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnotherFakeAPI.md
new file mode 100644
index 00000000000..26346e81a4c
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/AnotherFakeAPI.md
@@ -0,0 +1,59 @@
+# AnotherFakeAPI
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**call123testSpecialTags**](AnotherFakeAPI.md#call123testspecialtags) | **PATCH** /another-fake/dummy | To test special tags
+
+
+# **call123testSpecialTags**
+```swift
+ open class func call123testSpecialTags(body: Client, completion: @escaping (_ data: Client?, _ error: Error?) -> Void)
+```
+
+To test special tags
+
+To test special tags and operation ID starting with number
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = Client(client: "client_example") // Client | client model
+
+// To test special tags
+AnotherFakeAPI.call123testSpecialTags(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Client**](Client.md) | client model |
+
+### Return type
+
+[**Client**](Client.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ApiResponse.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ApiResponse.md
new file mode 100644
index 00000000000..c6d9768fe9b
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ApiResponse.md
@@ -0,0 +1,12 @@
+# ApiResponse
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**code** | **Int** | | [optional]
+**type** | **String** | | [optional]
+**message** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfArrayOfNumberOnly.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfArrayOfNumberOnly.md
new file mode 100644
index 00000000000..c6fceff5e08
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfArrayOfNumberOnly.md
@@ -0,0 +1,10 @@
+# ArrayOfArrayOfNumberOnly
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**arrayArrayNumber** | [[Double]] | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfNumberOnly.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfNumberOnly.md
new file mode 100644
index 00000000000..f09f8fa6f70
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayOfNumberOnly.md
@@ -0,0 +1,10 @@
+# ArrayOfNumberOnly
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**arrayNumber** | **[Double]** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayTest.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayTest.md
new file mode 100644
index 00000000000..bf416b8330c
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ArrayTest.md
@@ -0,0 +1,12 @@
+# ArrayTest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**arrayOfString** | **[String]** | | [optional]
+**arrayArrayOfInteger** | [[Int64]] | | [optional]
+**arrayArrayOfModel** | [[ReadOnlyFirst]] | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Capitalization.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Capitalization.md
new file mode 100644
index 00000000000..95374216c77
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Capitalization.md
@@ -0,0 +1,15 @@
+# Capitalization
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**smallCamel** | **String** | | [optional]
+**capitalCamel** | **String** | | [optional]
+**smallSnake** | **String** | | [optional]
+**capitalSnake** | **String** | | [optional]
+**sCAETHFlowPoints** | **String** | | [optional]
+**ATT_NAME** | **String** | Name of the pet | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Cat.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Cat.md
new file mode 100644
index 00000000000..fb5949b1576
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Cat.md
@@ -0,0 +1,10 @@
+# Cat
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/CatAllOf.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/CatAllOf.md
new file mode 100644
index 00000000000..79789be61c0
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/CatAllOf.md
@@ -0,0 +1,10 @@
+# CatAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**declawed** | **Bool** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Category.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Category.md
new file mode 100644
index 00000000000..5ca5408c0f9
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Category.md
@@ -0,0 +1,11 @@
+# Category
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Int64** | | [optional]
+**name** | **String** | | [default to "default-name"]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ClassModel.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ClassModel.md
new file mode 100644
index 00000000000..e3912fdf0fd
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ClassModel.md
@@ -0,0 +1,10 @@
+# ClassModel
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**_class** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Client.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Client.md
new file mode 100644
index 00000000000..0de1b238c36
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Client.md
@@ -0,0 +1,10 @@
+# Client
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**client** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Dog.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Dog.md
new file mode 100644
index 00000000000..4824786da04
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Dog.md
@@ -0,0 +1,10 @@
+# Dog
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/DogAllOf.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/DogAllOf.md
new file mode 100644
index 00000000000..9302ef52e93
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/DogAllOf.md
@@ -0,0 +1,10 @@
+# DogAllOf
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**breed** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumArrays.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumArrays.md
new file mode 100644
index 00000000000..b9a9807d3c8
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumArrays.md
@@ -0,0 +1,11 @@
+# EnumArrays
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**justSymbol** | **String** | | [optional]
+**arrayEnum** | **[String]** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumClass.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumClass.md
new file mode 100644
index 00000000000..67f017becd0
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumClass.md
@@ -0,0 +1,9 @@
+# EnumClass
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumTest.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumTest.md
new file mode 100644
index 00000000000..bc9b036dd76
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/EnumTest.md
@@ -0,0 +1,14 @@
+# EnumTest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**enumString** | **String** | | [optional]
+**enumStringRequired** | **String** | |
+**enumInteger** | **Int** | | [optional]
+**enumNumber** | **Double** | | [optional]
+**outerEnum** | [**OuterEnum**](OuterEnum.md) | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeAPI.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeAPI.md
new file mode 100644
index 00000000000..f0799125084
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeAPI.md
@@ -0,0 +1,662 @@
+# FakeAPI
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**fakeOuterBooleanSerialize**](FakeAPI.md#fakeouterbooleanserialize) | **POST** /fake/outer/boolean |
+[**fakeOuterCompositeSerialize**](FakeAPI.md#fakeoutercompositeserialize) | **POST** /fake/outer/composite |
+[**fakeOuterNumberSerialize**](FakeAPI.md#fakeouternumberserialize) | **POST** /fake/outer/number |
+[**fakeOuterStringSerialize**](FakeAPI.md#fakeouterstringserialize) | **POST** /fake/outer/string |
+[**testBodyWithFileSchema**](FakeAPI.md#testbodywithfileschema) | **PUT** /fake/body-with-file-schema |
+[**testBodyWithQueryParams**](FakeAPI.md#testbodywithqueryparams) | **PUT** /fake/body-with-query-params |
+[**testClientModel**](FakeAPI.md#testclientmodel) | **PATCH** /fake | To test \"client\" model
+[**testEndpointParameters**](FakeAPI.md#testendpointparameters) | **POST** /fake | Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+[**testEnumParameters**](FakeAPI.md#testenumparameters) | **GET** /fake | To test enum parameters
+[**testGroupParameters**](FakeAPI.md#testgroupparameters) | **DELETE** /fake | Fake endpoint to test group parameters (optional)
+[**testInlineAdditionalProperties**](FakeAPI.md#testinlineadditionalproperties) | **POST** /fake/inline-additionalProperties | test inline additionalProperties
+[**testJsonFormData**](FakeAPI.md#testjsonformdata) | **GET** /fake/jsonFormData | test json serialization of form data
+
+
+# **fakeOuterBooleanSerialize**
+```swift
+ open class func fakeOuterBooleanSerialize(body: Bool? = nil, completion: @escaping (_ data: Bool?, _ error: Error?) -> Void)
+```
+
+
+
+Test serialization of outer boolean types
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = true // Bool | Input boolean as post body (optional)
+
+FakeAPI.fakeOuterBooleanSerialize(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | **Bool** | Input boolean as post body | [optional]
+
+### Return type
+
+**Bool**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: */*
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **fakeOuterCompositeSerialize**
+```swift
+ open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, completion: @escaping (_ data: OuterComposite?, _ error: Error?) -> Void)
+```
+
+
+
+Test serialization of object with outer number type
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = OuterComposite(myNumber: 123, myString: "myString_example", myBoolean: false) // OuterComposite | Input composite as post body (optional)
+
+FakeAPI.fakeOuterCompositeSerialize(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**OuterComposite**](OuterComposite.md) | Input composite as post body | [optional]
+
+### Return type
+
+[**OuterComposite**](OuterComposite.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: */*
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **fakeOuterNumberSerialize**
+```swift
+ open class func fakeOuterNumberSerialize(body: Double? = nil, completion: @escaping (_ data: Double?, _ error: Error?) -> Void)
+```
+
+
+
+Test serialization of outer number types
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = 987 // Double | Input number as post body (optional)
+
+FakeAPI.fakeOuterNumberSerialize(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | **Double** | Input number as post body | [optional]
+
+### Return type
+
+**Double**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: */*
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **fakeOuterStringSerialize**
+```swift
+ open class func fakeOuterStringSerialize(body: String? = nil, completion: @escaping (_ data: String?, _ error: Error?) -> Void)
+```
+
+
+
+Test serialization of outer string types
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = "body_example" // String | Input string as post body (optional)
+
+FakeAPI.fakeOuterStringSerialize(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | **String** | Input string as post body | [optional]
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: */*
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testBodyWithFileSchema**
+```swift
+ open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+
+
+For this test, the body for this request much reference a schema named `File`.
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = FileSchemaTestClass(file: File(sourceURI: "sourceURI_example"), files: [nil]) // FileSchemaTestClass |
+
+FakeAPI.testBodyWithFileSchema(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**FileSchemaTestClass**](FileSchemaTestClass.md) | |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testBodyWithQueryParams**
+```swift
+ open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let query = "query_example" // String |
+let body = User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123) // User |
+
+FakeAPI.testBodyWithQueryParams(query: query, body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **query** | **String** | |
+ **body** | [**User**](User.md) | |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testClientModel**
+```swift
+ open class func testClientModel(body: Client, completion: @escaping (_ data: Client?, _ error: Error?) -> Void)
+```
+
+To test \"client\" model
+
+To test \"client\" model
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = Client(client: "client_example") // Client | client model
+
+// To test \"client\" model
+FakeAPI.testClientModel(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Client**](Client.md) | client model |
+
+### Return type
+
+[**Client**](Client.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testEndpointParameters**
+```swift
+ open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+
+Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let number = 987 // Double | None
+let double = 987 // Double | None
+let patternWithoutDelimiter = "patternWithoutDelimiter_example" // String | None
+let byte = Data([9, 8, 7]) // Data | None
+let integer = 987 // Int | None (optional)
+let int32 = 987 // Int | None (optional)
+let int64 = 987 // Int64 | None (optional)
+let float = 987 // Float | None (optional)
+let string = "string_example" // String | None (optional)
+let binary = URL(string: "https://example.com")! // URL | None (optional)
+let date = Date() // Date | None (optional)
+let dateTime = Date() // Date | None (optional)
+let password = "password_example" // String | None (optional)
+let callback = "callback_example" // String | None (optional)
+
+// Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
+FakeAPI.testEndpointParameters(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **number** | **Double** | None |
+ **double** | **Double** | None |
+ **patternWithoutDelimiter** | **String** | None |
+ **byte** | **Data** | None |
+ **integer** | **Int** | None | [optional]
+ **int32** | **Int** | None | [optional]
+ **int64** | **Int64** | None | [optional]
+ **float** | **Float** | None | [optional]
+ **string** | **String** | None | [optional]
+ **binary** | **URL** | None | [optional]
+ **date** | **Date** | None | [optional]
+ **dateTime** | **Date** | None | [optional]
+ **password** | **String** | None | [optional]
+ **callback** | **String** | None | [optional]
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+[http_basic_test](../README.md#http_basic_test)
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testEnumParameters**
+```swift
+ open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+To test enum parameters
+
+To test enum parameters
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let enumHeaderStringArray = ["enumHeaderStringArray_example"] // [String] | Header parameter enum test (string array) (optional)
+let enumHeaderString = "enumHeaderString_example" // String | Header parameter enum test (string) (optional) (default to .efg)
+let enumQueryStringArray = ["enumQueryStringArray_example"] // [String] | Query parameter enum test (string array) (optional)
+let enumQueryString = "enumQueryString_example" // String | Query parameter enum test (string) (optional) (default to .efg)
+let enumQueryInteger = 987 // Int | Query parameter enum test (double) (optional)
+let enumQueryDouble = 987 // Double | Query parameter enum test (double) (optional)
+let enumFormStringArray = ["inner_example"] // [String] | Form parameter enum test (string array) (optional) (default to .dollar)
+let enumFormString = "enumFormString_example" // String | Form parameter enum test (string) (optional) (default to .efg)
+
+// To test enum parameters
+FakeAPI.testEnumParameters(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **enumHeaderStringArray** | [**[String]**](String.md) | Header parameter enum test (string array) | [optional]
+ **enumHeaderString** | **String** | Header parameter enum test (string) | [optional] [default to .efg]
+ **enumQueryStringArray** | [**[String]**](String.md) | Query parameter enum test (string array) | [optional]
+ **enumQueryString** | **String** | Query parameter enum test (string) | [optional] [default to .efg]
+ **enumQueryInteger** | **Int** | Query parameter enum test (double) | [optional]
+ **enumQueryDouble** | **Double** | Query parameter enum test (double) | [optional]
+ **enumFormStringArray** | [**[String]**](String.md) | Form parameter enum test (string array) | [optional] [default to .dollar]
+ **enumFormString** | **String** | Form parameter enum test (string) | [optional] [default to .efg]
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testGroupParameters**
+```swift
+ open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Fake endpoint to test group parameters (optional)
+
+Fake endpoint to test group parameters (optional)
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let requiredStringGroup = 987 // Int | Required String in group parameters
+let requiredBooleanGroup = true // Bool | Required Boolean in group parameters
+let requiredInt64Group = 987 // Int64 | Required Integer in group parameters
+let stringGroup = 987 // Int | String in group parameters (optional)
+let booleanGroup = true // Bool | Boolean in group parameters (optional)
+let int64Group = 987 // Int64 | Integer in group parameters (optional)
+
+// Fake endpoint to test group parameters (optional)
+FakeAPI.testGroupParameters(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **requiredStringGroup** | **Int** | Required String in group parameters |
+ **requiredBooleanGroup** | **Bool** | Required Boolean in group parameters |
+ **requiredInt64Group** | **Int64** | Required Integer in group parameters |
+ **stringGroup** | **Int** | String in group parameters | [optional]
+ **booleanGroup** | **Bool** | Boolean in group parameters | [optional]
+ **int64Group** | **Int64** | Integer in group parameters | [optional]
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testInlineAdditionalProperties**
+```swift
+ open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+test inline additionalProperties
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let param = "TODO" // [String: String] | request body
+
+// test inline additionalProperties
+FakeAPI.testInlineAdditionalProperties(param: param) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param** | [**[String: String]**](String.md) | request body |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **testJsonFormData**
+```swift
+ open class func testJsonFormData(param: String, param2: String, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+test json serialization of form data
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let param = "param_example" // String | field1
+let param2 = "param2_example" // String | field2
+
+// test json serialization of form data
+FakeAPI.testJsonFormData(param: param, param2: param2) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **param** | **String** | field1 |
+ **param2** | **String** | field2 |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeClassnameTags123API.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeClassnameTags123API.md
new file mode 100644
index 00000000000..5b9b66073fe
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FakeClassnameTags123API.md
@@ -0,0 +1,59 @@
+# FakeClassnameTags123API
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**testClassname**](FakeClassnameTags123API.md#testclassname) | **PATCH** /fake_classname_test | To test class name in snake case
+
+
+# **testClassname**
+```swift
+ open class func testClassname(body: Client, completion: @escaping (_ data: Client?, _ error: Error?) -> Void)
+```
+
+To test class name in snake case
+
+To test class name in snake case
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = Client(client: "client_example") // Client | client model
+
+// To test class name in snake case
+FakeClassnameTags123API.testClassname(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Client**](Client.md) | client model |
+
+### Return type
+
+[**Client**](Client.md)
+
+### Authorization
+
+[api_key_query](../README.md#api_key_query)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/File.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/File.md
new file mode 100644
index 00000000000..3edfef17b79
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/File.md
@@ -0,0 +1,10 @@
+# File
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**sourceURI** | **String** | Test capitalization | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FileSchemaTestClass.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FileSchemaTestClass.md
new file mode 100644
index 00000000000..afdacc60b2c
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FileSchemaTestClass.md
@@ -0,0 +1,11 @@
+# FileSchemaTestClass
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**file** | [**File**](File.md) | | [optional]
+**files** | [File] | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FormatTest.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FormatTest.md
new file mode 100644
index 00000000000..f74d94f6c46
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/FormatTest.md
@@ -0,0 +1,22 @@
+# FormatTest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**integer** | **Int** | | [optional]
+**int32** | **Int** | | [optional]
+**int64** | **Int64** | | [optional]
+**number** | **Double** | |
+**float** | **Float** | | [optional]
+**double** | **Double** | | [optional]
+**string** | **String** | | [optional]
+**byte** | **Data** | |
+**binary** | **URL** | | [optional]
+**date** | **Date** | |
+**dateTime** | **Date** | | [optional]
+**uuid** | **UUID** | | [optional]
+**password** | **String** | |
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/HasOnlyReadOnly.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/HasOnlyReadOnly.md
new file mode 100644
index 00000000000..57b6e3a17e6
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/HasOnlyReadOnly.md
@@ -0,0 +1,11 @@
+# HasOnlyReadOnly
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bar** | **String** | | [optional] [readonly]
+**foo** | **String** | | [optional] [readonly]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/List.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/List.md
new file mode 100644
index 00000000000..b77718302ed
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/List.md
@@ -0,0 +1,10 @@
+# List
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**_123list** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/MapTest.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/MapTest.md
new file mode 100644
index 00000000000..73f9e0d50ac
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/MapTest.md
@@ -0,0 +1,13 @@
+# MapTest
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**mapMapOfString** | [String: [String: String]] | | [optional]
+**mapOfEnumString** | **[String: String]** | | [optional]
+**directMap** | **[String: Bool]** | | [optional]
+**indirectMap** | [**StringBooleanMap**](StringBooleanMap.md) | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md
new file mode 100644
index 00000000000..3fdfd03f0e3
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md
@@ -0,0 +1,12 @@
+# MixedPropertiesAndAdditionalPropertiesClass
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**uuid** | **UUID** | | [optional]
+**dateTime** | **Date** | | [optional]
+**map** | [String: Animal] | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Model200Response.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Model200Response.md
new file mode 100644
index 00000000000..5865ea690cc
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Model200Response.md
@@ -0,0 +1,11 @@
+# Model200Response
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **Int** | | [optional]
+**_class** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Name.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Name.md
new file mode 100644
index 00000000000..f7b180292cd
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Name.md
@@ -0,0 +1,13 @@
+# Name
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**name** | **Int** | |
+**snakeCase** | **Int** | | [optional] [readonly]
+**property** | **String** | | [optional]
+**_123number** | **Int** | | [optional] [readonly]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/NumberOnly.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/NumberOnly.md
new file mode 100644
index 00000000000..72bd361168b
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/NumberOnly.md
@@ -0,0 +1,10 @@
+# NumberOnly
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**justNumber** | **Double** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Order.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Order.md
new file mode 100644
index 00000000000..15487f01175
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Order.md
@@ -0,0 +1,15 @@
+# Order
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Int64** | | [optional]
+**petId** | **Int64** | | [optional]
+**quantity** | **Int** | | [optional]
+**shipDate** | **Date** | | [optional]
+**status** | **String** | Order Status | [optional]
+**complete** | **Bool** | | [optional] [default to false]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterComposite.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterComposite.md
new file mode 100644
index 00000000000..d6b3583bc3f
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterComposite.md
@@ -0,0 +1,12 @@
+# OuterComposite
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**myNumber** | **Double** | | [optional]
+**myString** | **String** | | [optional]
+**myBoolean** | **Bool** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterEnum.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterEnum.md
new file mode 100644
index 00000000000..06d413b0168
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/OuterEnum.md
@@ -0,0 +1,9 @@
+# OuterEnum
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Pet.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Pet.md
new file mode 100644
index 00000000000..5c05f98fad4
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Pet.md
@@ -0,0 +1,15 @@
+# Pet
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Int64** | | [optional]
+**category** | [**Category**](Category.md) | | [optional]
+**name** | **String** | |
+**photoUrls** | **[String]** | |
+**tags** | [Tag] | | [optional]
+**status** | **String** | pet status in the store | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/PetAPI.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/PetAPI.md
new file mode 100644
index 00000000000..5babbd06a3c
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/PetAPI.md
@@ -0,0 +1,469 @@
+# PetAPI
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**addPet**](PetAPI.md#addpet) | **POST** /pet | Add a new pet to the store
+[**deletePet**](PetAPI.md#deletepet) | **DELETE** /pet/{petId} | Deletes a pet
+[**findPetsByStatus**](PetAPI.md#findpetsbystatus) | **GET** /pet/findByStatus | Finds Pets by status
+[**findPetsByTags**](PetAPI.md#findpetsbytags) | **GET** /pet/findByTags | Finds Pets by tags
+[**getPetById**](PetAPI.md#getpetbyid) | **GET** /pet/{petId} | Find pet by ID
+[**updatePet**](PetAPI.md#updatepet) | **PUT** /pet | Update an existing pet
+[**updatePetWithForm**](PetAPI.md#updatepetwithform) | **POST** /pet/{petId} | Updates a pet in the store with form data
+[**uploadFile**](PetAPI.md#uploadfile) | **POST** /pet/{petId}/uploadImage | uploads an image
+[**uploadFileWithRequiredFile**](PetAPI.md#uploadfilewithrequiredfile) | **POST** /fake/{petId}/uploadImageWithRequiredFile | uploads an image (required)
+
+
+# **addPet**
+```swift
+ open class func addPet(body: Pet, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Add a new pet to the store
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = Pet(id: 123, category: Category(id: 123, name: "name_example"), name: "name_example", photoUrls: ["photoUrls_example"], tags: [Tag(id: 123, name: "name_example")], status: "status_example") // Pet | Pet object that needs to be added to the store
+
+// Add a new pet to the store
+PetAPI.addPet(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Pet**](Pet.md) | Pet object that needs to be added to the store |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json, application/xml
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **deletePet**
+```swift
+ open class func deletePet(petId: Int64, apiKey: String? = nil, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Deletes a pet
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let petId = 987 // Int64 | Pet id to delete
+let apiKey = "apiKey_example" // String | (optional)
+
+// Deletes a pet
+PetAPI.deletePet(petId: petId, apiKey: apiKey) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **petId** | **Int64** | Pet id to delete |
+ **apiKey** | **String** | | [optional]
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **findPetsByStatus**
+```swift
+ open class func findPetsByStatus(status: [String], completion: @escaping (_ data: [Pet]?, _ error: Error?) -> Void)
+```
+
+Finds Pets by status
+
+Multiple status values can be provided with comma separated strings
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let status = ["status_example"] // [String] | Status values that need to be considered for filter
+
+// Finds Pets by status
+PetAPI.findPetsByStatus(status: status) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **status** | [**[String]**](String.md) | Status values that need to be considered for filter |
+
+### Return type
+
+[**[Pet]**](Pet.md)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **findPetsByTags**
+```swift
+ open class func findPetsByTags(tags: [String], completion: @escaping (_ data: [Pet]?, _ error: Error?) -> Void)
+```
+
+Finds Pets by tags
+
+Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let tags = ["inner_example"] // [String] | Tags to filter by
+
+// Finds Pets by tags
+PetAPI.findPetsByTags(tags: tags) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **tags** | [**[String]**](String.md) | Tags to filter by |
+
+### Return type
+
+[**[Pet]**](Pet.md)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **getPetById**
+```swift
+ open class func getPetById(petId: Int64, completion: @escaping (_ data: Pet?, _ error: Error?) -> Void)
+```
+
+Find pet by ID
+
+Returns a single pet
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let petId = 987 // Int64 | ID of pet to return
+
+// Find pet by ID
+PetAPI.getPetById(petId: petId) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **petId** | **Int64** | ID of pet to return |
+
+### Return type
+
+[**Pet**](Pet.md)
+
+### Authorization
+
+[api_key](../README.md#api_key)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **updatePet**
+```swift
+ open class func updatePet(body: Pet, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Update an existing pet
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = Pet(id: 123, category: Category(id: 123, name: "name_example"), name: "name_example", photoUrls: ["photoUrls_example"], tags: [Tag(id: 123, name: "name_example")], status: "status_example") // Pet | Pet object that needs to be added to the store
+
+// Update an existing pet
+PetAPI.updatePet(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Pet**](Pet.md) | Pet object that needs to be added to the store |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/json, application/xml
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **updatePetWithForm**
+```swift
+ open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Updates a pet in the store with form data
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let petId = 987 // Int64 | ID of pet that needs to be updated
+let name = "name_example" // String | Updated name of the pet (optional)
+let status = "status_example" // String | Updated status of the pet (optional)
+
+// Updates a pet in the store with form data
+PetAPI.updatePetWithForm(petId: petId, name: name, status: status) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **petId** | **Int64** | ID of pet that needs to be updated |
+ **name** | **String** | Updated name of the pet | [optional]
+ **status** | **String** | Updated status of the pet | [optional]
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **uploadFile**
+```swift
+ open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: URL? = nil, completion: @escaping (_ data: ApiResponse?, _ error: Error?) -> Void)
+```
+
+uploads an image
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let petId = 987 // Int64 | ID of pet to update
+let additionalMetadata = "additionalMetadata_example" // String | Additional data to pass to server (optional)
+let file = URL(string: "https://example.com")! // URL | file to upload (optional)
+
+// uploads an image
+PetAPI.uploadFile(petId: petId, additionalMetadata: additionalMetadata, file: file) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **petId** | **Int64** | ID of pet to update |
+ **additionalMetadata** | **String** | Additional data to pass to server | [optional]
+ **file** | **URL** | file to upload | [optional]
+
+### Return type
+
+[**ApiResponse**](ApiResponse.md)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: multipart/form-data
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **uploadFileWithRequiredFile**
+```swift
+ open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: URL, additionalMetadata: String? = nil, completion: @escaping (_ data: ApiResponse?, _ error: Error?) -> Void)
+```
+
+uploads an image (required)
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let petId = 987 // Int64 | ID of pet to update
+let requiredFile = URL(string: "https://example.com")! // URL | file to upload
+let additionalMetadata = "additionalMetadata_example" // String | Additional data to pass to server (optional)
+
+// uploads an image (required)
+PetAPI.uploadFileWithRequiredFile(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **petId** | **Int64** | ID of pet to update |
+ **requiredFile** | **URL** | file to upload |
+ **additionalMetadata** | **String** | Additional data to pass to server | [optional]
+
+### Return type
+
+[**ApiResponse**](ApiResponse.md)
+
+### Authorization
+
+[petstore_auth](../README.md#petstore_auth)
+
+### HTTP request headers
+
+ - **Content-Type**: multipart/form-data
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ReadOnlyFirst.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ReadOnlyFirst.md
new file mode 100644
index 00000000000..ed537b87598
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/ReadOnlyFirst.md
@@ -0,0 +1,11 @@
+# ReadOnlyFirst
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**bar** | **String** | | [optional] [readonly]
+**baz** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Return.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Return.md
new file mode 100644
index 00000000000..66d17c27c88
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Return.md
@@ -0,0 +1,10 @@
+# Return
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**_return** | **Int** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/SpecialModelName.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/SpecialModelName.md
new file mode 100644
index 00000000000..3ec27a38c2a
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/SpecialModelName.md
@@ -0,0 +1,10 @@
+# SpecialModelName
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**specialPropertyName** | **Int64** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/StoreAPI.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/StoreAPI.md
new file mode 100644
index 00000000000..b023aa9e452
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/StoreAPI.md
@@ -0,0 +1,206 @@
+# StoreAPI
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**deleteOrder**](StoreAPI.md#deleteorder) | **DELETE** /store/order/{order_id} | Delete purchase order by ID
+[**getInventory**](StoreAPI.md#getinventory) | **GET** /store/inventory | Returns pet inventories by status
+[**getOrderById**](StoreAPI.md#getorderbyid) | **GET** /store/order/{order_id} | Find purchase order by ID
+[**placeOrder**](StoreAPI.md#placeorder) | **POST** /store/order | Place an order for a pet
+
+
+# **deleteOrder**
+```swift
+ open class func deleteOrder(orderId: String, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Delete purchase order by ID
+
+For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let orderId = "orderId_example" // String | ID of the order that needs to be deleted
+
+// Delete purchase order by ID
+StoreAPI.deleteOrder(orderId: orderId) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **orderId** | **String** | ID of the order that needs to be deleted |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **getInventory**
+```swift
+ open class func getInventory(completion: @escaping (_ data: [String: Int]?, _ error: Error?) -> Void)
+```
+
+Returns pet inventories by status
+
+Returns a map of status codes to quantities
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+
+// Returns pet inventories by status
+StoreAPI.getInventory() { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+**[String: Int]**
+
+### Authorization
+
+[api_key](../README.md#api_key)
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **getOrderById**
+```swift
+ open class func getOrderById(orderId: Int64, completion: @escaping (_ data: Order?, _ error: Error?) -> Void)
+```
+
+Find purchase order by ID
+
+For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let orderId = 987 // Int64 | ID of pet that needs to be fetched
+
+// Find purchase order by ID
+StoreAPI.getOrderById(orderId: orderId) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **orderId** | **Int64** | ID of pet that needs to be fetched |
+
+### Return type
+
+[**Order**](Order.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **placeOrder**
+```swift
+ open class func placeOrder(body: Order, completion: @escaping (_ data: Order?, _ error: Error?) -> Void)
+```
+
+Place an order for a pet
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = Order(id: 123, petId: 123, quantity: 123, shipDate: Date(), status: "status_example", complete: false) // Order | order placed for purchasing the pet
+
+// Place an order for a pet
+StoreAPI.placeOrder(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**Order**](Order.md) | order placed for purchasing the pet |
+
+### Return type
+
+[**Order**](Order.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/StringBooleanMap.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/StringBooleanMap.md
new file mode 100644
index 00000000000..7abf11ec68b
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/StringBooleanMap.md
@@ -0,0 +1,9 @@
+# StringBooleanMap
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Tag.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Tag.md
new file mode 100644
index 00000000000..ff4ac8aa451
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/Tag.md
@@ -0,0 +1,11 @@
+# Tag
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Int64** | | [optional]
+**name** | **String** | | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderDefault.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderDefault.md
new file mode 100644
index 00000000000..5161394bdc3
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderDefault.md
@@ -0,0 +1,14 @@
+# TypeHolderDefault
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**stringItem** | **String** | | [default to "what"]
+**numberItem** | **Double** | |
+**integerItem** | **Int** | |
+**boolItem** | **Bool** | | [default to true]
+**arrayItem** | **[Int]** | |
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderExample.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderExample.md
new file mode 100644
index 00000000000..46d0471cd71
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/TypeHolderExample.md
@@ -0,0 +1,14 @@
+# TypeHolderExample
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**stringItem** | **String** | |
+**numberItem** | **Double** | |
+**integerItem** | **Int** | |
+**boolItem** | **Bool** | |
+**arrayItem** | **[Int]** | |
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/User.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/User.md
new file mode 100644
index 00000000000..5a439de0ff9
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/User.md
@@ -0,0 +1,17 @@
+# User
+
+## Properties
+Name | Type | Description | Notes
+------------ | ------------- | ------------- | -------------
+**id** | **Int64** | | [optional]
+**username** | **String** | | [optional]
+**firstName** | **String** | | [optional]
+**lastName** | **String** | | [optional]
+**email** | **String** | | [optional]
+**password** | **String** | | [optional]
+**phone** | **String** | | [optional]
+**userStatus** | **Int** | User Status | [optional]
+
+[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/docs/UserAPI.md b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/UserAPI.md
new file mode 100644
index 00000000000..5fc9160daf4
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/docs/UserAPI.md
@@ -0,0 +1,406 @@
+# UserAPI
+
+All URIs are relative to *http://petstore.swagger.io:80/v2*
+
+Method | HTTP request | Description
+------------- | ------------- | -------------
+[**createUser**](UserAPI.md#createuser) | **POST** /user | Create user
+[**createUsersWithArrayInput**](UserAPI.md#createuserswitharrayinput) | **POST** /user/createWithArray | Creates list of users with given input array
+[**createUsersWithListInput**](UserAPI.md#createuserswithlistinput) | **POST** /user/createWithList | Creates list of users with given input array
+[**deleteUser**](UserAPI.md#deleteuser) | **DELETE** /user/{username} | Delete user
+[**getUserByName**](UserAPI.md#getuserbyname) | **GET** /user/{username} | Get user by user name
+[**loginUser**](UserAPI.md#loginuser) | **GET** /user/login | Logs user into the system
+[**logoutUser**](UserAPI.md#logoutuser) | **GET** /user/logout | Logs out current logged in user session
+[**updateUser**](UserAPI.md#updateuser) | **PUT** /user/{username} | Updated user
+
+
+# **createUser**
+```swift
+ open class func createUser(body: User, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Create user
+
+This can only be done by the logged in user.
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123) // User | Created user object
+
+// Create user
+UserAPI.createUser(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**User**](User.md) | Created user object |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **createUsersWithArrayInput**
+```swift
+ open class func createUsersWithArrayInput(body: [User], completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Creates list of users with given input array
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = [User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123)] // [User] | List of user object
+
+// Creates list of users with given input array
+UserAPI.createUsersWithArrayInput(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**[User]**](User.md) | List of user object |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **createUsersWithListInput**
+```swift
+ open class func createUsersWithListInput(body: [User], completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Creates list of users with given input array
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let body = [User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123)] // [User] | List of user object
+
+// Creates list of users with given input array
+UserAPI.createUsersWithListInput(body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **body** | [**[User]**](User.md) | List of user object |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **deleteUser**
+```swift
+ open class func deleteUser(username: String, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Delete user
+
+This can only be done by the logged in user.
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let username = "username_example" // String | The name that needs to be deleted
+
+// Delete user
+UserAPI.deleteUser(username: username) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **username** | **String** | The name that needs to be deleted |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **getUserByName**
+```swift
+ open class func getUserByName(username: String, completion: @escaping (_ data: User?, _ error: Error?) -> Void)
+```
+
+Get user by user name
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let username = "username_example" // String | The name that needs to be fetched. Use user1 for testing.
+
+// Get user by user name
+UserAPI.getUserByName(username: username) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **username** | **String** | The name that needs to be fetched. Use user1 for testing. |
+
+### Return type
+
+[**User**](User.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **loginUser**
+```swift
+ open class func loginUser(username: String, password: String, completion: @escaping (_ data: String?, _ error: Error?) -> Void)
+```
+
+Logs user into the system
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let username = "username_example" // String | The user name for login
+let password = "password_example" // String | The password for login in clear text
+
+// Logs user into the system
+UserAPI.loginUser(username: username, password: password) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **username** | **String** | The user name for login |
+ **password** | **String** | The password for login in clear text |
+
+### Return type
+
+**String**
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: application/xml, application/json
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **logoutUser**
+```swift
+ open class func logoutUser(completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Logs out current logged in user session
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+
+// Logs out current logged in user session
+UserAPI.logoutUser() { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+This endpoint does not need any parameter.
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
+# **updateUser**
+```swift
+ open class func updateUser(username: String, body: User, completion: @escaping (_ data: Void?, _ error: Error?) -> Void)
+```
+
+Updated user
+
+This can only be done by the logged in user.
+
+### Example
+```swift
+// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new
+import PetstoreClient
+
+let username = "username_example" // String | name that need to be deleted
+let body = User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123) // User | Updated user object
+
+// Updated user
+UserAPI.updateUser(username: username, body: body) { (response, error) in
+ guard error == nil else {
+ print(error)
+ return
+ }
+
+ if (response) {
+ dump(response)
+ }
+}
+```
+
+### Parameters
+
+Name | Type | Description | Notes
+------------- | ------------- | ------------- | -------------
+ **username** | **String** | name that need to be deleted |
+ **body** | [**User**](User.md) | Updated user object |
+
+### Return type
+
+Void (empty response body)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: Not defined
+ - **Accept**: Not defined
+
+[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/git_push.sh b/samples/client/petstore/swift5/asyncAwaitLibrary/git_push.sh
new file mode 100644
index 00000000000..f53a75d4fab
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/git_push.sh
@@ -0,0 +1,57 @@
+#!/bin/sh
+# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/
+#
+# Usage example: /bin/sh ./git_push.sh wing328 openapi-petstore-perl "minor update" "gitlab.com"
+
+git_user_id=$1
+git_repo_id=$2
+release_note=$3
+git_host=$4
+
+if [ "$git_host" = "" ]; then
+ git_host="github.com"
+ echo "[INFO] No command line input provided. Set \$git_host to $git_host"
+fi
+
+if [ "$git_user_id" = "" ]; then
+ git_user_id="GIT_USER_ID"
+ echo "[INFO] No command line input provided. Set \$git_user_id to $git_user_id"
+fi
+
+if [ "$git_repo_id" = "" ]; then
+ git_repo_id="GIT_REPO_ID"
+ echo "[INFO] No command line input provided. Set \$git_repo_id to $git_repo_id"
+fi
+
+if [ "$release_note" = "" ]; then
+ release_note="Minor update"
+ echo "[INFO] No command line input provided. Set \$release_note to $release_note"
+fi
+
+# Initialize the local directory as a Git repository
+git init
+
+# Adds the files in the local repository and stages them for commit.
+git add .
+
+# Commits the tracked changes and prepares them to be pushed to a remote repository.
+git commit -m "$release_note"
+
+# Sets the new remote
+git_remote=$(git remote)
+if [ "$git_remote" = "" ]; then # git remote not defined
+
+ if [ "$GIT_TOKEN" = "" ]; then
+ echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment."
+ git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git
+ else
+ git remote add origin https://${git_user_id}:"${GIT_TOKEN}"@${git_host}/${git_user_id}/${git_repo_id}.git
+ fi
+
+fi
+
+git pull origin master
+
+# Pushes (Forces) the changes in the local repository up to the remote repository
+echo "Git pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git"
+git push origin master 2>&1 | grep -v 'To https'
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/pom.xml b/samples/client/petstore/swift5/asyncAwaitLibrary/pom.xml
new file mode 100644
index 00000000000..c1b201eb3b4
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/pom.xml
@@ -0,0 +1,43 @@
+
+ 4.0.0
+ io.swagger
+ Swift5PetstoreClientTests
+ pom
+ 1.0-SNAPSHOT
+ Swift5 Swagger Petstore Client
+
+
+
+ maven-dependency-plugin
+
+
+ package
+
+ copy-dependencies
+
+
+ ${project.build.directory}
+
+
+
+
+
+ org.codehaus.mojo
+ exec-maven-plugin
+ 1.2.1
+
+
+ xcodebuild-test
+ integration-test
+
+ exec
+
+
+ ./run_spmbuild.sh
+
+
+
+
+
+
+
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/project.yml b/samples/client/petstore/swift5/asyncAwaitLibrary/project.yml
new file mode 100644
index 00000000000..0493cf65896
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/project.yml
@@ -0,0 +1,15 @@
+name: PetstoreClient
+targets:
+ PetstoreClient:
+ type: framework
+ platform: iOS
+ deploymentTarget: "9.0"
+ sources: [PetstoreClient]
+ info:
+ path: ./Info.plist
+ version: 1.0.0
+ settings:
+ APPLICATION_EXTENSION_API_ONLY: true
+ scheme: {}
+ dependencies:
+ - carthage: AnyCodable
diff --git a/samples/client/petstore/swift5/asyncAwaitLibrary/run_spmbuild.sh b/samples/client/petstore/swift5/asyncAwaitLibrary/run_spmbuild.sh
new file mode 100755
index 00000000000..1a9f585ad05
--- /dev/null
+++ b/samples/client/petstore/swift5/asyncAwaitLibrary/run_spmbuild.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+swift build && exit ${PIPESTATUS[0]}
diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
index 70d40d6eecf..fac7d89a646 100644
--- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
+++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift
@@ -23,10 +23,10 @@ open class AnotherFakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func call123testSpecialTags(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- call123testSpecialTagsWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ call123testSpecialTagsWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
promise(.success(response.body!))
diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
index dbbc277247e..e1a64636954 100644
--- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
+++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift
@@ -22,10 +22,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func fakeOuterBooleanSerialize(body: Bool? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ fakeOuterBooleanSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
promise(.success(response.body!))
@@ -68,10 +68,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ fakeOuterCompositeSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
promise(.success(response.body!))
@@ -114,10 +114,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func fakeOuterNumberSerialize(body: Double? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- fakeOuterNumberSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ fakeOuterNumberSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
promise(.success(response.body!))
@@ -160,10 +160,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func fakeOuterStringSerialize(body: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- fakeOuterStringSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ fakeOuterStringSerializeWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
promise(.success(response.body!))
@@ -206,10 +206,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testBodyWithFileSchema(body: FileSchemaTestClass, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testBodyWithFileSchemaWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testBodyWithFileSchemaWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
@@ -253,10 +253,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testBodyWithQueryParams(query: String, body: User, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
@@ -303,10 +303,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testClientModel(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testClientModelWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testClientModelWithRequestBuilder(body: body).execute(apiResponseQueue) { result in
switch result {
case let .success(response):
promise(.success(response.body!))
@@ -364,10 +364,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: URL? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testEndpointParametersWithRequestBuilder(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
@@ -520,10 +520,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
@@ -594,10 +594,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
@@ -654,10 +654,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testInlineAdditionalProperties(param: [String: String], apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
@@ -702,10 +702,10 @@ open class FakeAPI {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testJsonFormData(param: String, param2: String, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute(apiResponseQueue) { result -> Void in
+ return Future { promise in
+ testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute(apiResponseQueue) { result in
switch result {
case .success:
promise(.success(()))
diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
index d2b506fe5af..c28ec3ec79c 100644
--- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
+++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift
@@ -23,10 +23,10 @@ open class FakeClassnameTags123API {
- returns: AnyPublisher
*/
#if canImport(Combine)
- @available(OSX 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
+ @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
open class func testClassname(body: Client, apiResponseQueue: DispatchQueue = PetstoreClientAPI.apiResponseQueue) -> AnyPublisher {
- return Future.init { promise in
- testClassnameWithRequestBuilder(body: body).execute(apiResponseQueue) { result -> Void in
+ return Future