diff --git a/.gitignore b/.gitignore index 8aee57b0b8..18d2a7a102 100644 --- a/.gitignore +++ b/.gitignore @@ -174,6 +174,7 @@ samples/client/petstore/python-tornado/.venv/ samples/client/petstore/typescript-angular2/npm/npm-debug.log samples/client/petstore/typescript-node/npm/npm-debug.log samples/client/petstore/typescript-angular/tsd-debug.log +samples/client/petstore/typescript-fetch/tests/**/dist/ # aspnetcore samples/server/petstore/aspnetcore/.vs/ diff --git a/CI/.drone.yml b/CI/.drone.yml index cd195bb8c8..5a7f9967c3 100644 --- a/CI/.drone.yml +++ b/CI/.drone.yml @@ -13,7 +13,7 @@ steps: commands: - (cd samples/client/petstore/dart-jaguar/openapi && pub get && pub run build_runner build --delete-conflicting-outputs) - (cd samples/client/petstore/dart-jaguar/flutter_petstore/openapi && pub get && pub run build_runner build --delete-conflicting-outputs) - - (cd samples/client/petstore/dart2/openapi && pub get && pub run test) + - (cd samples/client/petstore/dart2/petstore && pub get && pub run test) # test Java 11 HTTP client - name: java11-test image: openjdk:11.0 diff --git a/README.md b/README.md index c74d2e1993..9779829546 100644 --- a/README.md +++ b/README.md @@ -165,16 +165,16 @@ See the different versions of the [openapi-generator-cli](https://mvnrepository. If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 8 runtime at a minimum): -JAR location: `http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.2/openapi-generator-cli-4.1.2.jar` +JAR location: `http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar` For **Mac/Linux** users: ```sh -wget http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.2/openapi-generator-cli-4.1.2.jar -O openapi-generator-cli.jar +wget http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar -O openapi-generator-cli.jar ``` For **Windows** users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g. ``` -Invoke-WebRequest -OutFile openapi-generator-cli.jar http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.2/openapi-generator-cli-4.1.2.jar +Invoke-WebRequest -OutFile openapi-generator-cli.jar http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar ``` After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage. @@ -389,10 +389,10 @@ openapi-generator version ``` -Or install a particular OpenAPI Generator version (e.g. v4.1.2): +Or install a particular OpenAPI Generator version (e.g. v4.1.3): ```sh -npm install @openapitools/openapi-generator-cli@cli-4.1.2 -g +npm install @openapitools/openapi-generator-cli@cli-4.1.3 -g ``` Or install it as dev-dependency: @@ -416,7 +416,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat (if you're on Windows, replace the last command with `java -jar modules\openapi-generator-cli\target\openapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g php -o c:\temp\php_api_client`) -You can also download the JAR (latest release) directly from [maven.org](http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.2/openapi-generator-cli-4.1.2.jar) +You can also download the JAR (latest release) directly from [maven.org](http://central.maven.org/maven2/org/openapitools/openapi-generator-cli/4.1.3/openapi-generator-cli-4.1.3.jar) To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate` @@ -455,6 +455,7 @@ NAME SYNOPSIS openapi-generator-cli generate [(-a | --auth )] + [--api-name-suffix ] [--api-package ] [--artifact-id ] [--artifact-version ] [(-c | --config )] @@ -563,6 +564,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in - [Element AI](https://www.elementai.com/) - [FormAPI](https://formapi.io/) - [Fuse](https://www.fuse.no/) +- [Gantner](https://www.gantner.com) - [GenFlow](https://github.com/RepreZen/GenFlow) - [GMO Pepabo](https://pepabo.com/en/) - [GoDaddy](https://godaddy.com) @@ -637,8 +639,16 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in - 2019-08-29 - [OpenAPI初探](https://cloud.tencent.com/developer/article/1495986) by [peakxie](https://cloud.tencent.com/developer/user/1113152) at [腾讯云社区](https://cloud.tencent.com/developer) - 2019-08-29 - [全面进化:Kubernetes CRD 1.16 GA前瞻](https://www.servicemesher.com/blog/kubernetes-1.16-crd-ga-preview/) by [Min Kim](https://github.com/yue9944882) at [ServiceMesher Blog](https://www.servicemesher.com/blog/) - 2019-09-01 - [Creating a PHP-Slim server using OpenAPI (Youtube video)](https://www.youtube.com/watch?v=5cJtbIrsYkg) by [Daniel Persson](https://www.youtube.com/channel/UCnG-TN23lswO6QbvWhMtxpA) +- 2019-09-06 - [Vert.x and OpenAPI](https://wissel.net/blog/2019/09/vertx-and-openapi.html) by [Stephan H Wissel](https://twitter.com/notessensei) at [wissel.net blog](https://wissel.net) +- 2019-09-09 - [Cloud-native development - Creating RESTful microservices](https://cloud.ibm.com/docs/cloud-native?topic=cloud-native-rest-api) in [IBM Cloud Docs](https://cloud.ibm.com/docs) - 2019-09-14 - [Generating and Configuring a Mastercard API Client](https://developer.mastercard.com/platform/documentation/generating-and-configuring-a-mastercard-api-client/) at [Mastercard Developers Platform](https://developer.mastercard.com/platform/documentation/) - 2019-09-15 - [OpenAPI(Swagger)導入下調べ](https://qiita.com/ShoichiKuraoka/items/f1f7a3c2376f7cd9c56a) by [Shoichi Kuraoka](https://qiita.com/ShoichiKuraoka) +- 2019-09-17 - [Tutorial: Documenting http4k APIs with OpenApi3](https://www.http4k.org/tutorials/documenting_apis_with_openapi/) by [http4k](https://www.http4k.org/) +- 2019-09-22 - [OpenAPI 3を完全に理解できる本](https://booth.pm/ja/items/1571902) by [@ota42y](https://twitter.com/ota42y) +- 2019-09-22 - [RESTful APIs: Tutorial of OpenAPI Specification](https://medium.com/@amirm.lavasani/restful-apis-tutorial-of-openapi-specification-eeada0e3901d) by [Amir Lavasani](https://medium.com/@amirm.lavasani) +- 2019-09-22 - [Redefining SDKs as software diversity kits](https://devrel.net/dev-rel/redefining-sdks-as-software-diversity-kits) by [Sid Maestre (Xero)](https://twitter.com/sidneyallen) at [DevRelCon San Francisco 2019](https://sf2019.devrel.net/) +- 2019-09-23 - [swaggerからOpenApi GeneratorでSpringのコードを自動生成](https://qiita.com/littleFeet/items/492df2ad68a0799a5e5e) by [@littleFeet](https://qiita.com/littleFeet) at [Qiita](https://qiita.com/) + ## [6 - About Us](#table-of-contents) @@ -817,7 +827,7 @@ If you want to join the committee, please kindly apply by sending an email to te | Bash | @frol (2017/07) @bkryza (2017/08) @kenjones-cisco (2017/09) | | C | @zhemant (2018/11) | | C++ | @ravinikam (2017/07) @stkrwork (2017/07) @etherealjoy (2018/02) @martindelille (2018/03) @muttleyxd (2019/08) | -| C# | @mandrean (2017/08), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert) | +| C# | @mandrean (2017/08), @jimschubert (2017/09) [:heart:](https://www.patreon.com/jimschubert) @frankyjuang (2019/09) | | Clojure | | | Dart | @ircecho (2017/07) @swipesight (2018/09) @jaumard (2018/09) @nickmeinhold (2019/09) | | Eiffel | @jvelilla (2017/09) | diff --git a/bin/cpp-pistache-server-petstore.sh b/bin/cpp-pistache-server-petstore.sh index d0273a9d76..7f2c734b68 100755 --- a/bin/cpp-pistache-server-petstore.sh +++ b/bin/cpp-pistache-server-petstore.sh @@ -27,6 +27,6 @@ fi # if you've executed sbt assembly previously it will use that instead. export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -g cpp-pistache-server -t modules/openapi-generator/src/main/resources/cpp-pistache-server -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml --additional-properties addExternalLibs=true -o samples/server/petstore/cpp-pistache $@" +ags="generate -g cpp-pistache-server -t modules/openapi-generator/src/main/resources/cpp-pistache-server -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml --additional-properties addExternalLibs=true --additional-properties useStructModel=false -o samples/server/petstore/cpp-pistache $@" java $JAVA_OPTS -jar $executable $ags diff --git a/bin/dart2-petstore.sh b/bin/dart2-petstore.sh index e089c52abb..e309802ed3 100755 --- a/bin/dart2-petstore.sh +++ b/bin/dart2-petstore.sh @@ -29,5 +29,5 @@ fi export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" # Generate client -ags="generate -t modules/openapi-generator/src/main/resources/dart2 -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g dart -o samples/client/petstore/dart2/openapi --additional-properties hideGenerationTimestamp=true $@" +ags="generate -t modules/openapi-generator/src/main/resources/dart2 -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g dart -o samples/client/petstore/dart2/petstore_client_lib --additional-properties hideGenerationTimestamp=true $@" java $JAVA_OPTS -jar $executable $ags diff --git a/bin/rust-reqwest-petstore.sh b/bin/fsharp-functions-server-petstore.sh similarity index 59% rename from bin/rust-reqwest-petstore.sh rename to bin/fsharp-functions-server-petstore.sh index 7a5fc8d8cd..23cce9c0e7 100755 --- a/bin/rust-reqwest-petstore.sh +++ b/bin/fsharp-functions-server-petstore.sh @@ -1,7 +1,6 @@ #!/bin/sh SCRIPT="$0" -echo "# START SCRIPT: $SCRIPT" while [ -h "$SCRIPT" ] ; do ls=$(ls -ld "$SCRIPT") @@ -22,11 +21,11 @@ executable="./modules/openapi-generator-cli/target/openapi-generator-cli.jar" if [ ! -f "$executable" ] then - mvn -B clean package + mvn clean package fi # if you've executed sbt assembly previously it will use that instead. -export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -t modules/openapi-generator/src/main/resources/rust -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g rust -o samples/client/petstore/rust-reqwest --additional-properties packageName=petstore_client --library=reqwest $@" +export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties" +ags="$@ generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g fsharp-functions -o samples/server/petstore/fsharp-functions" java ${JAVA_OPTS} -jar ${executable} ${ags} diff --git a/bin/kotlin-client-petstore.sh b/bin/kotlin-client-petstore.sh index cad4be6995..409911eb11 100755 --- a/bin/kotlin-client-petstore.sh +++ b/bin/kotlin-client-petstore.sh @@ -27,6 +27,6 @@ fi # if you've executed sbt assembly previously it will use that instead. export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -t modules/openapi-generator/src/main/resources/kotlin-client -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g kotlin --artifact-id kotlin-petstore-client --additional-properties dateLibrary=java8 -o samples/client/petstore/kotlin $@" +ags="generate -t modules/openapi-generator/src/main/resources/kotlin-client -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g kotlin --artifact-id kotlin-petstore-client --additional-properties dateLibrary=java8,serializableModel=true -o samples/client/petstore/kotlin $@" java ${JAVA_OPTS} -jar ${executable} ${ags} diff --git a/bin/kotlin-client-string.sh b/bin/kotlin-client-string.sh index 410ddbab39..57fae03ab1 100755 --- a/bin/kotlin-client-string.sh +++ b/bin/kotlin-client-string.sh @@ -27,7 +27,7 @@ fi # if you've executed sbt assembly previously it will use that instead. export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -t modules/openapi-generator/src/main/resources/kotlin-client -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g kotlin --artifact-id kotlin-petstore-string --additional-properties dateLibrary=string -o samples/client/petstore/kotlin-string $@" +ags="generate -t modules/openapi-generator/src/main/resources/kotlin-client -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g kotlin --artifact-id kotlin-petstore-string --additional-properties dateLibrary=string,serializableModel=true -o samples/client/petstore/kotlin-string $@" java ${JAVA_OPTS} -jar ${executable} ${ags} diff --git a/bin/kotlin-server-petstore.sh b/bin/kotlin-server-petstore.sh index dbdf48b2bb..755a560a1f 100755 --- a/bin/kotlin-server-petstore.sh +++ b/bin/kotlin-server-petstore.sh @@ -27,7 +27,7 @@ fi # if you've executed sbt assembly previously it will use that instead. export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-server -g kotlin-server --library=ktor -o samples/server/petstore/kotlin-server/ktor --additional-properties hideGenerationTimestamp=true $@" +ags="generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-server -g kotlin-server --library=ktor -o samples/server/petstore/kotlin-server/ktor --additional-properties hideGenerationTimestamp=true,serializableModel=true $@" java ${JAVA_OPTS} -jar ${executable} ${ags} diff --git a/bin/kotlin-springboot-petstore-server.sh b/bin/kotlin-springboot-petstore-server.sh index 45179767ec..73b56bcf8f 100755 --- a/bin/kotlin-springboot-petstore-server.sh +++ b/bin/kotlin-springboot-petstore-server.sh @@ -26,7 +26,7 @@ then fi export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="$@ generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-spring -g kotlin-spring -o samples/server/petstore/kotlin-springboot --additional-properties=library=spring-boot,beanValidations=true,swaggerAnnotations=true,serviceImplementation=true" +ags="$@ generate -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-spring -g kotlin-spring -o samples/server/petstore/kotlin-springboot --additional-properties=library=spring-boot,beanValidations=true,swaggerAnnotations=true,serviceImplementation=true,serializableModel=true" echo "Cleaning previously generated files if any from samples/server/petstore/kotlin-springboot" rm -rf samples/server/petstore/kotlin-springboot diff --git a/bin/openapi3/kotlin-client-petstore.sh b/bin/openapi3/kotlin-client-petstore.sh index f426dba223..d035227680 100755 --- a/bin/openapi3/kotlin-client-petstore.sh +++ b/bin/openapi3/kotlin-client-petstore.sh @@ -26,7 +26,7 @@ then fi export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -i modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml -t modules/openapi-generator/src/main/resources/kotlin-client -g kotlin --artifact-id kotlin-petstore-client --additional-properties dateLibrary=java8 -o samples/openapi3/client/petstore/kotlin $@" +ags="generate -i modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml -t modules/openapi-generator/src/main/resources/kotlin-client -g kotlin --artifact-id kotlin-petstore-client --additional-properties dateLibrary=java8,serializableModel=true -o samples/openapi3/client/petstore/kotlin $@" echo "Cleaning previously generated files if any from samples/openapi3/client/petstore/kotlin" rm -rf samples/openapi3/client/petstore/kotlin diff --git a/bin/openapi3/kotlin-springboot-petstore-server.sh b/bin/openapi3/kotlin-springboot-petstore-server.sh index b1320abdb0..8779e1a041 100755 --- a/bin/openapi3/kotlin-springboot-petstore-server.sh +++ b/bin/openapi3/kotlin-springboot-petstore-server.sh @@ -26,7 +26,7 @@ then fi export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="$@ generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-spring -g kotlin-spring -o samples/openapi3/server/petstore/kotlin-springboot --additional-properties=library=spring-boot,beanValidations=true,swaggerAnnotations=true,serviceImplementation=true" +ags="$@ generate -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -t modules/openapi-generator/src/main/resources/kotlin-spring -g kotlin-spring -o samples/openapi3/server/petstore/kotlin-springboot --additional-properties=library=spring-boot,beanValidations=true,swaggerAnnotations=true,serviceImplementation=true,serializableModel=true" echo "Cleaning previously generated files if any from samples/server/openapi3/petstore/kotlin-springboot" rm -rf samples/server/openapi3/petstore/kotlin-springboot diff --git a/bin/python-experimental-petstore.sh b/bin/python-experimental-petstore.sh index ab01d44cc5..531cf295d6 100755 --- a/bin/python-experimental-petstore.sh +++ b/bin/python-experimental-petstore.sh @@ -27,6 +27,6 @@ fi # if you've executed sbt assembly previously it will use that instead. export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -t modules/openapi-generator/src/main/resources/python -i modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml -g python-experimental -o samples/client/petstore/python-experimental -DpackageName=petstore_api $@" +ags="generate -t modules/openapi-generator/src/main/resources/python -i modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml -g python-experimental -o samples/client/petstore/python-experimental --additional-properties packageName=petstore_api $@" java $JAVA_OPTS -jar $executable $ags diff --git a/bin/rust-petstore.sh b/bin/rust-petstore.sh index f800295120..d5aceb82af 100755 --- a/bin/rust-petstore.sh +++ b/bin/rust-petstore.sh @@ -27,6 +27,21 @@ fi # if you've executed sbt assembly previously it will use that instead. export JAVA_OPTS="${JAVA_OPTS} -Xmx1024M -DloggerPath=conf/log4j.properties" -ags="generate -t modules/openapi-generator/src/main/resources/rust -i modules/openapi-generator/src/test/resources/2_0/petstore.yaml -g rust -o samples/client/petstore/rust --additional-properties packageName=petstore_client --library=hyper $@" -java ${JAVA_OPTS} -jar ${executable} ${ags} +for spec_path in \ + modules/openapi-generator/src/test/resources/2_0/petstore.yaml \ + modules/openapi-generator/src/test/resources/3_0/rust/rust-test.yaml \ + modules/openapi-generator/src/test/resources/2_0/fileResponseTest.json\ + ; do + spec=$(basename "$spec_path" | sed 's/.yaml//' | sed 's/.json//' ) + + for library in hyper reqwest; do + args="generate --template-dir modules/openapi-generator/src/main/resources/rust + --input-spec $spec_path + --generator-name rust + --output samples/client/petstore/rust/$library/$spec + --additional-properties packageName=${spec}-${library} + --library=$library $@" + java ${JAVA_OPTS} -jar ${executable} ${args} || exit 1 + done +done diff --git a/bin/utils/ensure-up-to-date b/bin/utils/ensure-up-to-date index c5671fe665..eb9920ef67 100755 --- a/bin/utils/ensure-up-to-date +++ b/bin/utils/ensure-up-to-date @@ -54,6 +54,8 @@ declare -a scripts=( "./bin/csharp-petstore.sh" "./bin/csharp-netcore-petstore-all.sh" "./bin/elixir-petstore.sh" +"./bin/openapi3/go-petstore.sh" +"./bin/go-experimental-petstore.sh" "./bin/go-petstore.sh" "./bin/go-petstore-withxml.sh" "./bin/go-gin-petstore-server.sh" diff --git a/bin/windows/fsharp-functions-server-petstore.bat b/bin/windows/fsharp-functions-server-petstore.bat new file mode 100644 index 0000000000..560697ffe1 --- /dev/null +++ b/bin/windows/fsharp-functions-server-petstore.bat @@ -0,0 +1,10 @@ +set executable=.\modules\openapi-generator-cli\target\openapi-generator-cli.jar + +If Not Exist %executable% ( + mvn clean package +) + +REM set JAVA_OPTS=%JAVA_OPTS% -Xmx1024M -DloggerPath=conf/log4j.properties +set ags=generate --artifact-id "fsharp-functions-petstore-server" -i modules\openapi-generator\src\test\resources\2_0\petstore.yaml -g fsharp-functions -o samples\server\petstore\fsharp-functions + +java %JAVA_OPTS% -jar %executable% %ags% diff --git a/docs/faq.md b/docs/faq.md index 3e6ce24e19..7ccb70bdf9 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -5,7 +5,7 @@ title: FAQ: General ## Do you have a chat room? -[![Gitter](https://img.shields.io/gitter/room/:user/:repo.svg?style=for-the-badge)](https://gitter.im/OpenAPITools/openapi-generator) +[![Jion the Slack chat room](https://img.shields.io/badge/Slack-Join%20the%20chat%20room-orange)](https://join.slack.com/t/openapi-generator/shared_invite/enQtNzAyNDMyOTU0OTE1LTY5ZDBiNDI5NzI5ZjQ1Y2E5OWVjMjZkYzY1ZGM2MWQ4YWFjMzcyNDY5MGI4NjQxNDBiMTlmZTc5NjY2ZTQ5MGM) ## What is the governance structure of the OpenAPI Generator project? diff --git a/docs/generators.md b/docs/generators.md index 7cdf880edd..262a9355c5 100644 --- a/docs/generators.md +++ b/docs/generators.md @@ -75,7 +75,8 @@ The following generators are available: * [cpp-restbed-server](generators/cpp-restbed-server) * [csharp-nancyfx](generators/csharp-nancyfx) * [erlang-server](generators/erlang-server) -* [fsharp-giraffe-server](generators/fsharp-giraffe-server) +* [fsharp-functions (beta)](generators/fsharp-functions) +* [fsharp-giraffe-server (beta)](generators/fsharp-giraffe-server) * [go-gin-server](generators/go-gin-server) * [go-server](generators/go-server) * [graphql-nodejs-express-server](generators/graphql-nodejs-express-server) diff --git a/docs/generators/cpp-pistache-server.md b/docs/generators/cpp-pistache-server.md index ac4abee691..2ffeb59cc7 100644 --- a/docs/generators/cpp-pistache-server.md +++ b/docs/generators/cpp-pistache-server.md @@ -9,3 +9,4 @@ sidebar_label: cpp-pistache-server | ------ | ----------- | ------ | ------- | |addExternalLibs|Add the Possibility to fetch and compile external Libraries needed by this Framework.| |true| |helpersPackage|Specify the package name to be used for the helpers (e.g. org.openapitools.server.helpers).| |org.openapitools.server.helpers| +|useStructModel|Use struct-based model template instead of get/set-based model template| |false| diff --git a/docs/generators/fsharp-functions.md b/docs/generators/fsharp-functions.md new file mode 100644 index 0000000000..b7a8ee7825 --- /dev/null +++ b/docs/generators/fsharp-functions.md @@ -0,0 +1,22 @@ + +--- +id: generator-opts-server-fsharp-functions +title: Config Options for fsharp-functions +sidebar_label: fsharp-functions +--- + +| Option | Description | Values | Default | +| ------ | ----------- | ------ | ------- | +|sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |true| +|ensureUniqueParams|Whether to ensure parameter names are unique in an operation (rename parameters that are not).| |true| +|allowUnicodeIdentifiers|boolean, toggles whether unicode identifiers are allowed in names or not, default is false| |false| +|prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| +|licenseUrl|The URL of the license| |http://localhost| +|licenseName|The name of the license| |NoLicense| +|packageCopyright|Specifies an AssemblyCopyright for the .NET Framework global assembly attributes stored in the AssemblyInfo file.| |No Copyright| +|packageAuthors|Specifies Authors property in the .NET Core project file.| |OpenAPI| +|packageTitle|Specifies an AssemblyTitle for the .NET Framework global assembly attributes stored in the AssemblyInfo file.| |OpenAPI Library| +|packageName|F# module name (convention: Title.Case).| |OpenAPI| +|packageVersion|F# package version.| |1.0.0| +|packageGuid|The GUID that will be associated with the C# project| |null| +|sourceFolder|source folder for generated code| |OpenAPI/src| diff --git a/docs/generators/haskell-http-client.md b/docs/generators/haskell-http-client.md index 6dffd55f25..b26bd8be10 100644 --- a/docs/generators/haskell-http-client.md +++ b/docs/generators/haskell-http-client.md @@ -28,6 +28,7 @@ sidebar_label: haskell-http-client |strictFields|Add strictness annotations to all model fields| |true| |useKatip|Sets the default value for the UseKatip cabal flag. If true, the katip package provides logging instead of monad-logger| |true| |dateTimeFormat|format string used to parse/render a datetime| |null| +|dateTimeParseFormat|overrides the format string used to parse a datetime| |null| |dateFormat|format string used to parse/render a date| |%Y-%m-%d| |customTestInstanceModule|test module used to provide typeclass instances for types not known by the generator| |null| |hideGenerationTimestamp|Hides the generation timestamp when files are generated.| |true| diff --git a/docs/generators/jaxrs-cxf-cdi.md b/docs/generators/jaxrs-cxf-cdi.md index 78d31c8573..65def91168 100644 --- a/docs/generators/jaxrs-cxf-cdi.md +++ b/docs/generators/jaxrs-cxf-cdi.md @@ -46,7 +46,7 @@ sidebar_label: jaxrs-cxf-cdi |title|a title describing the application| |OpenAPI Server| |useBeanValidation|Use BeanValidation API annotations| |true| |serverPort|The port on which the server should be started| |8080| -|library|library template (sub-template)|
**<default>**
JAXRS
|<default>| +|library|library template (sub-template)|
**<default>**
JAXRS spec only, to be deployed in an app server (TomEE, JBoss, WLS, ...)
**quarkus**
Server using Quarkus
**thorntail**
Server using Thorntail
**openliberty**
Server using Open Liberty
**helidon**
Server using Helidon
|<default>| |generatePom|Whether to generate pom.xml if the file does not already exist.| |true| |interfaceOnly|Whether to generate only API interface stubs without the server files.| |false| |returnResponse|Whether generate API interface should return javax.ws.rs.core.Response instead of a deserialized entity. Only useful if interfaceOnly is true.| |false| diff --git a/docs/generators/jaxrs-spec.md b/docs/generators/jaxrs-spec.md index 8d338ebfef..1bf741aad8 100644 --- a/docs/generators/jaxrs-spec.md +++ b/docs/generators/jaxrs-spec.md @@ -46,7 +46,7 @@ sidebar_label: jaxrs-spec |title|a title describing the application| |OpenAPI Server| |useBeanValidation|Use BeanValidation API annotations| |true| |serverPort|The port on which the server should be started| |8080| -|library|library template (sub-template)|
**<default>**
JAXRS
|<default>| +|library|library template (sub-template)|
**<default>**
JAXRS spec only, to be deployed in an app server (TomEE, JBoss, WLS, ...)
**quarkus**
Server using Quarkus
**thorntail**
Server using Thorntail
**openliberty**
Server using Open Liberty
**helidon**
Server using Helidon
|<default>| |generatePom|Whether to generate pom.xml if the file does not already exist.| |true| |interfaceOnly|Whether to generate only API interface stubs without the server files.| |false| |returnResponse|Whether generate API interface should return javax.ws.rs.core.Response instead of a deserialized entity. Only useful if interfaceOnly is true.| |false| diff --git a/docs/generators/kotlin-server.md b/docs/generators/kotlin-server.md index 4c18a6165c..54e62dcf20 100644 --- a/docs/generators/kotlin-server.md +++ b/docs/generators/kotlin-server.md @@ -16,6 +16,7 @@ sidebar_label: kotlin-server |enumPropertyNaming|Naming convention for enum properties: 'camelCase', 'PascalCase', 'snake_case', 'UPPERCASE', and 'original'| |camelCase| |serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson'| |moshi| |parcelizeModels|toggle "@Parcelize" for generated models| |null| +|serializableModel|boolean - toggle "implements Serializable" for generated models| |null| |library|library template (sub-template)|
**ktor**
ktor framework
|ktor| |featureAutoHead|Automatically provide responses to HEAD requests for existing routes that have the GET verb defined.| |true| |featureConditionalHeaders|Avoid sending content if client already has same content, by checking ETag or LastModified properties.| |false| diff --git a/docs/generators/kotlin-spring.md b/docs/generators/kotlin-spring.md index 9b690b12da..ca5e09b8fb 100644 --- a/docs/generators/kotlin-spring.md +++ b/docs/generators/kotlin-spring.md @@ -16,6 +16,7 @@ sidebar_label: kotlin-spring |enumPropertyNaming|Naming convention for enum properties: 'camelCase', 'PascalCase', 'snake_case', 'UPPERCASE', and 'original'| |camelCase| |serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson'| |moshi| |parcelizeModels|toggle "@Parcelize" for generated models| |null| +|serializableModel|boolean - toggle "implements Serializable" for generated models| |null| |title|server title name or client service name| |OpenAPI Kotlin Spring| |basePackage|base package (invokerPackage) for generated code| |org.openapitools| |serverPort|configuration the port in which the sever is to run on| |8080| diff --git a/docs/generators/kotlin-vertx.md b/docs/generators/kotlin-vertx.md index 9677fe6239..03e2d0dd1f 100644 --- a/docs/generators/kotlin-vertx.md +++ b/docs/generators/kotlin-vertx.md @@ -16,3 +16,4 @@ sidebar_label: kotlin-vertx |enumPropertyNaming|Naming convention for enum properties: 'camelCase', 'PascalCase', 'snake_case', 'UPPERCASE', and 'original'| |camelCase| |serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson'| |moshi| |parcelizeModels|toggle "@Parcelize" for generated models| |null| +|serializableModel|boolean - toggle "implements Serializable" for generated models| |null| diff --git a/docs/generators/kotlin.md b/docs/generators/kotlin.md index 264842d4bb..719ed37acc 100644 --- a/docs/generators/kotlin.md +++ b/docs/generators/kotlin.md @@ -16,6 +16,7 @@ sidebar_label: kotlin |enumPropertyNaming|Naming convention for enum properties: 'camelCase', 'PascalCase', 'snake_case', 'UPPERCASE', and 'original'| |camelCase| |serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson'| |moshi| |parcelizeModels|toggle "@Parcelize" for generated models| |null| +|serializableModel|boolean - toggle "implements Serializable" for generated models| |null| |dateLibrary|Option. Date library to use|
**string**
String
**java8**
Java 8 native JSR310 (jvm only)
**threetenbp**
Threetenbp (jvm only)
|java8| |collectionType|Option. Collection type to use|
**array**
kotlin.Array
**list**
kotlin.collections.List
|array| |library|Library template (sub-template) to use|
**jvm**
Platform: Java Virtual Machine. HTTP client: OkHttp 2.7.5. JSON processing: Gson 2.8.1.
**multiplatform**
Platform: Kotlin multiplatform. HTTP client: Ktor 1.2.4. JSON processing: Kotlinx Serialization: 0.12.0.
|jvm| diff --git a/google_checkstyle.xml b/google_checkstyle.xml index 7cd3720b73..691a6fcdf6 100644 --- a/google_checkstyle.xml +++ b/google_checkstyle.xml @@ -54,10 +54,7 @@ - - - - + diff --git a/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java b/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java index 16d8125b46..99080ba9c0 100644 --- a/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java +++ b/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java @@ -65,7 +65,7 @@ public class Generate implements Runnable { private String templateDir; @Option(name = {"-e", "--engine"}, title = "templating engine", - description = "templating engine: \"mustache\" (default) or \"handlebars\" (beta)") + description = "templating engine: \"mustache\" (default) or \"handlebars\" (beta)") private String templatingEngine; @Option( @@ -109,6 +109,10 @@ public class Generate implements Runnable { description = CodegenConstants.MODEL_PACKAGE_DESC) private String modelPackage; + @Option(name = {"--api-name-suffix"}, title = "api name suffix", + description = CodegenConstants.API_NAME_SUFFIX_DESC) + private String apiNameSuffix; + @Option(name = {"--model-name-prefix"}, title = "model name prefix", description = CodegenConstants.MODEL_NAME_PREFIX_DESC) private String modelNamePrefix; @@ -319,6 +323,10 @@ public class Generate implements Runnable { configurator.setModelPackage(modelPackage); } + if (isNotEmpty(apiNameSuffix)) { + configurator.setApiNameSuffix(apiNameSuffix); + } + if (isNotEmpty(modelNamePrefix)) { configurator.setModelNamePrefix(modelNamePrefix); } diff --git a/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java b/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java index 099df0a5fd..e0772f8aea 100644 --- a/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java +++ b/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java @@ -40,6 +40,7 @@ public final class GeneratorSettings implements Serializable { private String modelPackage; private String invokerPackage; private String packageName; + private String apiNameSuffix; private String modelNamePrefix; private String modelNameSuffix; private String groupId; @@ -106,6 +107,21 @@ public final class GeneratorSettings implements Serializable { return packageName; } + /** + * Gets a api name suffix for generated models. This name will be appended to a api name. + *

+ * This option is often used to circumvent compilation issues where models match keywords. + *

+ * Example: + *

+ * Suffix Gen applied to Object results in a generated class named ObjectGen. + * + * @return the model name suffix + */ + public String getApiNameSuffix() { + return apiNameSuffix; + } + /** * Gets a model name prefix for generated models. This name will be prefixed to a model name. *

@@ -325,6 +341,7 @@ public final class GeneratorSettings implements Serializable { modelPackage = builder.modelPackage; invokerPackage = builder.invokerPackage; packageName = builder.packageName; + apiNameSuffix = builder.apiNameSuffix; modelNamePrefix = builder.modelNamePrefix; modelNameSuffix = builder.modelNameSuffix; groupId = builder.groupId; @@ -366,6 +383,9 @@ public final class GeneratorSettings implements Serializable { if (isNotEmpty(artifactVersion)) { additional.put("artifactVersion", artifactVersion); } + if (isNotEmpty(apiNameSuffix)) { + additional.put("apiNameSuffix", apiNameSuffix); + } if (isNotEmpty(modelNamePrefix)) { additional.put("modelNamePrefix", modelNamePrefix); } @@ -433,6 +453,7 @@ public final class GeneratorSettings implements Serializable { builder.modelPackage = copy.getModelPackage(); builder.invokerPackage = copy.getInvokerPackage(); builder.packageName = copy.getPackageName(); + builder.apiNameSuffix = copy.getApiNameSuffix(); builder.modelNamePrefix = copy.getModelNamePrefix(); builder.modelNameSuffix = copy.getModelNameSuffix(); builder.groupId = copy.getGroupId(); @@ -479,6 +500,7 @@ public final class GeneratorSettings implements Serializable { private String modelPackage; private String invokerPackage; private String packageName; + private String apiNameSuffix; private String modelNamePrefix; private String modelNameSuffix; private String groupId; @@ -571,6 +593,17 @@ public final class GeneratorSettings implements Serializable { return this; } + /** + * Sets the {@code apiNameSuffix} and returns a reference to this Builder so that the methods can be chained together. + * + * @param apiNameSuffix the {@code apiNameSuffix} to set + * @return a reference to this Builder + */ + public Builder withApiNameSuffix(String apiNameSuffix) { + this.apiNameSuffix = apiNameSuffix; + return this; + } + /** * Sets the {@code modelNamePrefix} and returns a reference to this Builder so that the methods can be chained together. * @@ -880,6 +913,7 @@ public final class GeneratorSettings implements Serializable { ", modelPackage='" + modelPackage + '\'' + ", invokerPackage='" + invokerPackage + '\'' + ", packageName='" + packageName + '\'' + + ", apiNameSuffix='" + apiNameSuffix + '\'' + ", modelNamePrefix='" + modelNamePrefix + '\'' + ", modelNameSuffix='" + modelNameSuffix + '\'' + ", groupId='" + groupId + '\'' + @@ -910,6 +944,7 @@ public final class GeneratorSettings implements Serializable { Objects.equals(getModelPackage(), that.getModelPackage()) && Objects.equals(getInvokerPackage(), that.getInvokerPackage()) && Objects.equals(getPackageName(), that.getPackageName()) && + Objects.equals(getApiNameSuffix(), that.getApiNameSuffix()) && Objects.equals(getModelNamePrefix(), that.getModelNamePrefix()) && Objects.equals(getModelNameSuffix(), that.getModelNameSuffix()) && Objects.equals(getGroupId(), that.getGroupId()) && @@ -937,6 +972,7 @@ public final class GeneratorSettings implements Serializable { getModelPackage(), getInvokerPackage(), getPackageName(), + getApiNameSuffix(), getModelNamePrefix(), getModelNameSuffix(), getGroupId(), diff --git a/modules/openapi-generator-gradle-plugin/pom.xml b/modules/openapi-generator-gradle-plugin/pom.xml index ec6ee32b4b..df86fb4247 100644 --- a/modules/openapi-generator-gradle-plugin/pom.xml +++ b/modules/openapi-generator-gradle-plugin/pom.xml @@ -20,6 +20,20 @@ 4.10.2 + + + Gradle Releases + Gradle Releases repository + https://repo.gradle.org/gradle/libs-releases-local/ + + true + + + false + + + + org.openapitools diff --git a/modules/openapi-generator-maven-plugin/examples/java-client.xml b/modules/openapi-generator-maven-plugin/examples/java-client.xml index 634b674ab8..b19be19ac1 100644 --- a/modules/openapi-generator-maven-plugin/examples/java-client.xml +++ b/modules/openapi-generator-maven-plugin/examples/java-client.xml @@ -75,11 +75,11 @@ org.apache.maven.plugins maven-compiler-plugin - 3.6.1 + 3.8.1 - 1.7 - 1.7 - none + 1.7 + 1.7 + none diff --git a/modules/openapi-generator-maven-plugin/examples/multi-module/java-client/pom.xml b/modules/openapi-generator-maven-plugin/examples/multi-module/java-client/pom.xml index e86240104f..ffbf4f24cd 100644 --- a/modules/openapi-generator-maven-plugin/examples/multi-module/java-client/pom.xml +++ b/modules/openapi-generator-maven-plugin/examples/multi-module/java-client/pom.xml @@ -57,11 +57,11 @@ org.apache.maven.plugins maven-compiler-plugin - 3.6.1 + 3.8.1 - 1.7 - 1.7 - none + 1.7 + 1.7 + none diff --git a/modules/openapi-generator/pom.xml b/modules/openapi-generator/pom.xml index f437f35e06..d22c935026 100644 --- a/modules/openapi-generator/pom.xml +++ b/modules/openapi-generator/pom.xml @@ -300,7 +300,7 @@ org.mockito mockito-core - 3.0.0 + 3.1.0 test diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java index ef235748f2..fa6d51ffb0 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConstants.java @@ -206,6 +206,9 @@ public class CodegenConstants { // Codegen constants should define a description and provide proper input validation for the value of serializationLibrary public static final String SERIALIZATION_LIBRARY = "serializationLibrary"; + public static final String API_NAME_SUFFIX = "apiNameSuffix"; + public static final String API_NAME_SUFFIX_DESC = "Suffix that will be appended to all API names ('tags'). Default: Api. e.g. Pet => PetApi. Note: Only ruby, python, jaxrs generators suppport this feature at the moment."; + public static final String MODEL_NAME_PREFIX = "modelNamePrefix"; public static final String MODEL_NAME_PREFIX_DESC = "Prefix that will be prepended to all model names."; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 682ca58135..9a410941b0 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -85,6 +85,7 @@ public class DefaultCodegen implements CodegenConfig { protected Map importMapping = new HashMap(); protected String modelPackage = "", apiPackage = "", fileSuffix; protected String modelNamePrefix = "", modelNameSuffix = ""; + protected String apiNameSuffix = "Api"; protected String testPackage = ""; protected Map apiTemplateFiles = new HashMap(); protected Map modelTemplateFiles = new HashMap(); @@ -180,6 +181,10 @@ public class DefaultCodegen implements CodegenConfig { .get(CodegenConstants.ALLOW_UNICODE_IDENTIFIERS).toString())); } + if (additionalProperties.containsKey(CodegenConstants.API_NAME_SUFFIX)) { + this.setApiNameSuffix((String) additionalProperties.get(CodegenConstants.API_NAME_SUFFIX)); + } + if (additionalProperties.containsKey(CodegenConstants.MODEL_NAME_PREFIX)) { this.setModelNamePrefix((String) additionalProperties.get(CodegenConstants.MODEL_NAME_PREFIX)); } @@ -779,6 +784,14 @@ public class DefaultCodegen implements CodegenConfig { this.modelNameSuffix = modelNameSuffix; } + public String getApiNameSuffix() { + return apiNameSuffix; + } + + public void setApiNameSuffix(String apiNameSuffix) { + this.apiNameSuffix = apiNameSuffix; + } + public void setApiPackage(String apiPackage) { this.apiPackage = apiPackage; } @@ -1068,8 +1081,7 @@ public class DefaultCodegen implements CodegenConfig { typeMapping.put("file", "File"); typeMapping.put("UUID", "UUID"); typeMapping.put("URI", "URI"); - //typeMapping.put("BigDecimal", "BigDecimal"); //TODO need the mapping? - + typeMapping.put("BigDecimal", "BigDecimal"); instantiationTypes = new HashMap(); @@ -1693,17 +1705,17 @@ public class DefaultCodegen implements CodegenConfig { } /** - * Output the API (class) name (capitalized) ending with "Api" + * Output the API (class) name (capitalized) ending with the specified or default suffix * Return DefaultApi if name is empty * * @param name the name of the Api - * @return capitalized Api name ending with "Api" + * @return capitalized Api name */ public String toApiName(String name) { if (name.length() == 0) { return "DefaultApi"; } - return camelize(name) + "Api"; + return camelize(name + "_" + apiNameSuffix); } /** @@ -2493,6 +2505,76 @@ public class DefaultCodegen implements CodegenConfig { return responses.get(code); } + /** + * Set op's returnBaseType, returnType, examples etc. + * + * @param operation endpoint Operation + * @param schemas a map of the schemas in the openapi spec + * @param op endpoint CodegenOperation + * @param methodResponse the default ApiResponse for the endpoint + */ + protected void handleMethodResponse(Operation operation, + Map schemas, + CodegenOperation op, + ApiResponse methodResponse) { + Schema responseSchema = ModelUtils.unaliasSchema(this.openAPI, ModelUtils.getSchemaFromResponse(methodResponse)); + + if (responseSchema != null) { + CodegenProperty cm = fromProperty("response", responseSchema); + + if (ModelUtils.isArraySchema(responseSchema)) { + ArraySchema as = (ArraySchema) responseSchema; + CodegenProperty innerProperty = fromProperty("response", getSchemaItems(as)); + op.returnBaseType = innerProperty.baseType; + } else if (ModelUtils.isMapSchema(responseSchema)) { + CodegenProperty innerProperty = fromProperty("response", ModelUtils.getAdditionalProperties(responseSchema)); + op.returnBaseType = innerProperty.baseType; + } else { + if (cm.complexType != null) { + op.returnBaseType = cm.complexType; + } else { + op.returnBaseType = cm.baseType; + } + } + + // generate examples + String exampleStatusCode = "200"; + for (String key : operation.getResponses().keySet()) { + if (operation.getResponses().get(key) == methodResponse && !key.equals("default")) { + exampleStatusCode = key; + } + } + op.examples = new ExampleGenerator(schemas, this.openAPI).generateFromResponseSchema(exampleStatusCode, responseSchema, getProducesInfo(this.openAPI, operation)); + op.defaultResponse = toDefaultValue(responseSchema); + op.returnType = cm.dataType; + op.hasReference = schemas.containsKey(op.returnBaseType); + + // lookup discriminator + Schema schema = schemas.get(op.returnBaseType); + if (schema != null) { + CodegenModel cmod = fromModel(op.returnBaseType, schema); + op.discriminator = cmod.discriminator; + } + + if (cm.isContainer) { + op.returnContainer = cm.containerType; + if ("map".equals(cm.containerType)) { + op.isMapContainer = true; + } else if ("list".equalsIgnoreCase(cm.containerType)) { + op.isListContainer = true; + } else if ("array".equalsIgnoreCase(cm.containerType)) { + op.isListContainer = true; + } + } else { + op.returnSimpleType = true; + } + if (languageSpecificPrimitives().contains(op.returnBaseType) || op.returnBaseType == null) { + op.returnTypeIsPrimitive = true; + } + } + addHeaders(methodResponse, op.responseHeaders); + } + /** * Convert OAS Operation object to Codegen Operation object * @@ -2585,62 +2667,7 @@ public class DefaultCodegen implements CodegenConfig { op.responses.get(op.responses.size() - 1).hasMore = false; if (methodResponse != null) { - Schema responseSchema = ModelUtils.unaliasSchema(this.openAPI, ModelUtils.getSchemaFromResponse(methodResponse)); - - if (responseSchema != null) { - CodegenProperty cm = fromProperty("response", responseSchema); - - if (ModelUtils.isArraySchema(responseSchema)) { - ArraySchema as = (ArraySchema) responseSchema; - CodegenProperty innerProperty = fromProperty("response", getSchemaItems(as)); - op.returnBaseType = innerProperty.baseType; - } else if (ModelUtils.isMapSchema(responseSchema)) { - CodegenProperty innerProperty = fromProperty("response", ModelUtils.getAdditionalProperties(responseSchema)); - op.returnBaseType = innerProperty.baseType; - } else { - if (cm.complexType != null) { - op.returnBaseType = cm.complexType; - } else { - op.returnBaseType = cm.baseType; - } - } - - // generate examples - String exampleStatusCode = "200"; - for (String key : operation.getResponses().keySet()) { - if (operation.getResponses().get(key) == methodResponse && !key.equals("default")) { - exampleStatusCode = key; - } - } - op.examples = new ExampleGenerator(schemas, this.openAPI).generateFromResponseSchema(exampleStatusCode, responseSchema, getProducesInfo(this.openAPI, operation)); - op.defaultResponse = toDefaultValue(responseSchema); - op.returnType = cm.dataType; - op.hasReference = schemas.containsKey(op.returnBaseType); - - // lookup discriminator - Schema schema = schemas.get(op.returnBaseType); - if (schema != null) { - CodegenModel cmod = fromModel(op.returnBaseType, schema); - op.discriminator = cmod.discriminator; - } - - if (cm.isContainer) { - op.returnContainer = cm.containerType; - if ("map".equals(cm.containerType)) { - op.isMapContainer = true; - } else if ("list".equalsIgnoreCase(cm.containerType)) { - op.isListContainer = true; - } else if ("array".equalsIgnoreCase(cm.containerType)) { - op.isListContainer = true; - } - } else { - op.returnSimpleType = true; - } - if (languageSpecificPrimitives().contains(op.returnBaseType) || op.returnBaseType == null) { - op.returnTypeIsPrimitive = true; - } - } - addHeaders(methodResponse, op.responseHeaders); + handleMethodResponse(operation, schemas, op, methodResponse); } } @@ -3511,7 +3538,7 @@ public class DefaultCodegen implements CodegenConfig { * @param response API response * @param properties list of codegen property */ - private void addHeaders(ApiResponse response, List properties) { + protected void addHeaders(ApiResponse response, List properties) { if (response.getHeaders() != null) { for (Map.Entry headerEntry : response.getHeaders().entrySet()) { String description = headerEntry.getValue().getDescription(); @@ -4316,7 +4343,7 @@ public class DefaultCodegen implements CodegenConfig { } } - private void updateEnumVarsWithExtensions(List> enumVars, Map vendorExtensions) { + protected void updateEnumVarsWithExtensions(List> enumVars, Map vendorExtensions) { if (vendorExtensions != null) { updateEnumVarsWithExtensions(enumVars, vendorExtensions, "x-enum-varnames", "name"); updateEnumVarsWithExtensions(enumVars, vendorExtensions, "x-enum-descriptions", "enumDescription"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java index 623d6c5dbb..98a0226afa 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultGenerator.java @@ -35,6 +35,7 @@ import org.apache.commons.lang3.StringUtils; import org.openapitools.codegen.config.GlobalSettings; import org.openapitools.codegen.api.TemplatingEngineAdapter; import org.openapitools.codegen.ignore.CodegenIgnoreProcessor; +import org.openapitools.codegen.languages.PythonClientExperimentalCodegen; import org.openapitools.codegen.meta.GeneratorMetadata; import org.openapitools.codegen.meta.Stability; import org.openapitools.codegen.serializer.SerializerUtils; @@ -490,10 +491,11 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { // TODO revise below as we've already performed unaliasing so that the isAlias check may be removed Map modelTemplate = (Map) ((List) models.get("models")).get(0); - // Special handling of aliases only applies to Java if (modelTemplate != null && modelTemplate.containsKey("model")) { CodegenModel m = (CodegenModel) modelTemplate.get("model"); - if (m.isAlias) { + if (m.isAlias && !(config instanceof PythonClientExperimentalCodegen)) { + // alias to number, string, enum, etc, which should not be generated as model + // for PythonClientExperimentalCodegen, all aliases are generated as models continue; // Don't create user-defined classes for aliases } } @@ -943,7 +945,6 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { * Returns the path of a template, allowing access to the template where consuming literal contents aren't desirable or possible. * * @param name the template name (e.g. model.mustache) - * * @return The {@link Path} to the template */ @Override @@ -1063,21 +1064,21 @@ public class DefaultGenerator extends AbstractGenerator implements Generator { if (authMethods != null && !authMethods.isEmpty()) { codegenOperation.authMethods = config.fromSecurity(authMethods); List> scopes = new ArrayList>(); - if (codegenOperation.authMethods != null){ - for (CodegenSecurity security : codegenOperation.authMethods){ + if (codegenOperation.authMethods != null) { + for (CodegenSecurity security : codegenOperation.authMethods) { if (security != null && security.isBasicBearer != null && security.isBasicBearer && - securities != null){ - for (SecurityRequirement req : securities){ + securities != null) { + for (SecurityRequirement req : securities) { if (req == null) continue; - for (String key : req.keySet()){ - if (security.name != null && key.equals(security.name)){ + for (String key : req.keySet()) { + if (security.name != null && key.equals(security.name)) { int count = 0; - for (String sc : req.get(key)){ + for (String sc : req.get(key)) { Map scope = new HashMap(); scope.put("scope", sc); scope.put("description", ""); count++; - if (req.get(key) != null && count < req.get(key).size()){ + if (req.get(key) != null && count < req.get(key).size()) { scope.put("hasMore", "true"); } else { scope.put("hasMore", null); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java index c2df323731..95ac896639 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java @@ -287,6 +287,11 @@ public class CodegenConfigurator { return this; } + public CodegenConfigurator setApiNameSuffix(String suffix) { + generatorSettingsBuilder.withApiNameSuffix(suffix); + return this; + } + public CodegenConfigurator setModelNamePrefix(String prefix) { generatorSettingsBuilder.withModelNamePrefix(prefix); return this; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java index 912b172fcd..361c64a392 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java @@ -181,6 +181,7 @@ public abstract class AbstractCSharpCodegen extends DefaultCodegen implements Co typeMapping.put("long", "long?"); typeMapping.put("double", "double?"); typeMapping.put("number", "decimal?"); + typeMapping.put("BigDecimal", "decimal?"); typeMapping.put("DateTime", "DateTime?"); typeMapping.put("date", "DateTime?"); typeMapping.put("file", "System.IO.Stream"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java index 8bb5401e3c..5eb052d1a5 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCppCodegen.java @@ -35,6 +35,7 @@ import org.slf4j.LoggerFactory; import java.io.File; import java.net.URL; import java.util.Arrays; +import java.util.Map; abstract public class AbstractCppCodegen extends DefaultCodegen implements CodegenConfig { private static final Logger LOGGER = LoggerFactory.getLogger(AbstractCppCodegen.class); @@ -150,7 +151,7 @@ abstract public class AbstractCppCodegen extends DefaultCodegen implements Codeg @Override public String toApiName(String type) { - return sanitizeName(modelNamePrefix + Character.toUpperCase(type.charAt(0)) + type.substring(1) + "Api"); + return sanitizeName(modelNamePrefix + super.toApiName(type)); } @Override @@ -306,4 +307,9 @@ abstract public class AbstractCppCodegen extends DefaultCodegen implements Codeg this.additionalProperties.put("serverHost", host); } } + + @Override + public Map postProcessModels(Map objs) { + return postProcessModelsEnum(objs); + } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java index 04a626eac7..ddb9aa0224 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractFSharpCodegen.java @@ -30,10 +30,13 @@ import org.openapitools.codegen.utils.ModelUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.lang.Exception; + import java.io.File; import java.util.*; import static org.openapitools.codegen.utils.StringUtils.camelize; +import static org.openapitools.codegen.utils.StringUtils.underscore; public abstract class AbstractFSharpCodegen extends DefaultCodegen implements CodegenConfig { @@ -246,11 +249,6 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co additionalProperties.put(CodegenConstants.PACKAGE_NAME, packageName); } - if (additionalProperties.containsKey(CodegenConstants.INVOKER_PACKAGE)) { - LOGGER.warn(String.format(Locale.ROOT, "%s is not used by F# generators. Please use %s", - CodegenConstants.INVOKER_PACKAGE, CodegenConstants.PACKAGE_NAME)); - } - // {{packageTitle}} if (additionalProperties.containsKey(CodegenConstants.PACKAGE_TITLE)) { setPackageTitle((String) additionalProperties.get(CodegenConstants.PACKAGE_TITLE)); @@ -300,32 +298,8 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co additionalProperties.put(CodegenConstants.USE_DATETIME_OFFSET, useDateTimeOffsetFlag); } - if (additionalProperties.containsKey(CodegenConstants.USE_COLLECTION)) { - setUseCollection(convertPropertyToBooleanAndWriteBack(CodegenConstants.USE_COLLECTION)); - } else { - additionalProperties.put(CodegenConstants.USE_COLLECTION, useCollection); - } - - if (additionalProperties.containsKey(CodegenConstants.RETURN_ICOLLECTION)) { - setReturnICollection(convertPropertyToBooleanAndWriteBack(CodegenConstants.RETURN_ICOLLECTION)); - } else { - additionalProperties.put(CodegenConstants.RETURN_ICOLLECTION, returnICollection); - } - - if (additionalProperties.containsKey(CodegenConstants.NETCORE_PROJECT_FILE)) { - setNetCoreProjectFileFlag(convertPropertyToBooleanAndWriteBack(CodegenConstants.NETCORE_PROJECT_FILE)); - } else { - additionalProperties.put(CodegenConstants.NETCORE_PROJECT_FILE, netCoreProjectFileFlag); - } - - if (additionalProperties.containsKey(CodegenConstants.INTERFACE_PREFIX)) { - String useInterfacePrefix = additionalProperties.get(CodegenConstants.INTERFACE_PREFIX).toString(); - if ("false".equals(useInterfacePrefix.toLowerCase(Locale.ROOT))) { - setInterfacePrefix(""); - } else if (!"true".equals(useInterfacePrefix.toLowerCase(Locale.ROOT))) { - // NOTE: if user passes "true" explicitly, we use the default I- prefix. The other supported case here is a custom prefix. - setInterfacePrefix(sanitizeName(useInterfacePrefix)); - } + if (additionalProperties.containsKey(CodegenConstants.MODEL_PROPERTY_NAMING)) { + setModelPropertyNaming((String) additionalProperties.get(CodegenConstants.MODEL_PROPERTY_NAMING)); } // This either updates additionalProperties with the above fixes, or sets the default if the option was not specified. @@ -374,62 +348,46 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co /* * F# does not allow forward declarations, so files must be imported in the correct order. * Output of CodeGen models must therefore bein dependency order (rather than alphabetical order, which seems to be the default). - * We achieve this by creating a comparator to check whether the first model contains any properties of the comparison model's type * This could probably be made more efficient if absolutely needed. */ @SuppressWarnings({"unchecked"}) public Map postProcessDependencyOrders(final Map objs) { - Comparator comparator = new Comparator() { - @Override - public int compare(String key1, String key2) { - // Get the corresponding models - CodegenModel model1 = ModelUtils.getModelByName(key1, objs); - CodegenModel model2 = ModelUtils.getModelByName(key2, objs); - List complexVars1 = new ArrayList(); - List complexVars2 = new ArrayList(); + Map> dependencies = new HashMap>(); - for (CodegenProperty prop : model1.vars) { - if (prop.complexType != null) - complexVars1.add(prop.complexType); - } - for (CodegenProperty prop : model2.vars) { - if (prop.complexType != null) - complexVars2.add(prop.complexType); - } - - // if first has complex vars and second has none, first is greater - if (complexVars1.size() > 0 && complexVars2.size() == 0) - return 1; - - // if second has complex vars and first has none, first is lesser - if (complexVars1.size() == 0 && complexVars2.size() > 0) - return -1; - - // if first has complex var that matches the second's key, first is greater - if (complexVars1.contains(key2)) - return 1; - - // if second has complex var that matches the first's key, first is lesser - if (complexVars2.contains(key1)) - return -1; - - // if none of the above, don't care - return 0; + List classNames = new ArrayList(); + for (String k : objs.keySet()) { + CodegenModel model = ModelUtils.getModelByName(k, objs); + if (model == null || model.classname == null) { + throw new RuntimeException("Null model encountered"); + } + dependencies.put(model.classname, model.imports); + + classNames.add(model.classname); + } + + Object[] sortedKeys = classNames.toArray(); + + for (int i1 = 0; i1 < sortedKeys.length; i1++) { + String k1 = sortedKeys[i1].toString(); + for (int i2 = i1 + 1; i2 < sortedKeys.length; i2++) { + String k2 = sortedKeys[i2].toString(); + if (dependencies.get(k2).contains(k1)) { + sortedKeys[i2] = k1; + sortedKeys[i1] = k2; + i1 = -1; + break; + } } - }; - PriorityQueue queue = new PriorityQueue(objs.size(), comparator); - for (Object k : objs.keySet()) { - queue.add(k.toString()); } Map sorted = new LinkedHashMap(); - - while (queue.size() > 0) { - String key = queue.poll(); - sorted.put(key, objs.get(key)); + for (int i = sortedKeys.length - 1; i >= 0; i--) { + Object k = sortedKeys[i]; + sorted.put(k.toString(), objs.get(k)); } + return sorted; } @@ -684,6 +642,39 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co return camelize(sanitizeName(operationId)); } + public String getModelPropertyNaming() { + return this.modelPropertyNaming; + } + + public void setModelPropertyNaming(String naming) { + if ("original".equals(naming) || "camelCase".equals(naming) || + "PascalCase".equals(naming) || "snake_case".equals(naming)) { + this.modelPropertyNaming = naming; + } else { + throw new IllegalArgumentException("Invalid model property naming '" + + naming + "'. Must be 'original', 'camelCase', " + + "'PascalCase' or 'snake_case'"); + } + } + + + public String getNameUsingModelPropertyNaming(String name) { + switch (CodegenConstants.MODEL_PROPERTY_NAMING_TYPE.valueOf(getModelPropertyNaming())) { + case original: + return name; + case camelCase: + return camelize(name, true); + case PascalCase: + return camelize(name); + case snake_case: + return underscore(name); + default: + throw new IllegalArgumentException("Invalid model property naming '" + + name + "'. Must be 'original', 'camelCase', " + + "'PascalCase' or 'snake_case'"); + } + } + @Override public String toVarName(String name) { // sanitize name @@ -694,9 +685,8 @@ public abstract class AbstractFSharpCodegen extends DefaultCodegen implements Co return name; } - // camelize the variable name - // pet_id => PetId - name = camelize(name); + name = getNameUsingModelPropertyNaming(name); + // for reserved word or word starting with number, append _ if (isReservedWord(name) || name.matches("^\\d.*")) { name = escapeReservedWord(name); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java index 70f251d33c..17e89949d4 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGoCodegen.java @@ -96,6 +96,7 @@ public abstract class AbstractGoCodegen extends DefaultCodegen implements Codege typeMapping.put("number", "float32"); typeMapping.put("float", "float32"); typeMapping.put("double", "float64"); + typeMapping.put("BigDecimal", "float64"); typeMapping.put("boolean", "bool"); typeMapping.put("string", "string"); typeMapping.put("UUID", "string"); @@ -376,6 +377,11 @@ public abstract class AbstractGoCodegen extends DefaultCodegen implements Codege boolean addedOSImport = false; boolean addedReflectImport = false; for (CodegenOperation operation : operations) { + // import "os" if the operation uses files + if (!addedOSImport && "*os.File".equals(operation.returnType)) { + imports.add(createMapping("import", "os")); + addedOSImport = true; + } for (CodegenParameter param : operation.allParams) { // import "os" if the operation uses files if (!addedOSImport && "*os.File".equals(param.dataType)) { @@ -489,7 +495,8 @@ public abstract class AbstractGoCodegen extends DefaultCodegen implements Codege if (v instanceof CodegenModel) { CodegenModel model = (CodegenModel) v; for (CodegenProperty param : model.vars) { - if (!addedTimeImport && "time.Time".equals(param.baseType)) { + if (!addedTimeImport + && "time.Time".equals(param.dataType) || ("[]time.Time".equals(param.dataType))) { imports.add(createMapping("import", "time")); addedTimeImport = true; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index f04d4ac137..d48702a62a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -43,6 +43,8 @@ import static org.openapitools.codegen.utils.StringUtils.*; public abstract class AbstractJavaCodegen extends DefaultCodegen implements CodegenConfig { private static final Logger LOGGER = LoggerFactory.getLogger(AbstractJavaCodegen.class); + private static final String ARTIFACT_VERSION_DEFAULT_VALUE = "1.0.0"; + public static final String FULL_JAVA_UTIL = "fullJavaUtil"; public static final String DEFAULT_LIBRARY = ""; public static final String DATE_LIBRARY = "dateLibrary"; @@ -60,7 +62,7 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code protected String invokerPackage = "org.openapitools"; protected String groupId = "org.openapitools"; protected String artifactId = "openapi-java"; - protected String artifactVersion = "1.0.0"; + protected String artifactVersion = null; protected String artifactUrl = "https://github.com/openapitools/openapi-generator"; protected String artifactDescription = "OpenAPI Java"; protected String developerName = "OpenAPI-Generator Contributors"; @@ -144,7 +146,7 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code cliOptions.add(new CliOption(CodegenConstants.INVOKER_PACKAGE, CodegenConstants.INVOKER_PACKAGE_DESC).defaultValue(this.getInvokerPackage())); cliOptions.add(new CliOption(CodegenConstants.GROUP_ID, CodegenConstants.GROUP_ID_DESC).defaultValue(this.getGroupId())); cliOptions.add(new CliOption(CodegenConstants.ARTIFACT_ID, CodegenConstants.ARTIFACT_ID_DESC).defaultValue(this.getArtifactId())); - cliOptions.add(new CliOption(CodegenConstants.ARTIFACT_VERSION, CodegenConstants.ARTIFACT_VERSION_DESC).defaultValue(this.getArtifactVersion())); + cliOptions.add(new CliOption(CodegenConstants.ARTIFACT_VERSION, CodegenConstants.ARTIFACT_VERSION_DESC).defaultValue(ARTIFACT_VERSION_DEFAULT_VALUE)); cliOptions.add(new CliOption(CodegenConstants.ARTIFACT_URL, CodegenConstants.ARTIFACT_URL_DESC).defaultValue(this.getArtifactUrl())); cliOptions.add(new CliOption(CodegenConstants.ARTIFACT_DESCRIPTION, CodegenConstants.ARTIFACT_DESCRIPTION_DESC).defaultValue(this.getArtifactDescription())); cliOptions.add(new CliOption(CodegenConstants.SCM_CONNECTION, CodegenConstants.SCM_CONNECTION_DESC).defaultValue(this.getScmConnection())); @@ -1038,12 +1040,18 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code } } - // If no artifactVersion is provided in additional properties, version from API specification is used. - // If none of them is provided then fallbacks to default version - if (additionalProperties.containsKey(CodegenConstants.ARTIFACT_VERSION)) { - this.setArtifactVersion((String) additionalProperties.get(CodegenConstants.ARTIFACT_VERSION)); - } else if (openAPI.getInfo() != null && openAPI.getInfo().getVersion() != null) { - this.setArtifactVersion(openAPI.getInfo().getVersion()); + if(artifactVersion == null) { + // If no artifactVersion is provided in additional properties, version from API specification is used. + // If none of them is provided then fallbacks to default version + if (additionalProperties.containsKey(CodegenConstants.ARTIFACT_VERSION)) { + this.setArtifactVersion((String) additionalProperties.get(CodegenConstants.ARTIFACT_VERSION)); + } else if (openAPI.getInfo() != null && openAPI.getInfo().getVersion() != null) { + this.setArtifactVersion(openAPI.getInfo().getVersion()); + } else { + this.setArtifactVersion(ARTIFACT_VERSION_DEFAULT_VALUE); + } + } else { + additionalProperties.put(CodegenConstants.ARTIFACT_VERSION, artifactVersion); } if (additionalProperties.containsKey(CodegenConstants.SNAPSHOT_VERSION)) { @@ -1433,7 +1441,10 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code * @return SNAPSHOT version */ private String buildSnapshotVersion(String version) { - return version + "-" + "SNAPSHOT"; + if(version.endsWith("-SNAPSHOT")) { + return version; + } + return version + "-SNAPSHOT"; } public void setSupportJava6(boolean value) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java index f7c0865966..4b2d39877d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaJAXRSServerCodegen.java @@ -244,11 +244,10 @@ public abstract class AbstractJavaJAXRSServerCodegen extends AbstractJavaCodegen @Override public String toApiName(final String name) { String computed = name; - if (computed.length() == 0) { - return "DefaultApi"; + if (computed.length() > 0) { + computed = sanitizeName(computed); } - computed = sanitizeName(computed); - return camelize(computed) + "Api"; + return super.toApiName(computed); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java index 5351c1fe2d..da9f4f1419 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractKotlinCodegen.java @@ -54,6 +54,8 @@ public abstract class AbstractKotlinCodegen extends DefaultCodegen implements Co protected String modelDocPath = "docs/"; protected boolean parcelizeModels = false; + protected boolean serializableModel = false; + protected CodegenConstants.ENUM_PROPERTY_NAMING_TYPE enumPropertyNaming = CodegenConstants.ENUM_PROPERTY_NAMING_TYPE.camelCase; protected SERIALIZATION_LIBRARY_TYPE serializationLibrary = SERIALIZATION_LIBRARY_TYPE.moshi; @@ -215,6 +217,7 @@ public abstract class AbstractKotlinCodegen extends DefaultCodegen implements Co cliOptions.add(serializationLibraryOpt.defaultValue(serializationLibrary.name())); cliOptions.add(new CliOption(CodegenConstants.PARCELIZE_MODELS, CodegenConstants.PARCELIZE_MODELS_DESC)); + cliOptions.add(new CliOption(CodegenConstants.SERIALIZABLE_MODEL, CodegenConstants.SERIALIZABLE_MODEL_DESC)); } @Override @@ -411,16 +414,14 @@ public abstract class AbstractKotlinCodegen extends DefaultCodegen implements Co LOGGER.warn(CodegenConstants.INVOKER_PACKAGE + " with " + this.getName() + " generator is ignored. Use " + CodegenConstants.PACKAGE_NAME + "."); } + if (additionalProperties.containsKey(CodegenConstants.SERIALIZABLE_MODEL)) { + this.setSerializableModel(Boolean.valueOf((String) additionalProperties.get(CodegenConstants.SERIALIZABLE_MODEL))); + } else { + additionalProperties.put(CodegenConstants.SERIALIZABLE_MODEL, serializableModel); + } + if (additionalProperties.containsKey(CodegenConstants.PARCELIZE_MODELS)) { this.setParcelizeModels(Boolean.valueOf((String) additionalProperties.get(CodegenConstants.PARCELIZE_MODELS))); - LOGGER.info(CodegenConstants.PARCELIZE_MODELS + " depends on the android framework and " + - "experimental parcelize feature. Make sure your build applies the android plugin:\n" + - "apply plugin: 'com.android.library' OR apply plugin: 'com.android.application'.\n" + - "and enables the experimental features:\n" + - "androidExtensions {\n" + - " experimental = true\n" + - "}" - ); } else { additionalProperties.put(CodegenConstants.PARCELIZE_MODELS, parcelizeModels); } @@ -468,6 +469,13 @@ public abstract class AbstractKotlinCodegen extends DefaultCodegen implements Co this.parcelizeModels = parcelizeModels; } + public boolean isSerializableModel() { + return serializableModel; + } + + public void setSerializableModel(boolean serializableModel) { + this.serializableModel = serializableModel; + } /** * Return the sanitized variable name for enum * diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpClientCodegen.java index 6617dbe14c..8141e6f051 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpClientCodegen.java @@ -95,6 +95,7 @@ public class CSharpClientCodegen extends AbstractCSharpCodegen { typeMapping.put("long", "long"); typeMapping.put("double", "double"); typeMapping.put("number", "decimal"); + typeMapping.put("BigDecimal", "decimal"); typeMapping.put("DateTime", "DateTime"); typeMapping.put("date", "DateTime"); typeMapping.put("UUID", "Guid"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNetCoreClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNetCoreClientCodegen.java index b032ac3bee..2856fd6738 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNetCoreClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNetCoreClientCodegen.java @@ -94,6 +94,7 @@ public class CSharpNetCoreClientCodegen extends AbstractCSharpCodegen { typeMapping.put("long", "long"); typeMapping.put("double", "double"); typeMapping.put("number", "decimal"); + typeMapping.put("BigDecimal", "decimal"); typeMapping.put("DateTime", "DateTime"); typeMapping.put("date", "DateTime"); typeMapping.put("file", "System.IO.Stream"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppPistacheServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppPistacheServerCodegen.java index cf9d78ed5d..3de0cbf5b9 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppPistacheServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppPistacheServerCodegen.java @@ -27,6 +27,8 @@ import org.apache.commons.lang3.StringUtils; import org.openapitools.codegen.*; import org.openapitools.codegen.utils.ModelUtils; import org.openapitools.codegen.utils.URLPathUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.util.*; @@ -35,10 +37,15 @@ import java.net.URL; import static org.openapitools.codegen.utils.StringUtils.*; public class CppPistacheServerCodegen extends AbstractCppCodegen { + private static final Logger LOGGER = LoggerFactory.getLogger(CppPistacheServerCodegen.class); + protected String implFolder = "impl"; protected boolean isAddExternalLibs = true; + protected boolean isUseStructModel = false; public static final String OPTIONAL_EXTERNAL_LIB = "addExternalLibs"; public static final String OPTIONAL_EXTERNAL_LIB_DESC = "Add the Possibility to fetch and compile external Libraries needed by this Framework."; + public static final String OPTION_USE_STRUCT_MODEL = "useStructModel"; + public static final String OPTION_USE_STRUCT_MODEL_DESC = "Use struct-based model template instead of get/set-based model template"; public static final String HELPERS_PACKAGE_NAME = "helpersPackage"; public static final String HELPERS_PACKAGE_NAME_DESC = "Specify the package name to be used for the helpers (e.g. org.openapitools.server.helpers)."; protected final String PREFIX = ""; @@ -68,9 +75,6 @@ public class CppPistacheServerCodegen extends AbstractCppCodegen { apiPackage = "org.openapitools.server.api"; modelPackage = "org.openapitools.server.model"; - modelTemplateFiles.put("model-header.mustache", ".h"); - modelTemplateFiles.put("model-source.mustache", ".cpp"); - apiTemplateFiles.put("api-header.mustache", ".h"); apiTemplateFiles.put("api-source.mustache", ".cpp"); apiTemplateFiles.put("api-impl-header.mustache", ".h"); @@ -81,6 +85,7 @@ public class CppPistacheServerCodegen extends AbstractCppCodegen { cliOptions.clear(); addSwitch(OPTIONAL_EXTERNAL_LIB, OPTIONAL_EXTERNAL_LIB_DESC, this.isAddExternalLibs); addOption(HELPERS_PACKAGE_NAME, HELPERS_PACKAGE_NAME_DESC, this.helpersPackage); + addSwitch(OPTION_USE_STRUCT_MODEL, OPTION_USE_STRUCT_MODEL_DESC, this.isUseStructModel); reservedWords = new HashSet<>(); @@ -144,6 +149,23 @@ public class CppPistacheServerCodegen extends AbstractCppCodegen { } else { additionalProperties.put(OPTIONAL_EXTERNAL_LIB, isAddExternalLibs); } + + setupModelTemplate(); + } + + private void setupModelTemplate() { + if (additionalProperties.containsKey(OPTION_USE_STRUCT_MODEL)) + isUseStructModel = convertPropertyToBooleanAndWriteBack(OPTION_USE_STRUCT_MODEL); + + if (isUseStructModel) { + LOGGER.info("Using struct-based model template"); + modelTemplateFiles.put("model-struct-header.mustache", ".h"); + modelTemplateFiles.put("model-struct-source.mustache", ".cpp"); + } else { + LOGGER.info("Using get/set-based model template"); + modelTemplateFiles.put("model-header.mustache", ".h"); + modelTemplateFiles.put("model-source.mustache", ".cpp"); + } } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQt5AbstractCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQt5AbstractCodegen.java index ec03a45490..7ab3d8bfef 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQt5AbstractCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CppQt5AbstractCodegen.java @@ -332,11 +332,6 @@ public class CppQt5AbstractCodegen extends AbstractCppCodegen implements Codegen return objs; } - @Override - public Map postProcessModels(Map objs) { - return postProcessModelsEnum(objs); - } - @Override public String toEnumValue(String value, String datatype) { return escapeText(value); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpFunctionsServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpFunctionsServerCodegen.java new file mode 100644 index 0000000000..c82a819bd9 --- /dev/null +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpFunctionsServerCodegen.java @@ -0,0 +1,151 @@ +/* + * Copyright 2018 OpenAPI-Generator Contributors (https://openapi-generator.tech) + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. x + */ + +package org.openapitools.codegen.languages; + +import org.openapitools.codegen.*; +import org.openapitools.codegen.meta.GeneratorMetadata; +import org.openapitools.codegen.meta.Stability; +import io.swagger.models.properties.ArrayProperty; +import io.swagger.models.properties.MapProperty; +import io.swagger.models.properties.Property; +import io.swagger.models.parameters.Parameter; + +import java.io.File; +import java.util.*; + +import org.apache.commons.lang3.StringUtils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class FsharpFunctionsServerCodegen extends AbstractFSharpCodegen { + public static final String PROJECT_NAME = "projectName"; + + static Logger LOGGER = LoggerFactory.getLogger(FsharpFunctionsServerCodegen.class); + + public CodegenType getTag() { + return CodegenType.SERVER; + } + + public String getName() { + return "fsharp-functions"; + } + + public String getHelp() { + return "Generates a fsharp-functions server (beta)."; + } + + public FsharpFunctionsServerCodegen() { + super(); + + generatorMetadata = GeneratorMetadata.newBuilder(generatorMetadata) + .stability(Stability.BETA) + .build(); + + // CLI options + addOption(CodegenConstants.LICENSE_URL, + CodegenConstants.LICENSE_URL_DESC, + licenseUrl); + + addOption(CodegenConstants.LICENSE_NAME, + CodegenConstants.LICENSE_NAME_DESC, + licenseName); + + addOption(CodegenConstants.PACKAGE_COPYRIGHT, + CodegenConstants.PACKAGE_COPYRIGHT_DESC, + packageCopyright); + + addOption(CodegenConstants.PACKAGE_AUTHORS, + CodegenConstants.PACKAGE_AUTHORS_DESC, + packageAuthors); + + addOption(CodegenConstants.PACKAGE_TITLE, + CodegenConstants.PACKAGE_TITLE_DESC, + packageTitle); + + addOption(CodegenConstants.PACKAGE_NAME, + "F# module name (convention: Title.Case).", + packageName); + + addOption(CodegenConstants.PACKAGE_VERSION, + "F# package version.", + packageVersion); + + addOption(CodegenConstants.OPTIONAL_PROJECT_GUID, + CodegenConstants.OPTIONAL_PROJECT_GUID_DESC, + null); + + addOption(CodegenConstants.SOURCE_FOLDER, + CodegenConstants.SOURCE_FOLDER_DESC, + sourceFolder); + } + + @Override + public void processOpts() { + super.processOpts(); + + modelPackage = "Model"; + embeddedTemplateDir = templateDir = "fsharp-functions-server"; + + apiTemplateFiles.put("Handler.mustache", "Handler.fs"); + apiTemplateFiles.put("HandlerParams.mustache", "HandlerParams.fs"); + apiTemplateFiles.put("ServiceInterface.mustache", "ServiceInterface.fs"); + apiTemplateFiles.put("ServiceImpl.mustache", "Service.fs"); + modelTemplateFiles.put("Model.mustache", ".fs"); + + String implFolder = sourceFolder + File.separator + "impl"; + + supportingFiles.add(new SupportingFile("gitignore.mustache", "", ".gitignore")); + supportingFiles.add(new SupportingFile("build.sh.mustache", projectFolder, "build.sh")); + supportingFiles.add(new SupportingFile("build.bat.mustache", projectFolder, "build.bat")); + supportingFiles.add(new SupportingFile("host.json", "", "host.json")); + supportingFiles.add(new SupportingFile("local.settings.json", "", "local.settings.json")); + supportingFiles.add(new SupportingFile("Project.fsproj.mustache", projectFolder, packageName + ".fsproj")); + + + } + + @Override + public String modelFileFolder() { + return super.modelFileFolder().replace("Model", "model"); + } + + @Override + public String apiFileFolder() { + return super.apiFileFolder() + File.separator + "api"; + } + + private String implFileFolder() { + return outputFolder + File.separator + sourceFolder + File.separator + "impl"; + } + + @Override() + public String toModelImport(String name) { + return packageName + "." + modelPackage() + "." + name; + } + + @Override + public String apiFilename(String templateName, String tag) { + String result = super.apiFilename(templateName, tag); + if (templateName.endsWith("Impl.mustache")) { + int ix = result.lastIndexOf(File.separatorChar); + result = result.substring(0, ix) + result.substring(ix, result.length() - 2) + "fs"; + result = result.replace(apiFileFolder(), implFileFolder()); + } + return result; + } +} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpGiraffeServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpGiraffeServerCodegen.java index 8bbb27912a..c3f172713b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpGiraffeServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FsharpGiraffeServerCodegen.java @@ -22,6 +22,8 @@ import io.swagger.v3.oas.models.OpenAPI; import org.openapitools.codegen.CodegenConstants; import org.openapitools.codegen.CodegenOperation; import org.openapitools.codegen.CodegenType; +import org.openapitools.codegen.meta.GeneratorMetadata; +import org.openapitools.codegen.meta.Stability; import org.openapitools.codegen.SupportingFile; import org.openapitools.codegen.utils.URLPathUtils; import org.slf4j.Logger; @@ -59,6 +61,10 @@ public class FsharpGiraffeServerCodegen extends AbstractFSharpCodegen { public FsharpGiraffeServerCodegen() { super(); + generatorMetadata = GeneratorMetadata.newBuilder(generatorMetadata) + .stability(Stability.BETA) + .build(); + modelPackage = "Model"; apiTemplateFiles.put("Handler.mustache", "Handler.fs"); @@ -187,7 +193,6 @@ public class FsharpGiraffeServerCodegen extends AbstractFSharpCodegen { LOGGER.warn("Library flag not currently supported."); String authFolder = sourceFolder + File.separator + "auth"; - String serviceFolder = sourceFolder + File.separator + "services"; String implFolder = sourceFolder + File.separator + "impl"; String helperFolder = sourceFolder + File.separator + "helpers"; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellHttpClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellHttpClientCodegen.java index 889cad9543..35195ca1dc 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellHttpClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellHttpClientCodegen.java @@ -63,6 +63,7 @@ public class HaskellHttpClientCodegen extends DefaultCodegen implements CodegenC public static final String PROP_CABAL_VERSION = "cabalVersion"; public static final String PROP_CONFIG_TYPE = "configType"; public static final String PROP_DATETIME_FORMAT = "dateTimeFormat"; + public static final String PROP_DATETIME_PARSE_FORMAT = "dateTimeParseFormat"; public static final String PROP_CUSTOM_TEST_INSTANCE_MODULE = "customTestInstanceModule"; public static final String PROP_DATE_FORMAT = "dateFormat"; public static final String PROP_GENERATE_ENUMS = "generateEnums"; @@ -222,6 +223,7 @@ public class HaskellHttpClientCodegen extends DefaultCodegen implements CodegenC typeMapping.put("float", "Float"); typeMapping.put("double", "Double"); typeMapping.put("number", "Double"); + typeMapping.put("BigDecimal", "Double"); typeMapping.put("integer", "Int"); typeMapping.put("file", "FilePath"); // lib @@ -270,6 +272,7 @@ public class HaskellHttpClientCodegen extends DefaultCodegen implements CodegenC cliOptions.add(CliOption.newBoolean(PROP_USE_KATIP, "Sets the default value for the UseKatip cabal flag. If true, the katip package provides logging instead of monad-logger").defaultValue((Boolean.TRUE.toString()))); cliOptions.add(CliOption.newString(PROP_DATETIME_FORMAT, "format string used to parse/render a datetime")); + cliOptions.add(CliOption.newString(PROP_DATETIME_PARSE_FORMAT, "overrides the format string used to parse a datetime")); cliOptions.add(CliOption.newString(PROP_DATE_FORMAT, "format string used to parse/render a date").defaultValue(defaultDateFormat)); cliOptions.add(CliOption.newString(PROP_CUSTOM_TEST_INSTANCE_MODULE, "test module used to provide typeclass instances for types not known by the generator")); @@ -320,9 +323,9 @@ public class HaskellHttpClientCodegen extends DefaultCodegen implements CodegenC } } - public void setDateTimeFormat(String value) { - setStringProp(PROP_DATETIME_FORMAT, value); - } + public void setDateTimeFormat(String value) { setStringProp(PROP_DATETIME_FORMAT, value); } + + public void setDateTimeParseFormat(String value) { setStringProp(PROP_DATETIME_PARSE_FORMAT, value); } public void setDateFormat(String value) { setStringProp(PROP_DATE_FORMAT, value); } @@ -437,6 +440,12 @@ public class HaskellHttpClientCodegen extends DefaultCodegen implements CodegenC setDateTimeFormat(null); // default should be null } + if (additionalProperties.containsKey(PROP_DATETIME_PARSE_FORMAT)) { + setDateTimeParseFormat(additionalProperties.get(PROP_DATETIME_PARSE_FORMAT).toString()); + } else { + setDateTimeParseFormat(null); // default should be null + } + if (additionalProperties.containsKey(PROP_DATE_FORMAT)) { setDateFormat(additionalProperties.get(PROP_DATE_FORMAT).toString()); } else { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellServantCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellServantCodegen.java index 665cd9b85d..ec30ae275e 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellServantCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/HaskellServantCodegen.java @@ -171,6 +171,7 @@ public class HaskellServantCodegen extends DefaultCodegen implements CodegenConf typeMapping.put("file", "FilePath"); typeMapping.put("binary", "FilePath"); typeMapping.put("number", "Double"); + typeMapping.put("BigDecimal", "Double"); typeMapping.put("any", "Value"); typeMapping.put("UUID", "UUID"); typeMapping.put("URI", "Text"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaJAXRSSpecServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaJAXRSSpecServerCodegen.java index 42251432c2..bb969ae172 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaJAXRSSpecServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaJAXRSSpecServerCodegen.java @@ -17,19 +17,23 @@ package org.openapitools.codegen.languages; +import static org.openapitools.codegen.utils.StringUtils.camelize; + import io.swagger.v3.oas.models.Operation; import io.swagger.v3.oas.models.media.Schema; + import org.apache.commons.lang3.StringUtils; -import org.openapitools.codegen.*; +import org.openapitools.codegen.CliOption; +import org.openapitools.codegen.CodegenConstants; +import org.openapitools.codegen.CodegenModel; +import org.openapitools.codegen.CodegenOperation; +import org.openapitools.codegen.SupportingFile; import java.io.File; import java.util.ArrayList; -import java.util.LinkedHashMap; import java.util.List; import java.util.Map; -import static org.openapitools.codegen.utils.StringUtils.camelize; - public class JavaJAXRSSpecServerCodegen extends AbstractJavaJAXRSServerCodegen { public static final String INTERFACE_ONLY = "interfaceOnly"; @@ -39,6 +43,11 @@ public class JavaJAXRSSpecServerCodegen extends AbstractJavaJAXRSServerCodegen { public static final String JACKSON = "jackson"; public static final String OPEN_API_SPEC_FILE_LOCATION = "openApiSpecFileLocation"; + public static final String QUARKUS_LIBRARY = "quarkus"; + public static final String THORNTAIL_LIBRARY = "thorntail"; + public static final String OPEN_LIBERTY_LIBRARY = "openliberty"; + public static final String HELIDON_LIBRARY = "helidon"; + private boolean interfaceOnly = false; private boolean returnResponse = false; private boolean generatePom = true; @@ -84,8 +93,11 @@ public class JavaJAXRSSpecServerCodegen extends AbstractJavaJAXRSServerCodegen { removeOption(CodegenConstants.LIBRARY); CliOption library = new CliOption(CodegenConstants.LIBRARY, CodegenConstants.LIBRARY_DESC).defaultValue(DEFAULT_LIBRARY); - Map supportedLibraries = new LinkedHashMap<>(); - supportedLibraries.put(DEFAULT_LIBRARY, "JAXRS"); + supportedLibraries.put(DEFAULT_LIBRARY, "JAXRS spec only, to be deployed in an app server (TomEE, JBoss, WLS, ...)"); + supportedLibraries.put(QUARKUS_LIBRARY, "Server using Quarkus"); + supportedLibraries.put(THORNTAIL_LIBRARY, "Server using Thorntail"); + supportedLibraries.put(OPEN_LIBERTY_LIBRARY, "Server using Open Liberty"); + supportedLibraries.put(HELIDON_LIBRARY, "Server using Helidon"); library.setEnum(supportedLibraries); cliOptions.add(library); @@ -113,12 +125,20 @@ public class JavaJAXRSSpecServerCodegen extends AbstractJavaJAXRSServerCodegen { additionalProperties.remove(RETURN_RESPONSE); } } - if (additionalProperties.containsKey(USE_SWAGGER_ANNOTATIONS)) { - useSwaggerAnnotations = Boolean.valueOf(additionalProperties.get(USE_SWAGGER_ANNOTATIONS).toString()); + if(QUARKUS_LIBRARY.equals(library) || THORNTAIL_LIBRARY.equals(library) || HELIDON_LIBRARY.equals(library) || OPEN_LIBERTY_LIBRARY.equals(library)) { + useSwaggerAnnotations = false; + } else { + if (additionalProperties.containsKey(USE_SWAGGER_ANNOTATIONS)) { + useSwaggerAnnotations = Boolean.valueOf(additionalProperties.get(USE_SWAGGER_ANNOTATIONS).toString()); + } } writePropertyBack(USE_SWAGGER_ANNOTATIONS, useSwaggerAnnotations); if (additionalProperties.containsKey(OPEN_API_SPEC_FILE_LOCATION)) { openApiSpecFileLocation = additionalProperties.get(OPEN_API_SPEC_FILE_LOCATION).toString(); + } else if(QUARKUS_LIBRARY.equals(library) || THORNTAIL_LIBRARY.equals(library) || HELIDON_LIBRARY.equals(library)) { + openApiSpecFileLocation = "src/main/resources/META-INF/openapi.yaml"; + } else if(OPEN_LIBERTY_LIBRARY.equals(library)) { + openApiSpecFileLocation = "src/main/webapp/META-INF/openapi.yaml"; } additionalProperties.put(OPEN_API_SPEC_FILE_LOCATION, openApiSpecFileLocation); @@ -154,6 +174,26 @@ public class JavaJAXRSSpecServerCodegen extends AbstractJavaJAXRSServerCodegen { } supportingFiles.add(new SupportingFile("openapi.mustache", fileFolder, fileName)); } + + if(QUARKUS_LIBRARY.equals(library)) { + writeOptional(outputFolder, new SupportingFile("application.properties.mustache", "src/main/resources", "application.properties")); + + writeOptional(outputFolder, new SupportingFile("Dockerfile.jvm.mustache", "src/main/docker", "Dockerfile.jvm")); + writeOptional(outputFolder, new SupportingFile("Dockerfile.native.mustache", "src/main/docker", "Dockerfile.native")); + writeOptional(outputFolder, new SupportingFile("dockerignore.mustache", "", ".dockerignore")); + } else if(OPEN_LIBERTY_LIBRARY.equals(library)) { + writeOptional(outputFolder, new SupportingFile("server.xml.mustache", "src/main/liberty/config", "server.xml")); + + writeOptional(outputFolder, new SupportingFile("beans.xml.mustache", "src/main/webapp/META-INF", "beans.xml")); + writeOptional(outputFolder, new SupportingFile("MANIFEST.MF.mustache", "src/main/webapp/META-INF", "MANIFEST.MF")); + writeOptional(outputFolder, new SupportingFile("microprofile-config.properties.mustache", "src/main/webapp/META-INF", "microprofile-config.properties")); + + writeOptional(outputFolder, new SupportingFile("ibm-web-ext.xml.mustache", "src/main/webapp/WEB-INF", "ibm-web-ext.xml")); + } else if(HELIDON_LIBRARY.equals(library)) { + writeOptional(outputFolder, new SupportingFile("logging.properties.mustache", "src/main/resources", "logging.properties")); + writeOptional(outputFolder, new SupportingFile("microprofile-config.properties.mustache", "src/main/resources/META-INF", "microprofile-config.properties")); + writeOptional(outputFolder, new SupportingFile("beans.xml.mustache", "src/main/webapp/META-INF", "beans.xml")); + } } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java index 299dcd661d..e8f9fd6fec 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClientCodegen.java @@ -144,6 +144,7 @@ public class JavascriptClientCodegen extends DefaultCodegen implements CodegenCo typeMapping.put("int", "Number"); typeMapping.put("float", "Number"); typeMapping.put("number", "Number"); + typeMapping.put("BigDecimal", "Number"); typeMapping.put("DateTime", "Date"); typeMapping.put("date", "Date"); typeMapping.put("long", "Number"); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java index a0a9277805..0543ff391e 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinClientCodegen.java @@ -19,25 +19,17 @@ package org.openapitools.codegen.languages; import org.openapitools.codegen.CliOption; import org.openapitools.codegen.CodegenConstants; -import org.openapitools.codegen.CodegenModel; import org.openapitools.codegen.CodegenOperation; -import org.openapitools.codegen.CodegenProperty; import org.openapitools.codegen.CodegenType; import org.openapitools.codegen.SupportingFile; import java.io.File; import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.Set; -import java.util.regex.Pattern; public class KotlinClientCodegen extends AbstractKotlinCodegen { - protected static final String VENDOR_EXTENSION_ESCAPED_NAME = "x-escapedName"; - protected static final String JVM = "jvm"; protected static final String MULTIPLATFORM = "multiplatform"; @@ -47,14 +39,6 @@ public class KotlinClientCodegen extends AbstractKotlinCodegen { protected String dateLibrary = DateLibrary.JAVA8.value; protected String collectionType = CollectionType.ARRAY.value; - // https://kotlinlang.org/docs/reference/grammar.html#Identifier - protected static final Pattern IDENTIFIER_PATTERN = - Pattern.compile("[\\p{Ll}\\p{Lm}\\p{Lo}\\p{Lt}\\p{Lu}\\p{Nl}_][\\p{Ll}\\p{Lm}\\p{Lo}\\p{Lt}\\p{Lu}\\p{Nl}\\p{Nd}_]*"); - - // https://kotlinlang.org/docs/reference/grammar.html#Identifier - protected static final String IDENTIFIER_REPLACEMENTS = - "[.;:/\\[\\]<>]"; - public enum DateLibrary { STRING("string"), THREETENBP("threetenbp"), @@ -212,7 +196,6 @@ public class KotlinClientCodegen extends AbstractKotlinCodegen { supportingFiles.add(new SupportingFile("infrastructure/HttpResponse.kt.mustache", infrastructureFolder, "HttpResponse.kt")); // multiplatform specific testing files - final String testFolder = (sourceFolder + File.separator + packageName + File.separator + "infrastructure").replace(".", "/"); supportingFiles.add(new SupportingFile("commonTest/coroutine.mustache", "src/commonTest/kotlin/util", "Coroutine.kt")); supportingFiles.add(new SupportingFile("iosTest/coroutine.mustache", "src/iosTest/kotlin/util", "Coroutine.kt")); supportingFiles.add(new SupportingFile("jvmTest/coroutine.mustache", "src/jvmTest/kotlin/util", "Coroutine.kt")); @@ -253,58 +236,6 @@ public class KotlinClientCodegen extends AbstractKotlinCodegen { } } - @Override - public Map postProcessModels(Map objs) { - objs = super.postProcessModels(objs); - return postProcessModelsEscapeNames(objs); - } - - @SuppressWarnings("unchecked") - private static Map postProcessModelsEscapeNames(Map objs) { - List models = (List) objs.get("models"); - for (Object _mo : models) { - Map mo = (Map) _mo; - CodegenModel cm = (CodegenModel) mo.get("model"); - - if (cm.vars != null) { - for (CodegenProperty var : cm.vars) { - var.vendorExtensions.put(VENDOR_EXTENSION_ESCAPED_NAME, escapeIdentifier(var.name)); - } - } - if (cm.requiredVars != null) { - for (CodegenProperty var : cm.requiredVars) { - var.vendorExtensions.put(VENDOR_EXTENSION_ESCAPED_NAME, escapeIdentifier(var.name)); - } - } - if (cm.optionalVars != null) { - for (CodegenProperty var : cm.optionalVars) { - var.vendorExtensions.put(VENDOR_EXTENSION_ESCAPED_NAME, escapeIdentifier(var.name)); - } - } - } - return objs; - } - - private static String escapeIdentifier(String identifier) { - - // the kotlin grammar permits a wider set of characters in their identifiers that all target - // platforms permit (namely jvm). in order to remain compatible with target platforms, we - // initially replace all illegal target characters before escaping the identifier if required. - identifier = identifier.replaceAll(IDENTIFIER_REPLACEMENTS, "_"); - if (IDENTIFIER_PATTERN.matcher(identifier).matches()) return identifier; - return '`' + identifier + '`'; - } - - private static void removeDuplicates(List list) { - Set set = new HashSet<>(); - Iterator iterator = list.iterator(); - while (iterator.hasNext()) { - CodegenProperty item = iterator.next(); - if (set.contains(item.name)) iterator.remove(); - else set.add(item.name); - } - } - @Override @SuppressWarnings("unchecked") public Map postProcessOperationsWithModels(Map objs, List allModels) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java index 0df25cfd15..6c0c0c1345 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientCodegen.java @@ -531,7 +531,7 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig name = name.replaceAll("-", "_"); // e.g. PhoneNumberApi.py => phone_number_api.py - return underscore(name) + "_api"; + return underscore(name+ "_" + apiNameSuffix); } @Override @@ -541,11 +541,7 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig @Override public String toApiName(String name) { - if (name.length() == 0) { - return "DefaultApi"; - } - // e.g. phone_number_api => PhoneNumberApi - return camelize(name) + "Api"; + return super.toApiName(name); } @Override @@ -553,7 +549,7 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig if (name.length() == 0) { return "default_api"; } - return underscore(name) + "_api"; + return underscore(name+ "_" + apiNameSuffix); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientExperimentalCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientExperimentalCodegen.java index 4f5d3c3af5..71dd5d6113 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientExperimentalCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonClientExperimentalCodegen.java @@ -16,31 +16,50 @@ package org.openapitools.codegen.languages; -import java.text.DateFormat; -import java.text.SimpleDateFormat; - +import io.swagger.v3.oas.models.Operation; +import io.swagger.v3.oas.models.examples.Example; +import io.swagger.v3.oas.models.media.*; +import io.swagger.v3.oas.models.media.ArraySchema; +import io.swagger.v3.oas.models.media.MediaType; +import io.swagger.v3.oas.models.media.Schema; +import io.swagger.v3.oas.models.parameters.Parameter; +import io.swagger.v3.oas.models.parameters.RequestBody; +import io.swagger.v3.oas.models.responses.ApiResponse; +import org.apache.commons.io.FilenameUtils; +import org.apache.commons.lang3.StringUtils; +import org.openapitools.codegen.*; +import org.openapitools.codegen.examples.ExampleGenerator; +import org.openapitools.codegen.utils.ModelUtils; import org.openapitools.codegen.meta.GeneratorMetadata; import org.openapitools.codegen.meta.Stability; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import io.swagger.v3.oas.models.media.Schema; -import org.openapitools.codegen.*; -import org.openapitools.codegen.utils.ModelUtils; - +import java.text.DateFormat; +import java.text.SimpleDateFormat; +import java.io.File; import java.util.*; import java.util.regex.Pattern; +import static org.openapitools.codegen.utils.StringUtils.camelize; +import static org.openapitools.codegen.utils.StringUtils.underscore; + public class PythonClientExperimentalCodegen extends PythonClientCodegen { private static final Logger LOGGER = LoggerFactory.getLogger(PythonClientExperimentalCodegen.class); public PythonClientExperimentalCodegen() { super(); - supportingFiles.add(new SupportingFile("python-experimental/api_client.mustache", packagePath(), "api_client.py")); - apiDocTemplateFiles.put("python-experimental/api_doc.mustache", ".md"); + apiTemplateFiles.remove("api.mustache"); apiTemplateFiles.put("python-experimental/api.mustache", ".py"); + + apiDocTemplateFiles.remove("api_doc.mustache"); + apiDocTemplateFiles.put("python-experimental/api_doc.mustache", ".md"); + + modelDocTemplateFiles.remove("model_doc.mustache"); modelDocTemplateFiles.put("python-experimental/model_doc.mustache", ".md"); + + modelTemplateFiles.remove("model.mustache"); modelTemplateFiles.put("python-experimental/model.mustache", ".py"); generatorMetadata = GeneratorMetadata.newBuilder(generatorMetadata) @@ -48,6 +67,20 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen { .build(); } + @Override + public void processOpts() { + super.processOpts(); + + supportingFiles.remove(new SupportingFile("api_client.mustache", packagePath(), "api_client.py")); + supportingFiles.add(new SupportingFile("python-experimental/api_client.mustache", packagePath(), "api_client.py")); + + supportingFiles.add(new SupportingFile("python-experimental/model_utils.mustache", packagePath(), "model_utils.py")); + + // default this to true so the python ModelSimple models will be generated + ModelUtils.setGenerateAliasAsModel(true); + LOGGER.info(CodegenConstants.GENERATE_ALIAS_AS_MODEL + " is hard coded to true in this generator. Alias models will only be generated if they contain validations or enums"); + } + /** * Configures a friendly name for the generator. This will be used by the * generator to select the library with the -g flag. @@ -72,6 +105,7 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen { /** * Return the default value of the property + * * @param p OpenAPI property object * @return string presentation of the default value of the property */ @@ -158,8 +192,401 @@ public class PythonClientExperimentalCodegen extends PythonClientCodegen { } return defaultValue; } else { - return defaultObject.toString(); + return defaultObject.toString(); } } + @Override + public void postProcessModelProperty(CodegenModel model, CodegenProperty property) { + // add regex information to property + postProcessPattern(property.pattern, property.vendorExtensions); + } + + // override with any special post-processing for all models + @SuppressWarnings({"static-method", "unchecked"}) + public Map postProcessAllModels(Map objs) { + // loop through all models and delete ones where type!=object and the model has no validations and enums + // we will remove them because they are not needed + Map modelSchemasToRemove = new HashMap(); + for (Map.Entry entry : objs.entrySet()) { + Map inner = (Map) entry.getValue(); + List> models = (List>) inner.get("models"); + for (Map mo : models) { + CodegenModel cm = (CodegenModel) mo.get("model"); + Schema modelSchema = ModelUtils.getSchema(this.openAPI, cm.name); + CodegenProperty modelProperty = fromProperty("value", modelSchema); + if (cm.isEnum || cm.isAlias) { + if (!modelProperty.isEnum && !modelProperty.hasValidation) { + // remove these models because they are aliases and do not have any enums or validations + modelSchemasToRemove.put(cm.name, modelSchema); + } + } else if (cm.isArrayModel && !modelProperty.isEnum && !modelProperty.hasValidation) { + // remove any ArrayModels which lack validation and enums + modelSchemasToRemove.put(cm.name, modelSchema); + } + } + } + + // Remove modelSchemasToRemove models from objs + for (String modelName : modelSchemasToRemove.keySet()) { + objs.remove(modelName); + } + return objs; + } + + /** + * Convert OAS Property object to Codegen Property object + * + * @param name name of the property + * @param p OAS property object + * @return Codegen Property object + */ + @Override + public CodegenProperty fromProperty(String name, Schema p) { + // we have a custom version of this function to always set allowableValues.enumVars on all enum variables + CodegenProperty result = super.fromProperty(name, p); + if (result.isEnum) { + updateCodegenPropertyEnum(result); + } + return result; + } + + /** + * Update codegen property's enum by adding "enumVars" (with name and value) + * + * @param var list of CodegenProperty + */ + @Override + public void updateCodegenPropertyEnum(CodegenProperty var) { + // we have a custom version of this method to omit overwriting the defaultValue + Map allowableValues = var.allowableValues; + + // handle array + if (var.mostInnerItems != null) { + allowableValues = var.mostInnerItems.allowableValues; + } + + if (allowableValues == null) { + return; + } + + List values = (List) allowableValues.get("values"); + if (values == null) { + return; + } + + String varDataType = var.mostInnerItems != null ? var.mostInnerItems.dataType : var.dataType; + Optional referencedSchema = ModelUtils.getSchemas(openAPI).entrySet().stream() + .filter(entry -> Objects.equals(varDataType, toModelName(entry.getKey()))) + .map(Map.Entry::getValue) + .findFirst(); + String dataType = (referencedSchema.isPresent()) ? getTypeDeclaration(referencedSchema.get()) : varDataType; + + // put "enumVars" map into `allowableValues", including `name` and `value` + List> enumVars = new ArrayList<>(); + String commonPrefix = findCommonPrefixOfVars(values); + int truncateIdx = commonPrefix.length(); + for (Object value : values) { + Map enumVar = new HashMap<>(); + String enumName; + if (truncateIdx == 0) { + enumName = value.toString(); + } else { + enumName = value.toString().substring(truncateIdx); + if ("".equals(enumName)) { + enumName = value.toString(); + } + } + + enumVar.put("name", toEnumVarName(enumName, dataType)); + enumVar.put("value", toEnumValue(value.toString(), dataType)); + enumVar.put("isString", isDataTypeString(dataType)); + enumVars.add(enumVar); + } + // if "x-enum-varnames" or "x-enum-descriptions" defined, update varnames + Map extensions = var.mostInnerItems != null ? var.mostInnerItems.getVendorExtensions() : var.getVendorExtensions(); + if (referencedSchema.isPresent()) { + extensions = referencedSchema.get().getExtensions(); + } + updateEnumVarsWithExtensions(enumVars, extensions); + allowableValues.put("enumVars", enumVars); + // overwriting defaultValue omitted from here + } + + @Override + public CodegenParameter fromRequestBody(RequestBody body, Set imports, String bodyParameterName) { + CodegenParameter result = super.fromRequestBody(body, imports, bodyParameterName); + // if we generated a model with a non-object type because it has validations or enums, + // make sure that the datatype of that body parameter refers to our model class + Content content = body.getContent(); + Set keySet = content.keySet(); + Object[] keyArray = (Object[]) keySet.toArray(); + MediaType mediaType = content.get(keyArray[0]); + Schema schema = mediaType.getSchema(); + String ref = schema.get$ref(); + if (ref == null) { + return result; + } + String modelName = ModelUtils.getSimpleRef(ref); + // the result lacks validation info so we need to make a CodegenProperty from the schema to check + // if we have validation and enum info exists + Schema realSchema = ModelUtils.getSchema(this.openAPI, modelName); + CodegenProperty modelProp = fromProperty("body", realSchema); + if (modelProp.isPrimitiveType && (modelProp.hasValidation || modelProp.isEnum)) { + String simpleDataType = result.dataType; + result.isPrimitiveType = false; + result.isModel = true; + result.dataType = modelName; + imports.add(modelName); + // set the example value + if (modelProp.isEnum) { + String value = modelProp._enum.get(0).toString(); + result.example = modelName + "(" + toEnumValue(value, simpleDataType) + ")"; + } else { + result.example = modelName + "(" + result.example + ")"; + } + } + return result; + } + + /** + * Convert OAS Response object to Codegen Response object + * + * @param responseCode HTTP response code + * @param response OAS Response object + * @return Codegen Response object + */ + @Override + public CodegenResponse fromResponse(String responseCode, ApiResponse response) { + // if a response points at a model whose type != object and it has validations and/or enums, then we will + // generate the model, and the response.isModel must be changed to true and response.baseType must be the name + // of the model. Point responses at models if the model is python class type ModelSimple + // When we serialize/deserialize ModelSimple models, validations and enums will be checked. + Schema responseSchema; + if (this.openAPI != null && this.openAPI.getComponents() != null) { + responseSchema = ModelUtils.unaliasSchema(this.openAPI, ModelUtils.getSchemaFromResponse(response)); + } else { // no model/alias defined + responseSchema = ModelUtils.getSchemaFromResponse(response); + } + + String newBaseType = null; + if (responseSchema != null) { + CodegenProperty cp = fromProperty("response", responseSchema); + if (cp.complexType != null) { + // check the referenced schema to see if it is an type=object model + Schema modelSchema = ModelUtils.getSchema(this.openAPI, cp.complexType); + if (modelSchema != null && !"object".equals(modelSchema.getType())) { + CodegenProperty modelProp = fromProperty("response", modelSchema); + if (modelProp.isEnum == true || modelProp.hasValidation == true) { + // this model has validations and/or enums so we will generate it + newBaseType = cp.complexType; + } + } + } else { + if (cp.isEnum == true || cp.hasValidation == true) { + // this model has validations and/or enums so we will generate it + Schema sc = ModelUtils.getSchemaFromResponse(response); + newBaseType = ModelUtils.getSimpleRef(sc.get$ref()); + } + } + } + + CodegenResponse result = super.fromResponse(responseCode, response); + if (newBaseType != null) { + result.isModel = true; + result.baseType = newBaseType; + result.dataType = newBaseType; + } + + return result; + } + + /** + * Set op's returnBaseType, returnType, examples etc. + * + * @param operation endpoint Operation + * @param schemas a map of the schemas in the openapi spec + * @param op endpoint CodegenOperation + * @param methodResponse the default ApiResponse for the endpoint + */ + @Override + public void handleMethodResponse(Operation operation, + Map schemas, + CodegenOperation op, + ApiResponse methodResponse) { + // we have a custom version of this method to handle endpoints that return models where + // type != object the model has validations and/or enums + // we do this by invoking our custom fromResponse method to create defaultResponse + // which we then use to set op.returnType and op.returnBaseType + CodegenResponse defaultResponse = fromResponse("defaultResponse", methodResponse); + Schema responseSchema = ModelUtils.unaliasSchema(this.openAPI, ModelUtils.getSchemaFromResponse(methodResponse)); + + if (responseSchema != null) { + op.returnBaseType = defaultResponse.baseType; + + // generate examples + String exampleStatusCode = "200"; + for (String key : operation.getResponses().keySet()) { + if (operation.getResponses().get(key) == methodResponse && !key.equals("default")) { + exampleStatusCode = key; + } + } + op.examples = new ExampleGenerator(schemas, this.openAPI).generateFromResponseSchema(exampleStatusCode, responseSchema, getProducesInfo(this.openAPI, operation)); + op.defaultResponse = toDefaultValue(responseSchema); + op.returnType = defaultResponse.dataType; + op.hasReference = schemas.containsKey(op.returnBaseType); + + // lookup discriminator + Schema schema = schemas.get(op.returnBaseType); + if (schema != null) { + CodegenModel cmod = fromModel(op.returnBaseType, schema); + op.discriminator = cmod.discriminator; + } + + if (defaultResponse.isListContainer) { + op.isListContainer = true; + } else if (defaultResponse.isMapContainer) { + op.isMapContainer = true; + } else { + op.returnSimpleType = true; + } + if (languageSpecificPrimitives().contains(op.returnBaseType) || op.returnBaseType == null) { + op.returnTypeIsPrimitive = true; + } + } + addHeaders(methodResponse, op.responseHeaders); + } + + + /** + * Return the sanitized variable name for enum + * + * @param value enum variable name + * @param datatype data type + * @return the sanitized variable name for enum + */ + public String toEnumVarName(String value, String datatype) { + // our enum var names are keys in a python dict, so change spaces to underscores + if (value.length() == 0) { + return "EMPTY"; + } + + String var = value.replaceAll("\\s+", "_").toUpperCase(Locale.ROOT); + return var; + } + + /** + * Return the enum value in the language specified format + * e.g. status becomes "status" + * + * @param value enum variable name + * @param datatype data type + * @return the sanitized value for enum + */ + public String toEnumValue(String value, String datatype) { + if (datatype.equals("int") || datatype.equals("float")) { + return value; + } else { + return "\"" + escapeText(value) + "\""; + } + } + + @Override + public void postProcessParameter(CodegenParameter parameter) { + postProcessPattern(parameter.pattern, parameter.vendorExtensions); + } + + /** + * Convert OAS Model object to Codegen Model object + * + * @param name the name of the model + * @param schema OAS Model object + * @return Codegen Model object + */ + @Override + public CodegenModel fromModel(String name, Schema schema) { + // we have a custom version of this function so we can produce + // models for components whose type != object and which have validations and enums + // this ensures that endpoint (operation) responses with validations and enums + // will generate models, and when those endpoint responses are received in python + // the response is cast as a model, and the model will validate the response using the enums and validations + Map propertyToModelName = new HashMap(); + Map propertiesMap = schema.getProperties(); + if (propertiesMap != null) { + for (Map.Entry entry : propertiesMap.entrySet()) { + String schemaPropertyName = entry.getKey(); + String pythonPropertyName = toVarName(schemaPropertyName); + Schema propertySchema = entry.getValue(); + String ref = propertySchema.get$ref(); + if (ref == null) { + continue; + } + Schema refSchema = ModelUtils.getReferencedSchema(this.openAPI, propertySchema); + String refType = refSchema.getType(); + if (refType == null || refType.equals("object")) { + continue; + } + CodegenProperty modelProperty = fromProperty("_fake_name", refSchema); + if (modelProperty.isEnum == false && modelProperty.hasValidation == false) { + continue; + } + String modelName = ModelUtils.getSimpleRef(ref); + propertyToModelName.put(pythonPropertyName, modelName); + } + } + CodegenModel result = super.fromModel(name, schema); + + // make non-object type models have one property so we can use it to store enums and validations + if (result.isAlias || result.isEnum) { + Schema modelSchema = ModelUtils.getSchema(this.openAPI, result.name); + CodegenProperty modelProperty = fromProperty("value", modelSchema); + if (modelProperty.isEnum == true || modelProperty.hasValidation == true) { + // these models are non-object models with enums and/or validations + // add a single property to the model so we can have a way to access validations + result.isAlias = true; + modelProperty.required = true; + List theProperties = Arrays.asList(modelProperty); + result.setAllVars(theProperties); + result.setVars(theProperties); + result.setRequiredVars(theProperties); + // post process model properties + if (result.vars != null) { + for (CodegenProperty prop : result.vars) { + postProcessModelProperty(result, prop); + } + } + + } + } + + // return all models which don't need their properties connected to non-object models + if (propertyToModelName.isEmpty()) { + return result; + } + + // fix all property references to non-object models, make those properties non-primitive and + // set their dataType and complexType to the model name, so documentation will refer to the correct model + ArrayList> listOfLists = new ArrayList>(); + listOfLists.add(result.vars); + listOfLists.add(result.allVars); + listOfLists.add(result.requiredVars); + listOfLists.add(result.optionalVars); + listOfLists.add(result.readOnlyVars); + listOfLists.add(result.readWriteVars); + for (List cpList : listOfLists) { + for (CodegenProperty cp : cpList) { + if (!propertyToModelName.containsKey(cp.name)) { + continue; + } + cp.isPrimitiveType = false; + String modelName = propertyToModelName.get(cp.name); + cp.complexType = modelName; + cp.dataType = modelName; + cp.isEnum = false; + cp.hasValidation = false; + } + } + return result; + } + } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java index fc23117e45..33d2007a3b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyClientCodegen.java @@ -387,7 +387,7 @@ public class RubyClientCodegen extends AbstractRubyCodegen { name = name.replaceAll("-", "_"); // FIXME: a parameter should not be assigned. Also declare the methods parameters as 'final'. // e.g. PhoneNumberApi.rb => phone_number_api.rb - return underscore(name) + "_api"; + return underscore(name + "_" + apiNameSuffix); } @Override @@ -407,11 +407,7 @@ public class RubyClientCodegen extends AbstractRubyCodegen { @Override public String toApiName(String name) { - if (name.length() == 0) { - return "DefaultApi"; - } - // e.g. phone_number_api => PhoneNumberApi - return camelize(name) + "Api"; + return super.toApiName(name); } @Override diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java index 1422504281..759ce8fa1c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift4Codegen.java @@ -101,7 +101,8 @@ public class Swift4Codegen extends DefaultCodegen implements CodegenConfig { "UUID", "URL", "AnyObject", - "Any") + "Any", + "Decimal") ); defaultIncludes = new HashSet<>( Arrays.asList( @@ -115,7 +116,8 @@ public class Swift4Codegen extends DefaultCodegen implements CodegenConfig { "Any", "Empty", "AnyObject", - "Any") + "Any", + "Decimal") ); objcReservedWords = new HashSet<>( @@ -198,6 +200,7 @@ public class Swift4Codegen extends DefaultCodegen implements CodegenConfig { typeMapping.put("ByteArray", "Data"); typeMapping.put("UUID", "UUID"); typeMapping.put("URI", "String"); + typeMapping.put("BigDecimal", "Decimal"); importMapping = new HashMap<>(); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNodeClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNodeClientCodegen.java index c1b0d618d0..e6d906804f 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNodeClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptNodeClientCodegen.java @@ -17,7 +17,9 @@ package org.openapitools.codegen.languages; +import io.swagger.v3.oas.models.Operation; import io.swagger.v3.oas.models.media.Schema; +import io.swagger.v3.oas.models.responses.ApiResponse; import org.openapitools.codegen.*; import org.openapitools.codegen.utils.ModelUtils; import org.slf4j.Logger; @@ -40,8 +42,12 @@ public class TypeScriptNodeClientCodegen extends AbstractTypeScriptClientCodegen public TypeScriptNodeClientCodegen() { super(); - typeMapping.put("file", "Buffer"); + typeMapping.put("file", "RequestFile"); + // RequestFile is defined as: `type RequestFile = string | Buffer | ReadStream | RequestDetailedFile;` languageSpecificPrimitives.add("Buffer"); + languageSpecificPrimitives.add("ReadStream"); + languageSpecificPrimitives.add("RequestDetailedFile"); + languageSpecificPrimitives.add("RequestFile"); // clear import mapping (from default generator) as TS does not use it // at the moment @@ -70,19 +76,35 @@ public class TypeScriptNodeClientCodegen extends AbstractTypeScriptClientCodegen @Override public boolean isDataTypeFile(final String dataType) { - return "Buffer".equals(dataType); + return dataType != null && dataType.equals("RequestFile"); } @Override public String getTypeDeclaration(Schema p) { if (ModelUtils.isFileSchema(p)) { - return "Buffer"; + // There are two file types: + // 1) RequestFile: the parameter for the request lib when uploading a file + // (https://github.com/request/request#multipartform-data-multipart-form-uploads) + // 2) Buffer: for downloading files. + // Use RequestFile as a default. The return type is fixed to Buffer in handleMethodResponse. + return "RequestFile"; } else if (ModelUtils.isBinarySchema(p)) { return "Buffer"; } return super.getTypeDeclaration(p); } - + + @Override + protected void handleMethodResponse(Operation operation, Map schemas, CodegenOperation op, + ApiResponse methodResponse) { + super.handleMethodResponse(operation, schemas, op, methodResponse); + + // see comment in getTypeDeclaration + if (op.isResponseFile) { + op.returnType = "Buffer"; + } + } + @Override public String toApiName(String name) { if (name.length() == 0) { @@ -239,13 +261,12 @@ public class TypeScriptNodeClientCodegen extends AbstractTypeScriptClientCodegen if (isLanguagePrimitive(openAPIType) || isLanguageGenericType(openAPIType)) { return openAPIType; } - applyLocalTypeMapping(openAPIType); - return openAPIType; + return applyLocalTypeMapping(openAPIType); } private String applyLocalTypeMapping(String type) { if (typeMapping.containsKey(type)) { - type = typeMapping.get(type); + return typeMapping.get(type); } return type; } diff --git a/modules/openapi-generator/src/main/resources/Groovy/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Groovy/build.gradle.mustache index 96aed20d0a..a5733e22fb 100644 --- a/modules/openapi-generator/src/main/resources/Groovy/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Groovy/build.gradle.mustache @@ -27,7 +27,7 @@ repositories { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" + jackson_version = "2.9.10" } dependencies { diff --git a/modules/openapi-generator/src/main/resources/Java/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/build.gradle.mustache index 9e1142970e..99d255c54d 100644 --- a/modules/openapi-generator/src/main/resources/Java/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/build.gradle.mustache @@ -136,8 +136,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "{{^threetenbp}}2.9.9{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" - jackson_databind_version = "{{^threetenbp}}2.9.9{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" + jackson_version = "{{^threetenbp}}2.9.10{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" + jackson_databind_version = "{{^threetenbp}}2.9.10{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" jackson-databind-nullable-version = "0.2.0" jersey_version = "1.19.4" jodatime_version = "2.9.9" diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache index 9df586c08c..0f826eb387 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/ApiClient.mustache @@ -3,8 +3,11 @@ package {{invokerPackage}}; import java.util.LinkedHashMap; import java.util.Map; +{{#hasOAuthMethods}} import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder; +{{/hasOAuthMethods}} + {{#threetenbp}} import org.threeten.bp.*; {{/threetenbp}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/EncodingUtils.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/EncodingUtils.mustache index 6bf2a0e4bf..705eb6aa9d 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/EncodingUtils.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/EncodingUtils.mustache @@ -77,7 +77,7 @@ public final class EncodingUtils { return null; } try { - return URLEncoder.encode(parameter.toString(), "UTF-8"); + return URLEncoder.encode(parameter.toString(), "UTF-8").replaceAll("\\+", "%20"); } catch (UnsupportedEncodingException e) { // Should never happen, UTF-8 is always supported throw new RuntimeException(e); diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.gradle.mustache index febdd5d11b..a92022e83a 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.gradle.mustache @@ -120,8 +120,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" {{#threetenbp}} threepane_version = "2.6.4" diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.sbt.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.sbt.mustache index 946b319561..0409122202 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.sbt.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/build.sbt.mustache @@ -14,9 +14,9 @@ lazy val root = (project in file(".")). "io.github.openfeign" % "feign-jackson" % "{{#useFeign10}}10.2.3{{/useFeign10}}{{^useFeign10}}9.7.0{{/useFeign10}}" % "compile", "io.github.openfeign" % "feign-slf4j" % "{{#useFeign10}}10.2.3{{/useFeign10}}{{^useFeign10}}9.7.0{{/useFeign10}}" % "compile", "io.github.openfeign.form" % "feign-form" % "2.1.0" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.fasterxml.jackson.datatype" % "jackson-datatype-{{^java8}}joda{{/java8}}{{#java8}}jsr310{{/java8}}" % "2.9.9" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile", diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/feign/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/feign/pom.mustache index 1e9edaec8c..ef60c22df4 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/feign/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/feign/pom.mustache @@ -314,9 +314,9 @@ 1.5.21 {{#useFeign10}}10.2.3{{/useFeign10}}{{^useFeign10}}9.7.0{{/useFeign10}} 2.1.0 - 2.9.9 + 2.9.10 0.2.0 - 2.9.9 + 2.9.10 {{#threetenbp}} 2.6.4 {{/threetenbp}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.gradle.mustache index f01cd1fc70..4471072ec2 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.gradle.mustache @@ -120,8 +120,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" google_api_client_version = "1.23.0" jersey_common_version = "2.25.1" diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.sbt.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.sbt.mustache index 48f28b25d1..3dea392827 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.sbt.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/build.sbt.mustache @@ -12,9 +12,9 @@ lazy val root = (project in file(".")). "io.swagger" % "swagger-annotations" % "1.5.22", "com.google.api-client" % "google-api-client" % "1.23.0", "org.glassfish.jersey.core" % "jersey-common" % "2.25.1", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", {{#withXml}} "com.fasterxml.jackson.dataformat" % "jackson-dataformat-xml" % "2.9.9" % "compile", {{/withXml}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/pom.mustache index 76ddf4325e..8bafe1ea9a 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/google-api-client/pom.mustache @@ -306,8 +306,8 @@ 1.5.22 1.30.2 2.25.1 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 {{#joda}} 2.9.9 diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.gradle.mustache index fdda0dc7ed..588239f5c8 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.gradle.mustache @@ -119,8 +119,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" {{#supportJava6}} jersey_version = "2.6" diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.sbt.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.sbt.mustache index d5d6906549..ef2e32af36 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.sbt.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/build.sbt.mustache @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "org.glassfish.jersey.core" % "jersey-client" % {{#supportJava6}}"2.6"{{/supportJava6}}{{^supportJava6}}"2.25.1"{{/supportJava6}}, "org.glassfish.jersey.media" % "jersey-media-multipart" % {{#supportJava6}}"2.6"{{/supportJava6}}{{^supportJava6}}"2.25.1"{{/supportJava6}}, "org.glassfish.jersey.media" % "jersey-media-json-jackson" % {{#supportJava6}}"2.6"{{/supportJava6}}{{^supportJava6}}"2.25.1"{{/supportJava6}}, - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", {{#joda}} "com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.9.9" % "compile", {{/joda}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pom.mustache index d72e0b1fe8..621228c2a7 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/jersey2/pom.mustache @@ -360,8 +360,8 @@ 2.5 3.6 {{/supportJava6}} - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 {{#threetenbp}} 2.6.4 diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.gradle.mustache index 47b5e19323..1c133a7435 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.gradle.mustache @@ -119,8 +119,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" threetenbp_version = "2.6.4" resteasy_version = "3.1.3.Final" diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.sbt.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.sbt.mustache index 4f67eb3882..0af339a0da 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.sbt.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/build.sbt.mustache @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "org.jboss.resteasy" % "resteasy-client" % "3.1.3.Final" % "compile", "org.jboss.resteasy" % "resteasy-multipart-provider" % "3.1.3.Final" % "compile", "org.jboss.resteasy" % "resteasy-jackson2-provider" % "3.1.3.Final" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", {{#java8}} "com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % "2.9.9" % "compile", diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/pom.mustache index d190566bac..4318c37628 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/resteasy/pom.mustache @@ -294,8 +294,8 @@ UTF-8 1.5.22 3.1.3.Final - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 2.6.4 {{^java8}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/build.gradle.mustache index e3cd4fa751..1815ab926e 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/resttemplate/build.gradle.mustache @@ -120,8 +120,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" spring_web_version = "4.3.9.RELEASE" jodatime_version = "2.9.9" diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit/ApiClient.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit/ApiClient.mustache index 4532781328..c3fd780239 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit/ApiClient.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit/ApiClient.mustache @@ -7,8 +7,11 @@ import java.lang.reflect.Type; import java.util.LinkedHashMap; import java.util.Map; +{{#hasOAuthMethods}} import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder; +{{/hasOAuthMethods}} + import org.joda.time.DateTime; import org.joda.time.LocalDate; import org.joda.time.format.DateTimeFormatter; diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/ApiClient.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/ApiClient.mustache index e5dfb17180..40ab42d2ef 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/ApiClient.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/ApiClient.mustache @@ -7,8 +7,10 @@ import okhttp3.Interceptor; import okhttp3.OkHttpClient; import okhttp3.RequestBody; import okhttp3.ResponseBody; +{{#hasOAuthMethods}} import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder; +{{/hasOAuthMethods}} {{#joda}} import org.joda.time.format.DateTimeFormatter; {{/joda}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.gradle.mustache index 0d4d1ad995..cf02f24395 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.gradle.mustache @@ -127,12 +127,12 @@ ext { play_version = "2.4.11" {{/play24}} {{#play25}} - jackson_version = "2.9.9" + jackson_version = "2.9.10" play_version = "2.5.14" {{/play25}} {{#play26}} - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" play_version = "2.6.7" {{/play26}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.sbt.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.sbt.mustache index 21b00d3b91..78f7e5786a 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.sbt.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/build.sbt.mustache @@ -23,16 +23,16 @@ lazy val root = (project in file(".")). {{/play24}} {{#play25}} "com.typesafe.play" % "play-java-ws_2.11" % "2.5.15" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", {{/play25}} {{#play26}} "com.typesafe.play" % "play-ahc-ws_2.12" % "2.6.7" % "compile", "javax.validation" % "validation-api" % "1.1.0.Final" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", {{/play26}} "com.squareup.retrofit2" % "converter-jackson" % "2.3.0" % "compile", {{/usePlayWS}} diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/pom.mustache index b35ffe6626..8bca88942d 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/retrofit2/pom.mustache @@ -375,17 +375,17 @@ 1.8.3 1.5.22 {{#usePlayWS}} - 2.9.9 + 2.9.10 {{#play24}} 2.6.6 2.4.11 {{/play24}} {{#play25}} - 2.9.9 + 2.9.10 2.5.15 {{/play25}} {{#play26}} - 2.9.9 + 2.9.10 2.6.7 {{/play26}} 0.2.0 diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/vertx/build.gradle.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/vertx/build.gradle.mustache index cf71f23769..20aa961eaa 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/vertx/build.gradle.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/vertx/build.gradle.mustache @@ -28,8 +28,8 @@ task execute(type:JavaExec) { ext { swagger_annotations_version = "1.5.21" - jackson_version = "{{^threetenbp}}2.9.9{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" - jackson_databind_version = "{{^threetenbp}}2.9.9{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" + jackson_version = "{{^threetenbp}}2.9.10{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" + jackson_databind_version = "{{^threetenbp}}2.9.10{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}" vertx_version = "3.4.2" junit_version = "4.12" } diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/vertx/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/vertx/pom.mustache index a2fd9f30eb..17d2c1261a 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/vertx/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/vertx/pom.mustache @@ -289,8 +289,8 @@ UTF-8 3.4.2 1.5.22 - {{^threetenbp}}2.9.9{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}} - {{^threetenbp}}2.9.9{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}} + {{^threetenbp}}2.9.10{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}} + {{^threetenbp}}2.9.10{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}} 0.2.0 4.12 diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pom.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pom.mustache index 4fbf5d9cf1..c8651f58c5 100644 --- a/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pom.mustache +++ b/modules/openapi-generator/src/main/resources/Java/libraries/webclient/pom.mustache @@ -143,8 +143,8 @@ UTF-8 1.5.22 5.0.7.RELEASE - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 4.12 3.1.8.RELEASE diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/README.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/README.mustache new file mode 100644 index 0000000000..1f328b1716 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/README.mustache @@ -0,0 +1,43 @@ +# JAX-RS server with OpenAPI using Helidon + +## Overview +This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using an +[OpenAPI-Spec](https://openapis.org), you can easily generate a server stub. + +This is an example of building a OpenAPI-enabled JAX-RS server. +This example uses the [JAX-RS](https://jax-rs-spec.java.net/) framework and +the [Eclipse-MicroProfile-OpenAPI](https://github.com/eclipse/microprofile-open-api) addition. + +The pom file is configured to use [Helidon](https://helidon.io/) as application server. + +{{#interfaceOnly}} +This project produces a jar that defines some interfaces. +The jar can be used in combination with an other project providing the implementation. +{{/interfaceOnly}} + +{{^interfaceOnly}} +To build the server, run this maven command: + +```bash +mvn package +``` + +To run the server, run this maven command: + +```bash +mvn exec:java +``` + +You can then call your server endpoints under: + +``` +http://localhost:8080/ +``` + +You can access the OpenAPI specification at: + +``` +http://localhost:8080/openapi +``` + +{{/interfaceOnly}} diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/beans.xml.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/beans.xml.mustache new file mode 100644 index 0000000000..125ef995e5 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/beans.xml.mustache @@ -0,0 +1,9 @@ + + + + diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/logging.properties.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/logging.properties.mustache new file mode 100644 index 0000000000..25a7c65095 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/logging.properties.mustache @@ -0,0 +1,24 @@ +# Example Logging Configuration File +# For more information see $JAVA_HOME/jre/lib/logging.properties + +# Send messages to the console +handlers=java.util.logging.ConsoleHandler + +# Global default logging level. Can be overriden by specific handlers and loggers +.level=INFO + +# Helidon Web Server has a custom log formatter that extends SimpleFormatter. +# It replaces "!thread!" with the current thread name +java.util.logging.ConsoleHandler.level=INFO +java.util.logging.ConsoleHandler.formatter=io.helidon.webserver.WebServerLogFormatter +java.util.logging.SimpleFormatter.format=%1$tY.%1$tm.%1$td %1$tH:%1$tM:%1$tS %4$s %3$s !thread!: %5$s%6$s%n + +#Component specific log levels +#io.helidon.webserver.level=INFO +#io.helidon.config.level=INFO +#io.helidon.security.level=INFO +#io.helidon.microprofile.level=INFO +#io.helidon.common.level=INFO +#io.netty.level=INFO +#org.glassfish.jersey.level=INFO +#org.jboss.weld=INFO diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/microprofile-config.properties.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/microprofile-config.properties.mustache new file mode 100644 index 0000000000..1780a159b0 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/microprofile-config.properties.mustache @@ -0,0 +1,6 @@ +# Microprofile server properties +server.port=8080 +server.host=0.0.0.0 + +# Microprofile OpenAPI properties +mp.openapi.scan.disable=true \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/pom.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/pom.mustache new file mode 100644 index 0000000000..a1e9d0a3d2 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/helidon/pom.mustache @@ -0,0 +1,110 @@ + + + + 4.0.0 + + {{groupId}} + {{artifactId}} + {{artifactVersion}} + + + io.helidon.microprofile.server.Main + 1.2.0 + 3.8.1 + 1.6.0 + 1.0.6 + 3.0.2 + 1.1.2 + 2.29 + 1.2.0 + 5.1.0 + + + + + + org.jboss.jandex + jandex-maven-plugin + ${version.plugin.jandex} + + + make-index + + jandex + + + + + + org.apache.maven.plugins + maven-jar-plugin + ${version.plugin.jar} + + + + true + ${mainClass} + + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${version.plugin.compiler} + + 1.8 + 1.8 + + -Xlint:unchecked + + + + + org.codehaus.mojo + exec-maven-plugin + ${version.plugin.exec} + + ${mainClass} + + + + + + + + io.helidon.microprofile.bundles + helidon-microprofile-2.2 + ${version.lib.helidon} + + + org.eclipse.microprofile.openapi + microprofile-openapi-api + ${version.lib.microprofile-openapi-api} + + + org.glassfish.jersey.media + jersey-media-json-binding + ${version.lib.jersey} + runtime + + + javax.activation + javax.activation-api + ${version.lib.activation-api} + runtime + + + org.junit.jupiter + junit-jupiter-api + ${version.lib.junit} + test + + + org.junit.jupiter + junit-jupiter-engine + ${version.lib.junit} + test + + + diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/MANIFEST.MF.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/MANIFEST.MF.mustache new file mode 100644 index 0000000000..e3c07ab38a --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/MANIFEST.MF.mustache @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 +Class-Path: diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/README.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/README.mustache new file mode 100644 index 0000000000..f3389b0ef0 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/README.mustache @@ -0,0 +1,43 @@ +# JAX-RS server with OpenAPI using Open Liberty + +## Overview +This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using an +[OpenAPI-Spec](https://openapis.org), you can easily generate a server stub. + +This is an example of building a OpenAPI-enabled JAX-RS server. +This example uses the [JAX-RS](https://jax-rs-spec.java.net/) framework and +the [Eclipse-MicroProfile-OpenAPI](https://github.com/eclipse/microprofile-open-api) addition. + +The pom file is configured to use [Open Liberty](https://openliberty.io/) as application server. + +{{#interfaceOnly}} +This project produces a jar that defines some interfaces. +The jar can be used in combination with an other project providing the implementation. +{{/interfaceOnly}} + +{{^interfaceOnly}} +To start the server with maven, run this command: + +```bash +mvn install liberty:start-server +``` + +The OpenAPI specification is available at: + +``` +http://localhost:9080/openapi +``` + +A UI for this OpenAPI Specification is available at: + +``` +http://localhost:9080/openapi/ui +``` + +When you are done stop Open Liberty with: + +``` +mvn liberty:stop-server +``` + +{{/interfaceOnly}} diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/beans.xml.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/beans.xml.mustache new file mode 100644 index 0000000000..17d17df35c --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/beans.xml.mustache @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/ibm-web-ext.xml.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/ibm-web-ext.xml.mustache new file mode 100644 index 0000000000..91f3668732 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/ibm-web-ext.xml.mustache @@ -0,0 +1,15 @@ + + + + + + + + + + + diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/microprofile-config.properties.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/microprofile-config.properties.mustache new file mode 100644 index 0000000000..c3fe390239 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/microprofile-config.properties.mustache @@ -0,0 +1 @@ +mp.openapi.scan.disable=true \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/pom.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/pom.mustache new file mode 100644 index 0000000000..ac16c42577 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/pom.mustache @@ -0,0 +1,116 @@ + + 4.0.0 + + + net.wasdev.wlp.maven.parent + liberty-maven-app-parent + 2.6 + + + {{groupId}} + {{artifactId}} + {{artifactVersion}} + war + + + + javax + javaee-api + 8.0 + provided + + + org.eclipse.microprofile + microprofile + 2.0.1 + pom + provided + + + javax.validation + validation-api + 2.0.1.Final + + + com.fasterxml.jackson.core + jackson-annotations + 2.0.1 + + + + + 1.8 + 1.8 + false + 3.2.2 + + 19.0.0.7 + 9080 + 9443 + usr + ${project.artifactId} + ${project.build.directory}/${app.name}.zip + + + + {{artifactId}} + + + org.codehaus.mojo + build-helper-maven-plugin + 1.9.1 + + + add-source + generate-sources + + add-source + + + + src/gen/java + + + + + + + + org.apache.maven.plugins + maven-war-plugin + ${version.maven-war-plugin} + + false + pom.xml + + + + + + net.wasdev.wlp.maven.plugins + liberty-maven-plugin + + + io.openliberty + openliberty-runtime + ${version.openliberty-runtime} + zip + + OpenAPIGeneratorServer + true + src/main/liberty/config/server.xml + true + ${package.file} + ${packaging.type} + + ${http.port} + ${https.port} + ${app.name} + + + + + + diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/server.xml.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/server.xml.mustache new file mode 100644 index 0000000000..176088c512 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/openliberty/server.xml.mustache @@ -0,0 +1,19 @@ + + + cdi-2.0 + jaxrs-2.1 + mpOpenAPI-1.1 + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/Dockerfile.jvm.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/Dockerfile.jvm.mustache new file mode 100644 index 0000000000..fa97e4b117 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/Dockerfile.jvm.mustache @@ -0,0 +1,22 @@ +#### +# This Dockerfile is used in order to build a container that runs the Quarkus application in JVM mode +# +# Before building the docker image run: +# +# mvn package +# +# Then, build the image with: +# +# docker build -f src/main/docker/Dockerfile.jvm -t quarkus/getting-started-jvm . +# +# Then run the container using: +# +# docker run -i --rm -p 8080:8080 quarkus/getting-started-jvm +# +### +FROM fabric8/java-alpine-openjdk8-jre +ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" +ENV AB_ENABLED=jmx_exporter +COPY target/lib/* /deployments/lib/ +COPY target/*-runner.jar /deployments/app.jar +ENTRYPOINT [ "/deployments/run-java.sh" ] \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/Dockerfile.native.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/Dockerfile.native.mustache new file mode 100644 index 0000000000..426c99b81a --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/Dockerfile.native.mustache @@ -0,0 +1,22 @@ +#### +# This Dockerfile is used in order to build a container that runs the Quarkus application in native (no JVM) mode +# +# Before building the docker image run: +# +# mvn package -Pnative -Dnative-image.docker-build=true +# +# Then, build the image with: +# +# docker build -f src/main/docker/Dockerfile.native -t quarkus/getting-started . +# +# Then run the container using: +# +# docker run -i --rm -p 8080:8080 quarkus/getting-started +# +### +FROM registry.access.redhat.com/ubi8/ubi-minimal +WORKDIR /work/ +COPY target/*-runner /work/application +RUN chmod 775 /work +EXPOSE 8080 +CMD ["./application", "-Dquarkus.http.host=0.0.0.0"] \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/README.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/README.mustache new file mode 100644 index 0000000000..90433afce8 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/README.mustache @@ -0,0 +1,39 @@ +# JAX-RS server with OpenAPI using Quarkus + +## Overview +This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using an +[OpenAPI-Spec](https://openapis.org), you can easily generate a server stub. + +This is an example of building a OpenAPI-enabled JAX-RS server. +This example uses the [JAX-RS](https://jax-rs-spec.java.net/) framework and +the [Eclipse-MicroProfile-OpenAPI](https://github.com/eclipse/microprofile-open-api) addition. + +The pom file is configured to use [Quarkus](https://quarkus.io/) as application server. + +{{#interfaceOnly}} +This project produces a jar that defines some interfaces. +The jar can be used in combination with an other project providing the implementation. +{{/interfaceOnly}} + +{{^interfaceOnly}} +To start the server in dev mode, run this maven command: + +```bash +mvn compile quarkus:dev +``` + +You can then call your server endpoints under: + +``` +http://localhost:8080/ +``` + +In dev-mode, you can open Swagger-UI at: + +``` +http://localhost:8080/swagger-ui/ +``` + +Read more in the [Quarkus OpenAPI guide](https://quarkus.io/guides/openapi-swaggerui-guide). + +{{/interfaceOnly}} diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/application.properties.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/application.properties.mustache new file mode 100644 index 0000000000..cef6b51761 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/application.properties.mustache @@ -0,0 +1,3 @@ +# Configuration file + +mp.openapi.scan.disable=true \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/dockerignore.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/dockerignore.mustache new file mode 100644 index 0000000000..b86c7ac340 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/dockerignore.mustache @@ -0,0 +1,4 @@ +* +!target/*-runner +!target/*-runner.jar +!target/lib/* \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/pom.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/pom.mustache new file mode 100644 index 0000000000..265b492d2c --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/quarkus/pom.mustache @@ -0,0 +1,138 @@ + + + 4.0.0 + {{groupId}} + {{artifactId}} + {{artifactId}} + {{artifactVersion}} + + UTF-8 + 2.22.0 + 0.22.0 + UTF-8 + 1.8 + 1.8 + + + + + io.quarkus + quarkus-bom + ${quarkus.version} + pom + import + + + + + + io.quarkus + quarkus-resteasy + + + io.quarkus + quarkus-junit5 + test + + + io.rest-assured + rest-assured + test + + + io.quarkus + quarkus-smallrye-openapi + + + + + + org.codehaus.mojo + build-helper-maven-plugin + 1.9.1 + + + add-source + generate-sources + + add-source + + + + src/gen/java + + + + + + + io.quarkus + quarkus-maven-plugin + ${quarkus.version} + + + + build + + + + + + maven-surefire-plugin + ${surefire-plugin.version} + + + org.jboss.logmanager.LogManager + + + + + + + + native + + + native + + + + + + io.quarkus + quarkus-maven-plugin + ${quarkus.version} + + + + native-image + + + true + + + + + + maven-failsafe-plugin + ${surefire-plugin.version} + + + + integration-test + verify + + + + ${project.build.directory}/${project.build.finalName}-runner + + + + + + + + + + diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/thorntail/README.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/thorntail/README.mustache new file mode 100644 index 0000000000..64d4830d4b --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/thorntail/README.mustache @@ -0,0 +1,37 @@ +# JAX-RS server with OpenAPI using Thorntail + +## Overview +This server was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using an +[OpenAPI-Spec](https://openapis.org), you can easily generate a server stub. + +This is an example of building a OpenAPI-enabled JAX-RS server. +This example uses the [JAX-RS](https://jax-rs-spec.java.net/) framework and +the [Eclipse-MicroProfile-OpenAPI](https://github.com/eclipse/microprofile-open-api) addition. + +The pom file is configured to use [Thorntail](https://thorntail.io) as application server. + +{{#interfaceOnly}} +This project produces a jar that defines some interfaces. +The jar can be used in combination with an other project providing the implementation. +{{/interfaceOnly}} + +{{^interfaceOnly}} +To start the server with maven, run this command: + +```bash +mvn thorntail:run +``` + +You can then call your server endpoints under: + +``` +http://localhost:8080/ +``` + +The OpenAPI specification is available at: + +``` +http://localhost:8080/openapi +``` + +{{/interfaceOnly}} diff --git a/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/thorntail/pom.mustache b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/thorntail/pom.mustache new file mode 100644 index 0000000000..39e3e37a96 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaJaxRS/spec/libraries/thorntail/pom.mustache @@ -0,0 +1,81 @@ + + + 4.0.0 + {{groupId}} + {{artifactId}} + {{artifactId}} + {{artifactVersion}} + war + + 2.5.0.Final + 4.8.1 + 1.8 + 1.8 + false + UTF-8 + + + + + io.thorntail + bom-all + ${version.thorntail} + import + pom + + + + + + io.thorntail + jaxrs + + + io.thorntail + microprofile-openapi + + + junit + junit + ${version.junit} + test + + + + {{artifactId}} + + + org.codehaus.mojo + build-helper-maven-plugin + 1.9.1 + + + add-source + generate-sources + + add-source + + + + src/gen/java + + + + + + + io.thorntail + thorntail-maven-plugin + ${version.thorntail} + + + + package + + + + + + + diff --git a/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig b/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig index 5a6cb16c1a..67c0f473b5 100644 --- a/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig +++ b/modules/openapi-generator/src/main/resources/META-INF/services/org.openapitools.codegen.CodegenConfig @@ -117,3 +117,4 @@ org.openapitools.codegen.languages.TypeScriptNodeClientCodegen org.openapitools.codegen.languages.TypeScriptRxjsClientCodegen org.openapitools.codegen.languages.FsharpGiraffeServerCodegen org.openapitools.codegen.languages.AsciidocDocumentationCodegen +org.openapitools.codegen.languages.FsharpFunctionsServerCodegen diff --git a/modules/openapi-generator/src/main/resources/cpp-pistache-server/cmake.mustache b/modules/openapi-generator/src/main/resources/cpp-pistache-server/cmake.mustache index a822ae28ae..2ad6f17868 100644 --- a/modules/openapi-generator/src/main/resources/cpp-pistache-server/cmake.mustache +++ b/modules/openapi-generator/src/main/resources/cpp-pistache-server/cmake.mustache @@ -35,5 +35,5 @@ file(GLOB SRCS ) add_executable(${PROJECT_NAME} ${SRCS} ) -add_dependencies(${PROJECT_NAME} PISTACHE NLOHMANN) +{{#addExternalLibs}}add_dependencies(${PROJECT_NAME} PISTACHE NLOHMANN){{/addExternalLibs}} target_link_libraries(${PROJECT_NAME} pistache pthread) diff --git a/modules/openapi-generator/src/main/resources/cpp-pistache-server/main-api-server.mustache b/modules/openapi-generator/src/main/resources/cpp-pistache-server/main-api-server.mustache index 239c88e447..01d7882fa9 100644 --- a/modules/openapi-generator/src/main/resources/cpp-pistache-server/main-api-server.mustache +++ b/modules/openapi-generator/src/main/resources/cpp-pistache-server/main-api-server.mustache @@ -13,11 +13,12 @@ #include "{{classname}}Impl.h"{{/operations}}{{/apis}}{{/apiInfo}} #define PISTACHE_SERVER_THREADS 2 -#define PISTACHE_SERVER_MAX_PAYLOAD 32768 +#define PISTACHE_SERVER_MAX_REQUEST_SIZE 32768 +#define PISTACHE_SERVER_MAX_RESPONSE_SIZE 32768 static Pistache::Http::Endpoint *httpEndpoint; #ifdef __linux__ -static void sigHandler(int sig){ +static void sigHandler [[noreturn]] (int sig){ switch(sig){ case SIGINT: case SIGQUIT: @@ -61,7 +62,8 @@ int main() { auto opts = Pistache::Http::Endpoint::options() .threads(PISTACHE_SERVER_THREADS); opts.flags(Pistache::Tcp::Options::ReuseAddr); - opts.maxPayload(PISTACHE_SERVER_MAX_PAYLOAD); + opts.maxRequestSize(PISTACHE_SERVER_MAX_REQUEST_SIZE); + opts.maxResponseSize(PISTACHE_SERVER_MAX_RESPONSE_SIZE); httpEndpoint->init(opts); {{#apiInfo}}{{#apis}}{{#operations}} diff --git a/modules/openapi-generator/src/main/resources/cpp-pistache-server/model-struct-header.mustache b/modules/openapi-generator/src/main/resources/cpp-pistache-server/model-struct-header.mustache new file mode 100644 index 0000000000..a49415db26 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/cpp-pistache-server/model-struct-header.mustache @@ -0,0 +1,40 @@ +{{>licenseInfo}} +{{#models}}{{#model}}/* + * {{classname}}.h + * + * {{description}} + */ + +#ifndef {{classname}}_H_ +#define {{classname}}_H_ + +{{{defaultInclude}}} +{{#imports}}{{{this}}} +{{/imports}} +#include +#include + +{{#modelNamespaceDeclarations}} +namespace {{this}} { +{{/modelNamespaceDeclarations}} + +struct {{classname}} +{ + {{#vars}} + {{^required}}Pistache::Optional<{{/required}}{{{dataType}}}{{^required}}>{{/required}} {{baseName}}; + {{/vars}} + + nlohmann::json to_json() const; + static {{classname}} from_json(const nlohmann::json& j); +}; + +void to_json(nlohmann::json& j, const {{classname}}& o); +void from_json(const nlohmann::json& j, {{classname}}& o); + +{{#modelNamespaceDeclarations}} +} // {{this}} +{{/modelNamespaceDeclarations}} + +#endif /* {{classname}}_H_ */ +{{/model}} +{{/models}} diff --git a/modules/openapi-generator/src/main/resources/cpp-pistache-server/model-struct-source.mustache b/modules/openapi-generator/src/main/resources/cpp-pistache-server/model-struct-source.mustache new file mode 100644 index 0000000000..2e4f114cc7 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/cpp-pistache-server/model-struct-source.mustache @@ -0,0 +1,49 @@ +{{>licenseInfo}} +{{#models}}{{#model}} + +#include "{{classname}}.h" + +{{#modelNamespaceDeclarations}} +namespace {{this}} { +{{/modelNamespaceDeclarations}} + +nlohmann::json {{classname}}::to_json() const +{ + nlohmann::json j; + {{#modelNamespaceDeclarations}}::{{this}}{{/modelNamespaceDeclarations}}::to_json(j, *this); + return j; +} + +{{classname}} {{classname}}::from_json(const nlohmann::json& j) +{ + {{classname}} o{}; + {{#modelNamespaceDeclarations}}::{{this}}{{/modelNamespaceDeclarations}}::from_json(j, o); + return o; +} + +void to_json(nlohmann::json& j, const {{classname}}& o) +{ + {{#vars}} + {{^required}}if (!o.{{baseName}}.isEmpty()){{/required}} + j["{{baseName}}"] = o.{{baseName}}{{^required}}.get(){{/required}}; + {{/vars}} +} + +void from_json(const nlohmann::json& j, {{classname}}& o) +{ + {{#vars}} + {{#required}}j.at("{{baseName}}").get_to(o.{{baseName}});{{/required}} + {{^required}}if (j.find("{{baseName}}") != j.end()) { + {{{dataType}}} temporary_{{baseName}}; + j.at("{{baseName}}").get_to(temporary_{{baseName}}); + o.{{baseName}} = Pistache::Some(temporary_{{baseName}}); + }{{/required}} + {{/vars}} +} + +{{#modelNamespaceDeclarations}} +} // {{this}} +{{/modelNamespaceDeclarations}} + +{{/model}} +{{/models}} diff --git a/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-header.mustache b/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-header.mustache index 868f98f7ac..a1141597d0 100644 --- a/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-header.mustache +++ b/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-header.mustache @@ -42,14 +42,14 @@ public: enum class e{{classname}} { {{#allowableValues}} - {{#values}} + {{#enumVars}} {{#enumDescription}} /// /// {{enumDescription}} /// {{/enumDescription}} - {{classname}}_{{.}}{{^last}},{{/last}} - {{/values}} + {{classname}}_{{{name}}}{{^last}},{{/last}} + {{/enumVars}} {{/allowableValues}} }; diff --git a/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-source.mustache b/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-source.mustache index 08bb16e169..9784bdaee6 100644 --- a/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-source.mustache +++ b/modules/openapi-generator/src/main/resources/cpp-rest-sdk-client/model-source.mustache @@ -27,8 +27,8 @@ web::json::value {{classname}}::toJson() const { web::json::value val = web::json::value::object(); - {{#allowableValues}}{{#values}} - if (m_value == e{{classname}}::{{classname}}_{{.}}) val = web::json::value::string(U("{{.}}"));{{/values}}{{/allowableValues}} + {{#allowableValues}}{{#enumVars}} + if (m_value == e{{classname}}::{{classname}}_{{name}}) val = web::json::value::string(U({{{value}}}));{{/enumVars}}{{/allowableValues}} return val; } @@ -37,8 +37,8 @@ void {{classname}}::fromJson(const web::json::value& val) { auto s = val.as_string(); - {{#allowableValues}}{{#values}} - if (s == utility::conversions::to_string_t("{{.}}")) m_value = e{{classname}}::{{classname}}_{{.}};{{/values}}{{/allowableValues}} + {{#allowableValues}}{{#enumVars}} + if (s == utility::conversions::to_string_t({{{value}}})) m_value = e{{classname}}::{{classname}}_{{name}};{{/enumVars}}{{/allowableValues}} } void {{classname}}::toMultipart(std::shared_ptr multipart, const utility::string_t& prefix) const @@ -51,8 +51,8 @@ void {{classname}}::toMultipart(std::shared_ptr multipart, co utility::string_t s; - {{#allowableValues}}{{#values}} - if (m_value == e{{classname}}::{{classname}}_{{.}}) s = utility::conversions::to_string_t("{{.}}");{{/values}}{{/allowableValues}} + {{#allowableValues}}{{#enumVars}} + if (m_value == e{{classname}}::{{classname}}_{{name}}) s = utility::conversions::to_string_t({{{value}}});{{/enumVars}}{{/allowableValues}} multipart->add(ModelBase::toHttpContent(namePrefix, s)); } @@ -70,8 +70,8 @@ void {{classname}}::fromMultiPart(std::shared_ptr multipart, s = ModelBase::stringFromHttpContent(multipart->getContent(namePrefix)); e{{classname}} v; - {{#allowableValues}}{{#values}} - if (s == utility::conversions::to_string_t("{{.}}")) v = e{{classname}}::{{classname}}_{{.}};{{/values}}{{/allowableValues}} + {{#allowableValues}}{{#enumVars}} + if (s == utility::conversions::to_string_t({{{value}}})) v = e{{classname}}::{{classname}}_{{name}};{{/enumVars}}{{/allowableValues}} setValue(v); } diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/Handler.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/Handler.mustache new file mode 100644 index 0000000000..8c8aebc852 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/Handler.mustache @@ -0,0 +1,65 @@ +namespace {{packageName}} + +open {{classname}}HandlerParams +open {{classname}}ServiceImplementation +open Microsoft.AspNetCore.Mvc +open Microsoft.AspNetCore.Http +open Newtonsoft.Json +open Microsoft.Azure.WebJobs +open System.IO + +module {{classname}}Handlers = + + {{#operations}} + /// + /// {{description}} + /// + + {{#operation}} + //#region {{operationId}} + /// + /// {{#summary}}{{summary}}{{/summary}} + /// + [] + let {{operationId}} + ([] + req:HttpRequest ) = + + {{#hasBodyParam}} + use reader = StreamReader(req.Body) + + let mediaTypes = [{{#consumes}}"{{mediaType}}";{{/consumes}}] // currently unused + + {{#bodyParam}} + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject<{{operationId}}BodyParams> + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + {{/bodyParam}} + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = {{classname}}Service.{{operationId}} bodyParams + {{/hasBodyParam}} + {{^hasBodyParam}} + let result = {{classname}}Service.{{operationId}} () + {{/hasBodyParam}} + match result with + {{#responses}} + | {{operationId}}{{#isDefault}}Default{{/isDefault}}StatusCode{{^isDefault}}{{code}}{{/isDefault}} resolved -> + {{^primitiveType}} + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + {{/primitiveType}} + {{#primitiveType}} + let content = resolved.content + let responseContentType = "text/plain" + {{/primitiveType}} + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable({{code}})) + {{/responses}} + + {{/operation}} + {{/operations}} + + + diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/HandlerParams.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/HandlerParams.mustache new file mode 100644 index 0000000000..336ef2d55c --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/HandlerParams.mustache @@ -0,0 +1,147 @@ +namespace {{packageName}} + +{{#imports}} +{{#import}} +open {{import}} +{{/import}} +{{/imports}} +open System.Collections.Generic +open System + +module {{classname}}HandlerParams = + + {{#operations}} + {{#operation}} + {{#pathParams}} + {{#-first}} + //#region Path parameters + [] + type {{operationId}}PathParams = { + {{/-first}} + {{paramName}} : {{dataType}} {{^required}}option{{/required}}; + {{#-last}} + } + {{/-last}} + //#endregion + {{/pathParams}} + {{#queryParams}} + + {{#-first}} + //#region Query parameters + [] + type {{operationId}}QueryParams = { + {{/-first}} + {{paramName}} : {{dataType}} {{^required}}option{{/required}}; + + {{#-last}} + } + //#endregion + {{/-last}} + {{/queryParams}} + {{#bodyParams}} + + {{#-first}} + //#region Body parameters + [] + {{^hasMore}} + type {{operationId}}BodyParams = {{dataType}} + {{/hasMore}} + {{#hasMore}} + type {{operationId}}BodyParams = { + {{paramName}} : {{dataType}}; + {{/hasMore}} + {{/-first}} + {{^-first}} + {{paramName}} : {{dataType}}; + {{/-first}} + {{#-last}} + {{^-first}} + } + {{/-first}} + //#endregion + {{/-last}} + {{/bodyParams}} + {{#formParams}} + + //#region Form parameters + {{#-first}} + [] + type {{operationId}}FormParams = { + {{/-first}} + {{paramName}} : {{dataType}} {{^required}}option{{/required}}; + {{#-last}} + } + {{/-last}} + //#endregion + {{/formParams}} + {{#headerParams}} + + //#region Header parameters + {{#-first}} + [] + type {{operationId}}HeaderParams = { + {{/-first}} + {{paramName}} : {{dataType}} {{^required}}option{{/required}}; + {{#-last}} + } + {{/-last}} + //#endregion + {{/headerParams}} + {{#cookieParams}} + + //#region Cookie parameters + {{#-first}} + type {{operationId}}CookieParams = { + {{/-first}} + {{paramName}} : {{dataType}} {{^required}}option{{/required}}; + {{#-last}} + } + {{/-last}} + //#endregion + {{/cookieParams}} + + {{#responses}} + + type {{operationId}}{{#isDefault}}Default{{/isDefault}}StatusCode{{^isDefault}}{{code}}{{/isDefault}}Response = { + content:{{#dataType}}{{{.}}}{{/dataType}}{{^dataType}}string{{/dataType}}; + {{^code}}code:int{{/code}} + } + {{/responses}} + type {{operationId}}Result = {{#responses}}{{operationId}}{{#isDefault}}Default{{/isDefault}}StatusCode{{^isDefault}}{{code}}{{/isDefault}} of {{operationId}}{{#isDefault}}Default{{/isDefault}}StatusCode{{^isDefault}}{{code}}{{/isDefault}}Response{{#hasMore}}|{{/hasMore}}{{/responses}} + + {{#allParams}} + {{#-first}} + type {{operationId}}Args = { + {{/-first}} + {{/allParams}} + {{#hasHeaderParams}} + headerParams:{{operationId}}HeaderParams; + {{/hasHeaderParams}} + {{#pathParams}} + {{#-first}} + pathParams:{{operationId}}PathParams; + {{/-first}} + {{/pathParams}} + {{#queryParams}} + {{#-first}} + queryParams:Result<{{operationId}}QueryParams,string>; + {{/-first}} + {{/queryParams}} + {{#bodyParams}} + {{#-first}} + bodyParams:{{operationId}}BodyParams + {{/-first}} + {{/bodyParams}} + {{#formParams}} + {{#-first}} + formParams:Result<{{operationId}}FormParams,string> + {{/-first}} + {{/formParams}} + {{#allParams}} + {{#-first}} + } + {{/-first}} + {{/allParams}} + {{/operation}} + {{/operations}} + \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/Model.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/Model.mustache new file mode 100644 index 0000000000..8084cc0cf8 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/Model.mustache @@ -0,0 +1,35 @@ +namespace {{packageName}}.{{modelPackage}} + +open System +open System.Collections.Generic +open Newtonsoft.Json +{{#imports}} +open {{import}} +{{/imports}} + +module {{classname}} = + + {{#models}} + {{#model}} + //#region {{classname}} + + {{^allowableValues}} + [] + type {{classname}} = { + {{#vars}} + [] + {{name}} : {{#isDateTime}}{{^required}}Nullable<{{/required}}{{/isDateTime}}{{{dataType}}}{{#isDateTime}}{{^required}}>{{/required}}{{/isDateTime}}; + {{/vars}} + } + {{/allowableValues}} + {{#allowableValues}} + {{#enumVars}} + let {{name}} = {{#isString}}"{{value}}"{{/isString}}{{#isInteger}}"{{value}}"{{/isInteger}} + {{/enumVars}} + type {{classname}} = {{#isString}}string{{/isString}}{{#isInteger}}int{{/isInteger}} + {{/allowableValues}} + + //#endregion + {{/model}} + {{/models}} + \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/Project.fsproj.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/Project.fsproj.mustache new file mode 100644 index 0000000000..c0b479a470 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/Project.fsproj.mustache @@ -0,0 +1,41 @@ + + + {{packageName}} + {{packageName}} + netcoreapp2.1 + v2 + + + + + + + + + PreserveNewest + + + PreserveNewest + Never + + + + + {{#models}} + {{#model}} + + {{/model}} + {{/models}} + {{#apiInfo}} + {{#apis}} + {{#operations}} + + + + + {{/operations}} + {{/apis}} + {{/apiInfo}} + + + \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/README.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/README.mustache new file mode 100644 index 0000000000..9441f3981f --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/README.mustache @@ -0,0 +1,143 @@ +# {{packageName}} + +An [F# Azure Functions](https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-fsharp) server stub for the {{packageName}} package, created via the [OpenAPI generator](https://github.com/OpenAPITools/openapi-generator/). + +## Models + +The following models have been auto-generated from the provided OpenAPI schema: + +{{#apiInfo}} +{{#models}} +{{#model}} +- model/{{classname}}Model.fs +{{/model}} +{{/models}} +{{/apiInfo}} + +## Operations + +Handlers have been auto-generated from the operations specified in the OpenAPI schema as follows: + +{{#apiInfo}} +{{#operations}} +{{#operation}} +- api/{{classname}}Handler.fs +{{/operation}} +{{/operations}} +{{/apiInfo}} + +## Operation Parameters + +Types have been generated for the URL, query, form, header and cookie parameters passed to each handler in the following files: + +{{#apiInfo}} +{{#apis}} +- api/{{classname}}HandlerParams.fs +{{/apis}} +{{/apiInfo}} + +## Service Interfaces + +Handlers will attempt to bind parameters to the applicable type and pass to a Service specific to that Handler. Service interfaces have been generated as follows: + +{{#apiInfo}} +{{#apis}} +- api/{{classname}}ServiceInterface.fs +{{/apis}} +{{/apiInfo}} + +Each Service contains functions for each [OperationId], each accepting a [OperationId]Params object that wraps the operation's parameters. + +If a requestBody is a ref type (i.e. a Model) or a single simple type, the operation parameter will be typed as the expected Model: + +`type AddPetBodyParams = Pet` + +If a requestBody is a simple type with named properties, the operation parameters will be typed to reflect those properties: + +`type AddFooBodyParams = { + Name:string; + Age:int +} + +Each Service/operation function must accept the [OperationId]Params object and return a [OperationId]Result type. For example: + +`type AddPetArgs = { bodyParams:AddPetBodyParams } +type IPetApiService = abstract member AddPet:HttpContext -> AddPetArgs->AddPetResult` + +[OperationId]Result is a discriminated union of all possible OpenAPI response types for that operation. + +This means that service implementations can only return status codes that have been declared in the OpenAPI specification. +However, if the OpenAPI spec declares a default Response for an operation, the service can manually set the status code. + +For example: + +`type FindPetsByStatusDefaultStatusCodeResponse = { content:Pet[];} +type FindPetsByStatusStatusCode400Response = { content:string; } +type FindPetsByStatusResult = FindPetsByStatusDefaultStatusCode of FindPetsByStatusDefaultStatusCodeResponse | FindPetsByStatusStatusCode400 of FindPetsByStatusStatusCode400Response` + +## Service Implementations + +Stubbed service implementations of those interfaces have been generated as follows: + +{{#apiInfo}} +{{#apis}} +- impl/{{classname}}Service.fs +{{/apis}} +{{/apiInfo}} + +You should manually edit these files to implement your business logic. + +## Additional Handlers + +Additional handlers can be configured in the Customization.fs + +`let handlers : HttpHandler list = [ + // insert your handlers here + GET >=> + choose [ + route "/login" >=> redirectToLogin + route "/logout" >=> logout + ] + ]` + +## TODO/currently unsupported + +- form request bodies (URL-encoded or multipart) +- limit handler access to specified oAuth scheme when multiple oAuth schemes defined +- XML content/response types +- http authentication +- testing header params + +## .openapi-generator-ignore + +It is recommended to add src/impl/** and the project's .fsproj file to the .openapi-generator-ignore file. + +This will allow you to regenerate model, operation and parameter files without overriding your implementations of business logic, authentication, data layers, and so on. + +## Build and test the application + +### Windows + +Run the `build.bat` script in order to restore, build and test (if you've selected to include tests) the application: + +``` +> ./build.bat +``` + +### Linux/macOS + +Run the `build.sh` script in order to restore, build and test (if you've selected to include tests) the application: + +``` +$ ./build.sh +``` + +## Run the application + +After a successful build you can start the web application by executing the following command in your terminal: + +``` +dotnet run --project src/{{packageName} +``` + +After the application has started visit [http://localhost:5000](http://localhost:5000) in your preferred browser. \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/ServiceImpl.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/ServiceImpl.mustache new file mode 100644 index 0000000000..18050015f8 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/ServiceImpl.mustache @@ -0,0 +1,43 @@ +namespace {{packageName}} +{{#imports}} +{{#import}} +open {{import}} +{{/import}} +{{/imports}} +open {{classname}}HandlerParams +open {{classname}}ServiceInterface +open System.Collections.Generic +open System + +module {{classname}}ServiceImplementation = + + //#region Service implementation + type {{classname}}ServiceImpl() = + interface I{{classname}}Service with + + {{#operations}} + {{#operation}} + member this.{{operationId}} {{^hasBodyParam}}(){{/hasBodyParam}}{{#hasBodyParam}}(parameters:{{operationId}}BodyParams){{/hasBodyParam}} = + {{#responses}} + {{#-first}} + {{#hasMore}} + if true then + {{/hasMore}} + {{/-first}} + {{^-first}} + {{#hasMore}} + else if true then + {{/hasMore}} + {{^hasMore}} + else + {{/hasMore}} + {{/-first}} + let content = "{{message}}" {{#dataType}}:> obj :?> {{{.}}} // this cast is obviously wrong, and is only intended to allow generated project to compile {{/dataType}} + {{operationId}}{{#isDefault}}Default{{/isDefault}}StatusCode{{^isDefault}}{{code}}{{/isDefault}} { content = content } + {{/responses}} + + {{/operation}} + {{/operations}} + //#endregion + + let {{classname}}Service = {{classname}}ServiceImpl() :> I{{classname}}Service \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/ServiceInterface.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/ServiceInterface.mustache new file mode 100644 index 0000000000..c57b01778f --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/ServiceInterface.mustache @@ -0,0 +1,16 @@ +namespace {{packageName}} +open {{classname}}HandlerParams +open System +open Microsoft.AspNetCore.Http + + +module {{classname}}ServiceInterface = + + //#region Service interface + type I{{classname}}Service = + {{#operations}} + {{#operation}} + abstract member {{operationId}} : {{^hasBodyParam}}unit{{/hasBodyParam}}{{#hasBodyParam}}{{operationId}}BodyParams{{/hasBodyParam}} -> {{operationId}}Result + {{/operation}} + {{/operations}} + //#endregion \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/build.bat.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/build.bat.mustache new file mode 100644 index 0000000000..9e7afd0a27 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/build.bat.mustache @@ -0,0 +1,3 @@ +dotnet restore {{packageName}}.fsproj +dotnet build {{packageName}}.fsproj + diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/build.sh.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/build.sh.mustache new file mode 100644 index 0000000000..ab63b07a14 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/build.sh.mustache @@ -0,0 +1,4 @@ +#!/bin/sh +dotnet restore {{packageName}}.fsproj +dotnet build {{packageName}}.fsproj + diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/gitignore.mustache b/modules/openapi-generator/src/main/resources/fsharp-functions-server/gitignore.mustache new file mode 100644 index 0000000000..ab071890fc --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/gitignore.mustache @@ -0,0 +1,265 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# Azure Functions localsettings file +local.settings.json + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# DNX +project.lock.json +project.fragment.lock.json +artifacts/ + +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# TODO: Comment the next line if you want to checkin your web deploy settings +# but database connection strings (with potential passwords) will be unencrypted +#*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +**/packages/** +# except build/, which is used as an MSBuild target. +#!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config +# NuGet v3's project.json files produces more ignoreable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +node_modules/ +orleans.codegen.cs + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +mercury_server/.paket/paket.exe +mercury_server/paket-files/ + +# FAKE - F# Make +mercury_server/.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush +.cr/ + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/host.json b/modules/openapi-generator/src/main/resources/fsharp-functions-server/host.json new file mode 100644 index 0000000000..ccd1678a5e --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/host.json @@ -0,0 +1,8 @@ +{ + "version": "2.0", + "extensions":{ + "http": { + "routePrefix": "" + } + } +} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/fsharp-functions-server/local.settings.json b/modules/openapi-generator/src/main/resources/fsharp-functions-server/local.settings.json new file mode 100644 index 0000000000..3cdc862b52 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/fsharp-functions-server/local.settings.json @@ -0,0 +1,7 @@ +{ + "IsEncrypted": false, + "Values": { + "AzureWebJobsStorage": "", + "FUNCTIONS_WORKER_RUNTIME": "dotnet" + } +} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/haskell-http-client/Core.mustache b/modules/openapi-generator/src/main/resources/haskell-http-client/Core.mustache index 3391efe3bc..65ea95b6b5 100644 --- a/modules/openapi-generator/src/main/resources/haskell-http-client/Core.mustache +++ b/modules/openapi-generator/src/main/resources/haskell-http-client/Core.mustache @@ -14,7 +14,7 @@ Module : {{baseModule}}.Core {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeFamilies #-} -{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds #-} +{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-} module {{baseModule}}.Core where @@ -425,16 +425,16 @@ instance P.Show DateTime where instance MimeRender MimeMultipartFormData DateTime where mimeRender _ = mimeRenderDefaultMultipartFormData --- | @{{^dateTimeFormat}}_parseISO8601{{/dateTimeFormat}}{{#dateTimeFormat}}TI.parseTimeM True TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}}@ -_readDateTime :: (TI.ParseTime t, Monad m, {{^dateTimeFormat}}Alternative m{{/dateTimeFormat}}) => String -> m t +-- | @{{#dateTimeParseFormat}}TI.parseTimeM True TI.defaultTimeLocale "{{{dateTimeParseFormat}}}"{{/dateTimeParseFormat}}{{^dateTimeParseFormat}}{{#dateTimeFormat}}TI.parseTimeM True TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}}{{^dateTimeFormat}}_parseISO8601{{/dateTimeFormat}}{{/dateTimeParseFormat}}@ +_readDateTime :: (TI.ParseTime t, Monad m{{^dateTimeFormat}}, Alternative m{{/dateTimeFormat}}) => String -> m t _readDateTime = - {{^dateTimeFormat}}_parseISO8601{{/dateTimeFormat}}{{#dateTimeFormat}}TI.parseTimeM True TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}} + {{#dateTimeParseFormat}}TI.parseTimeM True TI.defaultTimeLocale "{{{dateTimeParseFormat}}}"{{/dateTimeParseFormat}}{{^dateTimeParseFormat}}{{#dateTimeFormat}}TI.parseTimeM True TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}}{{^dateTimeFormat}}_parseISO8601{{/dateTimeFormat}}{{/dateTimeParseFormat}} {-# INLINE _readDateTime #-} -- | @{{^dateTimeFormat}}TI.formatISO8601Millis{{/dateTimeFormat}}{{#dateTimeFormat}}TI.formatTime TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}}@ _showDateTime :: ({{^dateTimeFormat}}t ~ TI.UTCTime, {{/dateTimeFormat}}TI.FormatTime t) => t -> String _showDateTime = - {{^dateTimeFormat}}TI.formatISO8601Millis{{/dateTimeFormat}}{{#dateTimeFormat}}TI.formatTime TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}} + {{#dateTimeFormat}}TI.formatTime TI.defaultTimeLocale "{{{dateTimeFormat}}}"{{/dateTimeFormat}}{{^dateTimeFormat}}TI.formatISO8601Millis{{/dateTimeFormat}} {-# INLINE _showDateTime #-} -- | parse an ISO8601 date-time string diff --git a/modules/openapi-generator/src/main/resources/haskell-http-client/README.mustache b/modules/openapi-generator/src/main/resources/haskell-http-client/README.mustache index 1e403bc86b..1ccf6cc458 100644 --- a/modules/openapi-generator/src/main/resources/haskell-http-client/README.mustache +++ b/modules/openapi-generator/src/main/resources/haskell-http-client/README.mustache @@ -66,6 +66,7 @@ These options allow some customization of the code generation process. | configType | Set the name of the type used for configuration | | {{{configType}}} | | dateFormat | format string used to parse/render a date | %Y-%m-%d | {{{dateFormat}}} | | dateTimeFormat | format string used to parse/render a datetime. (Defaults to [formatISO8601Millis][1] when not provided) | | {{{dateTimeFormat}}} | +| dateTimeParseFormat | overrides the format string used to parse a datetime | | {{{dateTimeParseFormat}}} | | generateEnums | Generate specific datatypes for OpenAPI enums | true | {{{generateEnums}}} | | generateFormUrlEncodedInstances | Generate FromForm/ToForm instances for models used by x-www-form-urlencoded operations (model fields must be primitive types) | true | {{{generateFormUrlEncodedInstances}}} | | generateLenses | Generate Lens optics for Models | true | {{{generateLenses}}} | diff --git a/modules/openapi-generator/src/main/resources/java-undertow-server/pom.mustache b/modules/openapi-generator/src/main/resources/java-undertow-server/pom.mustache index 8938a5ad3f..d11a2ce7c8 100644 --- a/modules/openapi-generator/src/main/resources/java-undertow-server/pom.mustache +++ b/modules/openapi-generator/src/main/resources/java-undertow-server/pom.mustache @@ -16,8 +16,8 @@ 1.8 UTF-8 0.1.1 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 1.7.21 0.5.2 4.5.3 diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/data_class.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/data_class.mustache index 0cece22bb0..1cb58bb49e 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/data_class.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/data_class.mustache @@ -15,10 +15,13 @@ import kotlinx.android.parcel.Parcelize import kotlinx.serialization.* import kotlinx.serialization.internal.CommonEnumSerializer {{/multiplatform}} +{{#serializableModel}} +import java.io.Serializable +{{/serializableModel}} /** * {{{description}}} {{#vars}} - * @param {{{vendorExtensions.x-escapedName}}} {{{description}}} + * @param {{{name}}} {{{description}}} {{/vars}} */ {{#parcelizeModels}} @@ -31,7 +34,9 @@ data class {{classname}} ( {{/-last}}{{/requiredVars}}{{#hasRequired}}{{#hasOptional}}, {{/hasOptional}}{{/hasRequired}}{{#optionalVars}}{{>data_class_opt_var}}{{^-last}}, {{/-last}}{{/optionalVars}} -){{#parcelizeModels}} : Parcelable{{/parcelizeModels}} +) {{^serializableModel}}{{#parcelizeModels}} : Parcelable{{/parcelizeModels}}{{/serializableModel}} +{{^parcelizeModels}}{{#serializableModel}}: Serializable {{/serializableModel}}{{/parcelizeModels}} +{{#parcelizeModels}}{{#serializableModel}} : Parcelable, Serializable {{/serializableModel}}{{/parcelizeModels}} {{#hasEnums}} { {{#vars}}{{#isEnum}} diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/data_class_opt_var.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/data_class_opt_var.mustache index e77b8b2b2b..5ec0214d6c 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/data_class_opt_var.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/data_class_opt_var.mustache @@ -9,4 +9,4 @@ @SerializedName("{{name}}") {{/gson}} {{/jvm}} - {{#multiplatform}}@SerialName(value = "{{name}}") {{/multiplatform}}val {{{vendorExtensions.x-escapedName}}}: {{#isEnum}}{{#isListContainer}}{{#isList}}kotlin.collections.List{{/isList}}{{^isList}}kotlin.Array{{/isList}}<{{classname}}.{{{nameInCamelCase}}}>{{/isListContainer}}{{^isListContainer}}{{classname}}.{{{nameInCamelCase}}}{{/isListContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}? = {{#defaultvalue}}{{defaultvalue}}{{/defaultvalue}}{{^defaultvalue}}null{{/defaultvalue}} \ No newline at end of file + {{#multiplatform}}@SerialName(value = "{{baseName}}") {{/multiplatform}}val {{{name}}}: {{#isEnum}}{{#isListContainer}}{{#isList}}kotlin.collections.List{{/isList}}{{^isList}}kotlin.Array{{/isList}}<{{classname}}.{{{nameInCamelCase}}}>{{/isListContainer}}{{^isListContainer}}{{classname}}.{{{nameInCamelCase}}}{{/isListContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}? = {{#defaultvalue}}{{defaultvalue}}{{/defaultvalue}}{{^defaultvalue}}null{{/defaultvalue}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/kotlin-client/data_class_req_var.mustache b/modules/openapi-generator/src/main/resources/kotlin-client/data_class_req_var.mustache index 0097d0702a..a60f1baf24 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-client/data_class_req_var.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-client/data_class_req_var.mustache @@ -9,4 +9,4 @@ @SerializedName("{{name}}") {{/gson}} {{/jvm}} - {{#multiplatform}}@SerialName(value = "{{name}}") @Required {{/multiplatform}}val {{{vendorExtensions.x-escapedName}}}: {{#isEnum}}{{#isListContainer}}{{#isList}}kotlin.collections.List{{/isList}}{{^isList}}kotlin.Array{{/isList}}<{{classname}}.{{{nameInCamelCase}}}>{{/isListContainer}}{{^isListContainer}}{{classname}}.{{{nameInCamelCase}}}{{/isListContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}} \ No newline at end of file + {{#multiplatform}}@SerialName(value = "{{baseName}}") @Required {{/multiplatform}}val {{{name}}}: {{#isEnum}}{{#isListContainer}}{{#isList}}kotlin.collections.List{{/isList}}{{^isList}}kotlin.Array{{/isList}}<{{classname}}.{{{nameInCamelCase}}}>{{/isListContainer}}{{^isListContainer}}{{classname}}.{{{nameInCamelCase}}}{{/isListContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/kotlin-server/data_class.mustache b/modules/openapi-generator/src/main/resources/kotlin-server/data_class.mustache index feb6a0b317..fe88e433f2 100644 --- a/modules/openapi-generator/src/main/resources/kotlin-server/data_class.mustache +++ b/modules/openapi-generator/src/main/resources/kotlin-server/data_class.mustache @@ -3,6 +3,9 @@ import android.os.Parcelable import kotlinx.android.parcel.Parcelize {{/parcelizeModels}} +{{#serializableModel}} +import java.io.Serializable +{{/serializableModel}} /** * {{{description}}} {{#vars}} @@ -18,7 +21,10 @@ data class {{classname}} ( {{/-last}}{{/requiredVars}}{{#hasRequired}}{{#hasOptional}}, {{/hasOptional}}{{/hasRequired}}{{#optionalVars}}{{>data_class_opt_var}}{{^-last}}, {{/-last}}{{/optionalVars}} -){{#parcelizeModels}} : Parcelable{{/parcelizeModels}} { +) {{^serializableModel}}{{#parcelizeModels}} : Parcelable{{/parcelizeModels}}{{/serializableModel}} +{{^parcelizeModels}}{{#serializableModel}}: Serializable {{/serializableModel}}{{/parcelizeModels}} +{{#parcelizeModels}}{{#serializableModel}} : Parcelable, Serializable {{/serializableModel}}{{/parcelizeModels}} +{ {{#hasEnums}}{{#vars}}{{#isEnum}} /** * {{{description}}} diff --git a/modules/openapi-generator/src/main/resources/php-symfony/api_input_validation.mustache b/modules/openapi-generator/src/main/resources/php-symfony/api_input_validation.mustache index 91b9f80bdf..8c3a1d5e36 100644 --- a/modules/openapi-generator/src/main/resources/php-symfony/api_input_validation.mustache +++ b/modules/openapi-generator/src/main/resources/php-symfony/api_input_validation.mustache @@ -67,10 +67,10 @@ {{/minimum}} {{#maximum}} {{#exclusiveMaximum}} - $asserts[] = new Assert\LessThan({{minimum}}); + $asserts[] = new Assert\LessThan({{maximum}}); {{/exclusiveMaximum}} {{^exclusiveMaximum}} - $asserts[] = new Assert\LessThanOrEqual({{minimum}}); + $asserts[] = new Assert\LessThanOrEqual({{maximum}}); {{/exclusiveMaximum}} {{/maximum}} {{#pattern}} diff --git a/modules/openapi-generator/src/main/resources/php/ObjectSerializer.mustache b/modules/openapi-generator/src/main/resources/php/ObjectSerializer.mustache index 526665f271..f5f0e5119e 100644 --- a/modules/openapi-generator/src/main/resources/php/ObjectSerializer.mustache +++ b/modules/openapi-generator/src/main/resources/php/ObjectSerializer.mustache @@ -140,6 +140,10 @@ class ObjectSerializer */ public static function toHeaderValue($value) { + if (method_exists($value, 'toHeaderValue')) { + return $value->toHeaderValue(); + } + return self::toString($value); } diff --git a/modules/openapi-generator/src/main/resources/php/model_generic.mustache b/modules/openapi-generator/src/main/resources/php/model_generic.mustache index 98a892cb92..adc72e5487 100644 --- a/modules/openapi-generator/src/main/resources/php/model_generic.mustache +++ b/modules/openapi-generator/src/main/resources/php/model_generic.mustache @@ -410,4 +410,14 @@ class {{classname}} {{#parentSchema}}extends {{{parent}}} {{/parentSchema}}{{^pa JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/api.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/api.mustache index edf76be03b..dd650b37d7 100644 --- a/modules/openapi-generator/src/main/resources/python/python-experimental/api.mustache +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/api.mustache @@ -10,10 +10,14 @@ import re # noqa: F401 import six from {{packageName}}.api_client import ApiClient -from {{packageName}}.exceptions import ( # noqa: F401 +from {{packageName}}.exceptions import ( ApiTypeError, ApiValueError ) +from {{packageName}}.model_utils import ( + check_allowed_values, + check_validations +) {{#operations}} @@ -30,265 +34,384 @@ class {{classname}}(object): self.api_client = api_client {{#operation}} - def {{operationId}}(self{{#requiredParams}}{{^defaultValue}}, {{paramName}}{{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}}, {{paramName}}={{{defaultValue}}}{{/defaultValue}}{{/requiredParams}}, **kwargs): # noqa: E501 - """{{#summary}}{{{.}}}{{/summary}}{{^summary}}{{operationId}}{{/summary}} # noqa: E501 + def __{{operationId}}(self, {{#sortParamsByRequiredFlag}}{{#allParams}}{{#required}}{{paramName}}, {{/required}}{{/allParams}}{{/sortParamsByRequiredFlag}}**kwargs): # noqa: E501 + """{{#summary}}{{{.}}}{{/summary}}{{^summary}}{{operationId}}{{/summary}} # noqa: E501 {{#notes}} - {{{notes}}} # noqa: E501 + {{{notes}}} # noqa: E501 {{/notes}} - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.{{operationId}}({{#requiredParams}}{{^defaultValue}}{{paramName}}, {{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}}{{paramName}}={{{defaultValue}}}, {{/defaultValue}}{{/requiredParams}}async_req=True) - >>> result = thread.get() + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True +{{#sortParamsByRequiredFlag}} + >>> thread = api.{{operationId}}({{#allParams}}{{#required}}{{paramName}}, {{/required}}{{/allParams}}async_req=True) +{{/sortParamsByRequiredFlag}} +{{^sortParamsByRequiredFlag}} + >>> thread = api.{{operationId}}({{#allParams}}{{#required}}{{paramName}}={{paramName}}_value, {{/required}}{{/allParams}}async_req=True) +{{/sortParamsByRequiredFlag}} + >>> result = thread.get() -{{#requiredParams}} -{{^hasMore}} - Args: -{{/hasMore}} -{{/requiredParams}} -{{#requiredParams}} -{{^defaultValue}} - {{paramName}} ({{dataType}}):{{#description}} {{description}}{{/description}}{{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}} - {{paramName}} ({{dataType}}):{{#description}} {{description}}.{{/description}} defaults to {{{defaultValue}}}, must be one of [{{{defaultValue}}}]{{/defaultValue}}{{/requiredParams}} - - Keyword Args:{{#optionalParams}} - {{paramName}} ({{dataType}}):{{#description}} {{description}}.{{/description}} [optional]{{#defaultValue}} if omitted the server will use the default value of {{{defaultValue}}}{{/defaultValue}}{{/optionalParams}} - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - {{#returnType}}{{returnType}}{{/returnType}}{{^returnType}}None{{/returnType}}: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.{{operationId}}_with_http_info({{#requiredParams}}{{^defaultValue}}{{paramName}}, {{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}}{{paramName}}={{paramName}}, {{/defaultValue}}{{/requiredParams}}**kwargs) # noqa: E501 - else: - (data) = self.{{operationId}}_with_http_info({{#requiredParams}}{{^defaultValue}}{{paramName}}, {{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}}{{paramName}}={{paramName}}, {{/defaultValue}}{{/requiredParams}}**kwargs) # noqa: E501 - return data - - def {{operationId}}_with_http_info(self{{#requiredParams}}{{^defaultValue}}, {{paramName}}{{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}}, {{paramName}}=None{{/defaultValue}}{{/requiredParams}}, **kwargs): # noqa: E501 - """{{#summary}}{{{.}}}{{/summary}}{{^summary}}{{operationId}}{{/summary}} # noqa: E501 - -{{#notes}} - {{{notes}}} # noqa: E501 -{{/notes}} - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.{{operationId}}_with_http_info({{#requiredParams}}{{^defaultValue}}{{paramName}}, {{/defaultValue}}{{/requiredParams}}async_req=True) - >>> result = thread.get() - -{{#requiredParams}} -{{^hasMore}} - Args: -{{/hasMore}} -{{/requiredParams}} -{{#requiredParams}} -{{^defaultValue}} - {{paramName}} ({{dataType}}):{{#description}} {{description}}{{/description}}{{/defaultValue}}{{/requiredParams}}{{#requiredParams}}{{#defaultValue}} - {{paramName}} ({{dataType}}):{{#description}} {{description}}.{{/description}} defaults to {{{defaultValue}}}, must be one of [{{{defaultValue}}}]{{/defaultValue}}{{/requiredParams}} - - Keyword Args:{{#optionalParams}} - {{paramName}} ({{dataType}}):{{#description}} {{description}}.{{/description}} [optional]{{#defaultValue}} if omitted the server will use the default value of {{{defaultValue}}}{{/defaultValue}}{{/optionalParams}} - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - {{#returnType}}{{returnType}}{{/returnType}}{{^returnType}}None{{/returnType}}: - """ - - {{#servers.0}} - local_var_hosts = [{{#servers}} - '{{{url}}}'{{^-last}},{{/-last}}{{/servers}} - ] - local_var_host = local_var_hosts[0] - if kwargs.get('_host_index'): - if (int(kwargs.get('_host_index')) < 0 or - int(kwargs.get('_host_index')) >= len(local_var_hosts)): - raise ApiValueError( - "Invalid host index. Must be 0 <= index < %s" % - len(local_var_host) - ) - local_var_host = local_var_hosts[int(kwargs.get('_host_index'))] - {{/servers.0}} - local_var_params = locals() - - all_params = [{{#allParams}}'{{paramName}}'{{#hasMore}}, {{/hasMore}}{{/allParams}}] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params{{#servers.0}} and key != "_host_index"{{/servers.0}}: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method {{operationId}}" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] + :param async_req bool: execute request asynchronously {{#allParams}} -{{^isNullable}} -{{#required}} - # verify the required parameter '{{paramName}}' is set - if ('{{paramName}}' not in local_var_params or - local_var_params['{{paramName}}'] is None): - raise ApiValueError("Missing the required parameter `{{paramName}}` when calling `{{operationId}}`") # noqa: E501 -{{/required}} -{{/isNullable}} -{{#-last}} -{{/-last}} + :param {{dataType}} {{paramName}}:{{#description}} {{{description}}}{{/description}}{{#required}} (required){{/required}}{{#optional}}(optional){{/optional}} {{/allParams}} + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: {{#returnType}}{{returnType}}{{/returnType}}{{^returnType}}None{{/returnType}} + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) +{{#requiredParams}} + kwargs['{{paramName}}'] = {{paramName}} +{{/requiredParams}} + return self.call_with_http_info(**kwargs) + + self.{{operationId}} = Endpoint( + settings={ + 'response_type': {{#returnType}}'{{returnType}}'{{/returnType}}{{^returnType}}None{{/returnType}}, +{{#authMethods}} +{{#-first}} + 'auth': [ +{{/-first}} + '{{name}}'{{#hasMore}}, {{/hasMore}} +{{#-last}} + ], +{{/-last}} +{{/authMethods}} +{{^authMethods}} + 'auth': [], +{{/authMethods}} + 'endpoint_path': '{{{path}}}', + 'operation_id': '{{operationId}}', + 'http_method': '{{httpMethod}}', +{{#servers}} +{{#-first}} + 'servers': [ +{{/-first}} + '{{{url}}}'{{^-last}},{{/-last}} +{{#-last}} + ] +{{/-last}} +{{/servers}} +{{^servers}} + 'servers': [], +{{/servers}} + }, + params_map={ + 'all': [ +{{#allParams}} + '{{paramName}}', +{{/allParams}} + ], +{{#requiredParams}} +{{#-first}} + 'required': [ +{{/-first}} + '{{paramName}}', +{{#-last}} + ], +{{/-last}} +{{/requiredParams}} +{{^requiredParams}} + 'required': [], +{{/requiredParams}} + 'nullable': [ +{{#allParams}} +{{#isNullable}} + '{{paramName}}', +{{/isNullable}} +{{/allParams}} + ], + 'enum': [ {{#allParams}} {{#isEnum}} -{{#isContainer}} - allowed_values = [{{#allowableValues}}{{#values}}{{#items.isString}}"{{/items.isString}}{{{this}}}{{#items.isString}}"{{/items.isString}}{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}] # noqa: E501 -{{#isListContainer}} - if ('{{{paramName}}}' in local_var_params and - not set(local_var_params['{{{paramName}}}']).issubset(set(allowed_values))): # noqa: E501 - raise ValueError( - "Invalid values for `{{{paramName}}}` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(local_var_params['{{{paramName}}}']) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) -{{/isListContainer}} -{{#isMapContainer}} - if ('{{{paramName}}}' in local_var_params and - not set(local_var_params['{{{paramName}}}'].keys()).issubset(set(allowed_values))): - raise ValueError( - "Invalid keys in `{{{paramName}}}` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(local_var_params['{{{paramName}}}'].keys()) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) -{{/isMapContainer}} -{{/isContainer}} -{{^isContainer}} - allowed_values = [{{#allowableValues}}{{#values}}{{#isString}}"{{/isString}}{{{this}}}{{#isString}}"{{/isString}}{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}] # noqa: E501 - if ('{{{paramName}}}' in local_var_params and - local_var_params['{{{paramName}}}'] not in allowed_values): - raise ValueError( - "Invalid value for `{{{paramName}}}` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['{{{paramName}}}'], allowed_values) - ) -{{/isContainer}} + '{{paramName}}', {{/isEnum}} {{/allParams}} + ], + 'validation': [ {{#allParams}} {{#hasValidation}} - {{#maxLength}} - if ('{{paramName}}' in local_var_params and - len(local_var_params['{{paramName}}']) > {{maxLength}}): - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, length must be less than or equal to `{{maxLength}}`") # noqa: E501 - {{/maxLength}} - {{#minLength}} - if ('{{paramName}}' in local_var_params and - len(local_var_params['{{paramName}}']) < {{minLength}}): - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, length must be greater than or equal to `{{minLength}}`") # noqa: E501 - {{/minLength}} - {{#maximum}} - if '{{paramName}}' in local_var_params and local_var_params['{{paramName}}'] >{{#exclusiveMaximum}}={{/exclusiveMaximum}} {{maximum}}: # noqa: E501 - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, must be a value less than {{^exclusiveMaximum}}or equal to {{/exclusiveMaximum}}`{{maximum}}`") # noqa: E501 - {{/maximum}} - {{#minimum}} - if '{{paramName}}' in local_var_params and local_var_params['{{paramName}}'] <{{#exclusiveMinimum}}={{/exclusiveMinimum}} {{minimum}}: # noqa: E501 - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, must be a value greater than {{^exclusiveMinimum}}or equal to {{/exclusiveMinimum}}`{{minimum}}`") # noqa: E501 - {{/minimum}} - {{#pattern}} - if '{{paramName}}' in local_var_params and not re.search(r'{{{vendorExtensions.x-regex}}}', local_var_params['{{paramName}}']{{#vendorExtensions.x-modifiers}}{{#-first}}, flags={{/-first}}re.{{.}}{{^-last}} | {{/-last}}{{/vendorExtensions.x-modifiers}}): # noqa: E501 - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, must conform to the pattern `{{{pattern}}}`") # noqa: E501 - {{/pattern}} - {{#maxItems}} - if ('{{paramName}}' in local_var_params and - len(local_var_params['{{paramName}}']) > {{maxItems}}): - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, number of items must be less than or equal to `{{maxItems}}`") # noqa: E501 - {{/maxItems}} - {{#minItems}} - if ('{{paramName}}' in local_var_params and - len(local_var_params['{{paramName}}']) < {{minItems}}): - raise ApiValueError("Invalid value for parameter `{{paramName}}` when calling `{{operationId}}`, number of items must be greater than or equal to `{{minItems}}`") # noqa: E501 - {{/minItems}} + '{{paramName}}', {{/hasValidation}} {{/allParams}} - - collection_formats = {} - - path_params = {} -{{#pathParams}} - if '{{paramName}}' in local_var_params: - path_params['{{baseName}}'] = local_var_params['{{paramName}}']{{#isListContainer}} # noqa: E501 - collection_formats['{{baseName}}'] = '{{collectionFormat}}'{{/isListContainer}} # noqa: E501 -{{/pathParams}} - - query_params = [] -{{#queryParams}} - if '{{paramName}}' in local_var_params: - query_params.append(('{{baseName}}', local_var_params['{{paramName}}'])){{#isListContainer}} # noqa: E501 - collection_formats['{{baseName}}'] = '{{collectionFormat}}'{{/isListContainer}} # noqa: E501 -{{/queryParams}} - - header_params = {} -{{#headerParams}} - if '{{paramName}}' in local_var_params: - header_params['{{baseName}}'] = local_var_params['{{paramName}}']{{#isListContainer}} # noqa: E501 - collection_formats['{{baseName}}'] = '{{collectionFormat}}'{{/isListContainer}} # noqa: E501 -{{/headerParams}} - - form_params = [] - local_var_files = {} -{{#formParams}} - if '{{paramName}}' in local_var_params: - {{^isFile}}form_params.append(('{{baseName}}', local_var_params['{{paramName}}'])){{/isFile}}{{#isFile}}local_var_files['{{baseName}}'] = local_var_params['{{paramName}}']{{/isFile}}{{#isListContainer}} # noqa: E501 - collection_formats['{{baseName}}'] = '{{collectionFormat}}'{{/isListContainer}} # noqa: E501 -{{/formParams}} - - body_params = None -{{#bodyParam}} - if '{{paramName}}' in local_var_params: - body_params = local_var_params['{{paramName}}'] -{{/bodyParam}} - {{#hasProduces}} - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - [{{#produces}}'{{{mediaType}}}'{{#hasMore}}, {{/hasMore}}{{/produces}}]) # noqa: E501 - - {{/hasProduces}} - {{#hasConsumes}} - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - [{{#consumes}}'{{{mediaType}}}'{{#hasMore}}, {{/hasMore}}{{/consumes}}]) # noqa: E501 - - {{/hasConsumes}} - # Authentication setting - auth_settings = [{{#authMethods}}'{{name}}'{{#hasMore}}, {{/hasMore}}{{/authMethods}}] # noqa: E501 - - return self.api_client.call_api( - '{{{path}}}', '{{httpMethod}}', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type={{#returnType}}'{{returnType}}'{{/returnType}}{{^returnType}}None{{/returnType}}, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - {{#servers.0}} - _host=local_var_host, - {{/servers.0}} - collection_formats=collection_formats) + ] + }, + root_map={ + 'validations': { +{{#allParams}} +{{#hasValidation}} + ('{{paramName}}',): { +{{#maxLength}} + 'max_length': {{maxLength}},{{/maxLength}}{{#minLength}} + 'min_length': {{minLength}},{{/minLength}}{{#maxItems}} + 'max_items': {{maxItems}},{{/maxItems}}{{#minItems}} + 'min_items': {{minItems}},{{/minItems}}{{#maximum}} + {{#exclusiveMaximum}}'exclusive_maximum'{{/exclusiveMaximum}}'inclusive_maximum'{{^exclusiveMaximum}}{{/exclusiveMaximum}}: {{maximum}},{{/maximum}}{{#minimum}} + {{#exclusiveMinimum}}'exclusive_minimum'{{/exclusiveMinimum}}'inclusive_minimum'{{^exclusiveMinimum}}{{/exclusiveMinimum}}: {{minimum}},{{/minimum}}{{#pattern}} + 'regex': { + 'pattern': r'{{{vendorExtensions.x-regex}}}', # noqa: E501{{#vendorExtensions.x-modifiers}} + {{#-first}}'flags': (re.{{.}}{{/-first}}{{^-first}} re.{{.}}{{/-first}}{{^-last}} | {{/-last}}{{#-last}}){{/-last}}{{/vendorExtensions.x-modifiers}} + },{{/pattern}} + }, +{{/hasValidation}} +{{/allParams}} + }, + 'allowed_values': { +{{#allParams}} +{{#isEnum}} + ('{{paramName}}',): { +{{#isNullable}} + 'None': None,{{/isNullable}}{{#allowableValues}}{{#enumVars}} + "{{name}}": {{{value}}}{{^-last}},{{/-last}}{{/enumVars}}{{/allowableValues}} + }, +{{/isEnum}} +{{/allParams}} + }, + 'openapi_types': { +{{#allParams}} + '{{paramName}}': '{{dataType}}', +{{/allParams}} + }, + 'attribute_map': { +{{#allParams}} +{{^isBodyParam}} + '{{paramName}}': '{{baseName}}', +{{/isBodyParam}} +{{/allParams}} + }, + 'location_map': { +{{#allParams}} + '{{paramName}}': '{{#isFormParam}}form{{/isFormParam}}{{#isQueryParam}}query{{/isQueryParam}}{{#isPathParam}}path{{/isPathParam}}{{#isHeaderParam}}header{{/isHeaderParam}}{{#isCookieParam}}cookie{{/isCookieParam}}{{#isBodyParam}}body{{/isBodyParam}}', +{{/allParams}} + }, + 'collection_format_map': { +{{#allParams}} +{{#collectionFormat}} + '{{paramName}}': '{{collectionFormat}}', +{{/collectionFormat}} +{{/allParams}} + } + }, + headers_map={ +{{#hasProduces}} + 'accept': [ +{{#produces}} + '{{{mediaType}}}'{{#hasMore}},{{/hasMore}} +{{/produces}} + ], +{{/hasProduces}} +{{^hasProduces}} + 'accept': [], +{{/hasProduces}} +{{#hasConsumes}} + 'content_type': [ +{{#consumes}} + '{{{mediaType}}}'{{#hasMore}},{{/hasMore}} +{{/consumes}} + ] +{{/hasConsumes}} +{{^hasConsumes}} + 'content_type': [], +{{/hasConsumes}} + }, + api_client=api_client, + callable=__{{operationId}} + ) {{/operation}} {{/operations}} + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint + + Args: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called + """ + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable + + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations + ) + + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] + ) + + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } + + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format + + return params + + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class + """ + return self.callable(self, *args, **kwargs) + + def call_with_http_info(self, **kwargs): + + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) + ) + else: + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None + + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: + raise ApiTypeError( + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) + ) + + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) + + self.__validate_inputs(kwargs) + + params = self.__gather_params(kwargs) + + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) + + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list + + return self.api_client.call_api( + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/api_client.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/api_client.mustache index e955eb0570..0f02b445df 100644 --- a/modules/openapi-generator/src/main/resources/python/python-experimental/api_client.mustache +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/api_client.mustache @@ -18,9 +18,13 @@ from six.moves.urllib.parse import quote import tornado.gen {{/tornado}} -from {{packageName}}.configuration import Configuration import {{modelPackage}} from {{packageName}} import rest +from {{packageName}}.configuration import Configuration +from {{packageName}}.model_utils import ( + ModelNormal, + ModelSimple +) from {{packageName}}.exceptions import ApiValueError @@ -224,7 +228,7 @@ class ApiClient(object): if isinstance(obj, dict): obj_dict = obj - else: + elif isinstance(obj, ModelNormal): # Convert model obj to dict except # attributes `openapi_types`, `attribute_map` # and attributes which value is not None. @@ -233,6 +237,8 @@ class ApiClient(object): obj_dict = {obj.attribute_map[attr]: getattr(obj, attr) for attr, _ in six.iteritems(obj.openapi_types) if getattr(obj, attr) is not None} + elif isinstance(obj, ModelSimple): + return self.sanitize_for_serialization(obj.value) return {key: self.sanitize_for_serialization(val) for key, val in six.iteritems(obj_dict)} @@ -571,6 +577,8 @@ class ApiClient(object): return six.text_type(data) except TypeError: return data + except ValueError as exc: + raise ApiValueError(str(exc)) def __deserialize_object(self, value): """Return an original value. @@ -622,14 +630,15 @@ class ApiClient(object): """Deserializes list or dict to model. :param data: dict, list. - :param klass: class literal. + :param klass: class literal, ModelSimple or ModelNormal :return: model object. """ - if not klass.openapi_types and not hasattr(klass, - 'get_real_child_model'): - return data + if issubclass(klass, ModelSimple): + value = self.__deserialize(data, klass.openapi_types['value']) + return klass(value) + # code to handle ModelNormal used_data = data if not isinstance(data, (list, dict)): used_data = [data] @@ -641,13 +650,11 @@ class ApiClient(object): klass.attribute_map[attr] in used_data): value = used_data[klass.attribute_map[attr]] keyword_args[attr] = self.__deserialize(value, attr_type) - end_index = None argspec = inspect.getargspec(getattr(klass, '__init__')) if argspec.defaults: end_index = -len(argspec.defaults) required_positional_args = argspec.args[1:end_index] - for index, req_positional_arg in enumerate(required_positional_args): if keyword_args and req_positional_arg in keyword_args: positional_args.append(keyword_args[req_positional_arg]) @@ -655,9 +662,7 @@ class ApiClient(object): elif (not keyword_args and index < len(used_data) and isinstance(used_data, list)): positional_args.append(used_data[index]) - instance = klass(*positional_args, **keyword_args) - if hasattr(instance, 'get_real_child_model'): klass_name = instance.get_real_child_model(data) if klass_name: diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model.mustache index 7dc8e01fa6..082f4bddc4 100644 --- a/modules/openapi-generator/src/main/resources/python/python-experimental/model.mustache +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model.mustache @@ -2,240 +2,34 @@ {{>partial_header}} -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from {{packageName}}.exceptions import ApiValueError # noqa: F401 +from {{packageName}}.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) {{#models}} {{#model}} -class {{classname}}(object): - """NOTE: This class is auto generated by OpenAPI Generator. - Ref: https://openapi-generator.tech - - Do not edit the class manually. - """{{#allowableValues}} - - """ - allowed enum values - """ -{{#enumVars}} - {{name}} = {{{value}}}{{^-last}} +{{^interfaces}} +{{#isAlias}} +{{> python-experimental/model_templates/model_simple }} +{{/isAlias}} +{{^isAlias}} +{{> python-experimental/model_templates/model_normal }} +{{/isAlias}} +{{/interfaces}} +{{#interfaces}} +{{#-last}} +{{> python-experimental/model_templates/model_normal }} {{/-last}} -{{/enumVars}}{{/allowableValues}} - - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { -{{#requiredVars}} - '{{name}}': '{{{dataType}}}', -{{/requiredVars}} -{{#optionalVars}} - '{{name}}': '{{{dataType}}}', -{{/optionalVars}} - } - - attribute_map = { -{{#requiredVars}} - '{{name}}': '{{baseName}}', # noqa: E501 -{{/requiredVars}} -{{#optionalVars}} - '{{name}}': '{{baseName}}', # noqa: E501 -{{/optionalVars}} - } -{{#discriminator}} - - discriminator_value_class_map = { - {{#children}}'{{^vendorExtensions.x-discriminator-value}}{{name}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{vendorExtensions.x-discriminator-value}}}{{/vendorExtensions.x-discriminator-value}}': '{{{classname}}}'{{^-last}}, - {{/-last}}{{/children}} - } -{{/discriminator}} - - def __init__(self{{#requiredVars}}{{^defaultValue}}, {{name}}{{/defaultValue}}{{/requiredVars}}{{#requiredVars}}{{#defaultValue}}, {{name}}={{{defaultValue}}}{{/defaultValue}}{{/requiredVars}}{{#optionalVars}}, {{name}}=None{{/optionalVars}}): # noqa: E501 - """{{classname}} - a model defined in OpenAPI - -{{#requiredVars}}{{^hasMore}} Args:{{/hasMore}}{{/requiredVars}}{{#requiredVars}}{{^defaultValue}} - {{name}} ({{dataType}}):{{#description}} {{description}}{{/description}}{{/defaultValue}}{{/requiredVars}} - - Keyword Args:{{#requiredVars}}{{#defaultValue}} - {{name}} ({{dataType}}):{{#description}} {{description}}.{{/description}} defaults to {{{defaultValue}}}, must be one of [{{{defaultValue}}}]{{/defaultValue}} # noqa: E501{{/requiredVars}}{{#optionalVars}} - {{name}} ({{dataType}}):{{#description}} {{description}}.{{/description}} [optional]{{#defaultValue}} if omitted the server will use the default value of {{{defaultValue}}}{{/defaultValue}} # noqa: E501{{/optionalVars}} - """ -{{#vars}}{{#-first}} -{{/-first}} - self._{{name}} = None -{{/vars}} - self.discriminator = {{#discriminator}}'{{{discriminatorName}}}'{{/discriminator}}{{^discriminator}}None{{/discriminator}} -{{#vars}}{{#-first}} -{{/-first}} -{{#required}} - self.{{name}} = {{name}} -{{/required}} -{{^required}} -{{#isNullable}} - self.{{name}} = {{name}} -{{/isNullable}} -{{^isNullable}} - if {{name}} is not None: - self.{{name}} = {{name}} # noqa: E501 -{{/isNullable}} -{{/required}} -{{/vars}} - -{{#vars}} - @property - def {{name}}(self): - """Gets the {{name}} of this {{classname}}. # noqa: E501 - -{{#description}} - {{{description}}} # noqa: E501 -{{/description}} - - :return: The {{name}} of this {{classname}}. # noqa: E501 - :rtype: {{dataType}} - """ - return self._{{name}} - - @{{name}}.setter - def {{name}}( - self, - {{name}}): - """Sets the {{name}} of this {{classname}}. - -{{#description}} - {{{description}}} # noqa: E501 -{{/description}} - - :param {{name}}: The {{name}} of this {{classname}}. # noqa: E501 - :type: {{dataType}} - """ -{{^isNullable}} -{{#required}} - if {{name}} is None: - raise ValueError("Invalid value for `{{name}}`, must not be `None`") # noqa: E501 -{{/required}} -{{/isNullable}} -{{#isEnum}} -{{#isContainer}} - allowed_values = [{{#isNullable}}None,{{/isNullable}}{{#allowableValues}}{{#values}}{{#items.isString}}"{{/items.isString}}{{{this}}}{{#items.isString}}"{{/items.isString}}{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}] # noqa: E501 -{{#isListContainer}} - if not set({{{name}}}).issubset(set(allowed_values)): - raise ValueError( - "Invalid values for `{{{name}}}` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set({{{name}}}) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) -{{/isListContainer}} -{{#isMapContainer}} - if not set({{{name}}}.keys()).issubset(set(allowed_values)): - raise ValueError( - "Invalid keys in `{{{name}}}` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set({{{name}}}.keys()) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) -{{/isMapContainer}} -{{/isContainer}} -{{^isContainer}} - allowed_values = [{{#isNullable}}None,{{/isNullable}}{{#allowableValues}}{{#values}}{{#isString}}"{{/isString}}{{{this}}}{{#isString}}"{{/isString}}{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}] # noqa: E501 - if {{{name}}} not in allowed_values: - raise ValueError( - "Invalid value for `{{{name}}}` ({0}), must be one of {1}" # noqa: E501 - .format({{{name}}}, allowed_values) - ) -{{/isContainer}} -{{/isEnum}} -{{^isEnum}} -{{#hasValidation}} -{{#maxLength}} - if {{name}} is not None and len({{name}}) > {{maxLength}}: - raise ValueError("Invalid value for `{{name}}`, length must be less than or equal to `{{maxLength}}`") # noqa: E501 -{{/maxLength}} -{{#minLength}} - if {{name}} is not None and len({{name}}) < {{minLength}}: - raise ValueError("Invalid value for `{{name}}`, length must be greater than or equal to `{{minLength}}`") # noqa: E501 -{{/minLength}} -{{#maximum}} - if {{name}} is not None and {{name}} >{{#exclusiveMaximum}}={{/exclusiveMaximum}} {{maximum}}: # noqa: E501 - raise ValueError("Invalid value for `{{name}}`, must be a value less than {{^exclusiveMaximum}}or equal to {{/exclusiveMaximum}}`{{maximum}}`") # noqa: E501 -{{/maximum}} -{{#minimum}} - if {{name}} is not None and {{name}} <{{#exclusiveMinimum}}={{/exclusiveMinimum}} {{minimum}}: # noqa: E501 - raise ValueError("Invalid value for `{{name}}`, must be a value greater than {{^exclusiveMinimum}}or equal to {{/exclusiveMinimum}}`{{minimum}}`") # noqa: E501 -{{/minimum}} -{{#pattern}} - if {{name}} is not None and not re.search(r'{{{vendorExtensions.x-regex}}}', {{name}}{{#vendorExtensions.x-modifiers}}{{#-first}}, flags={{/-first}}re.{{.}}{{^-last}} | {{/-last}}{{/vendorExtensions.x-modifiers}}): # noqa: E501 - raise ValueError(r"Invalid value for `{{name}}`, must be a follow pattern or equal to `{{{pattern}}}`") # noqa: E501 -{{/pattern}} -{{#maxItems}} - if {{name}} is not None and len({{name}}) > {{maxItems}}: - raise ValueError("Invalid value for `{{name}}`, number of items must be less than or equal to `{{maxItems}}`") # noqa: E501 -{{/maxItems}} -{{#minItems}} - if {{name}} is not None and len({{name}}) < {{minItems}}: - raise ValueError("Invalid value for `{{name}}`, number of items must be greater than or equal to `{{minItems}}`") # noqa: E501 -{{/minItems}} -{{/hasValidation}} -{{/isEnum}} - - self._{{name}} = ( - {{name}}) - -{{/vars}} -{{#discriminator}} - def get_real_child_model(self, data): - """Returns the real base class specified by the discriminator""" - discriminator_key = self.attribute_map[self.discriminator] - discriminator_value = data[discriminator_key] - return self.discriminator_value_class_map.get(discriminator_value) - -{{/discriminator}} - def to_dict(self): - """Returns the model properties as a dict""" - result = {} - - for attr, _ in six.iteritems(self.openapi_types): - value = getattr(self, attr) - if isinstance(value, list): - result[attr] = list(map( - lambda x: x.to_dict() if hasattr(x, "to_dict") else x, - value - )) - elif hasattr(value, "to_dict"): - result[attr] = value.to_dict() - elif isinstance(value, dict): - result[attr] = dict(map( - lambda item: (item[0], item[1].to_dict()) - if hasattr(item[1], "to_dict") else item, - value.items() - )) - else: - result[attr] = value - - return result - - def to_str(self): - """Returns the string representation of the model""" - return pprint.pformat(self.to_dict()) - - def __repr__(self): - """For `print` and `pprint`""" - return self.to_str() - - def __eq__(self, other): - """Returns true if both objects are equal""" - if not isinstance(other, {{classname}}): - return False - - return self.__dict__ == other.__dict__ - - def __ne__(self, other): - """Returns true if both objects are not equal""" - return not self == other +{{/interfaces}} {{/model}} {{/models}} diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/classvar_allowed.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/classvar_allowed.mustache new file mode 100644 index 0000000000..6ed39521f6 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/classvar_allowed.mustache @@ -0,0 +1,16 @@ + allowed_values = { +{{#vars}} +{{#isEnum}} + ('{{name}}',): { +{{#isNullable}} + 'None': None, +{{/isNullable}} +{{#allowableValues}} +{{#enumVars}} + '{{name}}': {{{value}}}{{^-last}},{{/-last}} +{{/enumVars}} +{{/allowableValues}} + }, +{{/isEnum}} +{{/vars}} + } \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/classvar_openapi_validations.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/classvar_openapi_validations.mustache new file mode 100644 index 0000000000..7e89f83ef2 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/classvar_openapi_validations.mustache @@ -0,0 +1,25 @@ + openapi_types = { +{{#vars}} + '{{name}}': '{{{dataType}}}'{{#hasMore}},{{/hasMore}} +{{/vars}} + } + + validations = { +{{#vars}} +{{#hasValidation}} + ('{{name}}',): { +{{#maxLength}} + 'max_length': {{maxLength}},{{/maxLength}}{{#minLength}} + 'min_length': {{minLength}},{{/minLength}}{{#maxItems}} + 'max_items': {{maxItems}},{{/maxItems}}{{#minItems}} + 'min_items': {{minItems}},{{/minItems}}{{#maximum}} + {{#exclusiveMaximum}}'exclusive_maximum'{{/exclusiveMaximum}}'inclusive_maximum'{{^exclusiveMaximum}}{{/exclusiveMaximum}}: {{maximum}},{{/maximum}}{{#minimum}} + {{#exclusiveMinimum}}'exclusive_minimum'{{/exclusiveMinimum}}'inclusive_minimum'{{^exclusiveMinimum}}{{/exclusiveMinimum}}: {{minimum}},{{/minimum}}{{#pattern}} + 'regex': { + 'pattern': r'{{{vendorExtensions.x-regex}}}', # noqa: E501{{#vendorExtensions.x-modifiers}} + {{#-first}}'flags': (re.{{.}}{{/-first}}{{^-first}} re.{{.}}{{/-first}}{{^-last}} | {{/-last}}{{#-last}}){{/-last}}{{/vendorExtensions.x-modifiers}} + },{{/pattern}} + }, +{{/hasValidation}} +{{/vars}} + } \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/docstring_allowed.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/docstring_allowed.mustache new file mode 100644 index 0000000000..ab20932b28 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/docstring_allowed.mustache @@ -0,0 +1,4 @@ + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/docstring_openapi_validations.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/docstring_openapi_validations.mustache new file mode 100644 index 0000000000..46dc1afefc --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/docstring_openapi_validations.mustache @@ -0,0 +1,7 @@ + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/methods_init_properties.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/methods_init_properties.mustache new file mode 100644 index 0000000000..447aa22cac --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/methods_init_properties.mustache @@ -0,0 +1,76 @@ + def __init__(self{{#vars}}, {{name}}={{#defaultValue}}{{{defaultValue}}}{{/defaultValue}}{{^defaultValue}}None{{/defaultValue}}{{/vars}}): # noqa: E501 + """{{classname}} - a model defined in OpenAPI""" # noqa: E501 +{{#vars}}{{#-first}} +{{/-first}} + self._{{name}} = None +{{/vars}} + self.discriminator = {{#discriminator}}'{{{discriminatorName}}}'{{/discriminator}}{{^discriminator}}None{{/discriminator}} +{{#vars}}{{#-first}} +{{/-first}} +{{#required}} + self.{{name}} = {{name}} +{{/required}} +{{^required}} +{{#isNullable}} + self.{{name}} = {{name}} +{{/isNullable}} +{{^isNullable}} + if {{name}} is not None: + self.{{name}} = ( + {{name}} + ) +{{/isNullable}} +{{/required}} +{{/vars}} +{{#vars}} + + @property + def {{name}}(self): + """Gets the {{name}} of this {{classname}}. # noqa: E501 + +{{#description}} + {{{description}}} # noqa: E501 +{{/description}} + + :return: The {{name}} of this {{classname}}. # noqa: E501 + :rtype: {{dataType}} + """ + return self._{{name}} + + @{{name}}.setter + def {{name}}(self, {{name}}): # noqa: E501 + """Sets the {{name}} of this {{classname}}. + +{{#description}} + {{{description}}} # noqa: E501 +{{/description}} + + :param {{name}}: The {{name}} of this {{classname}}. # noqa: E501 + :type: {{dataType}} + """ +{{^isNullable}} +{{#required}} + if {{name}} is None: + raise ApiValueError("Invalid value for `{{name}}`, must not be `None`") # noqa: E501 +{{/required}} +{{/isNullable}} +{{#isEnum}} + check_allowed_values( + self.allowed_values, + ('{{name}}',), + {{name}}, + self.validations + ) +{{/isEnum}} +{{#hasValidation}} + check_validations( + self.validations, + ('{{name}}',), + {{name}} + ) +{{/hasValidation}} + + self._{{name}} = ( + {{name}} + ) +{{/vars}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/model_normal.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/model_normal.mustache new file mode 100644 index 0000000000..bd1eaddcb4 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/model_normal.mustache @@ -0,0 +1,83 @@ +class {{classname}}(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: +{{> python-experimental/model_templates/docstring_allowed }} + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. +{{> python-experimental/model_templates/docstring_openapi_validations }} + """ + +{{> python-experimental/model_templates/classvar_allowed }} + + attribute_map = { +{{#vars}} + '{{name}}': '{{baseName}}'{{#hasMore}},{{/hasMore}} # noqa: E501 +{{/vars}} + } +{{#discriminator}} + + discriminator_value_class_map = { + {{#children}}'{{^vendorExtensions.x-discriminator-value}}{{name}}{{/vendorExtensions.x-discriminator-value}}{{#vendorExtensions.x-discriminator-value}}{{{vendorExtensions.x-discriminator-value}}}{{/vendorExtensions.x-discriminator-value}}': '{{{classname}}}'{{^-last}}, + {{/-last}}{{/children}} + } +{{/discriminator}} + +{{> python-experimental/model_templates/classvar_openapi_validations }} + +{{> python-experimental/model_templates/methods_init_properties }} +{{#discriminator}} + def get_real_child_model(self, data): + """Returns the real base class specified by the discriminator""" + discriminator_key = self.attribute_map[self.discriminator] + discriminator_value = data[discriminator_key] + return self.discriminator_value_class_map.get(discriminator_value) + +{{/discriminator}} + def to_dict(self): + """Returns the model properties as a dict""" + result = {} + + for attr, _ in six.iteritems(self.openapi_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + elif isinstance(value, dict): + result[attr] = dict(map( + lambda item: (item[0], item[1].to_dict()) + if hasattr(item[1], "to_dict") else item, + value.items() + )) + else: + result[attr] = value + + return result + + def to_str(self): + """Returns the string representation of the model""" + return pprint.pformat(self.to_dict()) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, {{classname}}): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/model_simple.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/model_simple.mustache new file mode 100644 index 0000000000..94ad6336f9 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_templates/model_simple.mustache @@ -0,0 +1,34 @@ +class {{classname}}(ModelSimple): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: +{{> python-experimental/model_templates/docstring_allowed }} +{{> python-experimental/model_templates/docstring_openapi_validations }} + """ + +{{> python-experimental/model_templates/classvar_allowed }} + +{{> python-experimental/model_templates/classvar_openapi_validations }} + +{{> python-experimental/model_templates/methods_init_properties }} + def to_str(self): + """Returns the string representation of the model""" + return str(self._value) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, {{classname}}): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python/python-experimental/model_utils.mustache b/modules/openapi-generator/src/main/resources/python/python-experimental/model_utils.mustache new file mode 100644 index 0000000000..c251879b10 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python/python-experimental/model_utils.mustache @@ -0,0 +1,175 @@ +# coding: utf-8 + +{{>partial_header}} +import re + +from {{packageName}}.exceptions import ApiValueError + + +def check_allowed_values(allowed_values, input_variable_path, input_values, + validations): + """Raises an exception if the input_values are not allowed + + Args: + allowed_values (dict): the allowed_values dict + input_variable_path (tuple): the path to the input variable + input_values (list/str/int/float/date/datetime): the values that we + are checking to see if they are in allowed_values + validations (dict): the validations dict + """ + min_collection_length = ( + validations.get(input_variable_path, {}).get('min_length') or + validations.get(input_variable_path, {}).get('min_items', 0)) + these_allowed_values = list(allowed_values[input_variable_path].values()) + if (isinstance(input_values, list) + and len(input_values) > min_collection_length + and not set(input_values).issubset( + set(these_allowed_values))): + invalid_values = ", ".join( + map(str, set(input_values) - set(these_allowed_values))), + raise ApiValueError( + "Invalid values for `%s` [%s], must be a subset of [%s]" % + ( + input_variable_path[0], + invalid_values, + ", ".join(map(str, these_allowed_values)) + ) + ) + elif (isinstance(input_values, dict) + and len(input_values) > min_collection_length + and not set( + input_values.keys()).issubset(set(these_allowed_values))): + invalid_values = ", ".join( + map(str, set(input_values.keys()) - set(these_allowed_values))) + raise ApiValueError( + "Invalid keys in `%s` [%s], must be a subset of [%s]" % + ( + input_variable_path[0], + invalid_values, + ", ".join(map(str, these_allowed_values)) + ) + ) + elif (not isinstance(input_values, (list, dict)) + and input_values not in these_allowed_values): + raise ApiValueError( + "Invalid value for `%s` (%s), must be one of %s" % + ( + input_variable_path[0], + input_values, + these_allowed_values + ) + ) + + +def check_validations(validations, input_variable_path, input_values): + """Raises an exception if the input_values are invalid + + Args: + validations (dict): the validation dictionary + input_variable_path (tuple): the path to the input variable + input_values (list/str/int/float/date/datetime): the values that we + are checking + """ + current_validations = validations[input_variable_path] + if ('max_length' in current_validations and + len(input_values) > current_validations['max_length']): + raise ApiValueError( + "Invalid value for `%s`, length must be less than or equal to " + "`%s`" % ( + input_variable_path[0], + current_validations['max_length'] + ) + ) + + if ('min_length' in current_validations and + len(input_values) < current_validations['min_length']): + raise ApiValueError( + "Invalid value for `%s`, length must be greater than or equal to " + "`%s`" % ( + input_variable_path[0], + current_validations['min_length'] + ) + ) + + if ('max_items' in current_validations and + len(input_values) > current_validations['max_items']): + raise ApiValueError( + "Invalid value for `%s`, number of items must be less than or " + "equal to `%s`" % ( + input_variable_path[0], + current_validations['max_items'] + ) + ) + + if ('min_items' in current_validations and + len(input_values) < current_validations['min_items']): + raise ValueError( + "Invalid value for `%s`, number of items must be greater than or " + "equal to `%s`" % ( + input_variable_path[0], + current_validations['min_items'] + ) + ) + + if ('exclusive_maximum' in current_validations and + input_values >= current_validations['exclusive_maximum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value less than `%s`" % ( + input_variable_path[0], + current_validations['exclusive_maximum'] + ) + ) + + if ('inclusive_maximum' in current_validations and + input_values > current_validations['inclusive_maximum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value less than or equal to " + "`%s`" % ( + input_variable_path[0], + current_validations['inclusive_maximum'] + ) + ) + + if ('exclusive_minimum' in current_validations and + input_values <= current_validations['exclusive_minimum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value greater than `%s`" % + ( + input_variable_path[0], + current_validations['exclusive_maximum'] + ) + ) + + if ('inclusive_minimum' in current_validations and + input_values < current_validations['inclusive_minimum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value greater than or equal " + "to `%s`" % ( + input_variable_path[0], + current_validations['inclusive_minimum'] + ) + ) + flags = current_validations.get('regex', {}).get('flags', 0) + if ('regex' in current_validations and + not re.search(current_validations['regex']['pattern'], + input_values, flags=flags)): + raise ApiValueError( + r"Invalid value for `%s`, must be a follow pattern or equal to " + r"`%s` with flags=`%s`" % ( + input_variable_path[0], + current_validations['regex']['pattern'], + flags + ) + ) + + +class ModelSimple(object): + # the parent class of models whose type != object in their swagger/openapi + # spec + pass + + +class ModelNormal(object): + # the parent class of models whose type == object in their swagger/openapi + # spec + pass diff --git a/modules/openapi-generator/src/main/resources/ruby-client/api_client_spec.mustache b/modules/openapi-generator/src/main/resources/ruby-client/api_client_spec.mustache index 3e8d070ef9..364c60419c 100644 --- a/modules/openapi-generator/src/main/resources/ruby-client/api_client_spec.mustache +++ b/modules/openapi-generator/src/main/resources/ruby-client/api_client_spec.mustache @@ -150,7 +150,7 @@ describe {{moduleName}}::ApiClient do end it 'fails for invalid collection format' do - expect(proc { api_client.build_collection_param(param, :INVALID) }).to raise_error(RuntimeError, 'unknown collection format: :INVALID') + expect{api_client.build_collection_param(param, :INVALID)}.to raise_error(RuntimeError, 'unknown collection format: :INVALID') end end diff --git a/modules/openapi-generator/src/main/resources/scala-akka-client/api.mustache b/modules/openapi-generator/src/main/resources/scala-akka-client/api.mustache index bab80595cc..b9211855b8 100644 --- a/modules/openapi-generator/src/main/resources/scala-akka-client/api.mustache +++ b/modules/openapi-generator/src/main/resources/scala-akka-client/api.mustache @@ -21,7 +21,7 @@ class {{classname}}(baseUrl: String) { {{>javadoc}} {{/javadocRenderer}} def {{operationId}}({{>methodParameters}}): ApiRequest[{{>operationReturnType}}] = - ApiRequest[{{>operationReturnType}}](ApiMethods.{{httpMethod.toUpperCase}}, "{{{basePath}}}", "{{{path}}}", {{#consumes.0}}"{{{mediaType}}}"{{/consumes.0}}{{^consumes}}"application/json"{{/consumes}}) + ApiRequest[{{>operationReturnType}}](ApiMethods.{{httpMethod.toUpperCase}}, baseUrl, "{{{path}}}", {{#consumes.0}}"{{{mediaType}}}"{{/consumes.0}}{{^consumes}}"application/json"{{/consumes}}) {{#authMethods}}{{#isApiKey}}.withApiKey(apiKey, "{{keyParamName}}", {{#isKeyInQuery}}QUERY{{/isKeyInQuery}}{{#isKeyInHeader}}HEADER{{/isKeyInHeader}}) {{/isApiKey}}{{#isBasic}}.withCredentials(basicAuth) {{/isBasic}}{{/authMethods}}{{#bodyParam}}.withBody({{paramName}}) diff --git a/modules/openapi-generator/src/main/resources/swift4/Cartfile.mustache b/modules/openapi-generator/src/main/resources/swift4/Cartfile.mustache index b8548fc548..f71be5049a 100644 --- a/modules/openapi-generator/src/main/resources/swift4/Cartfile.mustache +++ b/modules/openapi-generator/src/main/resources/swift4/Cartfile.mustache @@ -1,3 +1,3 @@ -github "Alamofire/Alamofire" ~> 4.5.0{{#usePromiseKit}} +github "Alamofire/Alamofire" ~> 4.9.0{{#usePromiseKit}} github "mxcl/PromiseKit" ~> 4.4{{/usePromiseKit}}{{#useRxSwift}} github "ReactiveX/RxSwift" ~> 4.0{{/useRxSwift}} diff --git a/modules/openapi-generator/src/main/resources/swift4/Podspec.mustache b/modules/openapi-generator/src/main/resources/swift4/Podspec.mustache index 33255f983a..e147c0d1ef 100644 --- a/modules/openapi-generator/src/main/resources/swift4/Podspec.mustache +++ b/modules/openapi-generator/src/main/resources/swift4/Podspec.mustache @@ -34,5 +34,5 @@ Pod::Spec.new do |s| {{#useRxSwift}} s.dependency 'RxSwift', '~> 4.0' {{/useRxSwift}} - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache index 57da60ee26..73504161a1 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache @@ -150,29 +150,50 @@ export class {{classname}} extends runtime.BaseAPI { {{/isOAuth}} {{/authMethods}} {{#hasFormParams}} - const formData = new FormData(); - {{/hasFormParams}} + const consumes: runtime.Consume[] = [ + {{#consumes}} + { contentType: '{{{mediaType}}}' }, + {{/consumes}} + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + {{#formParams}} + {{#isFile}} + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + {{/isFile}} + {{/formParams}} + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + {{#formParams}} {{#isListContainer}} if (requestParameters.{{paramName}}) { {{#isCollectionFormatMulti}} requestParameters.{{paramName}}.forEach((element) => { - formData.append('{{baseName}}', element as any); + formParams.append('{{baseName}}', element as any); }) {{/isCollectionFormatMulti}} {{^isCollectionFormatMulti}} - formData.append('{{baseName}}', requestParameters.{{paramName}}.join(runtime.COLLECTION_FORMATS["{{collectionFormat}}"])); + formParams.append('{{baseName}}', requestParameters.{{paramName}}.join(runtime.COLLECTION_FORMATS["{{collectionFormat}}"])); {{/isCollectionFormatMulti}} } {{/isListContainer}} {{^isListContainer}} if (requestParameters.{{paramName}} !== undefined) { - formData.append('{{baseName}}', requestParameters.{{paramName}} as any); + formParams.append('{{baseName}}', requestParameters.{{paramName}} as any); } {{/isListContainer}} {{/formParams}} + {{/hasFormParams}} const response = await this.request({ path: `{{{path}}}`{{#pathParams}}.replace(`{${"{{baseName}}"}}`, encodeURIComponent(String(requestParameters.{{paramName}}))){{/pathParams}}, method: '{{httpMethod}}', @@ -194,7 +215,7 @@ export class {{classname}} extends runtime.BaseAPI { {{/bodyParam}} {{/hasBodyParam}} {{#hasFormParams}} - body: formData, + body: formParams, {{/hasFormParams}} }); @@ -211,7 +232,7 @@ export class {{classname}} extends runtime.BaseAPI { return new runtime.JSONApiResponse(response); {{/isListContainer}} {{#returnSimpleType}} - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; {{/returnSimpleType}} {{/returnTypeIsPrimitive}} {{^returnTypeIsPrimitive}} diff --git a/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache b/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache index 15fca73053..bd53174f17 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache @@ -184,7 +184,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -231,6 +231,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/modules/openapi-generator/src/main/resources/typescript-node/api-all.mustache b/modules/openapi-generator/src/main/resources/typescript-node/api-all.mustache index adac7f8cac..3092696f57 100644 --- a/modules/openapi-generator/src/main/resources/typescript-node/api-all.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-node/api-all.mustache @@ -8,12 +8,25 @@ import { {{ classname }} } from './{{ classFilename }}'; export * from './{{ classFilename }}Interface' {{/withInterfaces}} {{/apis}} -import http = require('http'); +import * as fs from 'fs'; +import * as http from 'http'; + export class HttpError extends Error { constructor (public response: http.{{#supportsES6}}IncomingMessage{{/supportsES6}}{{^supportsES6}}ClientResponse{{/supportsES6}}, public body: any, public statusCode?: number) { super('HTTP request failed'); this.name = 'HttpError'; } } + +export interface RequestDetailedFile { + value: Buffer; + options?: { + filename?: string; + contentType?: string; + } +} + +export type RequestFile = string | Buffer | fs.ReadStream | RequestDetailedFile; + export const APIS = [{{#apis}}{{#operations}}{{ classname }}{{/operations}}{{^-last}}, {{/-last}}{{/apis}}]; {{/apiInfo}} diff --git a/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache b/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache index 53e16de167..8ecab671c2 100644 --- a/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-node/api-single.mustache @@ -9,20 +9,10 @@ import { {{classname}} } from '../{{filename}}'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; {{#hasAuthMethods}} -{{#authMethods}} -{{#isBasic}} -import { HttpBasicAuth } from '../model/models'; -{{/isBasic}} -{{#isApiKey}} -import { ApiKeyAuth } from '../model/models'; -{{/isApiKey}} -{{#isOAuth}} -import { OAuth } from '../model/models'; -{{/isOAuth}} -{{/authMethods}} +import { HttpBasicAuth, ApiKeyAuth, OAuth } from '../model/models'; {{/hasAuthMethods}} -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = '{{{basePath}}}'; @@ -57,7 +47,7 @@ export class {{classname}} { '{{name}}': new HttpBasicAuth(), {{/isBasic}} {{#isApiKey}} - '{{name}}': new ApiKeyAuth({{#isKeyInHeader}}'header'{{/isKeyInHeader}}{{^isKeyInHeader}}'query'{{/isKeyInHeader}}, '{{keyParamName}}'), + '{{name}}': new ApiKeyAuth({{#isKeyInHeader}}'header'{{/isKeyInHeader}}{{#isKeyInQuery}}'query'{{/isKeyInQuery}}{{#isKeyInCookie}}'cookie'{{/isKeyInCookie}}, '{{keyParamName}}'), {{/isApiKey}} {{#isOAuth}} '{{name}}': new OAuth(), @@ -144,6 +134,15 @@ export class {{classname}} { .replace('{' + '{{baseName}}' + '}', encodeURIComponent(String({{paramName}}))){{/pathParams}}; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); +{{#hasProduces}} + const produces = [{{#produces}}'{{{mediaType}}}'{{#hasMore}}, {{/hasMore}}{{/produces}}]; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } +{{/hasProduces}} let localVarFormParams: any = {}; {{#allParams}} diff --git a/modules/openapi-generator/src/main/resources/typescript-node/models.mustache b/modules/openapi-generator/src/main/resources/typescript-node/models.mustache index 59e86fe445..963faeb229 100644 --- a/modules/openapi-generator/src/main/resources/typescript-node/models.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-node/models.mustache @@ -23,7 +23,7 @@ let primitives = [ "number", "any" ]; - + let enumsMap: {[index: string]: any} = { {{#models}} {{#model}} @@ -110,7 +110,7 @@ export class ObjectSerializer { if (!typeMap[type]) { // in case we dont know the type return data; } - + // Get the actual type of this object type = this.findCorrectType(data, type); @@ -191,6 +191,13 @@ export class ApiKeyAuth implements Authentication { (requestOptions.qs)[this.paramName] = this.apiKey; } else if (this.location == "header" && requestOptions && requestOptions.headers) { requestOptions.headers[this.paramName] = this.apiKey; + } else if (this.location == 'cookie' && requestOptions && requestOptions.headers) { + if (requestOptions.headers['Cookie']) { + requestOptions.headers['Cookie'] += '; ' + this.paramName + '=' + encodeURIComponent(this.apiKey); + } + else { + requestOptions.headers['Cookie'] = this.paramName + '=' + encodeURIComponent(this.apiKey); + } } } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java index 26ae76afc1..8c00cbc281 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java @@ -43,6 +43,7 @@ import org.openapitools.codegen.utils.ModelUtils; import org.testng.Assert; import org.testng.annotations.Test; +import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotNull; import static org.testng.Assert.assertTrue; @@ -968,4 +969,19 @@ public class DefaultCodegenTest { assertTrue(lambdas.get("indented_16") instanceof IndentedLambda, "Expecting IndentedLambda class"); } + @Test + public void convertApiNameWithEmptySuffix() { + DefaultCodegen codegen = new DefaultCodegen(); + assertEquals(codegen.toApiName("Fake"), "FakeApi"); + assertEquals(codegen.toApiName(""), "DefaultApi"); + } + + @Test + public void convertApiNameWithSuffix() { + DefaultCodegen codegen = new DefaultCodegen(); + codegen.setApiNameSuffix("Test"); + assertEquals(codegen.toApiName("Fake"), "FakeTest"); + assertEquals(codegen.toApiName(""), "DefaultApi"); + } + } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java index a53037e0f8..fe48dff537 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/config/CodegenConfiguratorTest.java @@ -77,6 +77,7 @@ public class CodegenConfiguratorTest { .setGitHost("test.com") .setGroupId("group") .setHttpUserAgent("agent") + .setApiNameSuffix("api-suffix") .setModelNamePrefix("model-prefix") .setModelNameSuffix("model-suffix") .setModelPackage("model-package") @@ -100,6 +101,7 @@ public class CodegenConfiguratorTest { want(props, CodegenConstants.PREPEND_FORM_OR_BODY_PARAMETERS, false); want(props, CodegenConstants.ENSURE_UNIQUE_PARAMS, true); want(props, CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, true); + want(props, CodegenConstants.API_NAME_SUFFIX, "api-suffix"); want(props, CodegenConstants.MODEL_NAME_PREFIX, "model-prefix"); want(props, CodegenConstants.MODEL_NAME_SUFFIX, "model-suffix"); want(props, CodegenConstants.REMOVE_OPERATION_ID_PREFIX, false); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java index 491b412304..12281dc29f 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/fsharp/FSharpServerCodegenTest.java @@ -23,7 +23,10 @@ import org.testng.Assert; import org.testng.annotations.Test; import java.util.Collections; import java.util.HashMap; +import java.util.HashSet; import java.util.Map; +import java.util.Arrays; +import java.lang.Exception; @SuppressWarnings("static-method") public class FSharpServerCodegenTest { @@ -32,37 +35,43 @@ public class FSharpServerCodegenTest { public void testModelsAreSortedAccordingToDependencyOrder() throws Exception { final AbstractFSharpCodegen codegen = new P_AbstractFSharpCodegen(); - // parent + final CodegenModel wheel = new CodegenModel(); + wheel.setImports(new HashSet(Arrays.asList())); + wheel.setClassname("wheel"); + + final CodegenModel bike = new CodegenModel(); + bike.setImports(new HashSet(Arrays.asList("wheel"))); + bike.setClassname("bike"); + final CodegenModel parent = new CodegenModel(); - CodegenProperty childProp = new CodegenProperty(); - childProp.complexType = "child"; - childProp.name = "child"; - parent.setVars(Collections.singletonList(childProp)); + parent.setImports(new HashSet(Arrays.asList("bike", "car"))); + parent.setClassname("parent"); + + final CodegenModel car = new CodegenModel(); + car.setImports(new HashSet(Arrays.asList("wheel"))); + car.setClassname("car"); final CodegenModel child = new CodegenModel(); - CodegenProperty carProp = new CodegenProperty(); - carProp.complexType = "car"; - carProp.name = "car"; - child.setVars(Collections.singletonList(carProp)); - - // child - final CodegenModel car = new CodegenModel(); - CodegenProperty modelProp = new CodegenProperty(); - modelProp.name = "model"; - car.setVars(Collections.singletonList(modelProp)); + child.setImports(new HashSet(Arrays.asList("car", "bike", "parent"))); + child.setClassname("child"); Map models = new HashMap(); models.put("parent", Collections.singletonMap("models", Collections.singletonList(Collections.singletonMap("model", parent)))); models.put("child", Collections.singletonMap("models", Collections.singletonList(Collections.singletonMap("model", child)))); models.put("car", Collections.singletonMap("models", Collections.singletonList(Collections.singletonMap("model", car)))); + models.put("bike", Collections.singletonMap("models", Collections.singletonList(Collections.singletonMap("model", bike)))); + models.put("wheel", Collections.singletonMap("models", Collections.singletonList(Collections.singletonMap("model", wheel)))); Map sorted = codegen.postProcessDependencyOrders(models); Object[] keys = sorted.keySet().toArray(); - - Assert.assertEquals(keys[0], "car"); - Assert.assertEquals(keys[1], "child"); - Assert.assertEquals(keys[2], "parent"); + + Assert.assertTrue(keys[0] == "wheel"); + Assert.assertTrue(keys[1] == "bike" || keys[1] == "car"); + Assert.assertTrue(keys[2] == "bike" || keys[2] == "car"); + Assert.assertEquals(keys[3], "parent"); + Assert.assertEquals(keys[4], "child"); + } @Test(description = "modify model imports to explicit set namespace and package name") diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java index 77fb953bb3..55cb8025f2 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java @@ -121,8 +121,11 @@ public class AbstractJavaCodegenTest { @Test public void testInitialConfigValues() throws Exception { + OpenAPI openAPI = TestUtils.createOpenAPI(); + final AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); codegen.processOpts(); + codegen.preprocessOpenAPI(openAPI); Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.HIDE_GENERATION_TIMESTAMP), Boolean.FALSE); Assert.assertEquals(codegen.isHideGenerationTimestamp(), false); @@ -133,17 +136,25 @@ public class AbstractJavaCodegenTest { Assert.assertEquals(codegen.getInvokerPackage(), "org.openapitools"); Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.INVOKER_PACKAGE), "org.openapitools"); Assert.assertEquals(codegen.additionalProperties().get(AbstractJavaCodegen.BOOLEAN_GETTER_PREFIX), "get"); + Assert.assertEquals(codegen.getArtifactVersion(), openAPI.getInfo().getVersion()); + Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.ARTIFACT_VERSION), openAPI.getInfo().getVersion()); } @Test public void testSettersForConfigValues() throws Exception { + OpenAPI openAPI = TestUtils.createOpenAPI(); + final AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); + codegen.setHideGenerationTimestamp(true); codegen.setModelPackage("xyz.yyyyy.zzzzzzz.model"); codegen.setApiPackage("xyz.yyyyy.zzzzzzz.api"); codegen.setInvokerPackage("xyz.yyyyy.zzzzzzz.invoker"); codegen.setBooleanGetterPrefix("is"); + codegen.setArtifactVersion("0.9.0-SNAPSHOT"); + codegen.processOpts(); + codegen.preprocessOpenAPI(openAPI); Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.HIDE_GENERATION_TIMESTAMP), Boolean.TRUE); Assert.assertEquals(codegen.isHideGenerationTimestamp(), true); @@ -154,17 +165,24 @@ public class AbstractJavaCodegenTest { Assert.assertEquals(codegen.getInvokerPackage(), "xyz.yyyyy.zzzzzzz.invoker"); Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.INVOKER_PACKAGE), "xyz.yyyyy.zzzzzzz.invoker"); Assert.assertEquals(codegen.additionalProperties().get(AbstractJavaCodegen.BOOLEAN_GETTER_PREFIX), "is"); + Assert.assertEquals(codegen.getArtifactVersion(), "0.9.0-SNAPSHOT"); + Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.ARTIFACT_VERSION), "0.9.0-SNAPSHOT"); } @Test public void testAdditionalPropertiesPutForConfigValues() throws Exception { + OpenAPI openAPI = TestUtils.createOpenAPI(); + final AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); codegen.additionalProperties().put(CodegenConstants.HIDE_GENERATION_TIMESTAMP, false); codegen.additionalProperties().put(CodegenConstants.MODEL_PACKAGE, "xyz.yyyyy.model.oooooo"); codegen.additionalProperties().put(CodegenConstants.API_PACKAGE, "xyz.yyyyy.api.oooooo"); codegen.additionalProperties().put(CodegenConstants.INVOKER_PACKAGE, "xyz.yyyyy.invoker.oooooo"); codegen.additionalProperties().put(AbstractJavaCodegen.BOOLEAN_GETTER_PREFIX, "getBoolean"); + codegen.additionalProperties().put(CodegenConstants.ARTIFACT_VERSION, "0.8.0-SNAPSHOT"); codegen.processOpts(); + codegen.preprocessOpenAPI(openAPI); + Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.HIDE_GENERATION_TIMESTAMP), Boolean.FALSE); Assert.assertEquals(codegen.isHideGenerationTimestamp(), false); @@ -175,6 +193,8 @@ public class AbstractJavaCodegenTest { Assert.assertEquals(codegen.getInvokerPackage(), "xyz.yyyyy.invoker.oooooo"); Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.INVOKER_PACKAGE), "xyz.yyyyy.invoker.oooooo"); Assert.assertEquals(codegen.additionalProperties().get(AbstractJavaCodegen.BOOLEAN_GETTER_PREFIX), "getBoolean"); + Assert.assertEquals(codegen.getArtifactVersion(), "0.8.0-SNAPSHOT"); + Assert.assertEquals(codegen.additionalProperties().get(CodegenConstants.ARTIFACT_VERSION), "0.8.0-SNAPSHOT"); } @Test @@ -306,6 +326,34 @@ public class AbstractJavaCodegenTest { Assert.assertEquals(codegen.getArtifactVersion(), "1.0.0-SNAPSHOT"); } + @Test(description = "tests if default version with snapshot is used when OpenAPI version has been provided") + public void snapshotVersionOpenAPITest() { + final P_AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); + + codegen.additionalProperties().put(CodegenConstants.SNAPSHOT_VERSION, "true"); + + OpenAPI api = TestUtils.createOpenAPI(); + api.getInfo().setVersion("2.0"); + codegen.processOpts(); + codegen.preprocessOpenAPI(api); + + Assert.assertEquals(codegen.getArtifactVersion(), "2.0-SNAPSHOT"); + } + + @Test(description = "tests if default version with snapshot is used when setArtifactVersion is used") + public void snapshotVersionAlreadySnapshotTest() { + final P_AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); + + codegen.additionalProperties().put(CodegenConstants.SNAPSHOT_VERSION, "true"); + + OpenAPI api = TestUtils.createOpenAPI(); + codegen.setArtifactVersion("4.1.2-SNAPSHOT"); + codegen.processOpts(); + codegen.preprocessOpenAPI(api); + + Assert.assertEquals(codegen.getArtifactVersion(), "4.1.2-SNAPSHOT"); + } + @Test public void toDefaultValueTest() { final P_AbstractJavaCodegen codegen = new P_AbstractJavaCodegen(); diff --git a/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml b/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml index 9a7d4a03b4..73d734f75f 100644 --- a/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml +++ b/modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml @@ -1403,6 +1403,9 @@ definitions: format: password maxLength: 64 minLength: 10 + BigDecimal: + type: string + format: number EnumClass: type: string default: '-efg' diff --git a/modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml b/modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml index d424cd93e9..fea5233ee2 100644 --- a/modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml +++ b/modules/openapi-generator/src/test/resources/2_0/python-client-experimental/petstore-with-fake-endpoints-models-for-testing.yaml @@ -906,6 +906,23 @@ paths: description: Output composite schema: $ref: '#/definitions/OuterComposite' + /fake/outer/enum: + post: + tags: + - fake + description: Test serialization of outer enum + operationId: fakeOuterEnumSerialize + parameters: + - name: body + in: body + description: Input enum as post body + schema: + $ref: '#/definitions/OuterEnum' + responses: + '200': + description: Output enum + schema: + $ref: '#/definitions/OuterEnum' /fake/jsonFormData: get: tags: @@ -1378,7 +1395,7 @@ definitions: minimum: 67.8 string: type: string - pattern: /[a-z]/i + pattern: /^[a-z]+$/i byte: type: string format: byte @@ -1721,6 +1738,8 @@ definitions: $ref: '#/definitions/OuterBoolean' OuterNumber: type: number + minimum: 10 + maximum: 20 OuterString: type: string OuterBoolean: diff --git a/modules/openapi-generator/src/test/resources/3_0/rust/rust-test.yaml b/modules/openapi-generator/src/test/resources/3_0/rust/rust-test.yaml new file mode 100644 index 0000000000..861e84ca8d --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_0/rust/rust-test.yaml @@ -0,0 +1,31 @@ +openapi: 3.0.1 +info: + title: Rust client test spec + description: Special testing for the Rust client generator + version: 1.0.7 +paths: + /dummy: + get: + summary: A dummy endpoint to make the spec valid. + responses: + '200': + description: Success +components: + schemas: + TypeTesting: + description: Test handling of differing types (see \#3463) + type: object + properties: + integer: + type: integer + long: + type: long + number: + type: number + float: + type: float + double: + type: double + uuid: + type: string + format: uuid diff --git a/modules/openapi-generator/src/test/resources/3_0/scala_reserved_words.yaml b/modules/openapi-generator/src/test/resources/3_0/scala_reserved_words.yaml index 8eb0885bd8..f91139e7aa 100644 --- a/modules/openapi-generator/src/test/resources/3_0/scala_reserved_words.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/scala_reserved_words.yaml @@ -75,6 +75,9 @@ components: type: string foobar: type: boolean + created_at: + type: string + format: date-time required: - id - try @@ -82,3 +85,4 @@ components: - finally - lazy - foobar + - created_at diff --git a/modules/openapi-generator/src/test/resources/codegen/scala/SomeObj.scala.txt b/modules/openapi-generator/src/test/resources/codegen/scala/SomeObj.scala.txt index 0a055fed67..52725e7e12 100644 --- a/modules/openapi-generator/src/test/resources/codegen/scala/SomeObj.scala.txt +++ b/modules/openapi-generator/src/test/resources/codegen/scala/SomeObj.scala.txt @@ -36,7 +36,8 @@ case class SomeObj ( `lazy`: String, `private`: Option[String] = None, `type`: Option[String] = None, - foobar: Boolean + foobar: Boolean, + createdAt: DateTime ) extends ApiModel object SomeObjEnums { diff --git a/pom.xml b/pom.xml index 805561cfb1..ff8078abda 100644 --- a/pom.xml +++ b/pom.xml @@ -1039,7 +1039,6 @@ samples/client/petstore/elm-0.18 samples/client/petstore/rust - samples/client/petstore/rust-reqwest samples/client/petstore/php/OpenAPIClient-php samples/openapi3/client/petstore/php/OpenAPIClient-php diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClient/docs/FormatTest.md b/samples/client/petstore/csharp-netcore/OpenAPIClient/docs/FormatTest.md index b3a80c4262..8a7a6a7793 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClient/docs/FormatTest.md +++ b/samples/client/petstore/csharp-netcore/OpenAPIClient/docs/FormatTest.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **DateTime** | **DateTime** | | [optional] **Uuid** | **Guid** | | [optional] **Password** | **string** | | +**BigDecimal** | **decimal** | | [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/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs b/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs index 75e838eb3f..b68958ed69 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs @@ -53,7 +53,8 @@ namespace Org.OpenAPITools.Model /// dateTime. /// uuid. /// password (required). - public FormatTest(int integer = default(int), int int32 = default(int), long int64 = default(long), decimal number = default(decimal), float _float = default(float), double _double = default(double), string _string = default(string), byte[] _byte = default(byte[]), System.IO.Stream binary = default(System.IO.Stream), DateTime date = default(DateTime), DateTime dateTime = default(DateTime), Guid uuid = default(Guid), string password = default(string)) + /// bigDecimal. + public FormatTest(int integer = default(int), int int32 = default(int), long int64 = default(long), decimal number = default(decimal), float _float = default(float), double _double = default(double), string _string = default(string), byte[] _byte = default(byte[]), System.IO.Stream binary = default(System.IO.Stream), DateTime date = default(DateTime), DateTime dateTime = default(DateTime), Guid uuid = default(Guid), string password = default(string), decimal bigDecimal = default(decimal)) { // to ensure "number" is required (not null) if (number == null) @@ -104,6 +105,7 @@ namespace Org.OpenAPITools.Model this.Binary = binary; this.DateTime = dateTime; this.Uuid = uuid; + this.BigDecimal = bigDecimal; } /// @@ -185,6 +187,12 @@ namespace Org.OpenAPITools.Model [DataMember(Name="password", EmitDefaultValue=false)] public string Password { get; set; } + /// + /// Gets or Sets BigDecimal + /// + [DataMember(Name="BigDecimal", EmitDefaultValue=false)] + public decimal BigDecimal { get; set; } + /// /// Returns the string presentation of the object /// @@ -206,6 +214,7 @@ namespace Org.OpenAPITools.Model sb.Append(" DateTime: ").Append(DateTime).Append("\n"); sb.Append(" Uuid: ").Append(Uuid).Append("\n"); sb.Append(" Password: ").Append(Password).Append("\n"); + sb.Append(" BigDecimal: ").Append(BigDecimal).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -268,6 +277,7 @@ namespace Org.OpenAPITools.Model hashCode = hashCode * 59 + this.Uuid.GetHashCode(); if (this.Password != null) hashCode = hashCode * 59 + this.Password.GetHashCode(); + hashCode = hashCode * 59 + this.BigDecimal.GetHashCode(); return hashCode; } } diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClientCore/docs/FormatTest.md b/samples/client/petstore/csharp-netcore/OpenAPIClientCore/docs/FormatTest.md index b3a80c4262..8a7a6a7793 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClientCore/docs/FormatTest.md +++ b/samples/client/petstore/csharp-netcore/OpenAPIClientCore/docs/FormatTest.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **DateTime** | **DateTime** | | [optional] **Uuid** | **Guid** | | [optional] **Password** | **string** | | +**BigDecimal** | **decimal** | | [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/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Model/FormatTest.cs b/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Model/FormatTest.cs index 75e838eb3f..b68958ed69 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Model/FormatTest.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Model/FormatTest.cs @@ -53,7 +53,8 @@ namespace Org.OpenAPITools.Model /// dateTime. /// uuid. /// password (required). - public FormatTest(int integer = default(int), int int32 = default(int), long int64 = default(long), decimal number = default(decimal), float _float = default(float), double _double = default(double), string _string = default(string), byte[] _byte = default(byte[]), System.IO.Stream binary = default(System.IO.Stream), DateTime date = default(DateTime), DateTime dateTime = default(DateTime), Guid uuid = default(Guid), string password = default(string)) + /// bigDecimal. + public FormatTest(int integer = default(int), int int32 = default(int), long int64 = default(long), decimal number = default(decimal), float _float = default(float), double _double = default(double), string _string = default(string), byte[] _byte = default(byte[]), System.IO.Stream binary = default(System.IO.Stream), DateTime date = default(DateTime), DateTime dateTime = default(DateTime), Guid uuid = default(Guid), string password = default(string), decimal bigDecimal = default(decimal)) { // to ensure "number" is required (not null) if (number == null) @@ -104,6 +105,7 @@ namespace Org.OpenAPITools.Model this.Binary = binary; this.DateTime = dateTime; this.Uuid = uuid; + this.BigDecimal = bigDecimal; } /// @@ -185,6 +187,12 @@ namespace Org.OpenAPITools.Model [DataMember(Name="password", EmitDefaultValue=false)] public string Password { get; set; } + /// + /// Gets or Sets BigDecimal + /// + [DataMember(Name="BigDecimal", EmitDefaultValue=false)] + public decimal BigDecimal { get; set; } + /// /// Returns the string presentation of the object /// @@ -206,6 +214,7 @@ namespace Org.OpenAPITools.Model sb.Append(" DateTime: ").Append(DateTime).Append("\n"); sb.Append(" Uuid: ").Append(Uuid).Append("\n"); sb.Append(" Password: ").Append(Password).Append("\n"); + sb.Append(" BigDecimal: ").Append(BigDecimal).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -268,6 +277,7 @@ namespace Org.OpenAPITools.Model hashCode = hashCode * 59 + this.Uuid.GetHashCode(); if (this.Password != null) hashCode = hashCode * 59 + this.Password.GetHashCode(); + hashCode = hashCode * 59 + this.BigDecimal.GetHashCode(); return hashCode; } } diff --git a/samples/client/petstore/csharp/OpenAPIClient/docs/FormatTest.md b/samples/client/petstore/csharp/OpenAPIClient/docs/FormatTest.md index 0d921285ba..92d7d1e010 100644 --- a/samples/client/petstore/csharp/OpenAPIClient/docs/FormatTest.md +++ b/samples/client/petstore/csharp/OpenAPIClient/docs/FormatTest.md @@ -18,6 +18,7 @@ Name | Type | Description | Notes **DateTime** | **DateTime** | | [optional] **Uuid** | **Guid** | | [optional] **Password** | **string** | | +**BigDecimal** | **decimal** | | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) diff --git a/samples/client/petstore/csharp/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs b/samples/client/petstore/csharp/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs index b8735b8587..31193ac396 100644 --- a/samples/client/petstore/csharp/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs +++ b/samples/client/petstore/csharp/OpenAPIClient/src/Org.OpenAPITools/Model/FormatTest.cs @@ -51,7 +51,8 @@ namespace Org.OpenAPITools.Model /// dateTime. /// uuid. /// password (required). - public FormatTest(int integer = default(int), int int32 = default(int), long int64 = default(long), decimal number = default(decimal), float _float = default(float), double _double = default(double), string _string = default(string), byte[] _byte = default(byte[]), System.IO.Stream binary = default(System.IO.Stream), DateTime date = default(DateTime), DateTime dateTime = default(DateTime), Guid uuid = default(Guid), string password = default(string)) + /// bigDecimal. + public FormatTest(int integer = default(int), int int32 = default(int), long int64 = default(long), decimal number = default(decimal), float _float = default(float), double _double = default(double), string _string = default(string), byte[] _byte = default(byte[]), System.IO.Stream binary = default(System.IO.Stream), DateTime date = default(DateTime), DateTime dateTime = default(DateTime), Guid uuid = default(Guid), string password = default(string), decimal bigDecimal = default(decimal)) { // to ensure "number" is required (not null) if (number == null) @@ -102,6 +103,7 @@ namespace Org.OpenAPITools.Model this.Binary = binary; this.DateTime = dateTime; this.Uuid = uuid; + this.BigDecimal = bigDecimal; } /// @@ -183,6 +185,12 @@ namespace Org.OpenAPITools.Model [DataMember(Name="password", EmitDefaultValue=false)] public string Password { get; set; } + /// + /// Gets or Sets BigDecimal + /// + [DataMember(Name="BigDecimal", EmitDefaultValue=false)] + public decimal BigDecimal { get; set; } + /// /// Returns the string presentation of the object /// @@ -204,6 +212,7 @@ namespace Org.OpenAPITools.Model sb.Append(" DateTime: ").Append(DateTime).Append("\n"); sb.Append(" Uuid: ").Append(Uuid).Append("\n"); sb.Append(" Password: ").Append(Password).Append("\n"); + sb.Append(" BigDecimal: ").Append(BigDecimal).Append("\n"); sb.Append("}\n"); return sb.ToString(); } @@ -302,6 +311,11 @@ namespace Org.OpenAPITools.Model this.Password == input.Password || (this.Password != null && this.Password.Equals(input.Password)) + ) && + ( + this.BigDecimal == input.BigDecimal || + (this.BigDecimal != null && + this.BigDecimal.Equals(input.BigDecimal)) ); } @@ -340,6 +354,8 @@ namespace Org.OpenAPITools.Model hashCode = hashCode * 59 + this.Uuid.GetHashCode(); if (this.Password != null) hashCode = hashCode * 59 + this.Password.GetHashCode(); + if (this.BigDecimal != null) + hashCode = hashCode * 59 + this.BigDecimal.GetHashCode(); return hashCode; } } diff --git a/samples/client/petstore/dart2/petstore/README.md b/samples/client/petstore/dart2/petstore/README.md index 2adfc09c8a..2139c30174 100644 --- a/samples/client/petstore/dart2/petstore/README.md +++ b/samples/client/petstore/dart2/petstore/README.md @@ -1,3 +1,29 @@ +# Background + +## Current state of tests + +TL;DR currently the only tests are e2e tests that were adapted to use a faked http client. While pushing data around as a smoke test has some value, more testing is required. In particular we need comprehensive unit/integration tests. + +- an old set of e2e tests are skipped for CI, as they hit a live endpoint and so are inherently flaky + - `pet_test.dart` + - `store_test.dart` + - `user_test.dart` +- the above set of tests were adapted to use a faked http client + - the tests are not really well suited to being used with a stubbed client, many are basically just testing the endpoint logic + - while not a great set of tests, they do have some value as a smoke test for template changes +- the adapted tests and files that contain test data: + - `pet_test_fake_client.dart` + - `store_test_fake_client.dart` + - `user_test_fake_client.dart` + - `fake_client.dart` + - `file_upload_response.json` + +## Assumptions + +- the tests will be run as part of CI and so have access to dart:io + +# Running + ## If not already done, resolve dependencies `pub get` @@ -8,4 +34,4 @@ ## To run all tests in the test folder: -`pub run test test` \ No newline at end of file +`pub run test` diff --git a/samples/client/petstore/dart2/petstore/pubspec.lock b/samples/client/petstore/dart2/petstore/pubspec.lock new file mode 100644 index 0000000000..78daa43da5 --- /dev/null +++ b/samples/client/petstore/dart2/petstore/pubspec.lock @@ -0,0 +1,355 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + analyzer: + dependency: transitive + description: + name: analyzer + url: "https://pub.dartlang.org" + source: hosted + version: "0.38.4" + args: + dependency: transitive + description: + name: args + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.2" + async: + dependency: transitive + description: + name: async + url: "https://pub.dartlang.org" + source: hosted + version: "2.3.0" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.5" + charcode: + dependency: transitive + description: + name: charcode + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.2" + collection: + dependency: "direct dev" + description: + name: collection + url: "https://pub.dartlang.org" + source: hosted + version: "1.14.12" + convert: + dependency: transitive + description: + name: convert + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.1" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.3" + csslib: + dependency: transitive + description: + name: csslib + url: "https://pub.dartlang.org" + source: hosted + version: "0.16.1" + front_end: + dependency: transitive + description: + name: front_end + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.26" + glob: + dependency: transitive + description: + name: glob + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.7" + html: + dependency: transitive + description: + name: html + url: "https://pub.dartlang.org" + source: hosted + version: "0.14.0+2" + http: + dependency: "direct dev" + description: + name: http + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.0+2" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" + http_parser: + dependency: transitive + description: + name: http_parser + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.3" + io: + dependency: transitive + description: + name: io + url: "https://pub.dartlang.org" + source: hosted + version: "0.3.3" + js: + dependency: transitive + description: + name: js + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.1+1" + kernel: + dependency: transitive + description: + name: kernel + url: "https://pub.dartlang.org" + source: hosted + version: "0.3.26" + matcher: + dependency: transitive + description: + name: matcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.5" + meta: + dependency: transitive + description: + name: meta + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.7" + mime: + dependency: transitive + description: + name: mime + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.6+3" + mockito: + dependency: "direct dev" + description: + name: mockito + url: "https://pub.dartlang.org" + source: hosted + version: "4.1.1" + multi_server_socket: + dependency: transitive + description: + name: multi_server_socket + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" + node_preamble: + dependency: transitive + description: + name: node_preamble + url: "https://pub.dartlang.org" + source: hosted + version: "1.4.8" + openapi: + dependency: "direct main" + description: + path: "../petstore_client_lib" + relative: true + source: path + version: "1.0.0" + package_config: + dependency: transitive + description: + name: package_config + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + package_resolver: + dependency: transitive + description: + name: package_resolver + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.10" + path: + dependency: transitive + description: + name: path + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.4" + pedantic: + dependency: transitive + description: + name: pedantic + url: "https://pub.dartlang.org" + source: hosted + version: "1.8.0+1" + pool: + dependency: transitive + description: + name: pool + url: "https://pub.dartlang.org" + source: hosted + version: "1.4.0" + pub_semver: + dependency: transitive + description: + name: pub_semver + url: "https://pub.dartlang.org" + source: hosted + version: "1.4.2" + shelf: + dependency: transitive + description: + name: shelf + url: "https://pub.dartlang.org" + source: hosted + version: "0.7.5" + shelf_packages_handler: + dependency: transitive + description: + name: shelf_packages_handler + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + shelf_static: + dependency: transitive + description: + name: shelf_static + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.8" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.3" + source_map_stack_trace: + dependency: transitive + description: + name: source_map_stack_trace + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.5" + source_maps: + dependency: transitive + description: + name: source_maps + url: "https://pub.dartlang.org" + source: hosted + version: "0.10.8" + source_span: + dependency: transitive + description: + name: source_span + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.5" + stack_trace: + dependency: transitive + description: + name: stack_trace + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.3" + stream_channel: + dependency: transitive + description: + name: stream_channel + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.5" + term_glyph: + dependency: transitive + description: + name: term_glyph + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + test: + dependency: "direct dev" + description: + name: test + url: "https://pub.dartlang.org" + source: hosted + version: "1.8.0" + test_api: + dependency: transitive + description: + name: test_api + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.8" + test_core: + dependency: transitive + description: + name: test_core + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.10" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.6" + vm_service: + dependency: transitive + description: + name: vm_service + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.0" + watcher: + dependency: transitive + description: + name: watcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.7+12" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.15" + yaml: + dependency: transitive + description: + name: yaml + url: "https://pub.dartlang.org" + source: hosted + version: "2.2.0" +sdks: + dart: ">=2.5.0 <3.0.0" diff --git a/samples/client/petstore/dart2/petstore/pubspec.yaml b/samples/client/petstore/dart2/petstore/pubspec.yaml index 1d77c96e46..f263017509 100644 --- a/samples/client/petstore/dart2/petstore/pubspec.yaml +++ b/samples/client/petstore/dart2/petstore/pubspec.yaml @@ -2,9 +2,12 @@ name: petstore_client version: 1.0.0 description: Petstore client using OpenAPI library environment: - sdk: '>=2.0.0 <3.0.0' + sdk: '>=2.5.0 <3.0.0' dependencies: openapi: - path: ../openapi + path: ../petstore_client_lib dev_dependencies: - test: ^1.6.8 + test: ^1.8.0 + mockito: ^4.1.1 + http: ^0.12.0 + collection: ^1.14.12 diff --git a/samples/client/petstore/dart2/petstore/test/fake_client.dart b/samples/client/petstore/dart2/petstore/test/fake_client.dart new file mode 100644 index 0000000000..82daf74108 --- /dev/null +++ b/samples/client/petstore/dart2/petstore/test/fake_client.dart @@ -0,0 +1,133 @@ +import 'dart:convert'; + +import 'package:collection/collection.dart'; +import 'package:http/http.dart'; +import 'package:mockito/mockito.dart'; + +/// A fake client that checks for expected values and returns given responses +/// +/// Checks for the expected values (url, headers, body) and throws if not found +/// +/// If exception is non-null the request will throw the exception, after other +/// checks are performed +class FakeClient extends Fake implements Client { + FakeClient({ + this.throwException, + this.expectedPostRequestBody, + this.postResponseBody, + this.expectedGetRequestBody, + this.getResponseBody, + this.deleteResponseBody, + this.expectedPutRequestBody, + this.putResponseBody, + this.sendResponseBody, + this.expectedUrl, + this.expectedHeaders = const {'Content-Type': 'application/json'}, + }); + + Exception throwException; + Object expectedPostRequestBody; + String postResponseBody; + String expectedGetRequestBody; + String getResponseBody; + String deleteResponseBody; + String expectedPutRequestBody; + String putResponseBody; + String sendResponseBody; + String expectedUrl; + Map expectedHeaders; + + @override + Future post(url, + {Map headers, body, Encoding encoding}) async { + // check that the request was made with expected values + if (url != expectedUrl) { + throw StateError( + 'POST was called with unexpected url: ${url} should be ${expectedUrl}'); + } + if (!MapEquality().equals(headers, expectedHeaders)) { + throw StateError( + 'POST was called with unexpected headers: ${headers} should be ${expectedHeaders}'); + } + // currently we only expect Map (and subtypes) or Strings + if (body is Map) { + if (!MapEquality().equals(body, expectedPostRequestBody)) { + throw StateError( + 'POST was called with unexpected body: ${body} should be ${expectedPostRequestBody}'); + } + } else if (body != expectedPostRequestBody) { + throw StateError( + 'POST was called with unexpected body: ${body} should be ${expectedPostRequestBody}'); + } + + // throw if set to throw + if (throwException != null) throw throwException; + + return Response(postResponseBody, 200); + } + + @override + Future get(url, {Map headers}) async { + // check that the request was made with expected values + if (url != expectedUrl) { + throw StateError( + 'GET was called with unexpected url: ${url} should be ${expectedUrl}'); + } + if (!MapEquality().equals(headers, expectedHeaders)) { + throw StateError( + 'GET was called with unexpected headers: ${headers} should be ${expectedHeaders}'); + } + + // throw if set to throw + if (throwException != null) throw throwException; + + return Response(getResponseBody, 200); + } + + @override + Future delete(url, {Map headers}) async { + // check that the request was made with expected values + if (url != expectedUrl) { + throw StateError( + 'DELETE was called with unexpected url: ${url} should be ${expectedUrl}'); + } + if (!MapEquality().equals(headers, expectedHeaders)) { + throw StateError( + 'DELETE was called with unexpected headers: ${headers} should be ${expectedHeaders}'); + } + + // throw if set to throw + if (throwException != null) throw throwException; + + return Response(deleteResponseBody, 200); + } + + @override + Future put(url, + {Map headers, body, Encoding encoding}) async { + // check that the request was made with expected values + if (url != expectedUrl) { + throw StateError( + 'PUT was called with unexpected url: ${url} should be ${expectedUrl}'); + } + if (!MapEquality().equals(headers, expectedHeaders)) { + throw StateError( + 'PUT was called with unexpected headers: ${headers} should be ${expectedHeaders}'); + } + if (body != expectedPutRequestBody) { + throw StateError( + 'PUT was called with unexpected body: ${body} should be ${expectedPutRequestBody}'); + } + + // throw if set to throw + if (throwException != null) throw throwException; + + return Response(putResponseBody, 200); + } + + @override + Future send(BaseRequest request) async { + List bytes = utf8.encode(sendResponseBody); + return StreamedResponse(Stream.fromIterable([bytes]), 200); + } +} diff --git a/samples/client/petstore/dart2/petstore/test/file_upload_response.json b/samples/client/petstore/dart2/petstore/test/file_upload_response.json new file mode 100644 index 0000000000..8855b00d9e --- /dev/null +++ b/samples/client/petstore/dart2/petstore/test/file_upload_response.json @@ -0,0 +1 @@ +{"code":200,"type":"unknown","message":"additionalMetadata: \nFile uploaded to ./null, 4 bytes"} \ No newline at end of file diff --git a/samples/client/petstore/dart2/petstore/test/inventory_response.json b/samples/client/petstore/dart2/petstore/test/inventory_response.json new file mode 100644 index 0000000000..b4388d1e7b --- /dev/null +++ b/samples/client/petstore/dart2/petstore/test/inventory_response.json @@ -0,0 +1 @@ +{"mine":1,"sold":18,"string":568,"Dead":2,"test":2,"Nonavailable":1,"custom":3,"pending":20,"available":2212,"notAvailable":26,"avaiflable":1,"AVAILABLE":1,"swimming":1,"availablee":2,"success":1,"105":1,"missing":11,"disabled":1,"Available":1,"]]>":1} \ No newline at end of file diff --git a/samples/client/petstore/dart2/petstore/test/pet_faked_client_test.dart b/samples/client/petstore/dart2/petstore/test/pet_faked_client_test.dart new file mode 100644 index 0000000000..c0374e8c8b --- /dev/null +++ b/samples/client/petstore/dart2/petstore/test/pet_faked_client_test.dart @@ -0,0 +1,231 @@ +import 'dart:io'; + +import 'package:http/http.dart'; +import 'package:openapi/api.dart'; +import 'package:test/test.dart'; + +import 'fake_client.dart'; +import 'random_id.dart'; + +void main() { + final petApi = PetApi(); + + Pet makePet({ + int id = 1234, + String name = 'Fluffy', + String status = '', + }) { + final category = Category() + ..id = 1234 + ..name = 'eyeColor'; + final tags = [ + Tag() + ..id = 1234 + ..name = 'New York', + Tag() + ..id = 124321 + ..name = 'Jose' + ]; + return Pet() + ..id = id + ..category = category + ..tags = tags + ..name = name + ..status = status + ..photoUrls = ['https://petstore.com/sample/photo1.jpg']; + } + + /// Setup the fake client then call [petApi.addPet] + Future addPet(Pet pet) { + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPostRequestBody: petApi.apiClient.serialize(pet), + postResponseBody: '', + ); + return petApi.addPet(pet); + } + + group('Pet API with faked client', () { + test('adds a new pet and gets it by id', () async { + final id = newId(); + final newPet = makePet(id: id); + + // use the pet api to add a pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPostRequestBody: petApi.apiClient.serialize(newPet), + postResponseBody: '', + ); + await petApi.addPet(newPet); + + // retrieve the same pet by id + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + getResponseBody: petApi.apiClient.serialize(newPet), + ); + final retrievedPet = await petApi.getPetById(id); + + // check that the retrieved id is as expected + expect(retrievedPet.id, equals(id)); + }); + + test('doesn\'t get non-existing pet by id', () { + final id = newId(); + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + throwException: ApiException(400, 'not found'), + ); + expect( + petApi.getPetById(id), throwsA(equals(TypeMatcher()))); + }); + + test('deletes existing pet by id', () async { + final id = newId(); + Pet newPet = makePet(id: id); + + // add a new pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPostRequestBody: petApi.apiClient.serialize(newPet), + postResponseBody: '', + ); + await petApi.addPet(newPet); + + // delete the pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + expectedHeaders: { + 'Content-Type': 'application/json', + 'api_key': 'special-key' + }, + deleteResponseBody: '', + ); + await petApi.deletePet(id, apiKey: 'special-key'); + + // check for the deleted pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + throwException: ApiException(400, 'Not found'), + ); + expect( + petApi.getPetById(id), throwsA(equals(TypeMatcher()))); + }); + + test('updates pet with form', () async { + final id = newId(); + final newPet = makePet(id: id, name: 'Snowy'); + + // add a new pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPostRequestBody: petApi.apiClient.serialize(newPet), + postResponseBody: '', + ); + await petApi.addPet(newPet); + + final multipartRequest = MultipartRequest(null, null); + multipartRequest.fields['name'] = 'Doge'; + multipartRequest.fields['status'] = ''; + + // update with form + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + expectedHeaders: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + expectedPostRequestBody: {'name': 'Doge', 'status': ''}, + postResponseBody: '', + ); + await petApi.updatePetWithForm(id, name: 'Doge', status: ''); + + // check update worked + newPet.name = 'Doge'; + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + getResponseBody: petApi.apiClient.serialize(newPet), + ); + final pet = await petApi.getPetById(id); + expect(pet.name, equals('Doge')); + }); + + test('updates existing pet', () async { + final id = newId(); + final name = 'Snowy'; + final newPet = makePet(id: id); + final updatePet = makePet(id: id, name: name); + + // add a new pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPostRequestBody: petApi.apiClient.serialize(newPet), + postResponseBody: '', + ); + await petApi.addPet(newPet); + + // update the same pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPutRequestBody: petApi.apiClient.serialize(updatePet), + putResponseBody: '', + ); + await petApi.updatePet(updatePet); + + // check update worked + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet/$id', + getResponseBody: petApi.apiClient.serialize(updatePet), + ); + final pet = await petApi.getPetById(id); + expect(pet.name, equals(name)); + }); + + test('finds pets by status', () async { + final id1 = newId(); + final id2 = newId(); + final id3 = newId(); + final status = 'available'; + final pet1 = makePet(id: id1, status: status); + final pet2 = makePet(id: id2, status: status); + final pet3 = makePet(id: id3, status: 'sold'); + + return Future.wait([addPet(pet1), addPet(pet2), addPet(pet3)]) + .then((_) async { + // retrieve pets by status + petApi.apiClient.client = FakeClient( + expectedUrl: + 'http://petstore.swagger.io/v2/pet/findByStatus?status=$status', + getResponseBody: petApi.apiClient.serialize([pet1, pet2]), + ); + final pets = await petApi.findPetsByStatus([status]); + final petIds = pets.map((pet) => pet.id).toList(); + expect(petIds, contains(id1)); + expect(petIds, contains(id2)); + expect(petIds, isNot(contains(id3))); + }); + }); + + test('uploads a pet image', () async { + final id = newId(); + final newPet = makePet(id: id); + // get some test data (recorded from live response) + final uploadResponse = + await File('test/file_upload_response.json').readAsString(); + + // add a new pet + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + expectedPostRequestBody: petApi.apiClient.serialize(newPet), + postResponseBody: '', + ); + await petApi.addPet(newPet); + + petApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/pet', + sendResponseBody: uploadResponse, + ); + final file = + new MultipartFile.fromBytes('file', [104, 101, 108, 108, 111]); + await petApi.uploadFile(id, additionalMetadata: '', file: file); + }); + }); +} diff --git a/samples/client/petstore/dart2/petstore/test/pet_test.dart b/samples/client/petstore/dart2/petstore/test/pet_test.dart index 3671469c7b..b978022e56 100644 --- a/samples/client/petstore/dart2/petstore/test/pet_test.dart +++ b/samples/client/petstore/dart2/petstore/test/pet_test.dart @@ -7,7 +7,7 @@ import 'package:test/test.dart'; import 'random_id.dart'; void main() { - var petApi = new PetApi(); + var petApi = PetApi(); Pet makePet({ int id = 1234, @@ -34,7 +34,7 @@ void main() { ..photoUrls = ['https://petstore.com/sample/photo1.jpg']; } - group('Pet API ', () { + group('Pet API with live client', () { test('adds a new pet and gets it by id', () async { var id = newId(); await petApi.addPet(makePet(id: id)); @@ -99,5 +99,5 @@ void main() { var file = new MultipartFile.fromBytes('file', [104, 101, 108, 108, 111]); await petApi.uploadFile(id, additionalMetadata: '', file: file); }); - }); + }, skip: 'e2e tests for CI'); } diff --git a/samples/client/petstore/dart2/petstore/test/store_faked_client_test.dart b/samples/client/petstore/dart2/petstore/test/store_faked_client_test.dart new file mode 100644 index 0000000000..dce22ec58b --- /dev/null +++ b/samples/client/petstore/dart2/petstore/test/store_faked_client_test.dart @@ -0,0 +1,85 @@ +import 'dart:io'; + +import 'package:openapi/api.dart'; +import 'package:test/test.dart'; + +import 'fake_client.dart'; +import 'random_id.dart'; + +void main() { + var storeApi = new StoreApi(); + + Order makeOrder({int id}) { + return Order() + ..id = id + ..petId = 1234 + ..quantity = 1 + ..shipDate = DateTime.now() + ..status + ..complete = false; + } + + group('Store API with faked client', () { + test('places an order and gets it by id', () async { + final id = newId(); + final newOrder = makeOrder(id: id); + + // use the store api to add an order + storeApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/store/order', + expectedPostRequestBody: storeApi.apiClient.serialize(newOrder), + postResponseBody: storeApi.apiClient.serialize(newOrder), + ); + await storeApi.placeOrder(newOrder); + + // retrieve the same order by id + storeApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/store/order/$id', + getResponseBody: storeApi.apiClient.serialize(newOrder), + ); + final placedOrder = await storeApi.getOrderById(id); + expect(placedOrder.id, equals(id)); + }); + + test('deletes an order', () async { + final id = newId(); + final newOrder = makeOrder(id: id); + + // use the store api to add an order + storeApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/store/order', + expectedPostRequestBody: storeApi.apiClient.serialize(newOrder), + postResponseBody: storeApi.apiClient.serialize(newOrder), + ); + await storeApi.placeOrder(newOrder); + + // delete the same order + storeApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/store/order/$id', + deleteResponseBody: '', + ); + await storeApi.deleteOrder(id.toString()); + + // try and retrieve the order + storeApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/store/order/$id', + throwException: ApiException(400, 'Not found'), + ); + expect(storeApi.getOrderById(id), + throwsA(equals(TypeMatcher()))); + }); + + test('gets the store inventory', () async { + // get some test data (recorded from live response) + final inventoryResponse = + await File('test/inventory_response.json').readAsString(); + // use the store api to get the inventory + storeApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/store/inventory', + getResponseBody: inventoryResponse, + ); + Map inventory = await storeApi.getInventory(); + expect(inventory.length, isNot(equals(0))); + }); + }); +} diff --git a/samples/client/petstore/dart2/petstore/test/store_test.dart b/samples/client/petstore/dart2/petstore/test/store_test.dart index 0e610e7a67..ce4531e372 100644 --- a/samples/client/petstore/dart2/petstore/test/store_test.dart +++ b/samples/client/petstore/dart2/petstore/test/store_test.dart @@ -16,7 +16,7 @@ void main() { ..complete = false; } - group('Store API ', () { + group('Store API with live client', () { test('places an order and gets it by id', () async { var id = newId(); @@ -38,5 +38,5 @@ void main() { Map inventory = await storeApi.getInventory(); expect(inventory.length, isNot(equals(0))); }); - }); + }); // , skip: 'e2e tests for CI' } diff --git a/samples/client/petstore/dart2/petstore/test/user_faked_client_test.dart b/samples/client/petstore/dart2/petstore/test/user_faked_client_test.dart new file mode 100644 index 0000000000..df2b4686f1 --- /dev/null +++ b/samples/client/petstore/dart2/petstore/test/user_faked_client_test.dart @@ -0,0 +1,170 @@ +import 'package:openapi/api.dart'; +import 'package:test/test.dart'; + +import 'fake_client.dart'; +import 'random_id.dart'; + +void main() { + var userApi = new UserApi(); + + User makeUser( + {int id, String userName = 'username', String password = 'password'}) { + return User() + ..id = id + ..username = userName + ..firstName = 'firstname' + ..lastName = 'lastname' + ..email = 'email' + ..password = password + ..phone = 'phone' + ..userStatus = 0; + } + + group('User API with faked client', () { + test('creates a user', () async { + final id = newId(); + final username = 'Mally45'; + final newUser = makeUser(id: id, userName: username); + + // use the user api to create a user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user', + expectedPostRequestBody: userApi.apiClient.serialize(newUser), + postResponseBody: userApi.apiClient.serialize(newUser), + ); + await userApi.createUser(newUser); + + // retrieve the same user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user/$username', + getResponseBody: userApi.apiClient.serialize(newUser), + ); + var user = await userApi.getUserByName(username); + expect(user.id, equals(id)); + }); + + test('creates users with list input', () async { + final firstId = newId(); + final joe = 'Joe'; + + final sally = 'Sally'; + final secondId = newId(); + + final users = [ + makeUser(id: firstId, userName: joe), + makeUser(id: secondId, userName: sally), + ]; + + // use the user api to create a list of users + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user/createWithList', + expectedPostRequestBody: userApi.apiClient.serialize(users), + postResponseBody: userApi.apiClient.serialize(users), + ); + await userApi.createUsersWithListInput(users); + + // retrieve the users + userApi.apiClient.client = FakeClient( + expectedUrl: + 'http://petstore.swagger.io/v2/user/${users.elementAt(0).username}', + getResponseBody: userApi.apiClient.serialize( + users.elementAt(0), + ), + ); + final firstUser = await userApi.getUserByName(joe); + userApi.apiClient.client = FakeClient( + expectedUrl: + 'http://petstore.swagger.io/v2/user/${users.elementAt(1).username}', + getResponseBody: userApi.apiClient.serialize( + users.elementAt(1), + ), + ); + final secondUser = await userApi.getUserByName(sally); + expect(firstUser.id, equals(firstId)); + expect(secondUser.id, equals(secondId)); + }); + + test('updates a user', () async { + final username = 'Arkjam89'; + final email = 'test@example.com'; + final newUser = makeUser(id: newId(), userName: username); + + // use the user api to create a user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user', + expectedPostRequestBody: userApi.apiClient.serialize(newUser), + postResponseBody: userApi.apiClient.serialize(newUser), + ); + await userApi.createUser(newUser); + newUser.email = email; + + // use the user api to update the user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user/${newUser.username}', + expectedPutRequestBody: userApi.apiClient.serialize(newUser), + putResponseBody: userApi.apiClient.serialize(newUser), + ); + await userApi.updateUser(username, newUser); + + // retrieve the same user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user/${newUser.username}', + getResponseBody: userApi.apiClient.serialize(newUser), + ); + var foundUser = await userApi.getUserByName(username); + expect(foundUser.email, equals(email)); + }); + + test('deletes a user', () async { + final username = 'Riddlem325'; + final newUser = makeUser(id: newId(), userName: username); + + // use the user api to create a user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user', + expectedPostRequestBody: userApi.apiClient.serialize(newUser), + postResponseBody: userApi.apiClient.serialize(newUser), + ); + await userApi.createUser(newUser); + + // delete the same user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user/${newUser.username}', + deleteResponseBody: '', + ); + await userApi.deleteUser(username); + + // try and retrieve the user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user/${newUser.username}', + throwException: ApiException(400, 'Not found'), + ); + expect(userApi.getUserByName(username), + throwsA(TypeMatcher())); + }); + + test('logs a user in', () async { + final username = 'sgarad625'; + final password = 'lokimoki1'; + final newUser = + makeUser(id: newId(), userName: username, password: password); + + // use the user api to create a user + userApi.apiClient.client = FakeClient( + expectedUrl: 'http://petstore.swagger.io/v2/user', + expectedPostRequestBody: userApi.apiClient.serialize(newUser), + postResponseBody: userApi.apiClient.serialize(newUser), + ); + await userApi.createUser(newUser); + + // use the user api to login + userApi.apiClient.client = FakeClient( + expectedUrl: + 'http://petstore.swagger.io/v2/user/login?username=${newUser.username}&password=${newUser.password}', + getResponseBody: 'logged in user session:', + ); + final result = await userApi.loginUser(username, password); + expect(result, contains('logged in user session:')); + }); + }); +} diff --git a/samples/client/petstore/dart2/petstore/test/user_test.dart b/samples/client/petstore/dart2/petstore/test/user_test.dart index a9c37e4808..ea34b3713f 100644 --- a/samples/client/petstore/dart2/petstore/test/user_test.dart +++ b/samples/client/petstore/dart2/petstore/test/user_test.dart @@ -19,7 +19,7 @@ void main() { ..userStatus = 0; } - group('User API ', () { + group('User API with live client', () { test('creates a user', () async { var id = newId(); var username = 'Mally45'; @@ -76,5 +76,5 @@ void main() { var result = await userApi.loginUser(username, password); expect(result, contains('logged in user session:')); }); - }); + }, skip: 'e2e tests for CI'); } diff --git a/samples/client/petstore/dart2/openapi/.gitignore b/samples/client/petstore/dart2/petstore_client_lib/.gitignore similarity index 100% rename from samples/client/petstore/dart2/openapi/.gitignore rename to samples/client/petstore/dart2/petstore_client_lib/.gitignore diff --git a/samples/client/petstore/dart2/openapi/.openapi-generator-ignore b/samples/client/petstore/dart2/petstore_client_lib/.openapi-generator-ignore similarity index 100% rename from samples/client/petstore/dart2/openapi/.openapi-generator-ignore rename to samples/client/petstore/dart2/petstore_client_lib/.openapi-generator-ignore diff --git a/samples/client/petstore/dart2/openapi/.openapi-generator/VERSION b/samples/client/petstore/dart2/petstore_client_lib/.openapi-generator/VERSION similarity index 100% rename from samples/client/petstore/dart2/openapi/.openapi-generator/VERSION rename to samples/client/petstore/dart2/petstore_client_lib/.openapi-generator/VERSION diff --git a/samples/client/petstore/dart2/openapi/.travis.yml b/samples/client/petstore/dart2/petstore_client_lib/.travis.yml similarity index 100% rename from samples/client/petstore/dart2/openapi/.travis.yml rename to samples/client/petstore/dart2/petstore_client_lib/.travis.yml diff --git a/samples/client/petstore/dart2/openapi/README.md b/samples/client/petstore/dart2/petstore_client_lib/README.md similarity index 100% rename from samples/client/petstore/dart2/openapi/README.md rename to samples/client/petstore/dart2/petstore_client_lib/README.md diff --git a/samples/client/petstore/dart2/openapi/docs/ApiResponse.md b/samples/client/petstore/dart2/petstore_client_lib/docs/ApiResponse.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/ApiResponse.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/ApiResponse.md diff --git a/samples/client/petstore/dart2/openapi/docs/Category.md b/samples/client/petstore/dart2/petstore_client_lib/docs/Category.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/Category.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/Category.md diff --git a/samples/client/petstore/dart2/openapi/docs/Order.md b/samples/client/petstore/dart2/petstore_client_lib/docs/Order.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/Order.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/Order.md diff --git a/samples/client/petstore/dart2/openapi/docs/Pet.md b/samples/client/petstore/dart2/petstore_client_lib/docs/Pet.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/Pet.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/Pet.md diff --git a/samples/client/petstore/dart2/openapi/docs/PetApi.md b/samples/client/petstore/dart2/petstore_client_lib/docs/PetApi.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/PetApi.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/PetApi.md diff --git a/samples/client/petstore/dart2/openapi/docs/StoreApi.md b/samples/client/petstore/dart2/petstore_client_lib/docs/StoreApi.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/StoreApi.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/StoreApi.md diff --git a/samples/client/petstore/dart2/openapi/docs/Tag.md b/samples/client/petstore/dart2/petstore_client_lib/docs/Tag.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/Tag.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/Tag.md diff --git a/samples/client/petstore/dart2/openapi/docs/User.md b/samples/client/petstore/dart2/petstore_client_lib/docs/User.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/User.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/User.md diff --git a/samples/client/petstore/dart2/openapi/docs/UserApi.md b/samples/client/petstore/dart2/petstore_client_lib/docs/UserApi.md similarity index 100% rename from samples/client/petstore/dart2/openapi/docs/UserApi.md rename to samples/client/petstore/dart2/petstore_client_lib/docs/UserApi.md diff --git a/samples/client/petstore/dart2/openapi/git_push.sh b/samples/client/petstore/dart2/petstore_client_lib/git_push.sh similarity index 100% rename from samples/client/petstore/dart2/openapi/git_push.sh rename to samples/client/petstore/dart2/petstore_client_lib/git_push.sh diff --git a/samples/client/petstore/dart2/openapi/lib/api.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api.dart diff --git a/samples/client/petstore/dart2/openapi/lib/api/pet_api.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api/pet_api.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api/pet_api.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api/pet_api.dart diff --git a/samples/client/petstore/dart2/openapi/lib/api/store_api.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api/store_api.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api/store_api.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api/store_api.dart diff --git a/samples/client/petstore/dart2/openapi/lib/api/user_api.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api/user_api.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api/user_api.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api/user_api.dart diff --git a/samples/client/petstore/dart2/openapi/lib/api_client.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api_client.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api_client.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api_client.dart diff --git a/samples/client/petstore/dart2/openapi/lib/api_exception.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api_exception.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api_exception.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api_exception.dart diff --git a/samples/client/petstore/dart2/openapi/lib/api_helper.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/api_helper.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/api_helper.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/api_helper.dart diff --git a/samples/client/petstore/dart2/openapi/lib/auth/api_key_auth.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/auth/api_key_auth.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/auth/api_key_auth.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/auth/api_key_auth.dart diff --git a/samples/client/petstore/dart2/openapi/lib/auth/authentication.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/auth/authentication.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/auth/authentication.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/auth/authentication.dart diff --git a/samples/client/petstore/dart2/openapi/lib/auth/http_basic_auth.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/auth/http_basic_auth.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/auth/http_basic_auth.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/auth/http_basic_auth.dart diff --git a/samples/client/petstore/dart2/openapi/lib/auth/oauth.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/auth/oauth.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/auth/oauth.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/auth/oauth.dart diff --git a/samples/client/petstore/dart2/openapi/lib/model/api_response.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/model/api_response.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/model/api_response.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/model/api_response.dart diff --git a/samples/client/petstore/dart2/openapi/lib/model/category.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/model/category.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/model/category.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/model/category.dart diff --git a/samples/client/petstore/dart2/openapi/lib/model/order.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/model/order.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/model/order.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/model/order.dart diff --git a/samples/client/petstore/dart2/openapi/lib/model/pet.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/model/pet.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/model/pet.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/model/pet.dart diff --git a/samples/client/petstore/dart2/openapi/lib/model/tag.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/model/tag.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/model/tag.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/model/tag.dart diff --git a/samples/client/petstore/dart2/openapi/lib/model/user.dart b/samples/client/petstore/dart2/petstore_client_lib/lib/model/user.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/lib/model/user.dart rename to samples/client/petstore/dart2/petstore_client_lib/lib/model/user.dart diff --git a/samples/client/petstore/dart2/openapi/pubspec.yaml b/samples/client/petstore/dart2/petstore_client_lib/pubspec.yaml similarity index 100% rename from samples/client/petstore/dart2/openapi/pubspec.yaml rename to samples/client/petstore/dart2/petstore_client_lib/pubspec.yaml diff --git a/samples/client/petstore/dart2/openapi/test/api_response_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/api_response_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/api_response_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/api_response_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/category_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/category_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/category_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/category_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/order_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/order_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/order_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/order_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/pet_api_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/pet_api_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/pet_api_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/pet_api_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/pet_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/pet_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/pet_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/pet_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/store_api_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/store_api_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/store_api_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/store_api_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/tag_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/tag_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/tag_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/tag_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/user_api_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/user_api_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/user_api_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/user_api_test.dart diff --git a/samples/client/petstore/dart2/openapi/test/user_test.dart b/samples/client/petstore/dart2/petstore_client_lib/test/user_test.dart similarity index 100% rename from samples/client/petstore/dart2/openapi/test/user_test.dart rename to samples/client/petstore/dart2/petstore_client_lib/test/user_test.dart diff --git a/samples/client/petstore/dart2/purge_test.sh b/samples/client/petstore/dart2/purge_test.sh deleted file mode 100755 index 6c0aca0ac8..0000000000 --- a/samples/client/petstore/dart2/purge_test.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -echo "purge test fils under 'test' folder" -rm -Rf openapi/test/ diff --git a/samples/client/petstore/elixir/lib/openapi_petstore/model/format_test.ex b/samples/client/petstore/elixir/lib/openapi_petstore/model/format_test.ex index 869d7aa419..5a54b558f3 100644 --- a/samples/client/petstore/elixir/lib/openapi_petstore/model/format_test.ex +++ b/samples/client/petstore/elixir/lib/openapi_petstore/model/format_test.ex @@ -21,7 +21,8 @@ defmodule OpenapiPetstore.Model.FormatTest do :"date", :"dateTime", :"uuid", - :"password" + :"password", + :"BigDecimal" ] @type t :: %__MODULE__{ @@ -37,7 +38,8 @@ defmodule OpenapiPetstore.Model.FormatTest do :"date" => Date.t, :"dateTime" => DateTime.t | nil, :"uuid" => String.t | nil, - :"password" => String.t + :"password" => String.t, + :"BigDecimal" => String.t | nil } end @@ -46,6 +48,7 @@ defimpl Poison.Decoder, for: OpenapiPetstore.Model.FormatTest do def decode(value, options) do value |> deserialize(:"date", :date, nil, options) + |> deserialize(:"BigDecimal", :struct, OpenapiPetstore.Model.String.t, options) end end diff --git a/samples/client/petstore/go-experimental/auth_test.go b/samples/client/petstore/go-experimental/auth_test.go index 7da448adce..1bb5d81756 100644 --- a/samples/client/petstore/go-experimental/auth_test.go +++ b/samples/client/petstore/go-experimental/auth_test.go @@ -130,7 +130,7 @@ func TestAccessToken(t *testing.T) { } func TestAPIKeyNoPrefix(t *testing.T) { - auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{Key: "TEST123"}) + auth := context.WithValue(context.Background(), sw.ContextAPIKeys, map[string]sw.APIKey{"api_key": sw.APIKey{Key: "TEST123"}}) newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"), PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"), @@ -165,7 +165,7 @@ func TestAPIKeyNoPrefix(t *testing.T) { } func TestAPIKeyWithPrefix(t *testing.T) { - auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{Key: "TEST123", Prefix: "Bearer"}) + auth := context.WithValue(context.Background(), sw.ContextAPIKeys, map[string]sw.APIKey{"api_key": sw.APIKey{Key: "TEST123", Prefix: "Bearer"}}) newPet := (sw.Pet{Id: sw.PtrInt64(12992), Name: sw.PtrString("gopher"), PhotoUrls: &[]string{"http://1.com", "http://2.com"}, Status: sw.PtrString("pending"), diff --git a/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION b/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION index d1a8f58b38..c3a2c7076f 100644 --- a/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION +++ b/samples/client/petstore/go-experimental/go-petstore/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.2-SNAPSHOT \ No newline at end of file +4.2.0-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/go-experimental/go-petstore/README.md b/samples/client/petstore/go-experimental/go-petstore/README.md index b42cb2731c..b976d6549d 100644 --- a/samples/client/petstore/go-experimental/go-petstore/README.md +++ b/samples/client/petstore/go-experimental/go-petstore/README.md @@ -23,7 +23,7 @@ go get github.com/antihax/optional Put the package under your project folder and add the following in import: ```golang -import "./petstore" +import sw "./petstore" ``` ## Documentation for API Endpoints @@ -125,37 +125,25 @@ Class | Method | HTTP request | Description -## api_key +### api_key - **Type**: API key +- **API key parameter name**: api_key +- **Location**: HTTP header -Example - -```golang -auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{ - Key: "APIKEY", - Prefix: "Bearer", // Omit if not necessary. -}) -r, err := client.Service.Operation(auth, args) -``` +Note, each API key must be added to a map of `map[string]APIKey` where the key is: api_key and passed in as the auth context for each request. -## api_key_query +### api_key_query - **Type**: API key +- **API key parameter name**: api_key_query +- **Location**: URL query string -Example - -```golang -auth := context.WithValue(context.Background(), sw.ContextAPIKey, sw.APIKey{ - Key: "APIKEY", - Prefix: "Bearer", // Omit if not necessary. -}) -r, err := client.Service.Operation(auth, args) -``` +Note, each API key must be added to a map of `map[string]APIKey` where the key is: api_key_query and passed in as the auth context for each request. -## http_basic_test +### http_basic_test - **Type**: HTTP basic authentication @@ -170,7 +158,7 @@ r, err := client.Service.Operation(auth, args) ``` -## petstore_auth +### petstore_auth - **Type**: OAuth diff --git a/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml b/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml index 0a1559e1c4..94c46a5bb5 100644 --- a/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml +++ b/samples/client/petstore/go-experimental/go-petstore/api/openapi.yaml @@ -1491,6 +1491,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date @@ -1869,6 +1872,10 @@ components: number_item: example: 1.234 type: number + float_item: + example: 1.234 + format: float + type: number integer_item: example: -2 type: integer @@ -1887,6 +1894,7 @@ components: required: - array_item - bool_item + - float_item - integer_item - number_item - string_item diff --git a/samples/client/petstore/go-experimental/go-petstore/api_fake.go b/samples/client/petstore/go-experimental/go-petstore/api_fake.go index 392ab5c46e..731d5c00f4 100644 --- a/samples/client/petstore/go-experimental/go-petstore/api_fake.go +++ b/samples/client/petstore/go-experimental/go-petstore/api_fake.go @@ -834,11 +834,7 @@ func (a *FakeApiService) TestEndpointParameters(ctx _context.Context, number flo localVarFormParams.Add("date", parameterToString(localVarOptionals.Date.Value(), "")) } if localVarOptionals != nil && localVarOptionals.DateTime.IsSet() { - paramJson, err := parameterToJson(localVarOptionals.DateTime.Value()) - if err != nil { - return nil, err - } - localVarFormParams.Add("dateTime", paramJson) + localVarFormParams.Add("dateTime", parameterToString(localVarOptionals.DateTime.Value(), "")) } if localVarOptionals != nil && localVarOptionals.Password.IsSet() { localVarFormParams.Add("password", parameterToString(localVarOptionals.Password.Value(), "")) diff --git a/samples/client/petstore/go-experimental/go-petstore/api_fake_classname_tags123.go b/samples/client/petstore/go-experimental/go-petstore/api_fake_classname_tags123.go index be67cb585e..fcae0074e6 100644 --- a/samples/client/petstore/go-experimental/go-petstore/api_fake_classname_tags123.go +++ b/samples/client/petstore/go-experimental/go-petstore/api_fake_classname_tags123.go @@ -69,14 +69,16 @@ func (a *FakeClassnameTags123ApiService) TestClassname(ctx _context.Context, bod localVarPostBody = &body if ctx != nil { // API Key Authentication - if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { - var key string - if auth.Prefix != "" { - key = auth.Prefix + " " + auth.Key - } else { - key = auth.Key + if auth, ok := ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["api_key_query"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarQueryParams.Add("api_key_query", key) } - localVarQueryParams.Add("api_key_query", key) } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) diff --git a/samples/client/petstore/go-experimental/go-petstore/api_pet.go b/samples/client/petstore/go-experimental/go-petstore/api_pet.go index 77dccc2768..b3fd6a6e66 100644 --- a/samples/client/petstore/go-experimental/go-petstore/api_pet.go +++ b/samples/client/petstore/go-experimental/go-petstore/api_pet.go @@ -391,14 +391,16 @@ func (a *PetApiService) GetPetById(ctx _context.Context, petId int64) (Pet, *_ne } if ctx != nil { // API Key Authentication - if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { - var key string - if auth.Prefix != "" { - key = auth.Prefix + " " + auth.Key - } else { - key = auth.Key + if auth, ok := ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["api_key"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["api_key"] = key } - localVarHeaderParams["api_key"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) diff --git a/samples/client/petstore/go-experimental/go-petstore/api_store.go b/samples/client/petstore/go-experimental/go-petstore/api_store.go index e17fc1816e..27fa46576c 100644 --- a/samples/client/petstore/go-experimental/go-petstore/api_store.go +++ b/samples/client/petstore/go-experimental/go-petstore/api_store.go @@ -135,14 +135,16 @@ func (a *StoreApiService) GetInventory(ctx _context.Context) (map[string]int32, } if ctx != nil { // API Key Authentication - if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { - var key string - if auth.Prefix != "" { - key = auth.Prefix + " " + auth.Key - } else { - key = auth.Key + if auth, ok := ctx.Value(ContextAPIKeys).(map[string]APIKey); ok { + if auth, ok := auth["api_key"]; ok { + var key string + if auth.Prefix != "" { + key = auth.Prefix + " " + auth.Key + } else { + key = auth.Key + } + localVarHeaderParams["api_key"] = key } - localVarHeaderParams["api_key"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) diff --git a/samples/client/petstore/go-experimental/go-petstore/configuration.go b/samples/client/petstore/go-experimental/go-petstore/configuration.go index b3b81ad082..22f01da0a5 100644 --- a/samples/client/petstore/go-experimental/go-petstore/configuration.go +++ b/samples/client/petstore/go-experimental/go-petstore/configuration.go @@ -33,8 +33,8 @@ var ( // ContextAccessToken takes a string oauth2 access token as authentication for the request. ContextAccessToken = contextKey("accesstoken") - // ContextAPIKey takes an APIKey as authentication for the request - ContextAPIKey = contextKey("apikey") + // ContextAPIKeys takes a string apikey as authentication for the request + ContextAPIKeys = contextKey("apiKeys") ) // BasicAuth provides basic http authentication to a request passed via context using ContextBasicAuth diff --git a/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md b/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md index 6711f4f4fc..c1633f9cae 100644 --- a/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md +++ b/samples/client/petstore/go-experimental/go-petstore/docs/FormatTest.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **DateTime** | Pointer to [**time.Time**](time.Time.md) | | [optional] **Uuid** | Pointer to **string** | | [optional] **Password** | Pointer to **string** | | +**BigDecimal** | Pointer to **float64** | | [optional] ## Methods @@ -345,6 +346,31 @@ HasPassword returns a boolean if a field has been set. SetPassword gets a reference to the given string and assigns it to the Password field. +### GetBigDecimal + +`func (o *FormatTest) GetBigDecimal() float64` + +GetBigDecimal returns the BigDecimal field if non-nil, zero value otherwise. + +### GetBigDecimalOk + +`func (o *FormatTest) GetBigDecimalOk() (float64, bool)` + +GetBigDecimalOk returns a tuple with the BigDecimal field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### HasBigDecimal + +`func (o *FormatTest) HasBigDecimal() bool` + +HasBigDecimal returns a boolean if a field has been set. + +### SetBigDecimal + +`func (o *FormatTest) SetBigDecimal(v float64)` + +SetBigDecimal gets a reference to the given float64 and assigns it to the BigDecimal field. + [[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/go-experimental/go-petstore/docs/TypeHolderExample.md b/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md index f9a276c529..3f9349a9b9 100644 --- a/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md +++ b/samples/client/petstore/go-experimental/go-petstore/docs/TypeHolderExample.md @@ -6,6 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **StringItem** | Pointer to **string** | | **NumberItem** | Pointer to **float32** | | +**FloatItem** | Pointer to **float32** | | **IntegerItem** | Pointer to **int32** | | **BoolItem** | Pointer to **bool** | | **ArrayItem** | Pointer to **[]int32** | | @@ -62,6 +63,31 @@ HasNumberItem returns a boolean if a field has been set. SetNumberItem gets a reference to the given float32 and assigns it to the NumberItem field. +### GetFloatItem + +`func (o *TypeHolderExample) GetFloatItem() float32` + +GetFloatItem returns the FloatItem field if non-nil, zero value otherwise. + +### GetFloatItemOk + +`func (o *TypeHolderExample) GetFloatItemOk() (float32, bool)` + +GetFloatItemOk returns a tuple with the FloatItem field if it's non-nil, zero value otherwise +and a boolean to check if the value has been set. + +### HasFloatItem + +`func (o *TypeHolderExample) HasFloatItem() bool` + +HasFloatItem returns a boolean if a field has been set. + +### SetFloatItem + +`func (o *TypeHolderExample) SetFloatItem(v float32)` + +SetFloatItem gets a reference to the given float32 and assigns it to the FloatItem field. + ### GetIntegerItem `func (o *TypeHolderExample) GetIntegerItem() int32` diff --git a/samples/client/petstore/go-experimental/go-petstore/git_push.sh b/samples/client/petstore/go-experimental/go-petstore/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/go-experimental/go-petstore/git_push.sh +++ b/samples/client/petstore/go-experimental/go-petstore/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/go-experimental/go-petstore/model_format_test_.go b/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go index 8ddb18f24b..c6de468fbf 100644 --- a/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go +++ b/samples/client/petstore/go-experimental/go-petstore/model_format_test_.go @@ -42,6 +42,8 @@ type FormatTest struct { Password *string `json:"password,omitempty"` + BigDecimal *float64 `json:"BigDecimal,omitempty"` + } // GetInteger returns the Integer field if non-nil, zero value otherwise. @@ -473,6 +475,39 @@ func (o *FormatTest) SetPassword(v string) { o.Password = &v } +// GetBigDecimal returns the BigDecimal field if non-nil, zero value otherwise. +func (o *FormatTest) GetBigDecimal() float64 { + if o == nil || o.BigDecimal == nil { + var ret float64 + return ret + } + return *o.BigDecimal +} + +// GetBigDecimalOk returns a tuple with the BigDecimal field if it's non-nil, zero value otherwise +// and a boolean to check if the value has been set. +func (o *FormatTest) GetBigDecimalOk() (float64, bool) { + if o == nil || o.BigDecimal == nil { + var ret float64 + return ret, false + } + return *o.BigDecimal, true +} + +// HasBigDecimal returns a boolean if a field has been set. +func (o *FormatTest) HasBigDecimal() bool { + if o != nil && o.BigDecimal != nil { + return true + } + + return false +} + +// SetBigDecimal gets a reference to the given float64 and assigns it to the BigDecimal field. +func (o *FormatTest) SetBigDecimal(v float64) { + o.BigDecimal = &v +} + // MarshalJSON returns the JSON representation of the model. func (o FormatTest) MarshalJSON() ([]byte, error) { @@ -528,6 +563,9 @@ func (o FormatTest) MarshalJSON() ([]byte, error) { if o.Password != nil { toSerialize["password"] = o.Password } + if o.BigDecimal != nil { + toSerialize["BigDecimal"] = o.BigDecimal + } return json.Marshal(toSerialize) } diff --git a/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go b/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go index 8a422eca9f..e51025fcb7 100644 --- a/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go +++ b/samples/client/petstore/go-experimental/go-petstore/model_type_holder_example.go @@ -18,6 +18,8 @@ type TypeHolderExample struct { NumberItem *float32 `json:"number_item,omitempty"` + FloatItem *float32 `json:"float_item,omitempty"` + IntegerItem *int32 `json:"integer_item,omitempty"` BoolItem *bool `json:"bool_item,omitempty"` @@ -92,6 +94,39 @@ func (o *TypeHolderExample) SetNumberItem(v float32) { o.NumberItem = &v } +// GetFloatItem returns the FloatItem field if non-nil, zero value otherwise. +func (o *TypeHolderExample) GetFloatItem() float32 { + if o == nil || o.FloatItem == nil { + var ret float32 + return ret + } + return *o.FloatItem +} + +// GetFloatItemOk returns a tuple with the FloatItem field if it's non-nil, zero value otherwise +// and a boolean to check if the value has been set. +func (o *TypeHolderExample) GetFloatItemOk() (float32, bool) { + if o == nil || o.FloatItem == nil { + var ret float32 + return ret, false + } + return *o.FloatItem, true +} + +// HasFloatItem returns a boolean if a field has been set. +func (o *TypeHolderExample) HasFloatItem() bool { + if o != nil && o.FloatItem != nil { + return true + } + + return false +} + +// SetFloatItem gets a reference to the given float32 and assigns it to the FloatItem field. +func (o *TypeHolderExample) SetFloatItem(v float32) { + o.FloatItem = &v +} + // GetIntegerItem returns the IntegerItem field if non-nil, zero value otherwise. func (o *TypeHolderExample) GetIntegerItem() int32 { if o == nil || o.IntegerItem == nil { @@ -207,6 +242,12 @@ func (o TypeHolderExample) MarshalJSON() ([]byte, error) { if o.NumberItem != nil { toSerialize["number_item"] = o.NumberItem } + if o.FloatItem == nil { + return nil, errors.New("FloatItem is required and not nullable, but was not set on TypeHolderExample") + } + if o.FloatItem != nil { + toSerialize["float_item"] = o.FloatItem + } if o.IntegerItem == nil { return nil, errors.New("IntegerItem is required and not nullable, but was not set on TypeHolderExample") } diff --git a/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml b/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml index 37a46abf4f..94c46a5bb5 100644 --- a/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml +++ b/samples/client/petstore/go/go-petstore-withXml/api/openapi.yaml @@ -1491,6 +1491,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date diff --git a/samples/client/petstore/go/go-petstore-withXml/docs/FormatTest.md b/samples/client/petstore/go/go-petstore-withXml/docs/FormatTest.md index ee089a03cd..4e8c3332b6 100644 --- a/samples/client/petstore/go/go-petstore-withXml/docs/FormatTest.md +++ b/samples/client/petstore/go/go-petstore-withXml/docs/FormatTest.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **DateTime** | [**time.Time**](time.Time.md) | | [optional] **Uuid** | **string** | | [optional] **Password** | **string** | | +**BigDecimal** | **float64** | | [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/go/go-petstore-withXml/model_format_test_.go b/samples/client/petstore/go/go-petstore-withXml/model_format_test_.go index dc9628fbd3..7509fd01c5 100644 --- a/samples/client/petstore/go/go-petstore-withXml/model_format_test_.go +++ b/samples/client/petstore/go/go-petstore-withXml/model_format_test_.go @@ -28,4 +28,5 @@ type FormatTest struct { DateTime time.Time `json:"dateTime,omitempty" xml:"dateTime"` Uuid string `json:"uuid,omitempty" xml:"uuid"` Password string `json:"password" xml:"password"` + BigDecimal float64 `json:"BigDecimal,omitempty" xml:"BigDecimal"` } diff --git a/samples/client/petstore/go/go-petstore/api/openapi.yaml b/samples/client/petstore/go/go-petstore/api/openapi.yaml index 37a46abf4f..94c46a5bb5 100644 --- a/samples/client/petstore/go/go-petstore/api/openapi.yaml +++ b/samples/client/petstore/go/go-petstore/api/openapi.yaml @@ -1491,6 +1491,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date diff --git a/samples/client/petstore/go/go-petstore/docs/FormatTest.md b/samples/client/petstore/go/go-petstore/docs/FormatTest.md index ee089a03cd..4e8c3332b6 100644 --- a/samples/client/petstore/go/go-petstore/docs/FormatTest.md +++ b/samples/client/petstore/go/go-petstore/docs/FormatTest.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **DateTime** | [**time.Time**](time.Time.md) | | [optional] **Uuid** | **string** | | [optional] **Password** | **string** | | +**BigDecimal** | **float64** | | [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/go/go-petstore/model_format_test_.go b/samples/client/petstore/go/go-petstore/model_format_test_.go index 85f31cd081..1c714c2cca 100644 --- a/samples/client/petstore/go/go-petstore/model_format_test_.go +++ b/samples/client/petstore/go/go-petstore/model_format_test_.go @@ -27,4 +27,5 @@ type FormatTest struct { DateTime time.Time `json:"dateTime,omitempty"` Uuid string `json:"uuid,omitempty"` Password string `json:"password"` + BigDecimal float64 `json:"BigDecimal,omitempty"` } diff --git a/samples/client/petstore/groovy/build.gradle b/samples/client/petstore/groovy/build.gradle index d05a1ba4cc..baf222ae11 100644 --- a/samples/client/petstore/groovy/build.gradle +++ b/samples/client/petstore/groovy/build.gradle @@ -27,7 +27,7 @@ repositories { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" + jackson_version = "2.9.10" } dependencies { diff --git a/samples/client/petstore/haskell-http-client/README.md b/samples/client/petstore/haskell-http-client/README.md index 49b68e11b7..a322bacdfb 100644 --- a/samples/client/petstore/haskell-http-client/README.md +++ b/samples/client/petstore/haskell-http-client/README.md @@ -66,6 +66,7 @@ These options allow some customization of the code generation process. | configType | Set the name of the type used for configuration | | OpenAPIPetstoreConfig | | dateFormat | format string used to parse/render a date | %Y-%m-%d | %Y-%m-%d | | dateTimeFormat | format string used to parse/render a datetime. (Defaults to [formatISO8601Millis][1] when not provided) | | | +| dateTimeParseFormat | overrides the format string used to parse a datetime | | | | generateEnums | Generate specific datatypes for OpenAPI enums | true | true | | generateFormUrlEncodedInstances | Generate FromForm/ToForm instances for models used by x-www-form-urlencoded operations (model fields must be primitive types) | true | true | | generateLenses | Generate Lens optics for Models | true | true | diff --git a/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Core.hs b/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Core.hs index 6fbc9899d3..d16b93f7ed 100644 --- a/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Core.hs +++ b/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Core.hs @@ -23,7 +23,7 @@ Module : OpenAPIPetstore.Core {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeFamilies #-} -{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds #-} +{-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-} module OpenAPIPetstore.Core where diff --git a/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Model.hs b/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Model.hs index 46623d752c..10d2203f1d 100644 --- a/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Model.hs +++ b/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/Model.hs @@ -1075,6 +1075,7 @@ data FormatTest = FormatTest , formatTestDateTime :: !(Maybe DateTime) -- ^ "dateTime" , formatTestUuid :: !(Maybe Text) -- ^ "uuid" , formatTestPassword :: !(Text) -- ^ /Required/ "password" + , formatTestBigDecimal :: !(Maybe Double) -- ^ "BigDecimal" } deriving (P.Show, P.Eq, P.Typeable) -- | FromJSON FormatTest @@ -1094,6 +1095,7 @@ instance A.FromJSON FormatTest where <*> (o .:? "dateTime") <*> (o .:? "uuid") <*> (o .: "password") + <*> (o .:? "BigDecimal") -- | ToJSON FormatTest instance A.ToJSON FormatTest where @@ -1112,6 +1114,7 @@ instance A.ToJSON FormatTest where , "dateTime" .= formatTestDateTime , "uuid" .= formatTestUuid , "password" .= formatTestPassword + , "BigDecimal" .= formatTestBigDecimal ] @@ -1137,6 +1140,7 @@ mkFormatTest formatTestNumber formatTestByte formatTestDate formatTestPassword = , formatTestDateTime = Nothing , formatTestUuid = Nothing , formatTestPassword + , formatTestBigDecimal = Nothing } -- ** HasOnlyReadOnly diff --git a/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/ModelLens.hs b/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/ModelLens.hs index 5908865df5..4926ee6c83 100644 --- a/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/ModelLens.hs +++ b/samples/client/petstore/haskell-http-client/lib/OpenAPIPetstore/ModelLens.hs @@ -487,6 +487,11 @@ formatTestPasswordL :: Lens_' FormatTest (Text) formatTestPasswordL f FormatTest{..} = (\formatTestPassword -> FormatTest { formatTestPassword, ..} ) <$> f formatTestPassword {-# INLINE formatTestPasswordL #-} +-- | 'formatTestBigDecimal' Lens +formatTestBigDecimalL :: Lens_' FormatTest (Maybe Double) +formatTestBigDecimalL f FormatTest{..} = (\formatTestBigDecimal -> FormatTest { formatTestBigDecimal, ..} ) <$> f formatTestBigDecimal +{-# INLINE formatTestBigDecimalL #-} + -- * HasOnlyReadOnly diff --git a/samples/client/petstore/haskell-http-client/openapi.yaml b/samples/client/petstore/haskell-http-client/openapi.yaml index 37a46abf4f..94c46a5bb5 100644 --- a/samples/client/petstore/haskell-http-client/openapi.yaml +++ b/samples/client/petstore/haskell-http-client/openapi.yaml @@ -1491,6 +1491,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date diff --git a/samples/client/petstore/haskell-http-client/tests/Instances.hs b/samples/client/petstore/haskell-http-client/tests/Instances.hs index c4b9395d4b..3b5bf7a984 100644 --- a/samples/client/petstore/haskell-http-client/tests/Instances.hs +++ b/samples/client/petstore/haskell-http-client/tests/Instances.hs @@ -354,6 +354,7 @@ genFormatTest n = <*> arbitraryReducedMaybe n -- formatTestDateTime :: Maybe DateTime <*> arbitraryReducedMaybe n -- formatTestUuid :: Maybe Text <*> arbitrary -- formatTestPassword :: Text + <*> arbitraryReducedMaybe n -- formatTestBigDecimal :: Maybe Double instance Arbitrary HasOnlyReadOnly where arbitrary = sized genHasOnlyReadOnly diff --git a/samples/client/petstore/java/feign/build.gradle b/samples/client/petstore/java/feign/build.gradle index bd54806dd0..94d0029825 100644 --- a/samples/client/petstore/java/feign/build.gradle +++ b/samples/client/petstore/java/feign/build.gradle @@ -96,8 +96,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" threepane_version = "2.6.4" feign_version = "9.7.0" diff --git a/samples/client/petstore/java/feign/build.sbt b/samples/client/petstore/java/feign/build.sbt index f7b902d090..ea30abac90 100644 --- a/samples/client/petstore/java/feign/build.sbt +++ b/samples/client/petstore/java/feign/build.sbt @@ -14,9 +14,9 @@ lazy val root = (project in file(".")). "io.github.openfeign" % "feign-jackson" % "9.7.0" % "compile", "io.github.openfeign" % "feign-slf4j" % "9.7.0" % "compile", "io.github.openfeign.form" % "feign-form" % "2.1.0" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.9.9" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile", diff --git a/samples/client/petstore/java/feign/pom.xml b/samples/client/petstore/java/feign/pom.xml index 9e22f5a2fd..7004da8784 100644 --- a/samples/client/petstore/java/feign/pom.xml +++ b/samples/client/petstore/java/feign/pom.xml @@ -281,9 +281,9 @@ 1.5.21 9.7.0 2.1.0 - 2.9.9 + 2.9.10 0.2.0 - 2.9.9 + 2.9.10 2.6.4 4.12 1.0.0 diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java index 26dcada607..738307efaf 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/ApiClient.java @@ -5,6 +5,7 @@ import java.util.Map; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder; + import org.threeten.bp.*; import com.fasterxml.jackson.databind.DeserializationFeature; diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/EncodingUtils.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/EncodingUtils.java index 1b061a1972..c5a76a9785 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/EncodingUtils.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/EncodingUtils.java @@ -77,7 +77,7 @@ public final class EncodingUtils { return null; } try { - return URLEncoder.encode(parameter.toString(), "UTF-8"); + return URLEncoder.encode(parameter.toString(), "UTF-8").replaceAll("\\+", "%20"); } catch (UnsupportedEncodingException e) { // Should never happen, UTF-8 is always supported throw new RuntimeException(e); diff --git a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/feign/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/feign10x/build.gradle b/samples/client/petstore/java/feign10x/build.gradle index 7c9b95378f..7aaee78ff4 100644 --- a/samples/client/petstore/java/feign10x/build.gradle +++ b/samples/client/petstore/java/feign10x/build.gradle @@ -96,8 +96,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" threepane_version = "2.6.4" feign_version = "10.2.3" diff --git a/samples/client/petstore/java/feign10x/build.sbt b/samples/client/petstore/java/feign10x/build.sbt index d7f942bda8..dd361e262c 100644 --- a/samples/client/petstore/java/feign10x/build.sbt +++ b/samples/client/petstore/java/feign10x/build.sbt @@ -14,9 +14,9 @@ lazy val root = (project in file(".")). "io.github.openfeign" % "feign-jackson" % "10.2.3" % "compile", "io.github.openfeign" % "feign-slf4j" % "10.2.3" % "compile", "io.github.openfeign.form" % "feign-form" % "2.1.0" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.9.9" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile", diff --git a/samples/client/petstore/java/feign10x/pom.xml b/samples/client/petstore/java/feign10x/pom.xml index 706fb1494b..caccc26d76 100644 --- a/samples/client/petstore/java/feign10x/pom.xml +++ b/samples/client/petstore/java/feign10x/pom.xml @@ -281,9 +281,9 @@ 1.5.21 10.2.3 2.1.0 - 2.9.9 + 2.9.10 0.2.0 - 2.9.9 + 2.9.10 2.6.4 4.12 1.0.0 diff --git a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/ApiClient.java index 26dcada607..738307efaf 100644 --- a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/ApiClient.java @@ -5,6 +5,7 @@ import java.util.Map; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder; + import org.threeten.bp.*; import com.fasterxml.jackson.databind.DeserializationFeature; diff --git a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/EncodingUtils.java b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/EncodingUtils.java index 1b061a1972..c5a76a9785 100644 --- a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/EncodingUtils.java +++ b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/EncodingUtils.java @@ -77,7 +77,7 @@ public final class EncodingUtils { return null; } try { - return URLEncoder.encode(parameter.toString(), "UTF-8"); + return URLEncoder.encode(parameter.toString(), "UTF-8").replaceAll("\\+", "%20"); } catch (UnsupportedEncodingException e) { // Should never happen, UTF-8 is always supported throw new RuntimeException(e); diff --git a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/feign10x/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/google-api-client/build.gradle b/samples/client/petstore/java/google-api-client/build.gradle index 4f532e81f6..208d7a57dc 100644 --- a/samples/client/petstore/java/google-api-client/build.gradle +++ b/samples/client/petstore/java/google-api-client/build.gradle @@ -96,8 +96,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" google_api_client_version = "1.23.0" jersey_common_version = "2.25.1" diff --git a/samples/client/petstore/java/google-api-client/build.sbt b/samples/client/petstore/java/google-api-client/build.sbt index b4d7458b4b..1450018366 100644 --- a/samples/client/petstore/java/google-api-client/build.sbt +++ b/samples/client/petstore/java/google-api-client/build.sbt @@ -12,9 +12,9 @@ lazy val root = (project in file(".")). "io.swagger" % "swagger-annotations" % "1.5.22", "com.google.api-client" % "google-api-client" % "1.23.0", "org.glassfish.jersey.core" % "jersey-common" % "2.25.1", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "junit" % "junit" % "4.12" % "test", "com.novocode" % "junit-interface" % "0.10" % "test" diff --git a/samples/client/petstore/java/google-api-client/docs/FormatTest.md b/samples/client/petstore/java/google-api-client/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/google-api-client/docs/FormatTest.md +++ b/samples/client/petstore/java/google-api-client/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/google-api-client/pom.xml b/samples/client/petstore/java/google-api-client/pom.xml index 3a79427c4f..6b29ee3a8a 100644 --- a/samples/client/petstore/java/google-api-client/pom.xml +++ b/samples/client/petstore/java/google-api-client/pom.xml @@ -258,8 +258,8 @@ 1.5.22 1.30.2 2.25.1 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 2.6.4 1.0.0 diff --git a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/google-api-client/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/jersey1/docs/FormatTest.md b/samples/client/petstore/java/jersey1/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/jersey1/docs/FormatTest.md +++ b/samples/client/petstore/java/jersey1/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/jersey1/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/jersey2-java6/build.sbt b/samples/client/petstore/java/jersey2-java6/build.sbt index aa99cf8042..3e8fa65647 100644 --- a/samples/client/petstore/java/jersey2-java6/build.sbt +++ b/samples/client/petstore/java/jersey2-java6/build.sbt @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "org.glassfish.jersey.core" % "jersey-client" % "2.6", "org.glassfish.jersey.media" % "jersey-media-multipart" % "2.6", "org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.6", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "com.brsanthu" % "migbase64" % "2.2", "org.apache.commons" % "commons-lang3" % "3.6", diff --git a/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md b/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md +++ b/samples/client/petstore/java/jersey2-java6/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/jersey2-java6/pom.xml b/samples/client/petstore/java/jersey2-java6/pom.xml index aca1ee5475..a23046886f 100644 --- a/samples/client/petstore/java/jersey2-java6/pom.xml +++ b/samples/client/petstore/java/jersey2-java6/pom.xml @@ -290,8 +290,8 @@ 2.6 2.5 3.6 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 2.6.4 1.0.0 diff --git a/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/FormatTest.java index cfc1aeade6..427c603328 100644 --- a/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/jersey2-java6/src/main/java/org/openapitools/client/model/FormatTest.java @@ -43,7 +43,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -86,6 +87,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -431,6 +435,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -452,12 +482,13 @@ public class FormatTest { ObjectUtils.equals(this.date, formatTest.date) && ObjectUtils.equals(this.dateTime, formatTest.dateTime) && ObjectUtils.equals(this.uuid, formatTest.uuid) && - ObjectUtils.equals(this.password, formatTest.password); + ObjectUtils.equals(this.password, formatTest.password) && + ObjectUtils.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return ObjectUtils.hashCodeMulti(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return ObjectUtils.hashCodeMulti(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @@ -478,6 +509,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/jersey2-java8/build.gradle b/samples/client/petstore/java/jersey2-java8/build.gradle index 44284eee82..44798b9125 100644 --- a/samples/client/petstore/java/jersey2-java8/build.gradle +++ b/samples/client/petstore/java/jersey2-java8/build.gradle @@ -95,8 +95,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" jersey_version = "2.27" junit_version = "4.12" diff --git a/samples/client/petstore/java/jersey2-java8/build.sbt b/samples/client/petstore/java/jersey2-java8/build.sbt index 84bd1b57eb..8fcc9ffc1d 100644 --- a/samples/client/petstore/java/jersey2-java8/build.sbt +++ b/samples/client/petstore/java/jersey2-java8/build.sbt @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "org.glassfish.jersey.core" % "jersey-client" % "2.25.1", "org.glassfish.jersey.media" % "jersey-media-multipart" % "2.25.1", "org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.25.1", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % "2.9.9" % "compile", "junit" % "junit" % "4.12" % "test", "com.novocode" % "junit-interface" % "0.10" % "test" diff --git a/samples/client/petstore/java/jersey2-java8/docs/FormatTest.md b/samples/client/petstore/java/jersey2-java8/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/jersey2-java8/docs/FormatTest.md +++ b/samples/client/petstore/java/jersey2-java8/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/jersey2-java8/pom.xml b/samples/client/petstore/java/jersey2-java8/pom.xml index 7efb89bdfe..b81f6e210a 100644 --- a/samples/client/petstore/java/jersey2-java8/pom.xml +++ b/samples/client/petstore/java/jersey2-java8/pom.xml @@ -277,8 +277,8 @@ UTF-8 1.5.22 2.27 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 1.0.0 4.12 diff --git a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/FormatTest.java index ff59c313fc..ac8809b98d 100644 --- a/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/jersey2-java8/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/jersey2/build.gradle b/samples/client/petstore/java/jersey2/build.gradle index b848f946e5..9f9ce6cdf7 100644 --- a/samples/client/petstore/java/jersey2/build.gradle +++ b/samples/client/petstore/java/jersey2/build.gradle @@ -95,8 +95,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" jersey_version = "2.27" junit_version = "4.12" diff --git a/samples/client/petstore/java/jersey2/build.sbt b/samples/client/petstore/java/jersey2/build.sbt index a5f01ab6f0..35031940ba 100644 --- a/samples/client/petstore/java/jersey2/build.sbt +++ b/samples/client/petstore/java/jersey2/build.sbt @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "org.glassfish.jersey.core" % "jersey-client" % "2.25.1", "org.glassfish.jersey.media" % "jersey-media-multipart" % "2.25.1", "org.glassfish.jersey.media" % "jersey-media-json-jackson" % "2.25.1", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "com.brsanthu" % "migbase64" % "2.2", "junit" % "junit" % "4.12" % "test", diff --git a/samples/client/petstore/java/jersey2/docs/FormatTest.md b/samples/client/petstore/java/jersey2/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/jersey2/docs/FormatTest.md +++ b/samples/client/petstore/java/jersey2/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/jersey2/pom.xml b/samples/client/petstore/java/jersey2/pom.xml index a9997df35f..33a470f938 100644 --- a/samples/client/petstore/java/jersey2/pom.xml +++ b/samples/client/petstore/java/jersey2/pom.xml @@ -283,8 +283,8 @@ UTF-8 1.5.22 2.27 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 2.6.4 1.0.0 diff --git a/samples/client/petstore/java/jersey2/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/jersey2/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/jersey2/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/jersey2/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/native/docs/FormatTest.md b/samples/client/petstore/java/native/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/native/docs/FormatTest.md +++ b/samples/client/petstore/java/native/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/FormatTest.java index ff59c313fc..ac8809b98d 100644 --- a/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/native/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/FormatTest.java index 4064f8ee2f..7efea2c857 100644 --- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/model/FormatTest.java @@ -88,6 +88,10 @@ public class FormatTest implements Parcelable { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest() { } @@ -409,6 +413,30 @@ public class FormatTest implements Parcelable { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -430,12 +458,13 @@ public class FormatTest implements Parcelable { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -456,6 +485,7 @@ public class FormatTest implements Parcelable { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } @@ -486,6 +516,7 @@ public class FormatTest implements Parcelable { out.writeValue(dateTime); out.writeValue(uuid); out.writeValue(password); + out.writeValue(bigDecimal); } FormatTest(Parcel in) { @@ -502,6 +533,7 @@ public class FormatTest implements Parcelable { dateTime = (OffsetDateTime)in.readValue(OffsetDateTime.class.getClassLoader()); uuid = (UUID)in.readValue(UUID.class.getClassLoader()); password = (String)in.readValue(null); + bigDecimal = (BigDecimal)in.readValue(BigDecimal.class.getClassLoader()); } public int describeContents() { diff --git a/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md b/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md +++ b/samples/client/petstore/java/okhttp-gson/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/FormatTest.java index 36fe589768..b1ad2d012f 100644 --- a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/model/FormatTest.java @@ -86,6 +86,10 @@ public class FormatTest { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -405,6 +409,30 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -426,12 +454,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -452,6 +481,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/rest-assured/docs/FormatTest.md b/samples/client/petstore/java/rest-assured/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/rest-assured/docs/FormatTest.md +++ b/samples/client/petstore/java/rest-assured/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/FormatTest.java index 36fe589768..b1ad2d012f 100644 --- a/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/rest-assured/src/main/java/org/openapitools/client/model/FormatTest.java @@ -86,6 +86,10 @@ public class FormatTest { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -405,6 +409,30 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -426,12 +454,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -452,6 +481,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/resteasy/build.gradle b/samples/client/petstore/java/resteasy/build.gradle index 7b20123a77..0fa0a028d2 100644 --- a/samples/client/petstore/java/resteasy/build.gradle +++ b/samples/client/petstore/java/resteasy/build.gradle @@ -95,8 +95,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" threetenbp_version = "2.6.4" resteasy_version = "3.1.3.Final" diff --git a/samples/client/petstore/java/resteasy/build.sbt b/samples/client/petstore/java/resteasy/build.sbt index 9b2cf7539f..7b4207991b 100644 --- a/samples/client/petstore/java/resteasy/build.sbt +++ b/samples/client/petstore/java/resteasy/build.sbt @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "org.jboss.resteasy" % "resteasy-client" % "3.1.3.Final" % "compile", "org.jboss.resteasy" % "resteasy-multipart-provider" % "3.1.3.Final" % "compile", "org.jboss.resteasy" % "resteasy-jackson2-provider" % "3.1.3.Final" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.github.joschi.jackson" % "jackson-datatype-threetenbp" % "2.6.4" % "compile", "com.fasterxml.jackson.datatype" % "jackson-datatype-joda" % "2.9.9" % "compile", "joda-time" % "joda-time" % "2.9.9" % "compile", diff --git a/samples/client/petstore/java/resteasy/docs/FormatTest.md b/samples/client/petstore/java/resteasy/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/resteasy/docs/FormatTest.md +++ b/samples/client/petstore/java/resteasy/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/resteasy/pom.xml b/samples/client/petstore/java/resteasy/pom.xml index 0ef6c55d6f..829d0971d3 100644 --- a/samples/client/petstore/java/resteasy/pom.xml +++ b/samples/client/petstore/java/resteasy/pom.xml @@ -243,8 +243,8 @@ UTF-8 1.5.22 3.1.3.Final - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 2.6.4 2.9.9 diff --git a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/resteasy/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/resttemplate-withXml/build.gradle b/samples/client/petstore/java/resttemplate-withXml/build.gradle index c9ea3c3ea7..6345e3b0f2 100644 --- a/samples/client/petstore/java/resttemplate-withXml/build.gradle +++ b/samples/client/petstore/java/resttemplate-withXml/build.gradle @@ -96,8 +96,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" spring_web_version = "4.3.9.RELEASE" jodatime_version = "2.9.9" diff --git a/samples/client/petstore/java/resttemplate-withXml/docs/FormatTest.md b/samples/client/petstore/java/resttemplate-withXml/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/resttemplate-withXml/docs/FormatTest.md +++ b/samples/client/petstore/java/resttemplate-withXml/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/FormatTest.java index 6f26a929b9..ecd05624e4 100644 --- a/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/resttemplate-withXml/src/main/java/org/openapitools/client/model/FormatTest.java @@ -46,7 +46,8 @@ import javax.xml.bind.annotation.*; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) @XmlRootElement(name = "FormatTest") @@ -105,6 +106,10 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + @XmlElement(name = "BigDecimal") + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -463,6 +468,33 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JacksonXmlProperty(localName = "BigDecimal") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -484,12 +516,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -510,6 +543,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/resttemplate/build.gradle b/samples/client/petstore/java/resttemplate/build.gradle index 4b2417df93..6081aaded2 100644 --- a/samples/client/petstore/java/resttemplate/build.gradle +++ b/samples/client/petstore/java/resttemplate/build.gradle @@ -96,8 +96,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" spring_web_version = "4.3.9.RELEASE" jodatime_version = "2.9.9" diff --git a/samples/client/petstore/java/resttemplate/docs/FormatTest.md b/samples/client/petstore/java/resttemplate/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/resttemplate/docs/FormatTest.md +++ b/samples/client/petstore/java/resttemplate/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/FormatTest.java index 4c62aed528..aec1767bf9 100644 --- a/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/resttemplate/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/ApiClient.java index d9f86ceab7..c1184d7d71 100644 --- a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/ApiClient.java +++ b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/ApiClient.java @@ -9,6 +9,7 @@ import java.util.Map; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.AuthenticationRequestBuilder; import org.apache.oltu.oauth2.client.request.OAuthClientRequest.TokenRequestBuilder; + import org.joda.time.DateTime; import org.joda.time.LocalDate; import org.joda.time.format.DateTimeFormatter; diff --git a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/FormatTest.java index 271e7db17b..9391fe2efa 100644 --- a/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit/src/main/java/org/openapitools/client/model/FormatTest.java @@ -86,6 +86,10 @@ public class FormatTest { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -405,6 +409,30 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -426,12 +454,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -452,6 +481,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md b/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md +++ b/samples/client/petstore/java/retrofit2-play24/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/retrofit2-play24/pom.xml b/samples/client/petstore/java/retrofit2-play24/pom.xml index 66b92273ea..329612aa19 100644 --- a/samples/client/petstore/java/retrofit2-play24/pom.xml +++ b/samples/client/petstore/java/retrofit2-play24/pom.xml @@ -279,7 +279,7 @@ ${java.version} 1.8.3 1.5.22 - 2.9.9 + 2.9.10 2.6.6 2.4.11 0.2.0 diff --git a/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/FormatTest.java index 4b4c4b0f7a..097e3b816e 100644 --- a/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit2-play24/src/main/java/org/openapitools/client/model/FormatTest.java @@ -46,7 +46,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -89,6 +90,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -443,6 +447,33 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @Valid + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -464,12 +495,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -490,6 +522,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit2-play25/build.gradle b/samples/client/petstore/java/retrofit2-play25/build.gradle index 7fbd367c8d..6070a72336 100644 --- a/samples/client/petstore/java/retrofit2-play25/build.gradle +++ b/samples/client/petstore/java/retrofit2-play25/build.gradle @@ -97,7 +97,7 @@ if(hasProperty('target') && target == 'android') { ext { oltu_version = "1.0.1" retrofit_version = "2.3.0" - jackson_version = "2.9.9" + jackson_version = "2.9.10" play_version = "2.5.14" swagger_annotations_version = "1.5.22" junit_version = "4.12" diff --git a/samples/client/petstore/java/retrofit2-play25/build.sbt b/samples/client/petstore/java/retrofit2-play25/build.sbt index e0ba78560f..0dd2611317 100644 --- a/samples/client/petstore/java/retrofit2-play25/build.sbt +++ b/samples/client/petstore/java/retrofit2-play25/build.sbt @@ -12,9 +12,9 @@ lazy val root = (project in file(".")). "com.squareup.retrofit2" % "retrofit" % "2.3.0" % "compile", "com.squareup.retrofit2" % "converter-scalars" % "2.3.0" % "compile", "com.typesafe.play" % "play-java-ws_2.11" % "2.5.15" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.squareup.retrofit2" % "converter-jackson" % "2.3.0" % "compile", "io.swagger" % "swagger-annotations" % "1.5.21" % "compile", "org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile", diff --git a/samples/client/petstore/java/retrofit2-play25/docs/FormatTest.md b/samples/client/petstore/java/retrofit2-play25/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/retrofit2-play25/docs/FormatTest.md +++ b/samples/client/petstore/java/retrofit2-play25/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/retrofit2-play25/pom.xml b/samples/client/petstore/java/retrofit2-play25/pom.xml index 1ee0ac8e91..7c072f8bd5 100644 --- a/samples/client/petstore/java/retrofit2-play25/pom.xml +++ b/samples/client/petstore/java/retrofit2-play25/pom.xml @@ -284,8 +284,8 @@ ${java.version} 1.8.3 1.5.22 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 2.5.15 0.2.0 2.5.0 diff --git a/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/FormatTest.java index f91b09215d..7f75bcaa10 100644 --- a/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit2-play25/src/main/java/org/openapitools/client/model/FormatTest.java @@ -46,7 +46,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -89,6 +90,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -443,6 +447,33 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @Valid + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -464,12 +495,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -490,6 +522,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit2-play26/build.gradle b/samples/client/petstore/java/retrofit2-play26/build.gradle index 8a38e09d7f..5a8bdb5e05 100644 --- a/samples/client/petstore/java/retrofit2-play26/build.gradle +++ b/samples/client/petstore/java/retrofit2-play26/build.gradle @@ -97,8 +97,8 @@ if(hasProperty('target') && target == 'android') { ext { oltu_version = "1.0.1" retrofit_version = "2.3.0" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" play_version = "2.6.7" swagger_annotations_version = "1.5.22" diff --git a/samples/client/petstore/java/retrofit2-play26/build.sbt b/samples/client/petstore/java/retrofit2-play26/build.sbt index 700e77c21d..545688cf09 100644 --- a/samples/client/petstore/java/retrofit2-play26/build.sbt +++ b/samples/client/petstore/java/retrofit2-play26/build.sbt @@ -13,9 +13,9 @@ lazy val root = (project in file(".")). "com.squareup.retrofit2" % "converter-scalars" % "2.3.0" % "compile", "com.typesafe.play" % "play-ahc-ws_2.12" % "2.6.7" % "compile", "javax.validation" % "validation-api" % "1.1.0.Final" % "compile", - "com.fasterxml.jackson.core" % "jackson-core" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.9" % "compile", - "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.9" % "compile", + "com.fasterxml.jackson.core" % "jackson-core" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-annotations" % "2.9.10" % "compile", + "com.fasterxml.jackson.core" % "jackson-databind" % "2.9.10" % "compile", "com.squareup.retrofit2" % "converter-jackson" % "2.3.0" % "compile", "io.swagger" % "swagger-annotations" % "1.5.21" % "compile", "org.apache.oltu.oauth2" % "org.apache.oltu.oauth2.client" % "1.0.1" % "compile", diff --git a/samples/client/petstore/java/retrofit2-play26/docs/FormatTest.md b/samples/client/petstore/java/retrofit2-play26/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/retrofit2-play26/docs/FormatTest.md +++ b/samples/client/petstore/java/retrofit2-play26/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/retrofit2-play26/pom.xml b/samples/client/petstore/java/retrofit2-play26/pom.xml index 81b82bc270..5ba1a7f38a 100644 --- a/samples/client/petstore/java/retrofit2-play26/pom.xml +++ b/samples/client/petstore/java/retrofit2-play26/pom.xml @@ -289,8 +289,8 @@ ${java.version} 1.8.3 1.5.22 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 2.6.7 0.2.0 2.5.0 diff --git a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/FormatTest.java index f91b09215d..7f75bcaa10 100644 --- a/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit2-play26/src/main/java/org/openapitools/client/model/FormatTest.java @@ -46,7 +46,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -89,6 +90,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -443,6 +447,33 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @Valid + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -464,12 +495,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -490,6 +522,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit2/docs/FormatTest.md b/samples/client/petstore/java/retrofit2/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/retrofit2/docs/FormatTest.md +++ b/samples/client/petstore/java/retrofit2/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/FormatTest.java index 36fe589768..b1ad2d012f 100644 --- a/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit2/src/main/java/org/openapitools/client/model/FormatTest.java @@ -86,6 +86,10 @@ public class FormatTest { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -405,6 +409,30 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -426,12 +454,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -452,6 +481,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md b/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md +++ b/samples/client/petstore/java/retrofit2rx/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/FormatTest.java index 36fe589768..b1ad2d012f 100644 --- a/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit2rx/src/main/java/org/openapitools/client/model/FormatTest.java @@ -86,6 +86,10 @@ public class FormatTest { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -405,6 +409,30 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -426,12 +454,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -452,6 +481,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md b/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md +++ b/samples/client/petstore/java/retrofit2rx2/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/FormatTest.java index 36fe589768..b1ad2d012f 100644 --- a/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/retrofit2rx2/src/main/java/org/openapitools/client/model/FormatTest.java @@ -86,6 +86,10 @@ public class FormatTest { @SerializedName(SERIALIZED_NAME_PASSWORD) private String password; + public static final String SERIALIZED_NAME_BIG_DECIMAL = "BigDecimal"; + @SerializedName(SERIALIZED_NAME_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -405,6 +409,30 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -426,12 +454,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -452,6 +481,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/vertx/build.gradle b/samples/client/petstore/java/vertx/build.gradle index 78e71edb30..1d51eb1193 100644 --- a/samples/client/petstore/java/vertx/build.gradle +++ b/samples/client/petstore/java/vertx/build.gradle @@ -28,8 +28,8 @@ task execute(type:JavaExec) { ext { swagger_annotations_version = "1.5.21" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" vertx_version = "3.4.2" junit_version = "4.12" } diff --git a/samples/client/petstore/java/vertx/docs/FormatTest.md b/samples/client/petstore/java/vertx/docs/FormatTest.md index 662db0083b..ebaefd90fc 100644 --- a/samples/client/petstore/java/vertx/docs/FormatTest.md +++ b/samples/client/petstore/java/vertx/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/vertx/pom.xml b/samples/client/petstore/java/vertx/pom.xml index 4602e4c891..54e985acc8 100644 --- a/samples/client/petstore/java/vertx/pom.xml +++ b/samples/client/petstore/java/vertx/pom.xml @@ -266,8 +266,8 @@ UTF-8 3.4.2 1.5.22 - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 4.12 diff --git a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/FormatTest.java index ee9a727196..a527825f12 100644 --- a/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/vertx/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/java/webclient/build.gradle b/samples/client/petstore/java/webclient/build.gradle index 2b51c08597..1637b07938 100644 --- a/samples/client/petstore/java/webclient/build.gradle +++ b/samples/client/petstore/java/webclient/build.gradle @@ -112,8 +112,8 @@ if(hasProperty('target') && target == 'android') { ext { swagger_annotations_version = "1.5.22" - jackson_version = "2.9.9" - jackson_databind_version = "2.9.9" + jackson_version = "2.9.10" + jackson_databind_version = "2.9.10" jackson-databind-nullable-version = "0.2.0" jersey_version = "1.19.4" jodatime_version = "2.9.9" diff --git a/samples/client/petstore/java/webclient/docs/FormatTest.md b/samples/client/petstore/java/webclient/docs/FormatTest.md index 29f68d18ec..d138e92190 100644 --- a/samples/client/petstore/java/webclient/docs/FormatTest.md +++ b/samples/client/petstore/java/webclient/docs/FormatTest.md @@ -19,6 +19,7 @@ Name | Type | Description | Notes **dateTime** | [**OffsetDateTime**](OffsetDateTime.md) | | [optional] **uuid** | [**UUID**](UUID.md) | | [optional] **password** | **String** | | +**bigDecimal** | [**BigDecimal**](BigDecimal.md) | | [optional] diff --git a/samples/client/petstore/java/webclient/pom.xml b/samples/client/petstore/java/webclient/pom.xml index 0171470141..d200a8d95e 100644 --- a/samples/client/petstore/java/webclient/pom.xml +++ b/samples/client/petstore/java/webclient/pom.xml @@ -122,8 +122,8 @@ UTF-8 1.5.22 5.0.7.RELEASE - 2.9.9 - 2.9.9 + 2.9.10 + 2.9.10 0.2.0 4.12 3.1.8.RELEASE diff --git a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/FormatTest.java b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/FormatTest.java index ff59c313fc..ac8809b98d 100644 --- a/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/FormatTest.java +++ b/samples/client/petstore/java/webclient/src/main/java/org/openapitools/client/model/FormatTest.java @@ -44,7 +44,8 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -87,6 +88,9 @@ public class FormatTest { public static final String JSON_PROPERTY_PASSWORD = "password"; private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { @@ -432,6 +436,32 @@ public class FormatTest { } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @javax.annotation.Nullable + @ApiModelProperty(value = "") + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -453,12 +483,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, Arrays.hashCode(_byte), binary, date, dateTime, uuid, password, bigDecimal); } @@ -479,6 +510,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/client/petstore/javascript-es6/docs/FormatTest.md b/samples/client/petstore/javascript-es6/docs/FormatTest.md index 89fa3054a2..d0df4b552e 100644 --- a/samples/client/petstore/javascript-es6/docs/FormatTest.md +++ b/samples/client/petstore/javascript-es6/docs/FormatTest.md @@ -17,5 +17,6 @@ Name | Type | Description | Notes **dateTime** | **Date** | | [optional] **uuid** | **String** | | [optional] **password** | **String** | | +**bigDecimal** | **Number** | | [optional] diff --git a/samples/client/petstore/javascript-es6/src/model/FormatTest.js b/samples/client/petstore/javascript-es6/src/model/FormatTest.js index 87aad136e1..978d4d3a80 100644 --- a/samples/client/petstore/javascript-es6/src/model/FormatTest.js +++ b/samples/client/petstore/javascript-es6/src/model/FormatTest.js @@ -94,6 +94,9 @@ class FormatTest { if (data.hasOwnProperty('password')) { obj['password'] = ApiClient.convertToType(data['password'], 'String'); } + if (data.hasOwnProperty('BigDecimal')) { + obj['BigDecimal'] = ApiClient.convertToType(data['BigDecimal'], 'Number'); + } } return obj; } @@ -166,6 +169,11 @@ FormatTest.prototype['uuid'] = undefined; */ FormatTest.prototype['password'] = undefined; +/** + * @member {Number} BigDecimal + */ +FormatTest.prototype['BigDecimal'] = undefined; + diff --git a/samples/client/petstore/javascript-promise-es6/docs/FormatTest.md b/samples/client/petstore/javascript-promise-es6/docs/FormatTest.md index 89fa3054a2..d0df4b552e 100644 --- a/samples/client/petstore/javascript-promise-es6/docs/FormatTest.md +++ b/samples/client/petstore/javascript-promise-es6/docs/FormatTest.md @@ -17,5 +17,6 @@ Name | Type | Description | Notes **dateTime** | **Date** | | [optional] **uuid** | **String** | | [optional] **password** | **String** | | +**bigDecimal** | **Number** | | [optional] diff --git a/samples/client/petstore/javascript-promise-es6/src/model/FormatTest.js b/samples/client/petstore/javascript-promise-es6/src/model/FormatTest.js index 87aad136e1..978d4d3a80 100644 --- a/samples/client/petstore/javascript-promise-es6/src/model/FormatTest.js +++ b/samples/client/petstore/javascript-promise-es6/src/model/FormatTest.js @@ -94,6 +94,9 @@ class FormatTest { if (data.hasOwnProperty('password')) { obj['password'] = ApiClient.convertToType(data['password'], 'String'); } + if (data.hasOwnProperty('BigDecimal')) { + obj['BigDecimal'] = ApiClient.convertToType(data['BigDecimal'], 'Number'); + } } return obj; } @@ -166,6 +169,11 @@ FormatTest.prototype['uuid'] = undefined; */ FormatTest.prototype['password'] = undefined; +/** + * @member {Number} BigDecimal + */ +FormatTest.prototype['BigDecimal'] = undefined; + diff --git a/samples/client/petstore/javascript-promise/docs/FormatTest.md b/samples/client/petstore/javascript-promise/docs/FormatTest.md index 89fa3054a2..d0df4b552e 100644 --- a/samples/client/petstore/javascript-promise/docs/FormatTest.md +++ b/samples/client/petstore/javascript-promise/docs/FormatTest.md @@ -17,5 +17,6 @@ Name | Type | Description | Notes **dateTime** | **Date** | | [optional] **uuid** | **String** | | [optional] **password** | **String** | | +**bigDecimal** | **Number** | | [optional] diff --git a/samples/client/petstore/javascript-promise/src/model/FormatTest.js b/samples/client/petstore/javascript-promise/src/model/FormatTest.js index 5c0304d6d4..9462fa5684 100644 --- a/samples/client/petstore/javascript-promise/src/model/FormatTest.js +++ b/samples/client/petstore/javascript-promise/src/model/FormatTest.js @@ -105,6 +105,9 @@ if (data.hasOwnProperty('password')) { obj['password'] = ApiClient.convertToType(data['password'], 'String'); } + if (data.hasOwnProperty('BigDecimal')) { + obj['BigDecimal'] = ApiClient.convertToType(data['BigDecimal'], 'Number'); + } } return obj; } @@ -161,6 +164,10 @@ * @member {String} password */ exports.prototype['password'] = undefined; + /** + * @member {Number} BigDecimal + */ + exports.prototype['BigDecimal'] = undefined; diff --git a/samples/client/petstore/javascript/docs/FormatTest.md b/samples/client/petstore/javascript/docs/FormatTest.md index 89fa3054a2..d0df4b552e 100644 --- a/samples/client/petstore/javascript/docs/FormatTest.md +++ b/samples/client/petstore/javascript/docs/FormatTest.md @@ -17,5 +17,6 @@ Name | Type | Description | Notes **dateTime** | **Date** | | [optional] **uuid** | **String** | | [optional] **password** | **String** | | +**bigDecimal** | **Number** | | [optional] diff --git a/samples/client/petstore/javascript/src/model/FormatTest.js b/samples/client/petstore/javascript/src/model/FormatTest.js index 5c0304d6d4..9462fa5684 100644 --- a/samples/client/petstore/javascript/src/model/FormatTest.js +++ b/samples/client/petstore/javascript/src/model/FormatTest.js @@ -105,6 +105,9 @@ if (data.hasOwnProperty('password')) { obj['password'] = ApiClient.convertToType(data['password'], 'String'); } + if (data.hasOwnProperty('BigDecimal')) { + obj['BigDecimal'] = ApiClient.convertToType(data['BigDecimal'], 'Number'); + } } return obj; } @@ -161,6 +164,10 @@ * @member {String} password */ exports.prototype['password'] = undefined; + /** + * @member {Number} BigDecimal + */ + exports.prototype['BigDecimal'] = undefined; diff --git a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/ApiResponse.kt index 51ab6ed939..3f05f17779 100644 --- a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/ApiResponse.kt +++ b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/ApiResponse.kt @@ -25,5 +25,7 @@ data class ApiResponse ( @SerialName(value = "code") val code: kotlin.Int? = null, @SerialName(value = "type") val type: kotlin.String? = null, @SerialName(value = "message") val message: kotlin.String? = null -) +) + + diff --git a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Category.kt index 96432c658a..eff7d12a4a 100644 --- a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Category.kt +++ b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Category.kt @@ -23,5 +23,7 @@ import kotlinx.serialization.internal.CommonEnumSerializer data class Category ( @SerialName(value = "id") val id: kotlin.Long? = null, @SerialName(value = "name") val name: kotlin.String? = null -) +) + + diff --git a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Order.kt index e949395ce4..76b9cf068e 100644 --- a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Order.kt +++ b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Order.kt @@ -32,7 +32,9 @@ data class Order ( /* Order Status */ @SerialName(value = "status") val status: Order.Status? = null, @SerialName(value = "complete") val complete: kotlin.Boolean? = null -) +) + + { /** diff --git a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Pet.kt index dc2f8b0b0e..145683fe57 100644 --- a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Pet.kt +++ b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Pet.kt @@ -34,7 +34,9 @@ data class Pet ( @SerialName(value = "tags") val tags: kotlin.Array? = null, /* pet status in the store */ @SerialName(value = "status") val status: Pet.Status? = null -) +) + + { /** diff --git a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Tag.kt index b21e51bf8d..6c5ce642e7 100644 --- a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Tag.kt +++ b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/Tag.kt @@ -23,5 +23,7 @@ import kotlinx.serialization.internal.CommonEnumSerializer data class Tag ( @SerialName(value = "id") val id: kotlin.Long? = null, @SerialName(value = "name") val name: kotlin.String? = null -) +) + + diff --git a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/User.kt index 7d52e737d4..dd092dfd70 100644 --- a/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/User.kt +++ b/samples/client/petstore/kotlin-multiplatform/src/commonMain/kotlin/org/openapitools/client/models/User.kt @@ -36,5 +36,7 @@ data class User ( @SerialName(value = "phone") val phone: kotlin.String? = null, /* User Status */ @SerialName(value = "userStatus") val userStatus: kotlin.Int? = null -) +) + + diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt index ada15fee7a..6d5c231ccc 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Describes the result of uploading an image resource * @param code @@ -27,5 +28,7 @@ data class ApiResponse ( val type: kotlin.String? = null, @Json(name = "message") val message: kotlin.String? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Category.kt index 426a0e5159..1fe92af826 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Category.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Category.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * A category for a pet * @param id @@ -24,5 +25,7 @@ data class Category ( val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Order.kt index 38be465c02..81cc2b0940 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Order.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Order.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * An order for a pets from the pet store * @param id @@ -37,7 +38,9 @@ data class Order ( val status: Order.Status? = null, @Json(name = "complete") val complete: kotlin.Boolean? = null -) +) +: Serializable + { /** diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Pet.kt index d870b69e5e..3b4dfc22ab 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Pet.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Pet.kt @@ -15,6 +15,7 @@ import org.openapitools.client.models.Category import org.openapitools.client.models.Tag import com.squareup.moshi.Json +import java.io.Serializable /** * A pet for sale in the pet store * @param id @@ -39,7 +40,9 @@ data class Pet ( /* pet status in the store */ @Json(name = "status") val status: Pet.Status? = null -) +) +: Serializable + { /** diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Tag.kt index f9ef87e13f..1d97954c46 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Tag.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/Tag.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * A tag for a pet * @param id @@ -24,5 +25,7 @@ data class Tag ( val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/User.kt index dfd63806da..df835a5d96 100644 --- a/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/User.kt +++ b/samples/client/petstore/kotlin-string/src/main/kotlin/org/openapitools/client/models/User.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * A User who is purchasing from the pet store * @param id @@ -43,5 +44,7 @@ data class User ( /* User Status */ @Json(name = "userStatus") val userStatus: kotlin.Int? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt index ada15fee7a..47766821f1 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt @@ -27,5 +27,7 @@ data class ApiResponse ( val type: kotlin.String? = null, @Json(name = "message") val message: kotlin.String? = null -) +) + + diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Category.kt index 426a0e5159..edb16cc127 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Category.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Category.kt @@ -24,5 +24,7 @@ data class Category ( val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) + + diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Order.kt index abf5219de3..af6dcb4560 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Order.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Order.kt @@ -37,7 +37,9 @@ data class Order ( val status: Order.Status? = null, @Json(name = "complete") val complete: kotlin.Boolean? = null -) +) + + { /** diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Pet.kt index d870b69e5e..8015b6dab7 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Pet.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Pet.kt @@ -39,7 +39,9 @@ data class Pet ( /* pet status in the store */ @Json(name = "status") val status: Pet.Status? = null -) +) + + { /** diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Tag.kt index f9ef87e13f..05dc7c9afe 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Tag.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/Tag.kt @@ -24,5 +24,7 @@ data class Tag ( val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) + + diff --git a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/User.kt index dfd63806da..537b01d3c2 100644 --- a/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/User.kt +++ b/samples/client/petstore/kotlin-threetenbp/src/main/kotlin/org/openapitools/client/models/User.kt @@ -43,5 +43,7 @@ data class User ( /* User Status */ @Json(name = "userStatus") val userStatus: kotlin.Int? = null -) +) + + diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt index ada15fee7a..6d5c231ccc 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Describes the result of uploading an image resource * @param code @@ -27,5 +28,7 @@ data class ApiResponse ( val type: kotlin.String? = null, @Json(name = "message") val message: kotlin.String? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt index 426a0e5159..1fe92af826 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * A category for a pet * @param id @@ -24,5 +25,7 @@ data class Category ( val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt index 2e9074a650..a5478a6162 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * An order for a pets from the pet store * @param id @@ -37,7 +38,9 @@ data class Order ( val status: Order.Status? = null, @Json(name = "complete") val complete: kotlin.Boolean? = null -) +) +: Serializable + { /** diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt index d870b69e5e..3b4dfc22ab 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt @@ -15,6 +15,7 @@ import org.openapitools.client.models.Category import org.openapitools.client.models.Tag import com.squareup.moshi.Json +import java.io.Serializable /** * A pet for sale in the pet store * @param id @@ -39,7 +40,9 @@ data class Pet ( /* pet status in the store */ @Json(name = "status") val status: Pet.Status? = null -) +) +: Serializable + { /** diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt index f9ef87e13f..1d97954c46 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * A tag for a pet * @param id @@ -24,5 +25,7 @@ data class Tag ( val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) +: Serializable + diff --git a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt index dfd63806da..df835a5d96 100644 --- a/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt +++ b/samples/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * A User who is purchasing from the pet store * @param id @@ -43,5 +44,7 @@ data class User ( /* User Status */ @Json(name = "userStatus") val userStatus: kotlin.Int? = null -) +) +: Serializable + diff --git a/samples/client/petstore/perl/docs/FormatTest.md b/samples/client/petstore/perl/docs/FormatTest.md index 3a1bf2c21f..f58434c19f 100644 --- a/samples/client/petstore/perl/docs/FormatTest.md +++ b/samples/client/petstore/perl/docs/FormatTest.md @@ -21,6 +21,7 @@ Name | Type | Description | Notes **date_time** | **DateTime** | | [optional] **uuid** | **string** | | [optional] **password** | **string** | | +**big_decimal** | [**BigDecimal**](BigDecimal.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/perl/lib/WWW/OpenAPIClient/Object/FormatTest.pm b/samples/client/petstore/perl/lib/WWW/OpenAPIClient/Object/FormatTest.pm index 3a077d8fc9..64c9226837 100644 --- a/samples/client/petstore/perl/lib/WWW/OpenAPIClient/Object/FormatTest.pm +++ b/samples/client/petstore/perl/lib/WWW/OpenAPIClient/Object/FormatTest.pm @@ -30,6 +30,7 @@ use Log::Any qw($log); use Date::Parse; use DateTime; +use WWW::OpenAPIClient::Object::BigDecimal; use base ("Class::Accessor", "Class::Data::Inheritable"); @@ -252,6 +253,13 @@ __PACKAGE__->method_documentation({ format => '', read_only => '', }, + 'big_decimal' => { + datatype => 'BigDecimal', + base_name => 'BigDecimal', + description => '', + format => '', + read_only => '', + }, }); __PACKAGE__->openapi_types( { @@ -267,7 +275,8 @@ __PACKAGE__->openapi_types( { 'date' => 'DateTime', 'date_time' => 'DateTime', 'uuid' => 'string', - 'password' => 'string' + 'password' => 'string', + 'big_decimal' => 'BigDecimal' } ); __PACKAGE__->attribute_map( { @@ -283,7 +292,8 @@ __PACKAGE__->attribute_map( { 'date' => 'date', 'date_time' => 'dateTime', 'uuid' => 'uuid', - 'password' => 'password' + 'password' => 'password', + 'big_decimal' => 'BigDecimal' } ); __PACKAGE__->mk_accessors(keys %{__PACKAGE__->attribute_map}); diff --git a/samples/client/petstore/php/OpenAPIClient-php/docs/Model/FormatTest.md b/samples/client/petstore/php/OpenAPIClient-php/docs/Model/FormatTest.md index 0a033f4bc4..263f5b985c 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/docs/Model/FormatTest.md +++ b/samples/client/petstore/php/OpenAPIClient-php/docs/Model/FormatTest.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **date_time** | [**\DateTime**](\DateTime.md) | | [optional] **uuid** | **string** | | [optional] **password** | **string** | | +**big_decimal** | [**BigDecimal**](BigDecimal.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/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesAnyType.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesAnyType.php index cd3ffebf82..4064989ece 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesAnyType.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesAnyType.php @@ -292,6 +292,16 @@ class AdditionalPropertiesAnyType implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesArray.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesArray.php index 5fbff73798..7eb1d0ca46 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesArray.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesArray.php @@ -292,6 +292,16 @@ class AdditionalPropertiesArray implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesBoolean.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesBoolean.php index 0aae2a4433..560ef5b7ee 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesBoolean.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesBoolean.php @@ -292,6 +292,16 @@ class AdditionalPropertiesBoolean implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php index e8371d2199..289de7780c 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php @@ -592,6 +592,16 @@ class AdditionalPropertiesClass implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesInteger.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesInteger.php index bb2a810a14..f4e97f133b 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesInteger.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesInteger.php @@ -292,6 +292,16 @@ class AdditionalPropertiesInteger implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesNumber.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesNumber.php index b857eb5693..35b86ad99a 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesNumber.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesNumber.php @@ -292,6 +292,16 @@ class AdditionalPropertiesNumber implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesObject.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesObject.php index 841e9b95c0..b0ed9bd666 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesObject.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesObject.php @@ -292,6 +292,16 @@ class AdditionalPropertiesObject implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesString.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesString.php index 678a69ed1b..3af0db1f65 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesString.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesString.php @@ -292,6 +292,16 @@ class AdditionalPropertiesString implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php index ec4e8cbe34..a60571f1cc 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php @@ -328,6 +328,16 @@ class Animal implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php index 47c25f4415..6fff9f9412 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php @@ -352,6 +352,16 @@ class ApiResponse implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php index bf3eedd820..9bb81740fa 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php @@ -292,6 +292,16 @@ class ArrayOfArrayOfNumberOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php index 3b9dae89a9..c6749189cd 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php @@ -292,6 +292,16 @@ class ArrayOfNumberOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php index 2ca2e7603a..cc56a6f248 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php @@ -352,6 +352,16 @@ class ArrayTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php index 8cf2780071..1c611849e2 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php @@ -442,6 +442,16 @@ class Capitalization implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php index f8e9796bea..aeb7e8d98d 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php @@ -286,6 +286,16 @@ class Cat extends Animal JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php index 341ea6af9e..c10f1d6841 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php @@ -292,6 +292,16 @@ class CatAllOf implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php index 1d5575e0b2..0b13019e9f 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php @@ -325,6 +325,16 @@ class Category implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php index cffb5ef289..8806d58238 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php @@ -293,6 +293,16 @@ class ClassModel implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php index 7abdfe35ee..c5f0689cf4 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php @@ -292,6 +292,16 @@ class Client implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php index fe9f05b1c8..d565da78df 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php @@ -286,6 +286,16 @@ class Dog extends Animal JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php index 4430283209..3e2b09eb7b 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php @@ -292,6 +292,16 @@ class DogAllOf implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php index 722dcd9f30..41789295f1 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php @@ -378,6 +378,16 @@ class EnumArrays implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php index 4ec5b633c1..69919acf34 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php @@ -547,6 +547,16 @@ class EnumTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/File.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/File.php index 0d7e229a88..f6d2710001 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/File.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/File.php @@ -293,6 +293,16 @@ class File implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php index d199354f73..5f024e46a2 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php @@ -322,6 +322,16 @@ class FileSchemaTestClass implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php index d677f76669..c07ee193cf 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php @@ -69,7 +69,8 @@ class FormatTest implements ModelInterface, ArrayAccess 'date' => '\DateTime', 'date_time' => '\DateTime', 'uuid' => 'string', - 'password' => 'string' + 'password' => 'string', + 'big_decimal' => 'BigDecimal' ]; /** @@ -90,7 +91,8 @@ class FormatTest implements ModelInterface, ArrayAccess 'date' => 'date', 'date_time' => 'date-time', 'uuid' => 'uuid', - 'password' => 'password' + 'password' => 'password', + 'big_decimal' => 'number' ]; /** @@ -132,7 +134,8 @@ class FormatTest implements ModelInterface, ArrayAccess 'date' => 'date', 'date_time' => 'dateTime', 'uuid' => 'uuid', - 'password' => 'password' + 'password' => 'password', + 'big_decimal' => 'BigDecimal' ]; /** @@ -153,7 +156,8 @@ class FormatTest implements ModelInterface, ArrayAccess 'date' => 'setDate', 'date_time' => 'setDateTime', 'uuid' => 'setUuid', - 'password' => 'setPassword' + 'password' => 'setPassword', + 'big_decimal' => 'setBigDecimal' ]; /** @@ -174,7 +178,8 @@ class FormatTest implements ModelInterface, ArrayAccess 'date' => 'getDate', 'date_time' => 'getDateTime', 'uuid' => 'getUuid', - 'password' => 'getPassword' + 'password' => 'getPassword', + 'big_decimal' => 'getBigDecimal' ]; /** @@ -250,6 +255,7 @@ class FormatTest implements ModelInterface, ArrayAccess $this->container['date_time'] = isset($data['date_time']) ? $data['date_time'] : null; $this->container['uuid'] = isset($data['uuid']) ? $data['uuid'] : null; $this->container['password'] = isset($data['password']) ? $data['password'] : null; + $this->container['big_decimal'] = isset($data['big_decimal']) ? $data['big_decimal'] : null; } /** @@ -712,6 +718,30 @@ class FormatTest implements ModelInterface, ArrayAccess return $this; } + + /** + * Gets big_decimal + * + * @return BigDecimal|null + */ + public function getBigDecimal() + { + return $this->container['big_decimal']; + } + + /** + * Sets big_decimal + * + * @param BigDecimal|null $big_decimal big_decimal + * + * @return $this + */ + public function setBigDecimal($big_decimal) + { + $this->container['big_decimal'] = $big_decimal; + + return $this; + } /** * Returns true if offset exists. False otherwise. * @@ -777,6 +807,16 @@ class FormatTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php index b4576165dd..b3c661d7ff 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php @@ -322,6 +322,16 @@ class HasOnlyReadOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php index 737718d5d1..0644327a40 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php @@ -406,6 +406,16 @@ class MapTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php index bb79ae3298..556a425e80 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php @@ -352,6 +352,16 @@ class MixedPropertiesAndAdditionalPropertiesClass implements ModelInterface, Arr JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php index bd417582bd..574f95c620 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php @@ -323,6 +323,16 @@ class Model200Response implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php index 788418bfd4..712d46ce2e 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php @@ -292,6 +292,16 @@ class ModelList implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php index 33dc1ea163..1bb04c1b11 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php @@ -293,6 +293,16 @@ class ModelReturn implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php index e7a3ec4990..7193486723 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php @@ -386,6 +386,16 @@ class Name implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php index b137503a74..720405c218 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php @@ -292,6 +292,16 @@ class NumberOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php index 0937f1b7b7..0ea261e943 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php @@ -476,6 +476,16 @@ class Order implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php index 6c289b0e37..2e9e490d3f 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php @@ -352,6 +352,16 @@ class OuterComposite implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php index ab5c5ee0a3..0c2935a09f 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php @@ -482,6 +482,16 @@ class Pet implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php index b34abb7b77..c1cd964026 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php @@ -322,6 +322,16 @@ class ReadOnlyFirst implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php index e1495174a7..93b132a74c 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php @@ -292,6 +292,16 @@ class SpecialModelName implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php index 1392dd720d..cb71a88dd7 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php @@ -322,6 +322,16 @@ class Tag implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderDefault.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderDefault.php index 7d5476e654..332b1fe833 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderDefault.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderDefault.php @@ -427,6 +427,16 @@ class TypeHolderDefault implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderExample.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderExample.php index 2e5058a321..7c2715088e 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderExample.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/TypeHolderExample.php @@ -460,6 +460,16 @@ class TypeHolderExample implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/User.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/User.php index 21e4734239..c9bec23649 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/User.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/User.php @@ -502,6 +502,16 @@ class User implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/XmlItem.php b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/XmlItem.php index a9d4bc3ba0..5a970f205f 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/Model/XmlItem.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/Model/XmlItem.php @@ -1132,6 +1132,16 @@ class XmlItem implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php b/samples/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php index a391d35291..52de7747e1 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php +++ b/samples/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php @@ -150,6 +150,10 @@ class ObjectSerializer */ public static function toHeaderValue($value) { + if (method_exists($value, 'toHeaderValue')) { + return $value->toHeaderValue(); + } + return self::toString($value); } diff --git a/samples/client/petstore/php/OpenAPIClient-php/test/Model/FormatTestTest.php b/samples/client/petstore/php/OpenAPIClient-php/test/Model/FormatTestTest.php index 7a649d745f..19472117a1 100644 --- a/samples/client/petstore/php/OpenAPIClient-php/test/Model/FormatTestTest.php +++ b/samples/client/petstore/php/OpenAPIClient-php/test/Model/FormatTestTest.php @@ -168,4 +168,11 @@ class FormatTestTest extends TestCase public function testPropertyPassword() { } + + /** + * Test attribute "big_decimal" + */ + public function testPropertyBigDecimal() + { + } } diff --git a/samples/client/petstore/python-asyncio/docs/FormatTest.md b/samples/client/petstore/python-asyncio/docs/FormatTest.md index 31d92e2a75..4c15cd852f 100644 --- a/samples/client/petstore/python-asyncio/docs/FormatTest.md +++ b/samples/client/petstore/python-asyncio/docs/FormatTest.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **date_time** | **datetime** | | [optional] **uuid** | **str** | | [optional] **password** | **str** | | +**big_decimal** | [**BigDecimal**](BigDecimal.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/python-asyncio/petstore_api/models/format_test.py b/samples/client/petstore/python-asyncio/petstore_api/models/format_test.py index c27d6394db..1451cdcd6a 100644 --- a/samples/client/petstore/python-asyncio/petstore_api/models/format_test.py +++ b/samples/client/petstore/python-asyncio/petstore_api/models/format_test.py @@ -43,7 +43,8 @@ class FormatTest(object): 'date': 'date', 'date_time': 'datetime', 'uuid': 'str', - 'password': 'str' + 'password': 'str', + 'big_decimal': 'BigDecimal' } attribute_map = { @@ -59,10 +60,11 @@ class FormatTest(object): 'date': 'date', 'date_time': 'dateTime', 'uuid': 'uuid', - 'password': 'password' + 'password': 'password', + 'big_decimal': 'BigDecimal' } - def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None): # noqa: E501 + def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None, big_decimal=None): # noqa: E501 """FormatTest - a model defined in OpenAPI""" # noqa: E501 self._integer = None @@ -78,6 +80,7 @@ class FormatTest(object): self._date_time = None self._uuid = None self._password = None + self._big_decimal = None self.discriminator = None if integer is not None: @@ -102,6 +105,8 @@ class FormatTest(object): if uuid is not None: self.uuid = uuid self.password = password + if big_decimal is not None: + self.big_decimal = big_decimal @property def integer(self): @@ -412,6 +417,27 @@ class FormatTest(object): self._password = password + @property + def big_decimal(self): + """Gets the big_decimal of this FormatTest. # noqa: E501 + + + :return: The big_decimal of this FormatTest. # noqa: E501 + :rtype: BigDecimal + """ + return self._big_decimal + + @big_decimal.setter + def big_decimal(self, big_decimal): + """Sets the big_decimal of this FormatTest. + + + :param big_decimal: The big_decimal of this FormatTest. # noqa: E501 + :type: BigDecimal + """ + + self._big_decimal = big_decimal + def to_dict(self): """Returns the model properties as a dict""" result = {} diff --git a/samples/client/petstore/python-experimental/.openapi-generator/VERSION b/samples/client/petstore/python-experimental/.openapi-generator/VERSION index 479c313e87..0e97bd19ef 100644 --- a/samples/client/petstore/python-experimental/.openapi-generator/VERSION +++ b/samples/client/petstore/python-experimental/.openapi-generator/VERSION @@ -1 +1 @@ -4.0.3-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/python-experimental/README.md b/samples/client/petstore/python-experimental/README.md index 8f84fade2f..2a5a1f6c14 100644 --- a/samples/client/petstore/python-experimental/README.md +++ b/samples/client/petstore/python-experimental/README.md @@ -14,7 +14,7 @@ Python 2.7 and 3.4+ ## Installation & Usage ### pip install -If the python package is hosted on Github, you can install directly from Github +If the python package is hosted on a repository, you can install directly using: ```sh pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git @@ -77,6 +77,7 @@ Class | Method | HTTP request | Description *FakeApi* | [**create_xml_item**](docs/FakeApi.md#create_xml_item) | **POST** /fake/create_xml_item | creates an XmlItem *FakeApi* | [**fake_outer_boolean_serialize**](docs/FakeApi.md#fake_outer_boolean_serialize) | **POST** /fake/outer/boolean | *FakeApi* | [**fake_outer_composite_serialize**](docs/FakeApi.md#fake_outer_composite_serialize) | **POST** /fake/outer/composite | +*FakeApi* | [**fake_outer_enum_serialize**](docs/FakeApi.md#fake_outer_enum_serialize) | **POST** /fake/outer/enum | *FakeApi* | [**fake_outer_number_serialize**](docs/FakeApi.md#fake_outer_number_serialize) | **POST** /fake/outer/number | *FakeApi* | [**fake_outer_string_serialize**](docs/FakeApi.md#fake_outer_string_serialize) | **POST** /fake/outer/string | *FakeApi* | [**test_body_with_file_schema**](docs/FakeApi.md#test_body_with_file_schema) | **PUT** /fake/body-with-file-schema | @@ -152,9 +153,11 @@ Class | Method | HTTP request | Description - [Order](docs/Order.md) - [OuterComposite](docs/OuterComposite.md) - [OuterEnum](docs/OuterEnum.md) + - [OuterNumber](docs/OuterNumber.md) - [Pet](docs/Pet.md) - [ReadOnlyFirst](docs/ReadOnlyFirst.md) - [SpecialModelName](docs/SpecialModelName.md) + - [StringBooleanMap](docs/StringBooleanMap.md) - [Tag](docs/Tag.md) - [TypeHolderDefault](docs/TypeHolderDefault.md) - [TypeHolderExample](docs/TypeHolderExample.md) diff --git a/samples/client/petstore/python-experimental/docs/Animal.md b/samples/client/petstore/python-experimental/docs/Animal.md index 7ed4ba541f..e59166a62e 100644 --- a/samples/client/petstore/python-experimental/docs/Animal.md +++ b/samples/client/petstore/python-experimental/docs/Animal.md @@ -4,7 +4,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **class_name** | **str** | | -**color** | **str** | | [optional] [default to 'red'] +**color** | **str** | | [optional] if omitted the server will use the default value of '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/python-experimental/docs/Cat.md b/samples/client/petstore/python-experimental/docs/Cat.md index 8d30565d01..8bdbf9b3bc 100644 --- a/samples/client/petstore/python-experimental/docs/Cat.md +++ b/samples/client/petstore/python-experimental/docs/Cat.md @@ -3,7 +3,9 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**class_name** | **str** | | **declawed** | **bool** | | [optional] +**color** | **str** | | [optional] if omitted the server will use the default value of '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/python-experimental/docs/Category.md b/samples/client/petstore/python-experimental/docs/Category.md index 7e5c1e3164..33b2242d70 100644 --- a/samples/client/petstore/python-experimental/docs/Category.md +++ b/samples/client/petstore/python-experimental/docs/Category.md @@ -3,8 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**name** | **str** | | defaults to 'default-name' **id** | **int** | | [optional] -**name** | **str** | | [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/python-experimental/docs/Dog.md b/samples/client/petstore/python-experimental/docs/Dog.md index f727487975..81de567807 100644 --- a/samples/client/petstore/python-experimental/docs/Dog.md +++ b/samples/client/petstore/python-experimental/docs/Dog.md @@ -3,7 +3,9 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**class_name** | **str** | | **breed** | **str** | | [optional] +**color** | **str** | | [optional] if omitted the server will use the default value of '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/python-experimental/docs/EnumClass.md b/samples/client/petstore/python-experimental/docs/EnumClass.md index 67f017becd..510dff4df0 100644 --- a/samples/client/petstore/python-experimental/docs/EnumClass.md +++ b/samples/client/petstore/python-experimental/docs/EnumClass.md @@ -3,6 +3,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**value** | **str** | | defaults to '-efg' [[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/python-experimental/docs/EnumTest.md b/samples/client/petstore/python-experimental/docs/EnumTest.md index c4c1630250..5fc28b6c1c 100644 --- a/samples/client/petstore/python-experimental/docs/EnumTest.md +++ b/samples/client/petstore/python-experimental/docs/EnumTest.md @@ -3,8 +3,8 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**enum_string** | **str** | | [optional] **enum_string_required** | **str** | | +**enum_string** | **str** | | [optional] **enum_integer** | **int** | | [optional] **enum_number** | **float** | | [optional] **outer_enum** | [**OuterEnum**](OuterEnum.md) | | [optional] diff --git a/samples/client/petstore/python-experimental/docs/FakeApi.md b/samples/client/petstore/python-experimental/docs/FakeApi.md index 5aa5443d06..94280a7123 100644 --- a/samples/client/petstore/python-experimental/docs/FakeApi.md +++ b/samples/client/petstore/python-experimental/docs/FakeApi.md @@ -7,6 +7,7 @@ Method | HTTP request | Description [**create_xml_item**](FakeApi.md#create_xml_item) | **POST** /fake/create_xml_item | creates an XmlItem [**fake_outer_boolean_serialize**](FakeApi.md#fake_outer_boolean_serialize) | **POST** /fake/outer/boolean | [**fake_outer_composite_serialize**](FakeApi.md#fake_outer_composite_serialize) | **POST** /fake/outer/composite | +[**fake_outer_enum_serialize**](FakeApi.md#fake_outer_enum_serialize) | **POST** /fake/outer/enum | [**fake_outer_number_serialize**](FakeApi.md#fake_outer_number_serialize) | **POST** /fake/outer/number | [**fake_outer_string_serialize**](FakeApi.md#fake_outer_string_serialize) | **POST** /fake/outer/string | [**test_body_with_file_schema**](FakeApi.md#test_body_with_file_schema) | **PUT** /fake/body-with-file-schema | @@ -179,8 +180,61 @@ No authorization required [[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) +# **fake_outer_enum_serialize** +> OuterEnum fake_outer_enum_serialize() + + + +Test serialization of outer enum + +### Example + +```python +from __future__ import print_function +import time +import petstore_api +from petstore_api.rest import ApiException +from pprint import pprint + +# Create an instance of the API class +api_instance = petstore_api.FakeApi() +body = OuterEnum("placed") # OuterEnum | Input enum as post body (optional) + +try: + api_response = api_instance.fake_outer_enum_serialize(body=body) + pprint(api_response) +except ApiException as e: + print("Exception when calling FakeApi->fake_outer_enum_serialize: %s\n" % e) +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**OuterEnum**](str.md)| Input enum as post body | [optional] + +### Return type + +[**OuterEnum**](OuterEnum.md) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: */* + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Output enum | - | + +[[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) + # **fake_outer_number_serialize** -> float fake_outer_number_serialize() +> OuterNumber fake_outer_number_serialize() @@ -197,7 +251,7 @@ from pprint import pprint # Create an instance of the API class api_instance = petstore_api.FakeApi() -body = 3.4 # float | Input number as post body (optional) +body = OuterNumber(3.4) # OuterNumber | Input number as post body (optional) try: api_response = api_instance.fake_outer_number_serialize(body=body) @@ -210,11 +264,11 @@ except ApiException as e: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- - **body** | **float**| Input number as post body | [optional] + **body** | [**OuterNumber**](float.md)| Input number as post body | [optional] ### Return type -**float** +[**OuterNumber**](OuterNumber.md) ### Authorization diff --git a/samples/client/petstore/python-experimental/docs/FormatTest.md b/samples/client/petstore/python-experimental/docs/FormatTest.md index 31d92e2a75..1bf152e682 100644 --- a/samples/client/petstore/python-experimental/docs/FormatTest.md +++ b/samples/client/petstore/python-experimental/docs/FormatTest.md @@ -3,19 +3,19 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**number** | **float** | | +**byte** | **str** | | +**date** | **date** | | +**password** | **str** | | **integer** | **int** | | [optional] **int32** | **int** | | [optional] **int64** | **int** | | [optional] -**number** | **float** | | **float** | **float** | | [optional] **double** | **float** | | [optional] **string** | **str** | | [optional] -**byte** | **str** | | **binary** | **file** | | [optional] -**date** | **date** | | **date_time** | **datetime** | | [optional] **uuid** | **str** | | [optional] -**password** | **str** | | [[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/python-experimental/docs/MapTest.md b/samples/client/petstore/python-experimental/docs/MapTest.md index a5601691f8..ee6036eb2f 100644 --- a/samples/client/petstore/python-experimental/docs/MapTest.md +++ b/samples/client/petstore/python-experimental/docs/MapTest.md @@ -6,7 +6,7 @@ Name | Type | Description | Notes **map_map_of_string** | **dict(str, dict(str, str))** | | [optional] **map_of_enum_string** | **dict(str, str)** | | [optional] **direct_map** | **dict(str, bool)** | | [optional] -**indirect_map** | **dict(str, bool)** | | [optional] +**indirect_map** | [**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/python-experimental/docs/Order.md b/samples/client/petstore/python-experimental/docs/Order.md index b5f7b22d34..c21210a3bd 100644 --- a/samples/client/petstore/python-experimental/docs/Order.md +++ b/samples/client/petstore/python-experimental/docs/Order.md @@ -8,7 +8,7 @@ Name | Type | Description | Notes **quantity** | **int** | | [optional] **ship_date** | **datetime** | | [optional] **status** | **str** | Order Status | [optional] -**complete** | **bool** | | [optional] [default to False] +**complete** | **bool** | | [optional] if omitted the server will use the default value of 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/python-experimental/docs/OuterComposite.md b/samples/client/petstore/python-experimental/docs/OuterComposite.md index bab07ad559..3df277a30f 100644 --- a/samples/client/petstore/python-experimental/docs/OuterComposite.md +++ b/samples/client/petstore/python-experimental/docs/OuterComposite.md @@ -3,7 +3,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**my_number** | **float** | | [optional] +**my_number** | [**OuterNumber**](OuterNumber.md) | | [optional] **my_string** | **str** | | [optional] **my_boolean** | **bool** | | [optional] diff --git a/samples/client/petstore/python-experimental/docs/OuterEnum.md b/samples/client/petstore/python-experimental/docs/OuterEnum.md index 06d413b016..cba0170689 100644 --- a/samples/client/petstore/python-experimental/docs/OuterEnum.md +++ b/samples/client/petstore/python-experimental/docs/OuterEnum.md @@ -3,6 +3,7 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**value** | **str** | | [[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/python-experimental/docs/OuterNumber.md b/samples/client/petstore/python-experimental/docs/OuterNumber.md new file mode 100644 index 0000000000..5d75342bd8 --- /dev/null +++ b/samples/client/petstore/python-experimental/docs/OuterNumber.md @@ -0,0 +1,10 @@ +# OuterNumber + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**value** | **float** | | + +[[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/python-experimental/docs/Pet.md b/samples/client/petstore/python-experimental/docs/Pet.md index 9e15090300..15185316fe 100644 --- a/samples/client/petstore/python-experimental/docs/Pet.md +++ b/samples/client/petstore/python-experimental/docs/Pet.md @@ -3,10 +3,10 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**id** | **int** | | [optional] -**category** | [**Category**](Category.md) | | [optional] **name** | **str** | | **photo_urls** | **list[str]** | | +**id** | **int** | | [optional] +**category** | [**Category**](Category.md) | | [optional] **tags** | [**list[Tag]**](Tag.md) | | [optional] **status** | **str** | pet status in the store | [optional] diff --git a/samples/client/petstore/python-experimental/docs/StringBooleanMap.md b/samples/client/petstore/python-experimental/docs/StringBooleanMap.md new file mode 100644 index 0000000000..7abf11ec68 --- /dev/null +++ b/samples/client/petstore/python-experimental/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/python-experimental/docs/TypeHolderDefault.md b/samples/client/petstore/python-experimental/docs/TypeHolderDefault.md index fc82b9a827..7ec864de09 100644 --- a/samples/client/petstore/python-experimental/docs/TypeHolderDefault.md +++ b/samples/client/petstore/python-experimental/docs/TypeHolderDefault.md @@ -3,13 +3,13 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**string_item** | **str** | | [default to 'what'] -**number_item** | **float** | | [default to 1.234] -**integer_item** | **int** | | [default to -2] -**bool_item** | **bool** | | [default to True] +**array_item** | **list[int]** | | +**string_item** | **str** | | defaults to 'what' +**number_item** | **float** | | defaults to 1.234 +**integer_item** | **int** | | defaults to -2 +**bool_item** | **bool** | | defaults to True **date_item** | **date** | | [optional] **datetime_item** | **datetime** | | [optional] -**array_item** | **list[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/python-experimental/docs/TypeHolderExample.md b/samples/client/petstore/python-experimental/docs/TypeHolderExample.md index bb334f9925..71f302f8d9 100644 --- a/samples/client/petstore/python-experimental/docs/TypeHolderExample.md +++ b/samples/client/petstore/python-experimental/docs/TypeHolderExample.md @@ -3,11 +3,11 @@ ## Properties Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- -**string_item** | **str** | | [default to 'what'] -**number_item** | **float** | | [default to 1.234] -**integer_item** | **int** | | [default to -2] **bool_item** | **bool** | | **array_item** | **list[int]** | | +**string_item** | **str** | | defaults to 'what' +**number_item** | **float** | | defaults to 1.234 +**integer_item** | **int** | | defaults to -2 [[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/python-experimental/git_push.sh b/samples/client/petstore/python-experimental/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/python-experimental/git_push.sh +++ b/samples/client/petstore/python-experimental/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/python-experimental/openapi_client/api_client.py b/samples/client/petstore/python-experimental/openapi_client/api_client.py deleted file mode 100644 index efe3e5c378..0000000000 --- a/samples/client/petstore/python-experimental/openapi_client/api_client.py +++ /dev/null @@ -1,658 +0,0 @@ -# coding: utf-8 -""" - OpenAPI Petstore - - This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 - - The version of the OpenAPI document: 1.0.0 - Generated by: https://openapi-generator.tech -""" - -from __future__ import absolute_import - -import datetime -import inspect -import json -import mimetypes -from multiprocessing.pool import ThreadPool -import os -import re -import tempfile - -# python 2 and python 3 compatibility library -import six -from six.moves.urllib.parse import quote - -from petstore_api.configuration import Configuration -import petstore_api.models -from petstore_api import rest -from petstore_api.exceptions import ApiValueError - - -class ApiClient(object): - """Generic API client for OpenAPI client library builds. - - OpenAPI generic API client. This client handles the client- - server communication, and is invariant across implementations. Specifics of - the methods and models for each application are generated from the OpenAPI - templates. - - NOTE: This class is auto generated by OpenAPI Generator. - Ref: https://openapi-generator.tech - Do not edit the class manually. - - :param configuration: .Configuration object for this client - :param header_name: a header to pass when making calls to the API. - :param header_value: a header value to pass when making calls to - the API. - :param cookie: a cookie to include in the header when making calls - to the API - :param pool_threads: The number of threads to use for async requests - to the API. More threads means more concurrent API requests. - """ - - PRIMITIVE_TYPES = (float, bool, bytes, six.text_type) + six.integer_types - NATIVE_TYPES_MAPPING = { - 'int': int, - 'long': int if six.PY3 else long, # noqa: F821 - 'float': float, - 'str': str, - 'bool': bool, - 'date': datetime.date, - 'datetime': datetime.datetime, - 'object': object, - } - _pool = None - - def __init__(self, configuration=None, header_name=None, header_value=None, - cookie=None, pool_threads=1): - if configuration is None: - configuration = Configuration() - self.configuration = configuration - self.pool_threads = pool_threads - - self.rest_client = rest.RESTClientObject(configuration) - self.default_headers = {} - if header_name is not None: - self.default_headers[header_name] = header_value - self.cookie = cookie - # Set default User-Agent. - self.user_agent = 'OpenAPI-Generator/1.0.0/python' - - def __del__(self): - if self._pool: - self._pool.close() - self._pool.join() - self._pool = None - - @property - def pool(self): - """Create thread pool on first request - avoids instantiating unused threadpool for blocking clients. - """ - if self._pool is None: - self._pool = ThreadPool(self.pool_threads) - return self._pool - - @property - def user_agent(self): - """User agent for this API client""" - return self.default_headers['User-Agent'] - - @user_agent.setter - def user_agent(self, value): - self.default_headers['User-Agent'] = value - - def set_default_header(self, header_name, header_value): - self.default_headers[header_name] = header_value - - def __call_api( - self, resource_path, method, path_params=None, - query_params=None, header_params=None, body=None, post_params=None, - files=None, response_type=None, auth_settings=None, - _return_http_data_only=None, collection_formats=None, - _preload_content=True, _request_timeout=None, _host=None): - - config = self.configuration - - # header parameters - header_params = header_params or {} - header_params.update(self.default_headers) - if self.cookie: - header_params['Cookie'] = self.cookie - if header_params: - header_params = self.sanitize_for_serialization(header_params) - header_params = dict(self.parameters_to_tuples(header_params, - collection_formats)) - - # path parameters - if path_params: - path_params = self.sanitize_for_serialization(path_params) - path_params = self.parameters_to_tuples(path_params, - collection_formats) - for k, v in path_params: - # specified safe chars, encode everything - resource_path = resource_path.replace( - '{%s}' % k, - quote(str(v), safe=config.safe_chars_for_path_param) - ) - - # query parameters - if query_params: - query_params = self.sanitize_for_serialization(query_params) - query_params = self.parameters_to_tuples(query_params, - collection_formats) - - # post parameters - if post_params or files: - post_params = post_params if post_params else [] - post_params = self.sanitize_for_serialization(post_params) - post_params = self.parameters_to_tuples(post_params, - collection_formats) - post_params.extend(self.files_parameters(files)) - - # auth setting - self.update_params_for_auth(header_params, query_params, auth_settings) - - # body - if body: - body = self.sanitize_for_serialization(body) - - # request url - if _host is None: - url = self.configuration.host + resource_path - else: - # use server/host defined in path or operation instead - url = _host + resource_path - - # perform request and return response - response_data = self.request( - method, url, query_params=query_params, headers=header_params, - post_params=post_params, body=body, - _preload_content=_preload_content, - _request_timeout=_request_timeout) - - self.last_response = response_data - - return_data = response_data - if _preload_content: - # deserialize response data - if response_type: - return_data = self.deserialize(response_data, response_type) - else: - return_data = None - - if _return_http_data_only: - return (return_data) - else: - return (return_data, response_data.status, - response_data.getheaders()) - - def sanitize_for_serialization(self, obj): - """Builds a JSON POST object. - - If obj is None, return None. - If obj is str, int, long, float, bool, return directly. - If obj is datetime.datetime, datetime.date - convert to string in iso8601 format. - If obj is list, sanitize each element in the list. - If obj is dict, return the dict. - If obj is OpenAPI model, return the properties dict. - - :param obj: The data to serialize. - :return: The serialized form of data. - """ - if obj is None: - return None - elif isinstance(obj, self.PRIMITIVE_TYPES): - return obj - elif isinstance(obj, list): - return [self.sanitize_for_serialization(sub_obj) - for sub_obj in obj] - elif isinstance(obj, tuple): - return tuple(self.sanitize_for_serialization(sub_obj) - for sub_obj in obj) - elif isinstance(obj, (datetime.datetime, datetime.date)): - return obj.isoformat() - - if isinstance(obj, dict): - obj_dict = obj - else: - # Convert model obj to dict except - # attributes `openapi_types`, `attribute_map` - # and attributes which value is not None. - # Convert attribute name to json key in - # model definition for request. - obj_dict = {obj.attribute_map[attr]: getattr(obj, attr) - for attr, _ in six.iteritems(obj.openapi_types) - if getattr(obj, attr) is not None} - - return {key: self.sanitize_for_serialization(val) - for key, val in six.iteritems(obj_dict)} - - def deserialize(self, response, response_type): - """Deserializes response into an object. - - :param response: RESTResponse object to be deserialized. - :param response_type: class literal for - deserialized object, or string of class name. - - :return: deserialized object. - """ - # handle file downloading - # save response body into a tmp file and return the instance - if response_type == "file": - return self.__deserialize_file(response) - - # fetch data from response object - try: - data = json.loads(response.data) - except ValueError: - data = response.data - - return self.__deserialize(data, response_type) - - def __deserialize(self, data, klass): - """Deserializes dict, list, str into an object. - - :param data: dict, list or str. - :param klass: class literal, or string of class name. - - :return: object. - """ - if data is None: - return None - - if type(klass) == str: - if klass.startswith('list['): - sub_kls = re.match(r'list\[(.*)\]', klass).group(1) - return [self.__deserialize(sub_data, sub_kls) - for sub_data in data] - - if klass.startswith('dict('): - sub_kls = re.match(r'dict\(([^,]*), (.*)\)', klass).group(2) - return {k: self.__deserialize(v, sub_kls) - for k, v in six.iteritems(data)} - - # convert str to class - if klass in self.NATIVE_TYPES_MAPPING: - klass = self.NATIVE_TYPES_MAPPING[klass] - else: - klass = getattr(petstore_api.models, klass) - - if klass in self.PRIMITIVE_TYPES: - return self.__deserialize_primitive(data, klass) - elif klass == object: - return self.__deserialize_object(data) - elif klass == datetime.date: - return self.__deserialize_date(data) - elif klass == datetime.datetime: - return self.__deserialize_datatime(data) - else: - return self.__deserialize_model(data, klass) - - def call_api(self, resource_path, method, - path_params=None, query_params=None, header_params=None, - body=None, post_params=None, files=None, - response_type=None, auth_settings=None, async_req=None, - _return_http_data_only=None, collection_formats=None, - _preload_content=True, _request_timeout=None, _host=None): - """Makes the HTTP request (synchronous) and returns deserialized data. - - To make an async_req request, set the async_req parameter. - - :param resource_path: Path to method endpoint. - :param method: Method to call. - :param path_params: Path parameters in the url. - :param query_params: Query parameters in the url. - :param header_params: Header parameters to be - placed in the request header. - :param body: Request body. - :param post_params dict: Request post form parameters, - for `application/x-www-form-urlencoded`, `multipart/form-data`. - :param auth_settings list: Auth Settings names for the request. - :param response: Response data type. - :param files dict: key -> filename, value -> filepath, - for `multipart/form-data`. - :param async_req bool: execute request asynchronously - :param _return_http_data_only: response data without head status code - and headers - :param collection_formats: dict of collection formats for path, query, - header, and post parameters. - :param _preload_content: if False, the urllib3.HTTPResponse object will - be returned without reading/decoding response - data. Default is True. - :param _request_timeout: timeout setting for this request. If one - number provided, it will be total request - timeout. It can also be a pair (tuple) of - (connection, read) timeouts. - :return: - If async_req parameter is True, - the request will be called asynchronously. - The method will return the request thread. - If parameter async_req is False or missing, - then the method will return the response directly. - """ - if not async_req: - return self.__call_api(resource_path, method, - path_params, query_params, header_params, - body, post_params, files, - response_type, auth_settings, - _return_http_data_only, collection_formats, - _preload_content, _request_timeout, _host) - else: - thread = self.pool.apply_async(self.__call_api, (resource_path, - method, path_params, query_params, - header_params, body, - post_params, files, - response_type, auth_settings, - _return_http_data_only, - collection_formats, - _preload_content, - _request_timeout, - _host)) - return thread - - def request(self, method, url, query_params=None, headers=None, - post_params=None, body=None, _preload_content=True, - _request_timeout=None): - """Makes the HTTP request using RESTClient.""" - if method == "GET": - return self.rest_client.GET(url, - query_params=query_params, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - headers=headers) - elif method == "HEAD": - return self.rest_client.HEAD(url, - query_params=query_params, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - headers=headers) - elif method == "OPTIONS": - return self.rest_client.OPTIONS(url, - query_params=query_params, - headers=headers, - post_params=post_params, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - body=body) - elif method == "POST": - return self.rest_client.POST(url, - query_params=query_params, - headers=headers, - post_params=post_params, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - body=body) - elif method == "PUT": - return self.rest_client.PUT(url, - query_params=query_params, - headers=headers, - post_params=post_params, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - body=body) - elif method == "PATCH": - return self.rest_client.PATCH(url, - query_params=query_params, - headers=headers, - post_params=post_params, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - body=body) - elif method == "DELETE": - return self.rest_client.DELETE(url, - query_params=query_params, - headers=headers, - _preload_content=_preload_content, - _request_timeout=_request_timeout, - body=body) - else: - raise ApiValueError( - "http method must be `GET`, `HEAD`, `OPTIONS`," - " `POST`, `PATCH`, `PUT` or `DELETE`." - ) - - def parameters_to_tuples(self, params, collection_formats): - """Get parameters as list of tuples, formatting collections. - - :param params: Parameters as dict or list of two-tuples - :param dict collection_formats: Parameter collection formats - :return: Parameters as list of tuples, collections formatted - """ - new_params = [] - if collection_formats is None: - collection_formats = {} - for k, v in six.iteritems(params) if isinstance(params, dict) else params: # noqa: E501 - if k in collection_formats: - collection_format = collection_formats[k] - if collection_format == 'multi': - new_params.extend((k, value) for value in v) - else: - if collection_format == 'ssv': - delimiter = ' ' - elif collection_format == 'tsv': - delimiter = '\t' - elif collection_format == 'pipes': - delimiter = '|' - else: # csv is the default - delimiter = ',' - new_params.append( - (k, delimiter.join(str(value) for value in v))) - else: - new_params.append((k, v)) - return new_params - - def files_parameters(self, files=None): - """Builds form parameters. - - :param files: File parameters. - :return: Form parameters with files. - """ - params = [] - - if files: - for k, v in six.iteritems(files): - if not v: - continue - file_names = v if type(v) is list else [v] - for n in file_names: - with open(n, 'rb') as f: - filename = os.path.basename(f.name) - filedata = f.read() - mimetype = (mimetypes.guess_type(filename)[0] or - 'application/octet-stream') - params.append( - tuple([k, tuple([filename, filedata, mimetype])])) - - return params - - def select_header_accept(self, accepts): - """Returns `Accept` based on an array of accepts provided. - - :param accepts: List of headers. - :return: Accept (e.g. application/json). - """ - if not accepts: - return - - accepts = [x.lower() for x in accepts] - - if 'application/json' in accepts: - return 'application/json' - else: - return ', '.join(accepts) - - def select_header_content_type(self, content_types): - """Returns `Content-Type` based on an array of content_types provided. - - :param content_types: List of content-types. - :return: Content-Type (e.g. application/json). - """ - if not content_types: - return 'application/json' - - content_types = [x.lower() for x in content_types] - - if 'application/json' in content_types or '*/*' in content_types: - return 'application/json' - else: - return content_types[0] - - def update_params_for_auth(self, headers, querys, auth_settings): - """Updates header and query params based on authentication setting. - - :param headers: Header parameters dict to be updated. - :param querys: Query parameters tuple list to be updated. - :param auth_settings: Authentication setting identifiers list. - """ - if not auth_settings: - return - - for auth in auth_settings: - auth_setting = self.configuration.auth_settings().get(auth) - if auth_setting: - if not auth_setting['value']: - continue - elif auth_setting['in'] == 'cookie': - headers['Cookie'] = auth_setting['value'] - elif auth_setting['in'] == 'header': - headers[auth_setting['key']] = auth_setting['value'] - elif auth_setting['in'] == 'query': - querys.append((auth_setting['key'], auth_setting['value'])) - else: - raise ApiValueError( - 'Authentication token must be in `query` or `header`' - ) - - def __deserialize_file(self, response): - """Deserializes body to file - - Saves response body into a file in a temporary folder, - using the filename from the `Content-Disposition` header if provided. - - :param response: RESTResponse. - :return: file path. - """ - fd, path = tempfile.mkstemp(dir=self.configuration.temp_folder_path) - os.close(fd) - os.remove(path) - - content_disposition = response.getheader("Content-Disposition") - if content_disposition: - filename = re.search(r'filename=[\'"]?([^\'"\s]+)[\'"]?', - content_disposition).group(1) - path = os.path.join(os.path.dirname(path), filename) - - with open(path, "wb") as f: - f.write(response.data) - - return path - - def __deserialize_primitive(self, data, klass): - """Deserializes string to primitive type. - - :param data: str. - :param klass: class literal. - - :return: int, long, float, str, bool. - """ - try: - return klass(data) - except UnicodeEncodeError: - return six.text_type(data) - except TypeError: - return data - - def __deserialize_object(self, value): - """Return an original value. - - :return: object. - """ - return value - - def __deserialize_date(self, string): - """Deserializes string to date. - - :param string: str. - :return: date. - """ - try: - from dateutil.parser import parse - return parse(string).date() - except ImportError: - return string - except ValueError: - raise rest.ApiException( - status=0, - reason="Failed to parse `{0}` as date object".format(string) - ) - - def __deserialize_datatime(self, string): - """Deserializes string to datetime. - - The string should be in iso8601 datetime format. - - :param string: str. - :return: datetime. - """ - try: - from dateutil.parser import parse - return parse(string) - except ImportError: - return string - except ValueError: - raise rest.ApiException( - status=0, - reason=( - "Failed to parse `{0}` as datetime object" - .format(string) - ) - ) - - def __deserialize_model(self, data, klass): - """Deserializes list or dict to model. - - :param data: dict, list. - :param klass: class literal. - :return: model object. - """ - - if not klass.openapi_types and not hasattr(klass, - 'get_real_child_model'): - return data - - used_data = data - if not isinstance(data, (list, dict)): - used_data = [data] - keyword_args = {} - positional_args = [] - if klass.openapi_types is not None: - for attr, attr_type in six.iteritems(klass.openapi_types): - if (data is not None and - klass.attribute_map[attr] in used_data): - value = used_data[klass.attribute_map[attr]] - keyword_args[attr] = self.__deserialize(value, attr_type) - - end_index = None - argspec = inspect.getargspec(getattr(klass, '__init__')) - if argspec.defaults: - end_index = -len(argspec.defaults) - required_positional_args = argspec.args[1:end_index] - - for index, req_positional_arg in enumerate(required_positional_args): - if keyword_args and req_positional_arg in keyword_args: - positional_args.append(keyword_args[req_positional_arg]) - del keyword_args[req_positional_arg] - elif (not keyword_args and index < len(used_data) and - isinstance(used_data, list)): - positional_args.append(used_data[index]) - - instance = klass(*positional_args, **keyword_args) - - if hasattr(instance, 'get_real_child_model'): - klass_name = instance.get_real_child_model(data) - if klass_name: - instance = self.__deserialize(data, klass_name) - return instance diff --git a/samples/client/petstore/python-experimental/petstore_api/__init__.py b/samples/client/petstore/python-experimental/petstore_api/__init__.py index 45d51fe90b..905c4d3449 100644 --- a/samples/client/petstore/python-experimental/petstore_api/__init__.py +++ b/samples/client/petstore/python-experimental/petstore_api/__init__.py @@ -71,9 +71,11 @@ from petstore_api.models.number_only import NumberOnly from petstore_api.models.order import Order from petstore_api.models.outer_composite import OuterComposite from petstore_api.models.outer_enum import OuterEnum +from petstore_api.models.outer_number import OuterNumber from petstore_api.models.pet import Pet from petstore_api.models.read_only_first import ReadOnlyFirst from petstore_api.models.special_model_name import SpecialModelName +from petstore_api.models.string_boolean_map import StringBooleanMap from petstore_api.models.tag import Tag from petstore_api.models.type_holder_default import TypeHolderDefault from petstore_api.models.type_holder_example import TypeHolderExample diff --git a/samples/client/petstore/python-experimental/petstore_api/api/another_fake_api.py b/samples/client/petstore/python-experimental/petstore_api/api/another_fake_api.py index 01d055616e..1c42982143 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api/another_fake_api.py +++ b/samples/client/petstore/python-experimental/petstore_api/api/another_fake_api.py @@ -18,10 +18,14 @@ import re # noqa: F401 import six from petstore_api.api_client import ApiClient -from petstore_api.exceptions import ( # noqa: F401 +from petstore_api.exceptions import ( ApiTypeError, ApiValueError ) +from petstore_api.model_utils import ( + check_allowed_values, + check_validations +) class AnotherFakeApi(object): @@ -36,122 +40,269 @@ class AnotherFakeApi(object): api_client = ApiClient() self.api_client = api_client - def call_123_test_special_tags(self, body, **kwargs): # noqa: E501 - """To test special tags # noqa: E501 + def __call_123_test_special_tags(self, body, **kwargs): # noqa: E501 + """To test special tags # noqa: E501 - To test special tags and operation ID starting with number # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.call_123_test_special_tags(body, async_req=True) - >>> result = thread.get() + To test special tags and operation ID starting with number # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.call_123_test_special_tags(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param Client body: client model (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: Client + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.call_123_test_special_tags = Endpoint( + settings={ + 'response_type': 'Client', + 'auth': [], + 'endpoint_path': '/another-fake/dummy', + 'operation_id': 'call_123_test_special_tags', + 'http_method': 'PATCH', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'Client', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client, + callable=__call_123_test_special_tags + ) + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint Args: - body (Client): client model - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Client: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.call_123_test_special_tags_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.call_123_test_special_tags_with_http_info(body, **kwargs) # noqa: E501 - return data + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable - def call_123_test_special_tags_with_http_info(self, body, **kwargs): # noqa: E501 - """To test special tags # noqa: E501 - - To test special tags and operation ID starting with number # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.call_123_test_special_tags_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (Client): client model - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Client: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method call_123_test_special_tags" % key + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `call_123_test_special_tags`") # noqa: E501 - collection_formats = {} + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] + ) - path_params = {} + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } - query_params = [] + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format - header_params = {} + return params - form_params = [] - local_var_files = {} + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class + """ + return self.callable(self, *args, **kwargs) - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/json']) # noqa: E501 + def call_with_http_info(self, **kwargs): - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json']) # noqa: E501 + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) + ) + else: + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None - # Authentication setting - auth_settings = [] # noqa: E501 + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: + raise ApiTypeError( + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) + ) + + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) + + self.__validate_inputs(kwargs) + + params = self.__gather_params(kwargs) + + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) + + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list return self.api_client.call_api( - '/another-fake/dummy', 'PATCH', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='Client', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/samples/client/petstore/python-experimental/petstore_api/api/fake_api.py b/samples/client/petstore/python-experimental/petstore_api/api/fake_api.py index 0f14ef6739..4b41defbc5 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api/fake_api.py +++ b/samples/client/petstore/python-experimental/petstore_api/api/fake_api.py @@ -18,10 +18,14 @@ import re # noqa: F401 import six from petstore_api.api_client import ApiClient -from petstore_api.exceptions import ( # noqa: F401 +from petstore_api.exceptions import ( ApiTypeError, ApiValueError ) +from petstore_api.model_utils import ( + check_allowed_values, + check_validations +) class FakeApi(object): @@ -36,1877 +40,1653 @@ class FakeApi(object): api_client = ApiClient() self.api_client = api_client - def create_xml_item(self, xml_item, **kwargs): # noqa: E501 - """creates an XmlItem # noqa: E501 + def __create_xml_item(self, xml_item, **kwargs): # noqa: E501 + """creates an XmlItem # noqa: E501 - this route creates an XmlItem # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_xml_item(xml_item, async_req=True) - >>> result = thread.get() + this route creates an XmlItem # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.create_xml_item(xml_item, async_req=True) + >>> result = thread.get() - Args: - xml_item (XmlItem): XmlItem Body - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. + :param async_req bool: execute request asynchronously + :param XmlItem xml_item: XmlItem Body (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.create_xml_item_with_http_info(xml_item, **kwargs) # noqa: E501 - else: - (data) = self.create_xml_item_with_http_info(xml_item, **kwargs) # noqa: E501 - return data - - def create_xml_item_with_http_info(self, xml_item, **kwargs): # noqa: E501 - """creates an XmlItem # noqa: E501 - - this route creates an XmlItem # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_xml_item_with_http_info(xml_item, async_req=True) - >>> result = thread.get() - - Args: - xml_item (XmlItem): XmlItem Body - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['xml_item'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method create_xml_item" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'xml_item' is set - if ('xml_item' not in local_var_params or - local_var_params['xml_item'] is None): - raise ApiValueError("Missing the required parameter `xml_item` when calling `create_xml_item`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'xml_item' in local_var_params: - body_params = local_var_params['xml_item'] - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/xml', 'application/xml; charset=utf-8', 'application/xml; charset=utf-16', 'text/xml', 'text/xml; charset=utf-8', 'text/xml; charset=utf-16']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/create_xml_item', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def fake_outer_boolean_serialize(self, **kwargs): # noqa: E501 - """fake_outer_boolean_serialize # noqa: E501 - - Test serialization of outer boolean types # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_boolean_serialize(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (bool): Input boolean as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - bool: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.fake_outer_boolean_serialize_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.fake_outer_boolean_serialize_with_http_info(**kwargs) # noqa: E501 - return data - - def fake_outer_boolean_serialize_with_http_info(self, **kwargs): # noqa: E501 - """fake_outer_boolean_serialize # noqa: E501 - - Test serialization of outer boolean types # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_boolean_serialize_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (bool): Input boolean as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - bool: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method fake_outer_boolean_serialize" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['*/*']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/outer/boolean', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='bool', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def fake_outer_composite_serialize(self, **kwargs): # noqa: E501 - """fake_outer_composite_serialize # noqa: E501 - - Test serialization of object with outer number type # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_composite_serialize(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (OuterComposite): Input composite as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - OuterComposite: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.fake_outer_composite_serialize_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.fake_outer_composite_serialize_with_http_info(**kwargs) # noqa: E501 - return data - - def fake_outer_composite_serialize_with_http_info(self, **kwargs): # noqa: E501 - """fake_outer_composite_serialize # noqa: E501 - - Test serialization of object with outer number type # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_composite_serialize_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (OuterComposite): Input composite as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - OuterComposite: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method fake_outer_composite_serialize" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['*/*']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/outer/composite', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='OuterComposite', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def fake_outer_number_serialize(self, **kwargs): # noqa: E501 - """fake_outer_number_serialize # noqa: E501 - - Test serialization of outer number types # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_number_serialize(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (float): Input number as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - float: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.fake_outer_number_serialize_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.fake_outer_number_serialize_with_http_info(**kwargs) # noqa: E501 - return data - - def fake_outer_number_serialize_with_http_info(self, **kwargs): # noqa: E501 - """fake_outer_number_serialize # noqa: E501 - - Test serialization of outer number types # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_number_serialize_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (float): Input number as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - float: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method fake_outer_number_serialize" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['*/*']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/outer/number', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='float', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def fake_outer_string_serialize(self, **kwargs): # noqa: E501 - """fake_outer_string_serialize # noqa: E501 - - Test serialization of outer string types # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_string_serialize(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (str): Input string as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - str: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.fake_outer_string_serialize_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.fake_outer_string_serialize_with_http_info(**kwargs) # noqa: E501 - return data - - def fake_outer_string_serialize_with_http_info(self, **kwargs): # noqa: E501 - """fake_outer_string_serialize # noqa: E501 - - Test serialization of outer string types # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.fake_outer_string_serialize_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - body (str): Input string as post body. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - str: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method fake_outer_string_serialize" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['*/*']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/outer/string', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='str', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_body_with_file_schema(self, body, **kwargs): # noqa: E501 - """test_body_with_file_schema # noqa: E501 - - For this test, the body for this request much reference a schema named `File`. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_body_with_file_schema(body, async_req=True) - >>> result = thread.get() - - Args: - body (FileSchemaTestClass): - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_body_with_file_schema_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.test_body_with_file_schema_with_http_info(body, **kwargs) # noqa: E501 - return data - - def test_body_with_file_schema_with_http_info(self, body, **kwargs): # noqa: E501 - """test_body_with_file_schema # noqa: E501 - - For this test, the body for this request much reference a schema named `File`. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_body_with_file_schema_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (FileSchemaTestClass): - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_body_with_file_schema" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `test_body_with_file_schema`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/body-with-file-schema', 'PUT', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_body_with_query_params(self, query, body, **kwargs): # noqa: E501 - """test_body_with_query_params # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_body_with_query_params(query, body, async_req=True) - >>> result = thread.get() - - Args: - query (str): body (User): - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_body_with_query_params_with_http_info(query, body, **kwargs) # noqa: E501 - else: - (data) = self.test_body_with_query_params_with_http_info(query, body, **kwargs) # noqa: E501 - return data - - def test_body_with_query_params_with_http_info(self, query, body, **kwargs): # noqa: E501 - """test_body_with_query_params # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_body_with_query_params_with_http_info(query, body, async_req=True) - >>> result = thread.get() - - Args: - query (str): body (User): - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['query', 'body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_body_with_query_params" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'query' is set - if ('query' not in local_var_params or - local_var_params['query'] is None): - raise ApiValueError("Missing the required parameter `query` when calling `test_body_with_query_params`") # noqa: E501 - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `test_body_with_query_params`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - if 'query' in local_var_params: - query_params.append(('query', local_var_params['query'])) # noqa: E501 - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/body-with-query-params', 'PUT', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_client_model(self, body, **kwargs): # noqa: E501 - """To test \"client\" model # noqa: E501 - - To test \"client\" model # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_client_model(body, async_req=True) - >>> result = thread.get() - - Args: - body (Client): client model - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Client: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_client_model_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.test_client_model_with_http_info(body, **kwargs) # noqa: E501 - return data - - def test_client_model_with_http_info(self, body, **kwargs): # noqa: E501 - """To test \"client\" model # noqa: E501 - - To test \"client\" model # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_client_model_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (Client): client model - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Client: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_client_model" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `test_client_model`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/json']) # noqa: E501 - - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake', 'PATCH', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='Client', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_endpoint_enums_length_one(self, query_integer=3, query_string='brillig', path_string='hello', path_integer=34, header_number=1.234, **kwargs): # noqa: E501 - """test_endpoint_enums_length_one # noqa: E501 - - This route has required values with enums of 1 # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_endpoint_enums_length_one(query_integer=3, query_string='brillig', path_string='hello', path_integer=34, header_number=1.234, async_req=True) - >>> result = thread.get() - - Args: - - query_integer (int): defaults to 3, must be one of [3] - query_string (str): defaults to 'brillig', must be one of ['brillig'] - path_string (str): defaults to 'hello', must be one of ['hello'] - path_integer (int): defaults to 34, must be one of [34] - header_number (float): defaults to 1.234, must be one of [1.234] - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_endpoint_enums_length_one_with_http_info(query_integer=query_integer, query_string=query_string, path_string=path_string, path_integer=path_integer, header_number=header_number, **kwargs) # noqa: E501 - else: - (data) = self.test_endpoint_enums_length_one_with_http_info(query_integer=query_integer, query_string=query_string, path_string=path_string, path_integer=path_integer, header_number=header_number, **kwargs) # noqa: E501 - return data - - def test_endpoint_enums_length_one_with_http_info(self, query_integer=None, query_string=None, path_string=None, path_integer=None, header_number=None, **kwargs): # noqa: E501 - """test_endpoint_enums_length_one # noqa: E501 - - This route has required values with enums of 1 # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_endpoint_enums_length_one_with_http_info(async_req=True) - >>> result = thread.get() - - Args: - - query_integer (int): defaults to 3, must be one of [3] - query_string (str): defaults to 'brillig', must be one of ['brillig'] - path_string (str): defaults to 'hello', must be one of ['hello'] - path_integer (int): defaults to 34, must be one of [34] - header_number (float): defaults to 1.234, must be one of [1.234] - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['query_integer', 'query_string', 'path_string', 'path_integer', 'header_number'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_endpoint_enums_length_one" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'query_integer' is set - if ('query_integer' not in local_var_params or - local_var_params['query_integer'] is None): - raise ApiValueError("Missing the required parameter `query_integer` when calling `test_endpoint_enums_length_one`") # noqa: E501 - # verify the required parameter 'query_string' is set - if ('query_string' not in local_var_params or - local_var_params['query_string'] is None): - raise ApiValueError("Missing the required parameter `query_string` when calling `test_endpoint_enums_length_one`") # noqa: E501 - # verify the required parameter 'path_string' is set - if ('path_string' not in local_var_params or - local_var_params['path_string'] is None): - raise ApiValueError("Missing the required parameter `path_string` when calling `test_endpoint_enums_length_one`") # noqa: E501 - # verify the required parameter 'path_integer' is set - if ('path_integer' not in local_var_params or - local_var_params['path_integer'] is None): - raise ApiValueError("Missing the required parameter `path_integer` when calling `test_endpoint_enums_length_one`") # noqa: E501 - # verify the required parameter 'header_number' is set - if ('header_number' not in local_var_params or - local_var_params['header_number'] is None): - raise ApiValueError("Missing the required parameter `header_number` when calling `test_endpoint_enums_length_one`") # noqa: E501 - allowed_values = [3] # noqa: E501 - if ('query_integer' in local_var_params and - local_var_params['query_integer'] not in allowed_values): - raise ValueError( - "Invalid value for `query_integer` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['query_integer'], allowed_values) + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True ) - allowed_values = ["brillig"] # noqa: E501 - if ('query_string' in local_var_params and - local_var_params['query_string'] not in allowed_values): - raise ValueError( - "Invalid value for `query_string` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['query_string'], allowed_values) + kwargs['xml_item'] = xml_item + return self.call_with_http_info(**kwargs) + + self.create_xml_item = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake/create_xml_item', + 'operation_id': 'create_xml_item', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'xml_item', + ], + 'required': [ + 'xml_item', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'xml_item': 'XmlItem', + }, + 'attribute_map': { + }, + 'location_map': { + 'xml_item': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/xml', + 'application/xml; charset=utf-8', + 'application/xml; charset=utf-16', + 'text/xml', + 'text/xml; charset=utf-8', + 'text/xml; charset=utf-16' + ] + }, + api_client=api_client, + callable=__create_xml_item + ) + + def __fake_outer_boolean_serialize(self, **kwargs): # noqa: E501 + """fake_outer_boolean_serialize # noqa: E501 + + Test serialization of outer boolean types # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.fake_outer_boolean_serialize(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param bool body: Input boolean as post body + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: bool + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True ) - allowed_values = ["hello"] # noqa: E501 - if ('path_string' in local_var_params and - local_var_params['path_string'] not in allowed_values): - raise ValueError( - "Invalid value for `path_string` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['path_string'], allowed_values) + return self.call_with_http_info(**kwargs) + + self.fake_outer_boolean_serialize = Endpoint( + settings={ + 'response_type': 'bool', + 'auth': [], + 'endpoint_path': '/fake/outer/boolean', + 'operation_id': 'fake_outer_boolean_serialize', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'bool', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + '*/*' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__fake_outer_boolean_serialize + ) + + def __fake_outer_composite_serialize(self, **kwargs): # noqa: E501 + """fake_outer_composite_serialize # noqa: E501 + + Test serialization of object with outer number type # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.fake_outer_composite_serialize(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param OuterComposite body: Input composite as post body + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: OuterComposite + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True ) - allowed_values = [34] # noqa: E501 - if ('path_integer' in local_var_params and - local_var_params['path_integer'] not in allowed_values): - raise ValueError( - "Invalid value for `path_integer` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['path_integer'], allowed_values) + return self.call_with_http_info(**kwargs) + + self.fake_outer_composite_serialize = Endpoint( + settings={ + 'response_type': 'OuterComposite', + 'auth': [], + 'endpoint_path': '/fake/outer/composite', + 'operation_id': 'fake_outer_composite_serialize', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'OuterComposite', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + '*/*' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__fake_outer_composite_serialize + ) + + def __fake_outer_enum_serialize(self, **kwargs): # noqa: E501 + """fake_outer_enum_serialize # noqa: E501 + + Test serialization of outer enum # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.fake_outer_enum_serialize(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param OuterEnum body: Input enum as post body + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: OuterEnum + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True ) - allowed_values = [1.234] # noqa: E501 - if ('header_number' in local_var_params and - local_var_params['header_number'] not in allowed_values): - raise ValueError( - "Invalid value for `header_number` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['header_number'], allowed_values) + return self.call_with_http_info(**kwargs) + + self.fake_outer_enum_serialize = Endpoint( + settings={ + 'response_type': 'OuterEnum', + 'auth': [], + 'endpoint_path': '/fake/outer/enum', + 'operation_id': 'fake_outer_enum_serialize', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'OuterEnum', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + '*/*' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__fake_outer_enum_serialize + ) + + def __fake_outer_number_serialize(self, **kwargs): # noqa: E501 + """fake_outer_number_serialize # noqa: E501 + + Test serialization of outer number types # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.fake_outer_number_serialize(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param OuterNumber body: Input number as post body + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: OuterNumber + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True ) + return self.call_with_http_info(**kwargs) - collection_formats = {} + self.fake_outer_number_serialize = Endpoint( + settings={ + 'response_type': 'OuterNumber', + 'auth': [], + 'endpoint_path': '/fake/outer/number', + 'operation_id': 'fake_outer_number_serialize', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'OuterNumber', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + '*/*' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__fake_outer_number_serialize + ) - path_params = {} - if 'path_string' in local_var_params: - path_params['path_string'] = local_var_params['path_string'] # noqa: E501 - if 'path_integer' in local_var_params: - path_params['path_integer'] = local_var_params['path_integer'] # noqa: E501 + def __fake_outer_string_serialize(self, **kwargs): # noqa: E501 + """fake_outer_string_serialize # noqa: E501 - query_params = [] - if 'query_integer' in local_var_params: - query_params.append(('query_integer', local_var_params['query_integer'])) # noqa: E501 - if 'query_string' in local_var_params: - query_params.append(('query_string', local_var_params['query_string'])) # noqa: E501 + Test serialization of outer string types # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.fake_outer_string_serialize(async_req=True) + >>> result = thread.get() - header_params = {} - if 'header_number' in local_var_params: - header_params['header_number'] = local_var_params['header_number'] # noqa: E501 + :param async_req bool: execute request asynchronously + :param str body: Input string as post body + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: str + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + return self.call_with_http_info(**kwargs) - form_params = [] - local_var_files = {} + self.fake_outer_string_serialize = Endpoint( + settings={ + 'response_type': 'str', + 'auth': [], + 'endpoint_path': '/fake/outer/string', + 'operation_id': 'fake_outer_string_serialize', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'str', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + '*/*' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__fake_outer_string_serialize + ) - body_params = None - # Authentication setting - auth_settings = [] # noqa: E501 + def __test_body_with_file_schema(self, body, **kwargs): # noqa: E501 + """test_body_with_file_schema # noqa: E501 - return self.api_client.call_api( - '/fake/enums-of-length-one/{path_string}/{path_integer}', 'PUT', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + For this test, the body for this request much reference a schema named `File`. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_body_with_file_schema(body, async_req=True) + >>> result = thread.get() - def test_endpoint_parameters(self, number, double, pattern_without_delimiter, byte, **kwargs): # noqa: E501 - """Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 + :param async_req bool: execute request asynchronously + :param FileSchemaTestClass body: (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) - Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_endpoint_parameters(number, double, pattern_without_delimiter, byte, async_req=True) - >>> result = thread.get() + self.test_body_with_file_schema = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake/body-with-file-schema', + 'operation_id': 'test_body_with_file_schema', + 'http_method': 'PUT', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'FileSchemaTestClass', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client, + callable=__test_body_with_file_schema + ) + + def __test_body_with_query_params(self, query, body, **kwargs): # noqa: E501 + """test_body_with_query_params # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_body_with_query_params(query, body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str query: (required) + :param User body: (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['query'] = query + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.test_body_with_query_params = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake/body-with-query-params', + 'operation_id': 'test_body_with_query_params', + 'http_method': 'PUT', + 'servers': [], + }, + params_map={ + 'all': [ + 'query', + 'body', + ], + 'required': [ + 'query', + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'query': 'str', + 'body': 'User', + }, + 'attribute_map': { + 'query': 'query', + }, + 'location_map': { + 'query': 'query', + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client, + callable=__test_body_with_query_params + ) + + def __test_client_model(self, body, **kwargs): # noqa: E501 + """To test \"client\" model # noqa: E501 + + To test \"client\" model # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_client_model(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param Client body: client model (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: Client + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.test_client_model = Endpoint( + settings={ + 'response_type': 'Client', + 'auth': [], + 'endpoint_path': '/fake', + 'operation_id': 'test_client_model', + 'http_method': 'PATCH', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'Client', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client, + callable=__test_client_model + ) + + def __test_endpoint_enums_length_one(self, query_integer, query_string, path_string, path_integer, header_number, **kwargs): # noqa: E501 + """test_endpoint_enums_length_one # noqa: E501 + + This route has required values with enums of 1 # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_endpoint_enums_length_one(query_integer, query_string, path_string, path_integer, header_number, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int query_integer: (required) + :param str query_string: (required) + :param str path_string: (required) + :param int path_integer: (required) + :param float header_number: (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['query_integer'] = query_integer + kwargs['query_string'] = query_string + kwargs['path_string'] = path_string + kwargs['path_integer'] = path_integer + kwargs['header_number'] = header_number + return self.call_with_http_info(**kwargs) + + self.test_endpoint_enums_length_one = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake/enums-of-length-one/{path_string}/{path_integer}', + 'operation_id': 'test_endpoint_enums_length_one', + 'http_method': 'PUT', + 'servers': [], + }, + params_map={ + 'all': [ + 'query_integer', + 'query_string', + 'path_string', + 'path_integer', + 'header_number', + ], + 'required': [ + 'query_integer', + 'query_string', + 'path_string', + 'path_integer', + 'header_number', + ], + 'nullable': [ + ], + 'enum': [ + 'query_integer', + 'query_string', + 'path_string', + 'path_integer', + 'header_number', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('query_integer',): { + + "3": 3 + }, + ('query_string',): { + + "BRILLIG": "brillig" + }, + ('path_string',): { + + "HELLO": "hello" + }, + ('path_integer',): { + + "34": 34 + }, + ('header_number',): { + + "1.234": 1.234 + }, + }, + 'openapi_types': { + 'query_integer': 'int', + 'query_string': 'str', + 'path_string': 'str', + 'path_integer': 'int', + 'header_number': 'float', + }, + 'attribute_map': { + 'query_integer': 'query_integer', + 'query_string': 'query_string', + 'path_string': 'path_string', + 'path_integer': 'path_integer', + 'header_number': 'header_number', + }, + 'location_map': { + 'query_integer': 'query', + 'query_string': 'query', + 'path_string': 'path', + 'path_integer': 'path', + 'header_number': 'header', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__test_endpoint_enums_length_one + ) + + def __test_endpoint_parameters(self, number, double, pattern_without_delimiter, byte, **kwargs): # noqa: E501 + """Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 + + Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_endpoint_parameters(number, double, pattern_without_delimiter, byte, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param float number: None (required) + :param float double: None (required) + :param str pattern_without_delimiter: None (required) + :param str byte: None (required) + :param int integer: None + :param int int32: None + :param int int64: None + :param float float: None + :param str string: None + :param file binary: None + :param date date: None + :param datetime date_time: None + :param str password: None + :param str param_callback: None + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['number'] = number + kwargs['double'] = double + kwargs['pattern_without_delimiter'] = pattern_without_delimiter + kwargs['byte'] = byte + return self.call_with_http_info(**kwargs) + + self.test_endpoint_parameters = Endpoint( + settings={ + 'response_type': None, + 'auth': [ + 'http_basic_test' + ], + 'endpoint_path': '/fake', + 'operation_id': 'test_endpoint_parameters', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'number', + 'double', + 'pattern_without_delimiter', + 'byte', + 'integer', + 'int32', + 'int64', + 'float', + 'string', + 'binary', + 'date', + 'date_time', + 'password', + 'param_callback', + ], + 'required': [ + 'number', + 'double', + 'pattern_without_delimiter', + 'byte', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'number', + 'double', + 'pattern_without_delimiter', + 'integer', + 'int32', + 'float', + 'string', + 'password', + ] + }, + root_map={ + 'validations': { + ('number',): { + + 'inclusive_maximum': 543.2, + 'inclusive_minimum': 32.1, + }, + ('double',): { + + 'inclusive_maximum': 123.4, + 'inclusive_minimum': 67.8, + }, + ('pattern_without_delimiter',): { + + 'regex': { + 'pattern': r'^[A-Z].*', # noqa: E501 + }, + }, + ('integer',): { + + 'inclusive_maximum': 100, + 'inclusive_minimum': 10, + }, + ('int32',): { + + 'inclusive_maximum': 200, + 'inclusive_minimum': 20, + }, + ('float',): { + + 'inclusive_maximum': 987.6, + }, + ('string',): { + + 'regex': { + 'pattern': r'[a-z]', # noqa: E501 + 'flags': (re.IGNORECASE) + }, + }, + ('password',): { + 'max_length': 64, + 'min_length': 10, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'number': 'float', + 'double': 'float', + 'pattern_without_delimiter': 'str', + 'byte': 'str', + 'integer': 'int', + 'int32': 'int', + 'int64': 'int', + 'float': 'float', + 'string': 'str', + 'binary': 'file', + 'date': 'date', + 'date_time': 'datetime', + 'password': 'str', + 'param_callback': 'str', + }, + 'attribute_map': { + 'number': 'number', + 'double': 'double', + 'pattern_without_delimiter': 'pattern_without_delimiter', + 'byte': 'byte', + 'integer': 'integer', + 'int32': 'int32', + 'int64': 'int64', + 'float': 'float', + 'string': 'string', + 'binary': 'binary', + 'date': 'date', + 'date_time': 'dateTime', + 'password': 'password', + 'param_callback': 'callback', + }, + 'location_map': { + 'number': 'form', + 'double': 'form', + 'pattern_without_delimiter': 'form', + 'byte': 'form', + 'integer': 'form', + 'int32': 'form', + 'int64': 'form', + 'float': 'form', + 'string': 'form', + 'binary': 'form', + 'date': 'form', + 'date_time': 'form', + 'password': 'form', + 'param_callback': 'form', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/x-www-form-urlencoded' + ] + }, + api_client=api_client, + callable=__test_endpoint_parameters + ) + + def __test_enum_parameters(self, **kwargs): # noqa: E501 + """To test enum parameters # noqa: E501 + + To test enum parameters # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_enum_parameters(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param list[str] enum_header_string_array: Header parameter enum test (string array) + :param str enum_header_string: Header parameter enum test (string) + :param list[str] enum_query_string_array: Query parameter enum test (string array) + :param str enum_query_string: Query parameter enum test (string) + :param int enum_query_integer: Query parameter enum test (double) + :param float enum_query_double: Query parameter enum test (double) + :param list[str] enum_form_string_array: Form parameter enum test (string array) + :param str enum_form_string: Form parameter enum test (string) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + return self.call_with_http_info(**kwargs) + + self.test_enum_parameters = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake', + 'operation_id': 'test_enum_parameters', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'enum_header_string_array', + 'enum_header_string', + 'enum_query_string_array', + 'enum_query_string', + 'enum_query_integer', + 'enum_query_double', + 'enum_form_string_array', + 'enum_form_string', + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + 'enum_header_string_array', + 'enum_header_string', + 'enum_query_string_array', + 'enum_query_string', + 'enum_query_integer', + 'enum_query_double', + 'enum_form_string_array', + 'enum_form_string', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('enum_header_string_array',): { + + ">": ">", + "$": "$" + }, + ('enum_header_string',): { + + "_ABC": "_abc", + "-EFG": "-efg", + "(XYZ)": "(xyz)" + }, + ('enum_query_string_array',): { + + ">": ">", + "$": "$" + }, + ('enum_query_string',): { + + "_ABC": "_abc", + "-EFG": "-efg", + "(XYZ)": "(xyz)" + }, + ('enum_query_integer',): { + + "1": 1, + "-2": -2 + }, + ('enum_query_double',): { + + "1.1": 1.1, + "-1.2": -1.2 + }, + ('enum_form_string_array',): { + + ">": ">", + "$": "$" + }, + ('enum_form_string',): { + + "_ABC": "_abc", + "-EFG": "-efg", + "(XYZ)": "(xyz)" + }, + }, + 'openapi_types': { + 'enum_header_string_array': 'list[str]', + 'enum_header_string': 'str', + 'enum_query_string_array': 'list[str]', + 'enum_query_string': 'str', + 'enum_query_integer': 'int', + 'enum_query_double': 'float', + 'enum_form_string_array': 'list[str]', + 'enum_form_string': 'str', + }, + 'attribute_map': { + 'enum_header_string_array': 'enum_header_string_array', + 'enum_header_string': 'enum_header_string', + 'enum_query_string_array': 'enum_query_string_array', + 'enum_query_string': 'enum_query_string', + 'enum_query_integer': 'enum_query_integer', + 'enum_query_double': 'enum_query_double', + 'enum_form_string_array': 'enum_form_string_array', + 'enum_form_string': 'enum_form_string', + }, + 'location_map': { + 'enum_header_string_array': 'header', + 'enum_header_string': 'header', + 'enum_query_string_array': 'query', + 'enum_query_string': 'query', + 'enum_query_integer': 'query', + 'enum_query_double': 'query', + 'enum_form_string_array': 'form', + 'enum_form_string': 'form', + }, + 'collection_format_map': { + 'enum_header_string_array': 'csv', + 'enum_query_string_array': 'csv', + 'enum_form_string_array': 'csv', + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/x-www-form-urlencoded' + ] + }, + api_client=api_client, + callable=__test_enum_parameters + ) + + def __test_group_parameters(self, required_string_group, required_boolean_group, required_int64_group, **kwargs): # noqa: E501 + """Fake endpoint to test group parameters (optional) # noqa: E501 + + Fake endpoint to test group parameters (optional) # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_group_parameters(required_string_group, required_boolean_group, required_int64_group, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int required_string_group: Required String in group parameters (required) + :param bool required_boolean_group: Required Boolean in group parameters (required) + :param int required_int64_group: Required Integer in group parameters (required) + :param int string_group: String in group parameters + :param bool boolean_group: Boolean in group parameters + :param int int64_group: Integer in group parameters + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['required_string_group'] = required_string_group + kwargs['required_boolean_group'] = required_boolean_group + kwargs['required_int64_group'] = required_int64_group + return self.call_with_http_info(**kwargs) + + self.test_group_parameters = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake', + 'operation_id': 'test_group_parameters', + 'http_method': 'DELETE', + 'servers': [], + }, + params_map={ + 'all': [ + 'required_string_group', + 'required_boolean_group', + 'required_int64_group', + 'string_group', + 'boolean_group', + 'int64_group', + ], + 'required': [ + 'required_string_group', + 'required_boolean_group', + 'required_int64_group', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'required_string_group': 'int', + 'required_boolean_group': 'bool', + 'required_int64_group': 'int', + 'string_group': 'int', + 'boolean_group': 'bool', + 'int64_group': 'int', + }, + 'attribute_map': { + 'required_string_group': 'required_string_group', + 'required_boolean_group': 'required_boolean_group', + 'required_int64_group': 'required_int64_group', + 'string_group': 'string_group', + 'boolean_group': 'boolean_group', + 'int64_group': 'int64_group', + }, + 'location_map': { + 'required_string_group': 'query', + 'required_boolean_group': 'header', + 'required_int64_group': 'query', + 'string_group': 'query', + 'boolean_group': 'header', + 'int64_group': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__test_group_parameters + ) + + def __test_inline_additional_properties(self, param, **kwargs): # noqa: E501 + """test inline additionalProperties # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_inline_additional_properties(param, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param dict(str, str) param: request body (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['param'] = param + return self.call_with_http_info(**kwargs) + + self.test_inline_additional_properties = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake/inline-additionalProperties', + 'operation_id': 'test_inline_additional_properties', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'param', + ], + 'required': [ + 'param', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'param': 'dict(str, str)', + }, + 'attribute_map': { + }, + 'location_map': { + 'param': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client, + callable=__test_inline_additional_properties + ) + + def __test_json_form_data(self, param, param2, **kwargs): # noqa: E501 + """test json serialization of form data # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_json_form_data(param, param2, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str param: field1 (required) + :param str param2: field2 (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['param'] = param + kwargs['param2'] = param2 + return self.call_with_http_info(**kwargs) + + self.test_json_form_data = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/fake/jsonFormData', + 'operation_id': 'test_json_form_data', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'param', + 'param2', + ], + 'required': [ + 'param', + 'param2', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'param': 'str', + 'param2': 'str', + }, + 'attribute_map': { + 'param': 'param', + 'param2': 'param2', + }, + 'location_map': { + 'param': 'form', + 'param2': 'form', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/x-www-form-urlencoded' + ] + }, + api_client=api_client, + callable=__test_json_form_data + ) + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint Args: - number (float): None double (float): None pattern_without_delimiter (str): None byte (str): None - - Keyword Args: - integer (int): None. [optional] - int32 (int): None. [optional] - int64 (int): None. [optional] - float (float): None. [optional] - string (str): None. [optional] - binary (file): None. [optional] - date (date): None. [optional] - date_time (datetime): None. [optional] - password (str): None. [optional] - param_callback (str): None. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_endpoint_parameters_with_http_info(number, double, pattern_without_delimiter, byte, **kwargs) # noqa: E501 - else: - (data) = self.test_endpoint_parameters_with_http_info(number, double, pattern_without_delimiter, byte, **kwargs) # noqa: E501 - return data + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable - def test_endpoint_parameters_with_http_info(self, number, double, pattern_without_delimiter, byte, **kwargs): # noqa: E501 - """Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 - - Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_endpoint_parameters_with_http_info(number, double, pattern_without_delimiter, byte, async_req=True) - >>> result = thread.get() - - Args: - number (float): None double (float): None pattern_without_delimiter (str): None byte (str): None - - Keyword Args: - integer (int): None. [optional] - int32 (int): None. [optional] - int64 (int): None. [optional] - float (float): None. [optional] - string (str): None. [optional] - binary (file): None. [optional] - date (date): None. [optional] - date_time (datetime): None. [optional] - password (str): None. [optional] - param_callback (str): None. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['number', 'double', 'pattern_without_delimiter', 'byte', 'integer', 'int32', 'int64', 'float', 'string', 'binary', 'date', 'date_time', 'password', 'param_callback'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_endpoint_parameters" % key + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'number' is set - if ('number' not in local_var_params or - local_var_params['number'] is None): - raise ApiValueError("Missing the required parameter `number` when calling `test_endpoint_parameters`") # noqa: E501 - # verify the required parameter 'double' is set - if ('double' not in local_var_params or - local_var_params['double'] is None): - raise ApiValueError("Missing the required parameter `double` when calling `test_endpoint_parameters`") # noqa: E501 - # verify the required parameter 'pattern_without_delimiter' is set - if ('pattern_without_delimiter' not in local_var_params or - local_var_params['pattern_without_delimiter'] is None): - raise ApiValueError("Missing the required parameter `pattern_without_delimiter` when calling `test_endpoint_parameters`") # noqa: E501 - # verify the required parameter 'byte' is set - if ('byte' not in local_var_params or - local_var_params['byte'] is None): - raise ApiValueError("Missing the required parameter `byte` when calling `test_endpoint_parameters`") # noqa: E501 - if 'number' in local_var_params and local_var_params['number'] > 543.2: # noqa: E501 - raise ApiValueError("Invalid value for parameter `number` when calling `test_endpoint_parameters`, must be a value less than or equal to `543.2`") # noqa: E501 - if 'number' in local_var_params and local_var_params['number'] < 32.1: # noqa: E501 - raise ApiValueError("Invalid value for parameter `number` when calling `test_endpoint_parameters`, must be a value greater than or equal to `32.1`") # noqa: E501 - if 'double' in local_var_params and local_var_params['double'] > 123.4: # noqa: E501 - raise ApiValueError("Invalid value for parameter `double` when calling `test_endpoint_parameters`, must be a value less than or equal to `123.4`") # noqa: E501 - if 'double' in local_var_params and local_var_params['double'] < 67.8: # noqa: E501 - raise ApiValueError("Invalid value for parameter `double` when calling `test_endpoint_parameters`, must be a value greater than or equal to `67.8`") # noqa: E501 - if 'pattern_without_delimiter' in local_var_params and not re.search(r'^[A-Z].*', local_var_params['pattern_without_delimiter']): # noqa: E501 - raise ApiValueError("Invalid value for parameter `pattern_without_delimiter` when calling `test_endpoint_parameters`, must conform to the pattern `/^[A-Z].*/`") # noqa: E501 - if 'integer' in local_var_params and local_var_params['integer'] > 100: # noqa: E501 - raise ApiValueError("Invalid value for parameter `integer` when calling `test_endpoint_parameters`, must be a value less than or equal to `100`") # noqa: E501 - if 'integer' in local_var_params and local_var_params['integer'] < 10: # noqa: E501 - raise ApiValueError("Invalid value for parameter `integer` when calling `test_endpoint_parameters`, must be a value greater than or equal to `10`") # noqa: E501 - if 'int32' in local_var_params and local_var_params['int32'] > 200: # noqa: E501 - raise ApiValueError("Invalid value for parameter `int32` when calling `test_endpoint_parameters`, must be a value less than or equal to `200`") # noqa: E501 - if 'int32' in local_var_params and local_var_params['int32'] < 20: # noqa: E501 - raise ApiValueError("Invalid value for parameter `int32` when calling `test_endpoint_parameters`, must be a value greater than or equal to `20`") # noqa: E501 - if 'float' in local_var_params and local_var_params['float'] > 987.6: # noqa: E501 - raise ApiValueError("Invalid value for parameter `float` when calling `test_endpoint_parameters`, must be a value less than or equal to `987.6`") # noqa: E501 - if 'string' in local_var_params and not re.search(r'[a-z]', local_var_params['string'], flags=re.IGNORECASE): # noqa: E501 - raise ApiValueError("Invalid value for parameter `string` when calling `test_endpoint_parameters`, must conform to the pattern `/[a-z]/i`") # noqa: E501 - if ('password' in local_var_params and - len(local_var_params['password']) > 64): - raise ApiValueError("Invalid value for parameter `password` when calling `test_endpoint_parameters`, length must be less than or equal to `64`") # noqa: E501 - if ('password' in local_var_params and - len(local_var_params['password']) < 10): - raise ApiValueError("Invalid value for parameter `password` when calling `test_endpoint_parameters`, length must be greater than or equal to `10`") # noqa: E501 - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - if 'integer' in local_var_params: - form_params.append(('integer', local_var_params['integer'])) # noqa: E501 - if 'int32' in local_var_params: - form_params.append(('int32', local_var_params['int32'])) # noqa: E501 - if 'int64' in local_var_params: - form_params.append(('int64', local_var_params['int64'])) # noqa: E501 - if 'number' in local_var_params: - form_params.append(('number', local_var_params['number'])) # noqa: E501 - if 'float' in local_var_params: - form_params.append(('float', local_var_params['float'])) # noqa: E501 - if 'double' in local_var_params: - form_params.append(('double', local_var_params['double'])) # noqa: E501 - if 'string' in local_var_params: - form_params.append(('string', local_var_params['string'])) # noqa: E501 - if 'pattern_without_delimiter' in local_var_params: - form_params.append(('pattern_without_delimiter', local_var_params['pattern_without_delimiter'])) # noqa: E501 - if 'byte' in local_var_params: - form_params.append(('byte', local_var_params['byte'])) # noqa: E501 - if 'binary' in local_var_params: - local_var_files['binary'] = local_var_params['binary'] # noqa: E501 - if 'date' in local_var_params: - form_params.append(('date', local_var_params['date'])) # noqa: E501 - if 'date_time' in local_var_params: - form_params.append(('dateTime', local_var_params['date_time'])) # noqa: E501 - if 'password' in local_var_params: - form_params.append(('password', local_var_params['password'])) # noqa: E501 - if 'param_callback' in local_var_params: - form_params.append(('callback', local_var_params['param_callback'])) # noqa: E501 - - body_params = None - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/x-www-form-urlencoded']) # noqa: E501 - - # Authentication setting - auth_settings = ['http_basic_test'] # noqa: E501 - - return self.api_client.call_api( - '/fake', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_enum_parameters(self, **kwargs): # noqa: E501 - """To test enum parameters # noqa: E501 - - To test enum parameters # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_enum_parameters(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - enum_header_string_array (list[str]): Header parameter enum test (string array). [optional] - enum_header_string (str): Header parameter enum test (string). [optional] if omitted the server will use the default value of '-efg' - enum_query_string_array (list[str]): Query parameter enum test (string array). [optional] - enum_query_string (str): Query parameter enum test (string). [optional] if omitted the server will use the default value of '-efg' - enum_query_integer (int): Query parameter enum test (double). [optional] - enum_query_double (float): Query parameter enum test (double). [optional] - enum_form_string_array (list[str]): Form parameter enum test (string array). [optional] if omitted the server will use the default value of '$' - enum_form_string (str): Form parameter enum test (string). [optional] if omitted the server will use the default value of '-efg' - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_enum_parameters_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.test_enum_parameters_with_http_info(**kwargs) # noqa: E501 - return data - - def test_enum_parameters_with_http_info(self, **kwargs): # noqa: E501 - """To test enum parameters # noqa: E501 - - To test enum parameters # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_enum_parameters_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - enum_header_string_array (list[str]): Header parameter enum test (string array). [optional] - enum_header_string (str): Header parameter enum test (string). [optional] if omitted the server will use the default value of '-efg' - enum_query_string_array (list[str]): Query parameter enum test (string array). [optional] - enum_query_string (str): Query parameter enum test (string). [optional] if omitted the server will use the default value of '-efg' - enum_query_integer (int): Query parameter enum test (double). [optional] - enum_query_double (float): Query parameter enum test (double). [optional] - enum_form_string_array (list[str]): Form parameter enum test (string array). [optional] if omitted the server will use the default value of '$' - enum_form_string (str): Form parameter enum test (string). [optional] if omitted the server will use the default value of '-efg' - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['enum_header_string_array', 'enum_header_string', 'enum_query_string_array', 'enum_query_string', 'enum_query_integer', 'enum_query_double', 'enum_form_string_array', 'enum_form_string'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_enum_parameters" % key + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] ) - local_var_params[key] = val - del local_var_params['kwargs'] - allowed_values = [">", "$"] # noqa: E501 - if ('enum_header_string_array' in local_var_params and - not set(local_var_params['enum_header_string_array']).issubset(set(allowed_values))): # noqa: E501 - raise ValueError( - "Invalid values for `enum_header_string_array` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(local_var_params['enum_header_string_array']) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) - allowed_values = ["_abc", "-efg", "(xyz)"] # noqa: E501 - if ('enum_header_string' in local_var_params and - local_var_params['enum_header_string'] not in allowed_values): - raise ValueError( - "Invalid value for `enum_header_string` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['enum_header_string'], allowed_values) - ) - allowed_values = [">", "$"] # noqa: E501 - if ('enum_query_string_array' in local_var_params and - not set(local_var_params['enum_query_string_array']).issubset(set(allowed_values))): # noqa: E501 - raise ValueError( - "Invalid values for `enum_query_string_array` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(local_var_params['enum_query_string_array']) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) - allowed_values = ["_abc", "-efg", "(xyz)"] # noqa: E501 - if ('enum_query_string' in local_var_params and - local_var_params['enum_query_string'] not in allowed_values): - raise ValueError( - "Invalid value for `enum_query_string` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['enum_query_string'], allowed_values) - ) - allowed_values = [1, -2] # noqa: E501 - if ('enum_query_integer' in local_var_params and - local_var_params['enum_query_integer'] not in allowed_values): - raise ValueError( - "Invalid value for `enum_query_integer` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['enum_query_integer'], allowed_values) - ) - allowed_values = [1.1, -1.2] # noqa: E501 - if ('enum_query_double' in local_var_params and - local_var_params['enum_query_double'] not in allowed_values): - raise ValueError( - "Invalid value for `enum_query_double` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['enum_query_double'], allowed_values) - ) - allowed_values = [">", "$"] # noqa: E501 - if ('enum_form_string_array' in local_var_params and - not set(local_var_params['enum_form_string_array']).issubset(set(allowed_values))): # noqa: E501 - raise ValueError( - "Invalid values for `enum_form_string_array` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(local_var_params['enum_form_string_array']) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) - allowed_values = ["_abc", "-efg", "(xyz)"] # noqa: E501 - if ('enum_form_string' in local_var_params and - local_var_params['enum_form_string'] not in allowed_values): - raise ValueError( - "Invalid value for `enum_form_string` ({0}), must be one of {1}" # noqa: E501 - .format(local_var_params['enum_form_string'], allowed_values) - ) - collection_formats = {} + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } - path_params = {} + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format - query_params = [] - if 'enum_query_string_array' in local_var_params: - query_params.append(('enum_query_string_array', local_var_params['enum_query_string_array'])) # noqa: E501 - collection_formats['enum_query_string_array'] = 'csv' # noqa: E501 - if 'enum_query_string' in local_var_params: - query_params.append(('enum_query_string', local_var_params['enum_query_string'])) # noqa: E501 - if 'enum_query_integer' in local_var_params: - query_params.append(('enum_query_integer', local_var_params['enum_query_integer'])) # noqa: E501 - if 'enum_query_double' in local_var_params: - query_params.append(('enum_query_double', local_var_params['enum_query_double'])) # noqa: E501 + return params - header_params = {} - if 'enum_header_string_array' in local_var_params: - header_params['enum_header_string_array'] = local_var_params['enum_header_string_array'] # noqa: E501 - collection_formats['enum_header_string_array'] = 'csv' # noqa: E501 - if 'enum_header_string' in local_var_params: - header_params['enum_header_string'] = local_var_params['enum_header_string'] # noqa: E501 - - form_params = [] - local_var_files = {} - if 'enum_form_string_array' in local_var_params: - form_params.append(('enum_form_string_array', local_var_params['enum_form_string_array'])) # noqa: E501 - collection_formats['enum_form_string_array'] = 'csv' # noqa: E501 - if 'enum_form_string' in local_var_params: - form_params.append(('enum_form_string', local_var_params['enum_form_string'])) # noqa: E501 - - body_params = None - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/x-www-form-urlencoded']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_group_parameters(self, required_string_group, required_boolean_group, required_int64_group, **kwargs): # noqa: E501 - """Fake endpoint to test group parameters (optional) # noqa: E501 - - Fake endpoint to test group parameters (optional) # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_group_parameters(required_string_group, required_boolean_group, required_int64_group, async_req=True) - >>> result = thread.get() - - Args: - required_string_group (int): Required String in group parameters required_boolean_group (bool): Required Boolean in group parameters required_int64_group (int): Required Integer in group parameters - - Keyword Args: - string_group (int): String in group parameters. [optional] - boolean_group (bool): Boolean in group parameters. [optional] - int64_group (int): Integer in group parameters. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_group_parameters_with_http_info(required_string_group, required_boolean_group, required_int64_group, **kwargs) # noqa: E501 - else: - (data) = self.test_group_parameters_with_http_info(required_string_group, required_boolean_group, required_int64_group, **kwargs) # noqa: E501 - return data + return self.callable(self, *args, **kwargs) - def test_group_parameters_with_http_info(self, required_string_group, required_boolean_group, required_int64_group, **kwargs): # noqa: E501 - """Fake endpoint to test group parameters (optional) # noqa: E501 + def call_with_http_info(self, **kwargs): - Fake endpoint to test group parameters (optional) # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_group_parameters_with_http_info(required_string_group, required_boolean_group, required_int64_group, async_req=True) - >>> result = thread.get() - - Args: - required_string_group (int): Required String in group parameters required_boolean_group (bool): Required Boolean in group parameters required_int64_group (int): Required Integer in group parameters - - Keyword Args: - string_group (int): String in group parameters. [optional] - boolean_group (bool): Boolean in group parameters. [optional] - int64_group (int): Integer in group parameters. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['required_string_group', 'required_boolean_group', 'required_int64_group', 'string_group', 'boolean_group', 'int64_group'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_group_parameters" % key + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'required_string_group' is set - if ('required_string_group' not in local_var_params or - local_var_params['required_string_group'] is None): - raise ApiValueError("Missing the required parameter `required_string_group` when calling `test_group_parameters`") # noqa: E501 - # verify the required parameter 'required_boolean_group' is set - if ('required_boolean_group' not in local_var_params or - local_var_params['required_boolean_group'] is None): - raise ApiValueError("Missing the required parameter `required_boolean_group` when calling `test_group_parameters`") # noqa: E501 - # verify the required parameter 'required_int64_group' is set - if ('required_int64_group' not in local_var_params or - local_var_params['required_int64_group'] is None): - raise ApiValueError("Missing the required parameter `required_int64_group` when calling `test_group_parameters`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - if 'required_string_group' in local_var_params: - query_params.append(('required_string_group', local_var_params['required_string_group'])) # noqa: E501 - if 'required_int64_group' in local_var_params: - query_params.append(('required_int64_group', local_var_params['required_int64_group'])) # noqa: E501 - if 'string_group' in local_var_params: - query_params.append(('string_group', local_var_params['string_group'])) # noqa: E501 - if 'int64_group' in local_var_params: - query_params.append(('int64_group', local_var_params['int64_group'])) # noqa: E501 - - header_params = {} - if 'required_boolean_group' in local_var_params: - header_params['required_boolean_group'] = local_var_params['required_boolean_group'] # noqa: E501 - if 'boolean_group' in local_var_params: - header_params['boolean_group'] = local_var_params['boolean_group'] # noqa: E501 - - form_params = [] - local_var_files = {} - - body_params = None - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake', 'DELETE', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_inline_additional_properties(self, param, **kwargs): # noqa: E501 - """test inline additionalProperties # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_inline_additional_properties(param, async_req=True) - >>> result = thread.get() - - Args: - param (dict(str, str)): request body - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_inline_additional_properties_with_http_info(param, **kwargs) # noqa: E501 else: - (data) = self.test_inline_additional_properties_with_http_info(param, **kwargs) # noqa: E501 - return data + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None - def test_inline_additional_properties_with_http_info(self, param, **kwargs): # noqa: E501 - """test inline additionalProperties # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_inline_additional_properties_with_http_info(param, async_req=True) - >>> result = thread.get() - - Args: - param (dict(str, str)): request body - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['param'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_inline_additional_properties" % key + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'param' is set - if ('param' not in local_var_params or - local_var_params['param'] is None): - raise ApiValueError("Missing the required parameter `param` when calling `test_inline_additional_properties`") # noqa: E501 - collection_formats = {} + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) - path_params = {} + self.__validate_inputs(kwargs) - query_params = [] + params = self.__gather_params(kwargs) - header_params = {} + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) - form_params = [] - local_var_files = {} - - body_params = None - if 'param' in local_var_params: - body_params = local_var_params['param'] - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list return self.api_client.call_api( - '/fake/inline-additionalProperties', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def test_json_form_data(self, param, param2, **kwargs): # noqa: E501 - """test json serialization of form data # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_json_form_data(param, param2, async_req=True) - >>> result = thread.get() - - Args: - param (str): field1 param2 (str): field2 - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_json_form_data_with_http_info(param, param2, **kwargs) # noqa: E501 - else: - (data) = self.test_json_form_data_with_http_info(param, param2, **kwargs) # noqa: E501 - return data - - def test_json_form_data_with_http_info(self, param, param2, **kwargs): # noqa: E501 - """test json serialization of form data # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_json_form_data_with_http_info(param, param2, async_req=True) - >>> result = thread.get() - - Args: - param (str): field1 param2 (str): field2 - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['param', 'param2'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_json_form_data" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'param' is set - if ('param' not in local_var_params or - local_var_params['param'] is None): - raise ApiValueError("Missing the required parameter `param` when calling `test_json_form_data`") # noqa: E501 - # verify the required parameter 'param2' is set - if ('param2' not in local_var_params or - local_var_params['param2'] is None): - raise ApiValueError("Missing the required parameter `param2` when calling `test_json_form_data`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - if 'param' in local_var_params: - form_params.append(('param', local_var_params['param'])) # noqa: E501 - if 'param2' in local_var_params: - form_params.append(('param2', local_var_params['param2'])) # noqa: E501 - - body_params = None - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/x-www-form-urlencoded']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/fake/jsonFormData', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/samples/client/petstore/python-experimental/petstore_api/api/fake_classname_tags_123_api.py b/samples/client/petstore/python-experimental/petstore_api/api/fake_classname_tags_123_api.py index f054a0a8ec..6811a990bb 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api/fake_classname_tags_123_api.py +++ b/samples/client/petstore/python-experimental/petstore_api/api/fake_classname_tags_123_api.py @@ -18,10 +18,14 @@ import re # noqa: F401 import six from petstore_api.api_client import ApiClient -from petstore_api.exceptions import ( # noqa: F401 +from petstore_api.exceptions import ( ApiTypeError, ApiValueError ) +from petstore_api.model_utils import ( + check_allowed_values, + check_validations +) class FakeClassnameTags123Api(object): @@ -36,122 +40,271 @@ class FakeClassnameTags123Api(object): api_client = ApiClient() self.api_client = api_client - def test_classname(self, body, **kwargs): # noqa: E501 - """To test class name in snake case # noqa: E501 + def __test_classname(self, body, **kwargs): # noqa: E501 + """To test class name in snake case # noqa: E501 - To test class name in snake case # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_classname(body, async_req=True) - >>> result = thread.get() + To test class name in snake case # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.test_classname(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param Client body: client model (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: Client + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.test_classname = Endpoint( + settings={ + 'response_type': 'Client', + 'auth': [ + 'api_key_query' + ], + 'endpoint_path': '/fake_classname_test', + 'operation_id': 'test_classname', + 'http_method': 'PATCH', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'Client', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'application/json' + ] + }, + api_client=api_client, + callable=__test_classname + ) + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint Args: - body (Client): client model - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Client: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.test_classname_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.test_classname_with_http_info(body, **kwargs) # noqa: E501 - return data + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable - def test_classname_with_http_info(self, body, **kwargs): # noqa: E501 - """To test class name in snake case # noqa: E501 - - To test class name in snake case # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.test_classname_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (Client): client model - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Client: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method test_classname" % key + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `test_classname`") # noqa: E501 - collection_formats = {} + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] + ) - path_params = {} + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } - query_params = [] + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format - header_params = {} + return params - form_params = [] - local_var_files = {} + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class + """ + return self.callable(self, *args, **kwargs) - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/json']) # noqa: E501 + def call_with_http_info(self, **kwargs): - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json']) # noqa: E501 + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) + ) + else: + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None - # Authentication setting - auth_settings = ['api_key_query'] # noqa: E501 + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: + raise ApiTypeError( + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) + ) + + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) + + self.__validate_inputs(kwargs) + + params = self.__gather_params(kwargs) + + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) + + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list return self.api_client.call_api( - '/fake_classname_test', 'PATCH', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='Client', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/samples/client/petstore/python-experimental/petstore_api/api/pet_api.py b/samples/client/petstore/python-experimental/petstore_api/api/pet_api.py index bd1b58aa9e..29bbead6c3 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api/pet_api.py +++ b/samples/client/petstore/python-experimental/petstore_api/api/pet_api.py @@ -18,10 +18,14 @@ import re # noqa: F401 import six from petstore_api.api_client import ApiClient -from petstore_api.exceptions import ( # noqa: F401 +from petstore_api.exceptions import ( ApiTypeError, ApiValueError ) +from petstore_api.model_utils import ( + check_allowed_values, + check_validations +) class PetApi(object): @@ -36,1078 +40,963 @@ class PetApi(object): api_client = ApiClient() self.api_client = api_client - def add_pet(self, body, **kwargs): # noqa: E501 - """Add a new pet to the store # noqa: E501 + def __add_pet(self, body, **kwargs): # noqa: E501 + """Add a new pet to the store # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.add_pet(body, async_req=True) - >>> result = thread.get() + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.add_pet(body, async_req=True) + >>> result = thread.get() - Args: - body (Pet): Pet object that needs to be added to the store - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. + :param async_req bool: execute request asynchronously + :param Pet body: Pet object that needs to be added to the store (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.add_pet_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.add_pet_with_http_info(body, **kwargs) # noqa: E501 - return data - - def add_pet_with_http_info(self, body, **kwargs): # noqa: E501 - """Add a new pet to the store # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.add_pet_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (Pet): Pet object that needs to be added to the store - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method add_pet" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `add_pet`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json', 'application/xml']) # noqa: E501 - - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 - - return self.api_client.call_api( - '/pet', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def delete_pet(self, pet_id, **kwargs): # noqa: E501 - """Deletes a pet # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_pet(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): Pet id to delete - - Keyword Args: - api_key (str): [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.delete_pet_with_http_info(pet_id, **kwargs) # noqa: E501 - else: - (data) = self.delete_pet_with_http_info(pet_id, **kwargs) # noqa: E501 - return data - - def delete_pet_with_http_info(self, pet_id, **kwargs): # noqa: E501 - """Deletes a pet # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_pet_with_http_info(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): Pet id to delete - - Keyword Args: - api_key (str): [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['pet_id', 'api_key'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method delete_pet" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'pet_id' is set - if ('pet_id' not in local_var_params or - local_var_params['pet_id'] is None): - raise ApiValueError("Missing the required parameter `pet_id` when calling `delete_pet`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'pet_id' in local_var_params: - path_params['petId'] = local_var_params['pet_id'] # noqa: E501 - - query_params = [] - - header_params = {} - if 'api_key' in local_var_params: - header_params['api_key'] = local_var_params['api_key'] # noqa: E501 - - form_params = [] - local_var_files = {} - - body_params = None - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 - - return self.api_client.call_api( - '/pet/{petId}', 'DELETE', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def find_pets_by_status(self, status, **kwargs): # noqa: E501 - """Finds Pets by status # noqa: E501 - - Multiple status values can be provided with comma separated strings # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.find_pets_by_status(status, async_req=True) - >>> result = thread.get() - - Args: - status (list[str]): Status values that need to be considered for filter - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - list[Pet]: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.find_pets_by_status_with_http_info(status, **kwargs) # noqa: E501 - else: - (data) = self.find_pets_by_status_with_http_info(status, **kwargs) # noqa: E501 - return data - - def find_pets_by_status_with_http_info(self, status, **kwargs): # noqa: E501 - """Finds Pets by status # noqa: E501 - - Multiple status values can be provided with comma separated strings # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.find_pets_by_status_with_http_info(status, async_req=True) - >>> result = thread.get() - - Args: - status (list[str]): Status values that need to be considered for filter - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - list[Pet]: - """ - - local_var_params = locals() - - all_params = ['status'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method find_pets_by_status" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'status' is set - if ('status' not in local_var_params or - local_var_params['status'] is None): - raise ApiValueError("Missing the required parameter `status` when calling `find_pets_by_status`") # noqa: E501 - allowed_values = ["available", "pending", "sold"] # noqa: E501 - if ('status' in local_var_params and - not set(local_var_params['status']).issubset(set(allowed_values))): # noqa: E501 - raise ValueError( - "Invalid values for `status` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(local_var_params['status']) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) - collection_formats = {} + self.add_pet = Endpoint( + settings={ + 'response_type': None, + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet', + 'operation_id': 'add_pet', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'Pet', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json', + 'application/xml' + ] + }, + api_client=api_client, + callable=__add_pet + ) - path_params = {} + def __delete_pet(self, pet_id, **kwargs): # noqa: E501 + """Deletes a pet # noqa: E501 - query_params = [] - if 'status' in local_var_params: - query_params.append(('status', local_var_params['status'])) # noqa: E501 - collection_formats['status'] = 'csv' # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.delete_pet(pet_id, async_req=True) + >>> result = thread.get() - header_params = {} + :param async_req bool: execute request asynchronously + :param int pet_id: Pet id to delete (required) + :param str api_key: + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['pet_id'] = pet_id + return self.call_with_http_info(**kwargs) - form_params = [] - local_var_files = {} + self.delete_pet = Endpoint( + settings={ + 'response_type': None, + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet/{petId}', + 'operation_id': 'delete_pet', + 'http_method': 'DELETE', + 'servers': [], + }, + params_map={ + 'all': [ + 'pet_id', + 'api_key', + ], + 'required': [ + 'pet_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'pet_id': 'int', + 'api_key': 'str', + }, + 'attribute_map': { + 'pet_id': 'petId', + 'api_key': 'api_key', + }, + 'location_map': { + 'pet_id': 'path', + 'api_key': 'header', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__delete_pet + ) - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 + def __find_pets_by_status(self, status, **kwargs): # noqa: E501 + """Finds Pets by status # noqa: E501 - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 + Multiple status values can be provided with comma separated strings # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.find_pets_by_status(status, async_req=True) + >>> result = thread.get() - return self.api_client.call_api( - '/pet/findByStatus', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='list[Pet]', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + :param async_req bool: execute request asynchronously + :param list[str] status: Status values that need to be considered for filter (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: list[Pet] + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['status'] = status + return self.call_with_http_info(**kwargs) - def find_pets_by_tags(self, tags, **kwargs): # noqa: E501 - """Finds Pets by tags # noqa: E501 + self.find_pets_by_status = Endpoint( + settings={ + 'response_type': 'list[Pet]', + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet/findByStatus', + 'operation_id': 'find_pets_by_status', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'status', + ], + 'required': [ + 'status', + ], + 'nullable': [ + ], + 'enum': [ + 'status', + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + ('status',): { - Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.find_pets_by_tags(tags, async_req=True) - >>> result = thread.get() + "AVAILABLE": "available", + "PENDING": "pending", + "SOLD": "sold" + }, + }, + 'openapi_types': { + 'status': 'list[str]', + }, + 'attribute_map': { + 'status': 'status', + }, + 'location_map': { + 'status': 'query', + }, + 'collection_format_map': { + 'status': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__find_pets_by_status + ) + + def __find_pets_by_tags(self, tags, **kwargs): # noqa: E501 + """Finds Pets by tags # noqa: E501 + + Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.find_pets_by_tags(tags, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param list[str] tags: Tags to filter by (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: list[Pet] + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['tags'] = tags + return self.call_with_http_info(**kwargs) + + self.find_pets_by_tags = Endpoint( + settings={ + 'response_type': 'list[Pet]', + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet/findByTags', + 'operation_id': 'find_pets_by_tags', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'tags', + ], + 'required': [ + 'tags', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'tags': 'list[str]', + }, + 'attribute_map': { + 'tags': 'tags', + }, + 'location_map': { + 'tags': 'query', + }, + 'collection_format_map': { + 'tags': 'csv', + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__find_pets_by_tags + ) + + def __get_pet_by_id(self, pet_id, **kwargs): # noqa: E501 + """Find pet by ID # noqa: E501 + + Returns a single pet # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.get_pet_by_id(pet_id, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int pet_id: ID of pet to return (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: Pet + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['pet_id'] = pet_id + return self.call_with_http_info(**kwargs) + + self.get_pet_by_id = Endpoint( + settings={ + 'response_type': 'Pet', + 'auth': [ + 'api_key' + ], + 'endpoint_path': '/pet/{petId}', + 'operation_id': 'get_pet_by_id', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'pet_id', + ], + 'required': [ + 'pet_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'pet_id': 'int', + }, + 'attribute_map': { + 'pet_id': 'petId', + }, + 'location_map': { + 'pet_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__get_pet_by_id + ) + + def __update_pet(self, body, **kwargs): # noqa: E501 + """Update an existing pet # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.update_pet(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param Pet body: Pet object that needs to be added to the store (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.update_pet = Endpoint( + settings={ + 'response_type': None, + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet', + 'operation_id': 'update_pet', + 'http_method': 'PUT', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'Pet', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/json', + 'application/xml' + ] + }, + api_client=api_client, + callable=__update_pet + ) + + def __update_pet_with_form(self, pet_id, **kwargs): # noqa: E501 + """Updates a pet in the store with form data # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.update_pet_with_form(pet_id, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int pet_id: ID of pet that needs to be updated (required) + :param str name: Updated name of the pet + :param str status: Updated status of the pet + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['pet_id'] = pet_id + return self.call_with_http_info(**kwargs) + + self.update_pet_with_form = Endpoint( + settings={ + 'response_type': None, + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet/{petId}', + 'operation_id': 'update_pet_with_form', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'pet_id', + 'name', + 'status', + ], + 'required': [ + 'pet_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'pet_id': 'int', + 'name': 'str', + 'status': 'str', + }, + 'attribute_map': { + 'pet_id': 'petId', + 'name': 'name', + 'status': 'status', + }, + 'location_map': { + 'pet_id': 'path', + 'name': 'form', + 'status': 'form', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [ + 'application/x-www-form-urlencoded' + ] + }, + api_client=api_client, + callable=__update_pet_with_form + ) + + def __upload_file(self, pet_id, **kwargs): # noqa: E501 + """uploads an image # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.upload_file(pet_id, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int pet_id: ID of pet to update (required) + :param str additional_metadata: Additional data to pass to server + :param file file: file to upload + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: ApiResponse + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['pet_id'] = pet_id + return self.call_with_http_info(**kwargs) + + self.upload_file = Endpoint( + settings={ + 'response_type': 'ApiResponse', + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/pet/{petId}/uploadImage', + 'operation_id': 'upload_file', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'pet_id', + 'additional_metadata', + 'file', + ], + 'required': [ + 'pet_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'pet_id': 'int', + 'additional_metadata': 'str', + 'file': 'file', + }, + 'attribute_map': { + 'pet_id': 'petId', + 'additional_metadata': 'additionalMetadata', + 'file': 'file', + }, + 'location_map': { + 'pet_id': 'path', + 'additional_metadata': 'form', + 'file': 'form', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'multipart/form-data' + ] + }, + api_client=api_client, + callable=__upload_file + ) + + def __upload_file_with_required_file(self, pet_id, required_file, **kwargs): # noqa: E501 + """uploads an image (required) # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.upload_file_with_required_file(pet_id, required_file, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int pet_id: ID of pet to update (required) + :param file required_file: file to upload (required) + :param str additional_metadata: Additional data to pass to server + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: ApiResponse + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['pet_id'] = pet_id + kwargs['required_file'] = required_file + return self.call_with_http_info(**kwargs) + + self.upload_file_with_required_file = Endpoint( + settings={ + 'response_type': 'ApiResponse', + 'auth': [ + 'petstore_auth' + ], + 'endpoint_path': '/fake/{petId}/uploadImageWithRequiredFile', + 'operation_id': 'upload_file_with_required_file', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'pet_id', + 'required_file', + 'additional_metadata', + ], + 'required': [ + 'pet_id', + 'required_file', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'pet_id': 'int', + 'required_file': 'file', + 'additional_metadata': 'str', + }, + 'attribute_map': { + 'pet_id': 'petId', + 'required_file': 'requiredFile', + 'additional_metadata': 'additionalMetadata', + }, + 'location_map': { + 'pet_id': 'path', + 'required_file': 'form', + 'additional_metadata': 'form', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [ + 'multipart/form-data' + ] + }, + api_client=api_client, + callable=__upload_file_with_required_file + ) + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint Args: - tags (list[str]): Tags to filter by - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - list[Pet]: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.find_pets_by_tags_with_http_info(tags, **kwargs) # noqa: E501 - else: - (data) = self.find_pets_by_tags_with_http_info(tags, **kwargs) # noqa: E501 - return data + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable - def find_pets_by_tags_with_http_info(self, tags, **kwargs): # noqa: E501 - """Finds Pets by tags # noqa: E501 - - Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.find_pets_by_tags_with_http_info(tags, async_req=True) - >>> result = thread.get() - - Args: - tags (list[str]): Tags to filter by - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - list[Pet]: - """ - - local_var_params = locals() - - all_params = ['tags'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method find_pets_by_tags" % key + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'tags' is set - if ('tags' not in local_var_params or - local_var_params['tags'] is None): - raise ApiValueError("Missing the required parameter `tags` when calling `find_pets_by_tags`") # noqa: E501 - collection_formats = {} - - path_params = {} - - query_params = [] - if 'tags' in local_var_params: - query_params.append(('tags', local_var_params['tags'])) # noqa: E501 - collection_formats['tags'] = 'csv' # noqa: E501 - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 - - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 - - return self.api_client.call_api( - '/pet/findByTags', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='list[Pet]', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def get_pet_by_id(self, pet_id, **kwargs): # noqa: E501 - """Find pet by ID # noqa: E501 - - Returns a single pet # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_pet_by_id(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet to return - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Pet: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.get_pet_by_id_with_http_info(pet_id, **kwargs) # noqa: E501 - else: - (data) = self.get_pet_by_id_with_http_info(pet_id, **kwargs) # noqa: E501 - return data - - def get_pet_by_id_with_http_info(self, pet_id, **kwargs): # noqa: E501 - """Find pet by ID # noqa: E501 - - Returns a single pet # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_pet_by_id_with_http_info(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet to return - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Pet: - """ - - local_var_params = locals() - - all_params = ['pet_id'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method get_pet_by_id" % key + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'pet_id' is set - if ('pet_id' not in local_var_params or - local_var_params['pet_id'] is None): - raise ApiValueError("Missing the required parameter `pet_id` when calling `get_pet_by_id`") # noqa: E501 - collection_formats = {} + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } - path_params = {} - if 'pet_id' in local_var_params: - path_params['petId'] = local_var_params['pet_id'] # noqa: E501 + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format - query_params = [] + return params - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 - - # Authentication setting - auth_settings = ['api_key'] # noqa: E501 - - return self.api_client.call_api( - '/pet/{petId}', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='Pet', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def update_pet(self, body, **kwargs): # noqa: E501 - """Update an existing pet # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.update_pet(body, async_req=True) - >>> result = thread.get() - - Args: - body (Pet): Pet object that needs to be added to the store - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.update_pet_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.update_pet_with_http_info(body, **kwargs) # noqa: E501 - return data + return self.callable(self, *args, **kwargs) - def update_pet_with_http_info(self, body, **kwargs): # noqa: E501 - """Update an existing pet # noqa: E501 + def call_with_http_info(self, **kwargs): - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.update_pet_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (Pet): Pet object that needs to be added to the store - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method update_pet" % key + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `update_pet`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/json', 'application/xml']) # noqa: E501 - - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 - - return self.api_client.call_api( - '/pet', 'PUT', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def update_pet_with_form(self, pet_id, **kwargs): # noqa: E501 - """Updates a pet in the store with form data # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.update_pet_with_form(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet that needs to be updated - - Keyword Args: - name (str): Updated name of the pet. [optional] - status (str): Updated status of the pet. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.update_pet_with_form_with_http_info(pet_id, **kwargs) # noqa: E501 else: - (data) = self.update_pet_with_form_with_http_info(pet_id, **kwargs) # noqa: E501 - return data + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None - def update_pet_with_form_with_http_info(self, pet_id, **kwargs): # noqa: E501 - """Updates a pet in the store with form data # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.update_pet_with_form_with_http_info(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet that needs to be updated - - Keyword Args: - name (str): Updated name of the pet. [optional] - status (str): Updated status of the pet. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['pet_id', 'name', 'status'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method update_pet_with_form" % key + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'pet_id' is set - if ('pet_id' not in local_var_params or - local_var_params['pet_id'] is None): - raise ApiValueError("Missing the required parameter `pet_id` when calling `update_pet_with_form`") # noqa: E501 - collection_formats = {} + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) - path_params = {} - if 'pet_id' in local_var_params: - path_params['petId'] = local_var_params['pet_id'] # noqa: E501 + self.__validate_inputs(kwargs) - query_params = [] + params = self.__gather_params(kwargs) - header_params = {} + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) - form_params = [] - local_var_files = {} - if 'name' in local_var_params: - form_params.append(('name', local_var_params['name'])) # noqa: E501 - if 'status' in local_var_params: - form_params.append(('status', local_var_params['status'])) # noqa: E501 - - body_params = None - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['application/x-www-form-urlencoded']) # noqa: E501 - - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list return self.api_client.call_api( - '/pet/{petId}', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def upload_file(self, pet_id, **kwargs): # noqa: E501 - """uploads an image # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.upload_file(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet to update - - Keyword Args: - additional_metadata (str): Additional data to pass to server. [optional] - file (file): file to upload. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - ApiResponse: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.upload_file_with_http_info(pet_id, **kwargs) # noqa: E501 - else: - (data) = self.upload_file_with_http_info(pet_id, **kwargs) # noqa: E501 - return data - - def upload_file_with_http_info(self, pet_id, **kwargs): # noqa: E501 - """uploads an image # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.upload_file_with_http_info(pet_id, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet to update - - Keyword Args: - additional_metadata (str): Additional data to pass to server. [optional] - file (file): file to upload. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - ApiResponse: - """ - - local_var_params = locals() - - all_params = ['pet_id', 'additional_metadata', 'file'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method upload_file" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'pet_id' is set - if ('pet_id' not in local_var_params or - local_var_params['pet_id'] is None): - raise ApiValueError("Missing the required parameter `pet_id` when calling `upload_file`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'pet_id' in local_var_params: - path_params['petId'] = local_var_params['pet_id'] # noqa: E501 - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - if 'additional_metadata' in local_var_params: - form_params.append(('additionalMetadata', local_var_params['additional_metadata'])) # noqa: E501 - if 'file' in local_var_params: - local_var_files['file'] = local_var_params['file'] # noqa: E501 - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/json']) # noqa: E501 - - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['multipart/form-data']) # noqa: E501 - - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 - - return self.api_client.call_api( - '/pet/{petId}/uploadImage', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='ApiResponse', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def upload_file_with_required_file(self, pet_id, required_file, **kwargs): # noqa: E501 - """uploads an image (required) # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.upload_file_with_required_file(pet_id, required_file, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet to update required_file (file): file to upload - - Keyword Args: - additional_metadata (str): Additional data to pass to server. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - ApiResponse: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.upload_file_with_required_file_with_http_info(pet_id, required_file, **kwargs) # noqa: E501 - else: - (data) = self.upload_file_with_required_file_with_http_info(pet_id, required_file, **kwargs) # noqa: E501 - return data - - def upload_file_with_required_file_with_http_info(self, pet_id, required_file, **kwargs): # noqa: E501 - """uploads an image (required) # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.upload_file_with_required_file_with_http_info(pet_id, required_file, async_req=True) - >>> result = thread.get() - - Args: - pet_id (int): ID of pet to update required_file (file): file to upload - - Keyword Args: - additional_metadata (str): Additional data to pass to server. [optional] - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - ApiResponse: - """ - - local_var_params = locals() - - all_params = ['pet_id', 'required_file', 'additional_metadata'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method upload_file_with_required_file" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'pet_id' is set - if ('pet_id' not in local_var_params or - local_var_params['pet_id'] is None): - raise ApiValueError("Missing the required parameter `pet_id` when calling `upload_file_with_required_file`") # noqa: E501 - # verify the required parameter 'required_file' is set - if ('required_file' not in local_var_params or - local_var_params['required_file'] is None): - raise ApiValueError("Missing the required parameter `required_file` when calling `upload_file_with_required_file`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'pet_id' in local_var_params: - path_params['petId'] = local_var_params['pet_id'] # noqa: E501 - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - if 'additional_metadata' in local_var_params: - form_params.append(('additionalMetadata', local_var_params['additional_metadata'])) # noqa: E501 - if 'required_file' in local_var_params: - local_var_files['requiredFile'] = local_var_params['required_file'] # noqa: E501 - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/json']) # noqa: E501 - - # HTTP header `Content-Type` - header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501 - ['multipart/form-data']) # noqa: E501 - - # Authentication setting - auth_settings = ['petstore_auth'] # noqa: E501 - - return self.api_client.call_api( - '/fake/{petId}/uploadImageWithRequiredFile', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='ApiResponse', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/samples/client/petstore/python-experimental/petstore_api/api/store_api.py b/samples/client/petstore/python-experimental/petstore_api/api/store_api.py index c80423baf4..db3f4d2561 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api/store_api.py +++ b/samples/client/petstore/python-experimental/petstore_api/api/store_api.py @@ -18,10 +18,14 @@ import re # noqa: F401 import six from petstore_api.api_client import ApiClient -from petstore_api.exceptions import ( # noqa: F401 +from petstore_api.exceptions import ( ApiTypeError, ApiValueError ) +from petstore_api.model_utils import ( + check_allowed_values, + check_validations +) class StoreApi(object): @@ -36,456 +40,503 @@ class StoreApi(object): api_client = ApiClient() self.api_client = api_client - def delete_order(self, order_id, **kwargs): # noqa: E501 - """Delete purchase order by ID # noqa: E501 + def __delete_order(self, order_id, **kwargs): # noqa: E501 + """Delete purchase order by ID # noqa: E501 - For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_order(order_id, async_req=True) - >>> result = thread.get() + For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.delete_order(order_id, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str order_id: ID of the order that needs to be deleted (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['order_id'] = order_id + return self.call_with_http_info(**kwargs) + + self.delete_order = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/store/order/{order_id}', + 'operation_id': 'delete_order', + 'http_method': 'DELETE', + 'servers': [], + }, + params_map={ + 'all': [ + 'order_id', + ], + 'required': [ + 'order_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'order_id': 'str', + }, + 'attribute_map': { + 'order_id': 'order_id', + }, + 'location_map': { + 'order_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__delete_order + ) + + def __get_inventory(self, **kwargs): # noqa: E501 + """Returns pet inventories by status # noqa: E501 + + Returns a map of status codes to quantities # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.get_inventory(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: dict(str, int) + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + return self.call_with_http_info(**kwargs) + + self.get_inventory = Endpoint( + settings={ + 'response_type': 'dict(str, int)', + 'auth': [ + 'api_key' + ], + 'endpoint_path': '/store/inventory', + 'operation_id': 'get_inventory', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__get_inventory + ) + + def __get_order_by_id(self, order_id, **kwargs): # noqa: E501 + """Find purchase order by ID # noqa: E501 + + For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.get_order_by_id(order_id, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param int order_id: ID of pet that needs to be fetched (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: Order + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['order_id'] = order_id + return self.call_with_http_info(**kwargs) + + self.get_order_by_id = Endpoint( + settings={ + 'response_type': 'Order', + 'auth': [], + 'endpoint_path': '/store/order/{order_id}', + 'operation_id': 'get_order_by_id', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'order_id', + ], + 'required': [ + 'order_id', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + 'order_id', + ] + }, + root_map={ + 'validations': { + ('order_id',): { + + 'inclusive_maximum': 5, + 'inclusive_minimum': 1, + }, + }, + 'allowed_values': { + }, + 'openapi_types': { + 'order_id': 'int', + }, + 'attribute_map': { + 'order_id': 'order_id', + }, + 'location_map': { + 'order_id': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__get_order_by_id + ) + + def __place_order(self, body, **kwargs): # noqa: E501 + """Place an order for a pet # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.place_order(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param Order body: order placed for purchasing the pet (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: Order + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.place_order = Endpoint( + settings={ + 'response_type': 'Order', + 'auth': [], + 'endpoint_path': '/store/order', + 'operation_id': 'place_order', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'Order', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__place_order + ) + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint Args: - order_id (str): ID of the order that needs to be deleted - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.delete_order_with_http_info(order_id, **kwargs) # noqa: E501 - else: - (data) = self.delete_order_with_http_info(order_id, **kwargs) # noqa: E501 - return data + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable - def delete_order_with_http_info(self, order_id, **kwargs): # noqa: E501 - """Delete purchase order by ID # noqa: E501 - - For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_order_with_http_info(order_id, async_req=True) - >>> result = thread.get() - - Args: - order_id (str): ID of the order that needs to be deleted - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['order_id'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method delete_order" % key + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'order_id' is set - if ('order_id' not in local_var_params or - local_var_params['order_id'] is None): - raise ApiValueError("Missing the required parameter `order_id` when calling `delete_order`") # noqa: E501 - collection_formats = {} + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] + ) - path_params = {} - if 'order_id' in local_var_params: - path_params['order_id'] = local_var_params['order_id'] # noqa: E501 + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } - query_params = [] + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format - header_params = {} + return params - form_params = [] - local_var_files = {} + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class + """ + return self.callable(self, *args, **kwargs) - body_params = None - # Authentication setting - auth_settings = [] # noqa: E501 + def call_with_http_info(self, **kwargs): + + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) + ) + else: + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None + + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: + raise ApiTypeError( + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) + ) + + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) + + self.__validate_inputs(kwargs) + + params = self.__gather_params(kwargs) + + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) + + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list return self.api_client.call_api( - '/store/order/{order_id}', 'DELETE', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def get_inventory(self, **kwargs): # noqa: E501 - """Returns pet inventories by status # noqa: E501 - - Returns a map of status codes to quantities # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_inventory(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - dict(str, int): - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.get_inventory_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.get_inventory_with_http_info(**kwargs) # noqa: E501 - return data - - def get_inventory_with_http_info(self, **kwargs): # noqa: E501 - """Returns pet inventories by status # noqa: E501 - - Returns a map of status codes to quantities # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_inventory_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - dict(str, int): - """ - - local_var_params = locals() - - all_params = [] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method get_inventory" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/json']) # noqa: E501 - - # Authentication setting - auth_settings = ['api_key'] # noqa: E501 - - return self.api_client.call_api( - '/store/inventory', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='dict(str, int)', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def get_order_by_id(self, order_id, **kwargs): # noqa: E501 - """Find purchase order by ID # noqa: E501 - - For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_order_by_id(order_id, async_req=True) - >>> result = thread.get() - - Args: - order_id (int): ID of pet that needs to be fetched - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Order: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.get_order_by_id_with_http_info(order_id, **kwargs) # noqa: E501 - else: - (data) = self.get_order_by_id_with_http_info(order_id, **kwargs) # noqa: E501 - return data - - def get_order_by_id_with_http_info(self, order_id, **kwargs): # noqa: E501 - """Find purchase order by ID # noqa: E501 - - For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_order_by_id_with_http_info(order_id, async_req=True) - >>> result = thread.get() - - Args: - order_id (int): ID of pet that needs to be fetched - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Order: - """ - - local_var_params = locals() - - all_params = ['order_id'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method get_order_by_id" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'order_id' is set - if ('order_id' not in local_var_params or - local_var_params['order_id'] is None): - raise ApiValueError("Missing the required parameter `order_id` when calling `get_order_by_id`") # noqa: E501 - if 'order_id' in local_var_params and local_var_params['order_id'] > 5: # noqa: E501 - raise ApiValueError("Invalid value for parameter `order_id` when calling `get_order_by_id`, must be a value less than or equal to `5`") # noqa: E501 - if 'order_id' in local_var_params and local_var_params['order_id'] < 1: # noqa: E501 - raise ApiValueError("Invalid value for parameter `order_id` when calling `get_order_by_id`, must be a value greater than or equal to `1`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'order_id' in local_var_params: - path_params['order_id'] = local_var_params['order_id'] # noqa: E501 - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/store/order/{order_id}', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='Order', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def place_order(self, body, **kwargs): # noqa: E501 - """Place an order for a pet # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.place_order(body, async_req=True) - >>> result = thread.get() - - Args: - body (Order): order placed for purchasing the pet - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Order: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.place_order_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.place_order_with_http_info(body, **kwargs) # noqa: E501 - return data - - def place_order_with_http_info(self, body, **kwargs): # noqa: E501 - """Place an order for a pet # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.place_order_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (Order): order placed for purchasing the pet - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - Order: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method place_order" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `place_order`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/store/order', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='Order', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/samples/client/petstore/python-experimental/petstore_api/api/user_api.py b/samples/client/petstore/python-experimental/petstore_api/api/user_api.py index c8de4c6c27..7a3fb67c12 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api/user_api.py +++ b/samples/client/petstore/python-experimental/petstore_api/api/user_api.py @@ -18,10 +18,14 @@ import re # noqa: F401 import six from petstore_api.api_client import ApiClient -from petstore_api.exceptions import ( # noqa: F401 +from petstore_api.exceptions import ( ApiTypeError, ApiValueError ) +from petstore_api.model_utils import ( + check_allowed_values, + check_validations +) class UserApi(object): @@ -36,900 +40,808 @@ class UserApi(object): api_client = ApiClient() self.api_client = api_client - def create_user(self, body, **kwargs): # noqa: E501 - """Create user # noqa: E501 + def __create_user(self, body, **kwargs): # noqa: E501 + """Create user # noqa: E501 - This can only be done by the logged in user. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_user(body, async_req=True) - >>> result = thread.get() + This can only be done by the logged in user. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.create_user(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param User body: Created user object (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.create_user = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/user', + 'operation_id': 'create_user', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'User', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__create_user + ) + + def __create_users_with_array_input(self, body, **kwargs): # noqa: E501 + """Creates list of users with given input array # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.create_users_with_array_input(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param list[User] body: List of user object (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.create_users_with_array_input = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/user/createWithArray', + 'operation_id': 'create_users_with_array_input', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'list[User]', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__create_users_with_array_input + ) + + def __create_users_with_list_input(self, body, **kwargs): # noqa: E501 + """Creates list of users with given input array # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.create_users_with_list_input(body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param list[User] body: List of user object (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.create_users_with_list_input = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/user/createWithList', + 'operation_id': 'create_users_with_list_input', + 'http_method': 'POST', + 'servers': [], + }, + params_map={ + 'all': [ + 'body', + ], + 'required': [ + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'body': 'list[User]', + }, + 'attribute_map': { + }, + 'location_map': { + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__create_users_with_list_input + ) + + def __delete_user(self, username, **kwargs): # noqa: E501 + """Delete user # noqa: E501 + + This can only be done by the logged in user. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.delete_user(username, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str username: The name that needs to be deleted (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['username'] = username + return self.call_with_http_info(**kwargs) + + self.delete_user = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/user/{username}', + 'operation_id': 'delete_user', + 'http_method': 'DELETE', + 'servers': [], + }, + params_map={ + 'all': [ + 'username', + ], + 'required': [ + 'username', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'username': 'str', + }, + 'attribute_map': { + 'username': 'username', + }, + 'location_map': { + 'username': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__delete_user + ) + + def __get_user_by_name(self, username, **kwargs): # noqa: E501 + """Get user by user name # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.get_user_by_name(username, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str username: The name that needs to be fetched. Use user1 for testing. (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: User + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['username'] = username + return self.call_with_http_info(**kwargs) + + self.get_user_by_name = Endpoint( + settings={ + 'response_type': 'User', + 'auth': [], + 'endpoint_path': '/user/{username}', + 'operation_id': 'get_user_by_name', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'username', + ], + 'required': [ + 'username', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'username': 'str', + }, + 'attribute_map': { + 'username': 'username', + }, + 'location_map': { + 'username': 'path', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__get_user_by_name + ) + + def __login_user(self, username, password, **kwargs): # noqa: E501 + """Logs user into the system # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.login_user(username, password, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str username: The user name for login (required) + :param str password: The password for login in clear text (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: str + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['username'] = username + kwargs['password'] = password + return self.call_with_http_info(**kwargs) + + self.login_user = Endpoint( + settings={ + 'response_type': 'str', + 'auth': [], + 'endpoint_path': '/user/login', + 'operation_id': 'login_user', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + 'username', + 'password', + ], + 'required': [ + 'username', + 'password', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'username': 'str', + 'password': 'str', + }, + 'attribute_map': { + 'username': 'username', + 'password': 'password', + }, + 'location_map': { + 'username': 'query', + 'password': 'query', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [ + 'application/xml', + 'application/json' + ], + 'content_type': [], + }, + api_client=api_client, + callable=__login_user + ) + + def __logout_user(self, **kwargs): # noqa: E501 + """Logs out current logged in user session # noqa: E501 + + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.logout_user(async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + return self.call_with_http_info(**kwargs) + + self.logout_user = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/user/logout', + 'operation_id': 'logout_user', + 'http_method': 'GET', + 'servers': [], + }, + params_map={ + 'all': [ + ], + 'required': [], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + }, + 'attribute_map': { + }, + 'location_map': { + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__logout_user + ) + + def __update_user(self, username, body, **kwargs): # noqa: E501 + """Updated user # noqa: E501 + + This can only be done by the logged in user. # noqa: E501 + This method makes a synchronous HTTP request by default. To make an + asynchronous HTTP request, please pass async_req=True + >>> thread = api.update_user(username, body, async_req=True) + >>> result = thread.get() + + :param async_req bool: execute request asynchronously + :param str username: name that need to be deleted (required) + :param User body: Updated user object (required) + :param _return_http_data_only: response data without head status + code and headers + :param _preload_content: if False, the urllib3.HTTPResponse object + will be returned without reading/decoding response data. + Default is True. + :param _request_timeout: timeout setting for this request. If one + number provided, it will be total request timeout. It can also + be a pair (tuple) of (connection, read) timeouts. + :return: None + If the method is called asynchronously, returns the request + thread. + """ + kwargs['_return_http_data_only'] = kwargs.get( + '_return_http_data_only', True + ) + kwargs['username'] = username + kwargs['body'] = body + return self.call_with_http_info(**kwargs) + + self.update_user = Endpoint( + settings={ + 'response_type': None, + 'auth': [], + 'endpoint_path': '/user/{username}', + 'operation_id': 'update_user', + 'http_method': 'PUT', + 'servers': [], + }, + params_map={ + 'all': [ + 'username', + 'body', + ], + 'required': [ + 'username', + 'body', + ], + 'nullable': [ + ], + 'enum': [ + ], + 'validation': [ + ] + }, + root_map={ + 'validations': { + }, + 'allowed_values': { + }, + 'openapi_types': { + 'username': 'str', + 'body': 'User', + }, + 'attribute_map': { + 'username': 'username', + }, + 'location_map': { + 'username': 'path', + 'body': 'body', + }, + 'collection_format_map': { + } + }, + headers_map={ + 'accept': [], + 'content_type': [], + }, + api_client=api_client, + callable=__update_user + ) + + +class Endpoint(object): + def __init__(self, settings=None, params_map=None, root_map=None, + headers_map=None, api_client=None, callable=None): + """Creates an endpoint Args: - body (User): Created user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: + settings (dict): see below key value pairs + 'response_type' (str): response type + 'auth' (list): a list of auth type keys + 'endpoint_path' (str): the endpoint path + 'operation_id' (str): endpoint string identifier + 'http_method' (str): POST/PUT/PATCH/GET etc + 'servers' (list): list of str servers that this endpoint is at + params_map (dict): see below key value pairs + 'all' (list): list of str endpoint parameter names + 'required' (list): list of required parameter names + 'nullable' (list): list of nullable parameter names + 'enum' (list): list of parameters with enum values + 'validation' (list): list of parameters with validations + root_map + 'validations' (dict): the dict mapping endpoint parameter tuple + paths to their validation dictionaries + 'allowed_values' (dict): the dict mapping endpoint parameter + tuple paths to their allowed_values (enum) dictionaries + 'openapi_types' (dict): param_name to openapi type + 'attribute_map' (dict): param_name to camelCase name + 'location_map' (dict): param_name to 'body', 'file', 'form', + 'header', 'path', 'query' + collection_format_map (dict): param_name to `csv` etc. + headers_map (dict): see below key value pairs + 'accept' (list): list of Accept header strings + 'content_type' (list): list of Content-Type header strings + api_client (ApiClient) api client instance + callable (function): the function which is invoked when the + Endpoint is called """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.create_user_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.create_user_with_http_info(body, **kwargs) # noqa: E501 - return data + self.settings = settings + self.params_map = params_map + self.params_map['all'].extend([ + 'async_req', + '_host_index', + '_preload_content', + '_request_timeout', + '_return_http_data_only' + ]) + self.validations = root_map['validations'] + self.allowed_values = root_map['allowed_values'] + self.openapi_types = root_map['openapi_types'] + self.attribute_map = root_map['attribute_map'] + self.location_map = root_map['location_map'] + self.collection_format_map = root_map['collection_format_map'] + self.headers_map = headers_map + self.api_client = api_client + self.callable = callable - def create_user_with_http_info(self, body, **kwargs): # noqa: E501 - """Create user # noqa: E501 - - This can only be done by the logged in user. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_user_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (User): Created user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method create_user" % key + def __validate_inputs(self, kwargs): + for param in self.params_map['enum']: + if param in kwargs: + check_allowed_values( + self.allowed_values, + (param,), + kwargs[param], + self.validations ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `create_user`") # noqa: E501 - collection_formats = {} + for param in self.params_map['validation']: + if param in kwargs: + check_validations( + self.validations, + (param,), + kwargs[param] + ) - path_params = {} + def __gather_params(self, kwargs): + params = { + 'body': None, + 'collection_format': {}, + 'file': {}, + 'form': [], + 'header': {}, + 'path': {}, + 'query': [] + } - query_params = [] + for param_name, param_value in six.iteritems(kwargs): + param_location = self.location_map.get(param_name) + if param_location: + if param_location == 'body': + params['body'] = param_value + continue + base_name = self.attribute_map[param_name] + if (param_location == 'form' and + self.openapi_types[param_name] == 'file'): + param_location = 'file' + elif param_location in {'form', 'query'}: + param_value_full = (base_name, param_value) + params[param_location].append(param_value_full) + if param_location not in {'form', 'query'}: + params[param_location][base_name] = param_value + collection_format = self.collection_format_map.get(param_name) + if collection_format: + params['collection_format'][base_name] = collection_format - header_params = {} + return params - form_params = [] - local_var_files = {} + def __call__(self, *args, **kwargs): + """ This method is invoked when endpoints are called + Example: + pet_api = PetApi() + pet_api.add_pet # this is an instance of the class Endpoint + pet_api.add_pet() # this invokes pet_api.add_pet.__call__() + which then invokes the callable functions stored in that endpoint at + pet_api.add_pet.callable or self.callable in this class + """ + return self.callable(self, *args, **kwargs) - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # Authentication setting - auth_settings = [] # noqa: E501 + def call_with_http_info(self, **kwargs): + + if kwargs.get('_host_index') and self.settings['servers']: + _host_index = kwargs.get('_host_index') + try: + _host = self.settings['servers'][_host_index] + except IndexError: + raise ApiValueError( + "Invalid host index. Must be 0 <= index < %s" % + len(self.settings['servers']) + ) + else: + try: + _host = self.settings['servers'][0] + except IndexError: + _host = None + + for key, value in six.iteritems(kwargs): + if key not in self.params_map['all']: + raise ApiTypeError( + "Got an unexpected parameter '%s'" + " to method `%s`" % + (key, self.settings['operation_id']) + ) + if key not in self.params_map['nullable'] and value is None: + raise ApiValueError( + "Value may not be None for non-nullable parameter `%s`" + " when calling `%s`" % + (key, self.settings['operation_id']) + ) + + for key in self.params_map['required']: + if key not in kwargs.keys(): + raise ApiValueError( + "Missing the required parameter `%s` when calling " + "`%s`" % (key, self.settings['operation_id']) + ) + + self.__validate_inputs(kwargs) + + params = self.__gather_params(kwargs) + + accept_headers_list = self.headers_map['accept'] + if accept_headers_list: + params['header']['Accept'] = self.api_client.select_header_accept( + accept_headers_list) + + content_type_headers_list = self.headers_map['content_type'] + if content_type_headers_list: + header_list = self.api_client.select_header_content_type( + content_type_headers_list) + params['header']['Content-Type'] = header_list return self.api_client.call_api( - '/user', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def create_users_with_array_input(self, body, **kwargs): # noqa: E501 - """Creates list of users with given input array # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_users_with_array_input(body, async_req=True) - >>> result = thread.get() - - Args: - body (list[User]): List of user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.create_users_with_array_input_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.create_users_with_array_input_with_http_info(body, **kwargs) # noqa: E501 - return data - - def create_users_with_array_input_with_http_info(self, body, **kwargs): # noqa: E501 - """Creates list of users with given input array # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_users_with_array_input_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (list[User]): List of user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method create_users_with_array_input" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `create_users_with_array_input`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/createWithArray', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def create_users_with_list_input(self, body, **kwargs): # noqa: E501 - """Creates list of users with given input array # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_users_with_list_input(body, async_req=True) - >>> result = thread.get() - - Args: - body (list[User]): List of user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.create_users_with_list_input_with_http_info(body, **kwargs) # noqa: E501 - else: - (data) = self.create_users_with_list_input_with_http_info(body, **kwargs) # noqa: E501 - return data - - def create_users_with_list_input_with_http_info(self, body, **kwargs): # noqa: E501 - """Creates list of users with given input array # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.create_users_with_list_input_with_http_info(body, async_req=True) - >>> result = thread.get() - - Args: - body (list[User]): List of user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method create_users_with_list_input" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `create_users_with_list_input`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/createWithList', 'POST', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def delete_user(self, username, **kwargs): # noqa: E501 - """Delete user # noqa: E501 - - This can only be done by the logged in user. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_user(username, async_req=True) - >>> result = thread.get() - - Args: - username (str): The name that needs to be deleted - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.delete_user_with_http_info(username, **kwargs) # noqa: E501 - else: - (data) = self.delete_user_with_http_info(username, **kwargs) # noqa: E501 - return data - - def delete_user_with_http_info(self, username, **kwargs): # noqa: E501 - """Delete user # noqa: E501 - - This can only be done by the logged in user. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.delete_user_with_http_info(username, async_req=True) - >>> result = thread.get() - - Args: - username (str): The name that needs to be deleted - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['username'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method delete_user" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'username' is set - if ('username' not in local_var_params or - local_var_params['username'] is None): - raise ApiValueError("Missing the required parameter `username` when calling `delete_user`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'username' in local_var_params: - path_params['username'] = local_var_params['username'] # noqa: E501 - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/{username}', 'DELETE', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def get_user_by_name(self, username, **kwargs): # noqa: E501 - """Get user by user name # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_user_by_name(username, async_req=True) - >>> result = thread.get() - - Args: - username (str): The name that needs to be fetched. Use user1 for testing. - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - User: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.get_user_by_name_with_http_info(username, **kwargs) # noqa: E501 - else: - (data) = self.get_user_by_name_with_http_info(username, **kwargs) # noqa: E501 - return data - - def get_user_by_name_with_http_info(self, username, **kwargs): # noqa: E501 - """Get user by user name # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.get_user_by_name_with_http_info(username, async_req=True) - >>> result = thread.get() - - Args: - username (str): The name that needs to be fetched. Use user1 for testing. - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - User: - """ - - local_var_params = locals() - - all_params = ['username'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method get_user_by_name" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'username' is set - if ('username' not in local_var_params or - local_var_params['username'] is None): - raise ApiValueError("Missing the required parameter `username` when calling `get_user_by_name`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'username' in local_var_params: - path_params['username'] = local_var_params['username'] # noqa: E501 - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/{username}', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='User', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def login_user(self, username, password, **kwargs): # noqa: E501 - """Logs user into the system # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.login_user(username, password, async_req=True) - >>> result = thread.get() - - Args: - username (str): The user name for login password (str): The password for login in clear text - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - str: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.login_user_with_http_info(username, password, **kwargs) # noqa: E501 - else: - (data) = self.login_user_with_http_info(username, password, **kwargs) # noqa: E501 - return data - - def login_user_with_http_info(self, username, password, **kwargs): # noqa: E501 - """Logs user into the system # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.login_user_with_http_info(username, password, async_req=True) - >>> result = thread.get() - - Args: - username (str): The user name for login password (str): The password for login in clear text - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - str: - """ - - local_var_params = locals() - - all_params = ['username', 'password'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method login_user" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'username' is set - if ('username' not in local_var_params or - local_var_params['username'] is None): - raise ApiValueError("Missing the required parameter `username` when calling `login_user`") # noqa: E501 - # verify the required parameter 'password' is set - if ('password' not in local_var_params or - local_var_params['password'] is None): - raise ApiValueError("Missing the required parameter `password` when calling `login_user`") # noqa: E501 - - collection_formats = {} - - path_params = {} - - query_params = [] - if 'username' in local_var_params: - query_params.append(('username', local_var_params['username'])) # noqa: E501 - if 'password' in local_var_params: - query_params.append(('password', local_var_params['password'])) # noqa: E501 - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # HTTP header `Accept` - header_params['Accept'] = self.api_client.select_header_accept( - ['application/xml', 'application/json']) # noqa: E501 - - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/login', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type='str', # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def logout_user(self, **kwargs): # noqa: E501 - """Logs out current logged in user session # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.logout_user(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.logout_user_with_http_info(**kwargs) # noqa: E501 - else: - (data) = self.logout_user_with_http_info(**kwargs) # noqa: E501 - return data - - def logout_user_with_http_info(self, **kwargs): # noqa: E501 - """Logs out current logged in user session # noqa: E501 - - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.logout_user_with_http_info(async_req=True) - >>> result = thread.get() - - - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = [] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method logout_user" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - - collection_formats = {} - - path_params = {} - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/logout', 'GET', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) - - def update_user(self, username, body, **kwargs): # noqa: E501 - """Updated user # noqa: E501 - - This can only be done by the logged in user. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.update_user(username, body, async_req=True) - >>> result = thread.get() - - Args: - username (str): name that need to be deleted body (User): Updated user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - kwargs['_return_http_data_only'] = True - if kwargs.get('async_req'): - return self.update_user_with_http_info(username, body, **kwargs) # noqa: E501 - else: - (data) = self.update_user_with_http_info(username, body, **kwargs) # noqa: E501 - return data - - def update_user_with_http_info(self, username, body, **kwargs): # noqa: E501 - """Updated user # noqa: E501 - - This can only be done by the logged in user. # noqa: E501 - This method makes a synchronous HTTP request by default. To make an - asynchronous HTTP request, please pass async_req=True - >>> thread = api.update_user_with_http_info(username, body, async_req=True) - >>> result = thread.get() - - Args: - username (str): name that need to be deleted body (User): Updated user object - - Keyword Args: - async_req (bool): execute request asynchronously - param _preload_content (bool): if False, the urllib3.HTTPResponse - object will be returned without reading/decoding response data. - Default is True. - param _request_timeout (float/tuple): timeout setting for this - request. If one number provided, it will be total request - timeout. It can also be a pair (tuple) of (connection, read) - timeouts. - - Returns: - None: - """ - - local_var_params = locals() - - all_params = ['username', 'body'] # noqa: E501 - all_params.append('async_req') - all_params.append('_return_http_data_only') - all_params.append('_preload_content') - all_params.append('_request_timeout') - - for key, val in six.iteritems(local_var_params['kwargs']): - if key not in all_params: - raise ApiTypeError( - "Got an unexpected keyword argument '%s'" - " to method update_user" % key - ) - local_var_params[key] = val - del local_var_params['kwargs'] - # verify the required parameter 'username' is set - if ('username' not in local_var_params or - local_var_params['username'] is None): - raise ApiValueError("Missing the required parameter `username` when calling `update_user`") # noqa: E501 - # verify the required parameter 'body' is set - if ('body' not in local_var_params or - local_var_params['body'] is None): - raise ApiValueError("Missing the required parameter `body` when calling `update_user`") # noqa: E501 - - collection_formats = {} - - path_params = {} - if 'username' in local_var_params: - path_params['username'] = local_var_params['username'] # noqa: E501 - - query_params = [] - - header_params = {} - - form_params = [] - local_var_files = {} - - body_params = None - if 'body' in local_var_params: - body_params = local_var_params['body'] - # Authentication setting - auth_settings = [] # noqa: E501 - - return self.api_client.call_api( - '/user/{username}', 'PUT', - path_params, - query_params, - header_params, - body=body_params, - post_params=form_params, - files=local_var_files, - response_type=None, # noqa: E501 - auth_settings=auth_settings, - async_req=local_var_params.get('async_req'), - _return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501 - _preload_content=local_var_params.get('_preload_content', True), - _request_timeout=local_var_params.get('_request_timeout'), - collection_formats=collection_formats) + self.settings['endpoint_path'], self.settings['http_method'], + params['path'], + params['query'], + params['header'], + body=params['body'], + post_params=params['form'], + files=params['file'], + response_type=self.settings['response_type'], + auth_settings=self.settings['auth'], + async_req=kwargs.get('async_req'), + _return_http_data_only=kwargs.get('_return_http_data_only'), + _preload_content=kwargs.get('_preload_content', True), + _request_timeout=kwargs.get('_request_timeout'), + _host=_host, + collection_formats=params['collection_format']) diff --git a/samples/client/petstore/python-experimental/petstore_api/api_client.py b/samples/client/petstore/python-experimental/petstore_api/api_client.py index df3a9815aa..7afd6306dc 100644 --- a/samples/client/petstore/python-experimental/petstore_api/api_client.py +++ b/samples/client/petstore/python-experimental/petstore_api/api_client.py @@ -11,6 +11,7 @@ from __future__ import absolute_import import datetime +import inspect import json import mimetypes from multiprocessing.pool import ThreadPool @@ -22,9 +23,13 @@ import tempfile import six from six.moves.urllib.parse import quote -from petstore_api.configuration import Configuration import petstore_api.models from petstore_api import rest +from petstore_api.configuration import Configuration +from petstore_api.model_utils import ( + ModelNormal, + ModelSimple +) from petstore_api.exceptions import ApiValueError @@ -216,7 +221,7 @@ class ApiClient(object): if isinstance(obj, dict): obj_dict = obj - else: + elif isinstance(obj, ModelNormal): # Convert model obj to dict except # attributes `openapi_types`, `attribute_map` # and attributes which value is not None. @@ -225,6 +230,8 @@ class ApiClient(object): obj_dict = {obj.attribute_map[attr]: getattr(obj, attr) for attr, _ in six.iteritems(obj.openapi_types) if getattr(obj, attr) is not None} + elif isinstance(obj, ModelSimple): + return self.sanitize_for_serialization(obj.value) return {key: self.sanitize_for_serialization(val) for key, val in six.iteritems(obj_dict)} @@ -563,6 +570,8 @@ class ApiClient(object): return six.text_type(data) except TypeError: return data + except ValueError as exc: + raise ApiValueError(str(exc)) def __deserialize_object(self, value): """Return an original value. @@ -614,25 +623,39 @@ class ApiClient(object): """Deserializes list or dict to model. :param data: dict, list. - :param klass: class literal. + :param klass: class literal, ModelSimple or ModelNormal :return: model object. """ - if not klass.openapi_types and not hasattr(klass, - 'get_real_child_model'): - return data + if issubclass(klass, ModelSimple): + value = self.__deserialize(data, klass.openapi_types['value']) + return klass(value) - kwargs = {} + # code to handle ModelNormal + used_data = data + if not isinstance(data, (list, dict)): + used_data = [data] + keyword_args = {} + positional_args = [] if klass.openapi_types is not None: for attr, attr_type in six.iteritems(klass.openapi_types): if (data is not None and - klass.attribute_map[attr] in data and - isinstance(data, (list, dict))): - value = data[klass.attribute_map[attr]] - kwargs[attr] = self.__deserialize(value, attr_type) - - instance = klass(**kwargs) - + klass.attribute_map[attr] in used_data): + value = used_data[klass.attribute_map[attr]] + keyword_args[attr] = self.__deserialize(value, attr_type) + end_index = None + argspec = inspect.getargspec(getattr(klass, '__init__')) + if argspec.defaults: + end_index = -len(argspec.defaults) + required_positional_args = argspec.args[1:end_index] + for index, req_positional_arg in enumerate(required_positional_args): + if keyword_args and req_positional_arg in keyword_args: + positional_args.append(keyword_args[req_positional_arg]) + del keyword_args[req_positional_arg] + elif (not keyword_args and index < len(used_data) and + isinstance(used_data, list)): + positional_args.append(used_data[index]) + instance = klass(*positional_args, **keyword_args) if hasattr(instance, 'get_real_child_model'): klass_name = instance.get_real_child_model(data) if klass_name: diff --git a/samples/client/petstore/python-experimental/petstore_api/configuration.py b/samples/client/petstore/python-experimental/petstore_api/configuration.py index fa0c3f4d32..459ff6a3ca 100644 --- a/samples/client/petstore/python-experimental/petstore_api/configuration.py +++ b/samples/client/petstore/python-experimental/petstore_api/configuration.py @@ -67,6 +67,9 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)): self.api_key_prefix = api_key_prefix """dict to store API prefix (e.g. Bearer) """ + self.refresh_api_key_hook = None + """function hook to refresh API key if expired + """ self.username = username """Username for HTTP basic authentication """ @@ -227,11 +230,15 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)): :param identifier: The identifier of apiKey. :return: The token for api key authentication. """ - if (self.api_key.get(identifier) and - self.api_key_prefix.get(identifier)): - return self.api_key_prefix[identifier] + ' ' + self.api_key[identifier] # noqa: E501 - elif self.api_key.get(identifier): - return self.api_key[identifier] + if self.refresh_api_key_hook is not None: + self.refresh_api_key_hook(self) + key = self.api_key.get(identifier) + if key: + prefix = self.api_key_prefix.get(identifier) + if prefix: + return "%s %s" % (prefix, key) + else: + return key def get_basic_auth_token(self): """Gets HTTP basic authentication header (string). diff --git a/samples/client/petstore/python-experimental/petstore_api/model_utils.py b/samples/client/petstore/python-experimental/petstore_api/model_utils.py new file mode 100644 index 0000000000..57ca211a0f --- /dev/null +++ b/samples/client/petstore/python-experimental/petstore_api/model_utils.py @@ -0,0 +1,183 @@ +# coding: utf-8 + +""" + OpenAPI Petstore + + This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 + + The version of the OpenAPI document: 1.0.0 + Generated by: https://openapi-generator.tech +""" + +import re + +from petstore_api.exceptions import ApiValueError + + +def check_allowed_values(allowed_values, input_variable_path, input_values, + validations): + """Raises an exception if the input_values are not allowed + + Args: + allowed_values (dict): the allowed_values dict + input_variable_path (tuple): the path to the input variable + input_values (list/str/int/float/date/datetime): the values that we + are checking to see if they are in allowed_values + validations (dict): the validations dict + """ + min_collection_length = ( + validations.get(input_variable_path, {}).get('min_length') or + validations.get(input_variable_path, {}).get('min_items', 0)) + these_allowed_values = list(allowed_values[input_variable_path].values()) + if (isinstance(input_values, list) + and len(input_values) > min_collection_length + and not set(input_values).issubset( + set(these_allowed_values))): + invalid_values = ", ".join( + map(str, set(input_values) - set(these_allowed_values))), + raise ApiValueError( + "Invalid values for `%s` [%s], must be a subset of [%s]" % + ( + input_variable_path[0], + invalid_values, + ", ".join(map(str, these_allowed_values)) + ) + ) + elif (isinstance(input_values, dict) + and len(input_values) > min_collection_length + and not set( + input_values.keys()).issubset(set(these_allowed_values))): + invalid_values = ", ".join( + map(str, set(input_values.keys()) - set(these_allowed_values))) + raise ApiValueError( + "Invalid keys in `%s` [%s], must be a subset of [%s]" % + ( + input_variable_path[0], + invalid_values, + ", ".join(map(str, these_allowed_values)) + ) + ) + elif (not isinstance(input_values, (list, dict)) + and input_values not in these_allowed_values): + raise ApiValueError( + "Invalid value for `%s` (%s), must be one of %s" % + ( + input_variable_path[0], + input_values, + these_allowed_values + ) + ) + + +def check_validations(validations, input_variable_path, input_values): + """Raises an exception if the input_values are invalid + + Args: + validations (dict): the validation dictionary + input_variable_path (tuple): the path to the input variable + input_values (list/str/int/float/date/datetime): the values that we + are checking + """ + current_validations = validations[input_variable_path] + if ('max_length' in current_validations and + len(input_values) > current_validations['max_length']): + raise ApiValueError( + "Invalid value for `%s`, length must be less than or equal to " + "`%s`" % ( + input_variable_path[0], + current_validations['max_length'] + ) + ) + + if ('min_length' in current_validations and + len(input_values) < current_validations['min_length']): + raise ApiValueError( + "Invalid value for `%s`, length must be greater than or equal to " + "`%s`" % ( + input_variable_path[0], + current_validations['min_length'] + ) + ) + + if ('max_items' in current_validations and + len(input_values) > current_validations['max_items']): + raise ApiValueError( + "Invalid value for `%s`, number of items must be less than or " + "equal to `%s`" % ( + input_variable_path[0], + current_validations['max_items'] + ) + ) + + if ('min_items' in current_validations and + len(input_values) < current_validations['min_items']): + raise ValueError( + "Invalid value for `%s`, number of items must be greater than or " + "equal to `%s`" % ( + input_variable_path[0], + current_validations['min_items'] + ) + ) + + if ('exclusive_maximum' in current_validations and + input_values >= current_validations['exclusive_maximum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value less than `%s`" % ( + input_variable_path[0], + current_validations['exclusive_maximum'] + ) + ) + + if ('inclusive_maximum' in current_validations and + input_values > current_validations['inclusive_maximum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value less than or equal to " + "`%s`" % ( + input_variable_path[0], + current_validations['inclusive_maximum'] + ) + ) + + if ('exclusive_minimum' in current_validations and + input_values <= current_validations['exclusive_minimum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value greater than `%s`" % + ( + input_variable_path[0], + current_validations['exclusive_maximum'] + ) + ) + + if ('inclusive_minimum' in current_validations and + input_values < current_validations['inclusive_minimum']): + raise ApiValueError( + "Invalid value for `%s`, must be a value greater than or equal " + "to `%s`" % ( + input_variable_path[0], + current_validations['inclusive_minimum'] + ) + ) + flags = current_validations.get('regex', {}).get('flags', 0) + if ('regex' in current_validations and + not re.search(current_validations['regex']['pattern'], + input_values, flags=flags)): + raise ApiValueError( + r"Invalid value for `%s`, must be a follow pattern or equal to " + r"`%s` with flags=`%s`" % ( + input_variable_path[0], + current_validations['regex']['pattern'], + flags + ) + ) + + +class ModelSimple(object): + # the parent class of models whose type != object in their swagger/openapi + # spec + pass + + +class ModelNormal(object): + # the parent class of models whose type == object in their swagger/openapi + # spec + pass diff --git a/samples/client/petstore/python-experimental/petstore_api/models/__init__.py b/samples/client/petstore/python-experimental/petstore_api/models/__init__.py index 96fd17471f..1f2bb89aa3 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/__init__.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/__init__.py @@ -52,9 +52,11 @@ from petstore_api.models.number_only import NumberOnly from petstore_api.models.order import Order from petstore_api.models.outer_composite import OuterComposite from petstore_api.models.outer_enum import OuterEnum +from petstore_api.models.outer_number import OuterNumber from petstore_api.models.pet import Pet from petstore_api.models.read_only_first import ReadOnlyFirst from petstore_api.models.special_model_name import SpecialModelName +from petstore_api.models.string_boolean_map import StringBooleanMap from petstore_api.models.tag import Tag from petstore_api.models.type_holder_default import TypeHolderDefault from petstore_api.models.type_holder_example import TypeHolderExample diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_any_type.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_any_type.py index ec5fa2a9a2..25e165ed7b 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_any_type.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_any_type.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesAnyType(object): +class AdditionalPropertiesAnyType(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesAnyType - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesAnyType - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesAnyType(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesAnyType. @@ -75,7 +93,8 @@ class AdditionalPropertiesAnyType(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_array.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_array.py index e04ae6f4c0..5de262b864 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_array.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_array.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesArray(object): +class AdditionalPropertiesArray(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesArray - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesArray - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesArray(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesArray. @@ -75,7 +93,8 @@ class AdditionalPropertiesArray(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_boolean.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_boolean.py index f5e7dc23d2..70675c7d3a 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_boolean.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_boolean.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesBoolean(object): +class AdditionalPropertiesBoolean(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesBoolean - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesBoolean - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesBoolean(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesBoolean. @@ -75,7 +93,8 @@ class AdditionalPropertiesBoolean(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_class.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_class.py index d5082c17ce..efa4d6a09d 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_class.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_class.py @@ -10,38 +10,45 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesClass(object): +class AdditionalPropertiesClass(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'map_string': 'dict(str, str)', - 'map_number': 'dict(str, float)', - 'map_integer': 'dict(str, int)', - 'map_boolean': 'dict(str, bool)', - 'map_array_integer': 'dict(str, list[int])', - 'map_array_anytype': 'dict(str, list[object])', - 'map_map_string': 'dict(str, dict(str, str))', - 'map_map_anytype': 'dict(str, dict(str, object))', - 'anytype_1': 'object', - 'anytype_2': 'object', - 'anytype_3': 'object', + allowed_values = { } attribute_map = { @@ -55,27 +62,28 @@ class AdditionalPropertiesClass(object): 'map_map_anytype': 'map_map_anytype', # noqa: E501 'anytype_1': 'anytype_1', # noqa: E501 'anytype_2': 'anytype_2', # noqa: E501 - 'anytype_3': 'anytype_3', # noqa: E501 + 'anytype_3': 'anytype_3' # noqa: E501 + } + + openapi_types = { + 'map_string': 'dict(str, str)', + 'map_number': 'dict(str, float)', + 'map_integer': 'dict(str, int)', + 'map_boolean': 'dict(str, bool)', + 'map_array_integer': 'dict(str, list[int])', + 'map_array_anytype': 'dict(str, list[object])', + 'map_map_string': 'dict(str, dict(str, str))', + 'map_map_anytype': 'dict(str, dict(str, object))', + 'anytype_1': 'object', + 'anytype_2': 'object', + 'anytype_3': 'object' + } + + validations = { } def __init__(self, map_string=None, map_number=None, map_integer=None, map_boolean=None, map_array_integer=None, map_array_anytype=None, map_map_string=None, map_map_anytype=None, anytype_1=None, anytype_2=None, anytype_3=None): # noqa: E501 - """AdditionalPropertiesClass - a model defined in OpenAPI - - - - Keyword Args: - map_string (dict(str, str)): [optional] # noqa: E501 - map_number (dict(str, float)): [optional] # noqa: E501 - map_integer (dict(str, int)): [optional] # noqa: E501 - map_boolean (dict(str, bool)): [optional] # noqa: E501 - map_array_integer (dict(str, list[int])): [optional] # noqa: E501 - map_array_anytype (dict(str, list[object])): [optional] # noqa: E501 - map_map_string (dict(str, dict(str, str))): [optional] # noqa: E501 - map_map_anytype (dict(str, dict(str, object))): [optional] # noqa: E501 - anytype_1 (object): [optional] # noqa: E501 - anytype_2 (object): [optional] # noqa: E501 - anytype_3 (object): [optional] # noqa: E501 - """ + """AdditionalPropertiesClass - a model defined in OpenAPI""" # noqa: E501 self._map_string = None self._map_number = None @@ -91,27 +99,49 @@ class AdditionalPropertiesClass(object): self.discriminator = None if map_string is not None: - self.map_string = map_string # noqa: E501 + self.map_string = ( + map_string + ) if map_number is not None: - self.map_number = map_number # noqa: E501 + self.map_number = ( + map_number + ) if map_integer is not None: - self.map_integer = map_integer # noqa: E501 + self.map_integer = ( + map_integer + ) if map_boolean is not None: - self.map_boolean = map_boolean # noqa: E501 + self.map_boolean = ( + map_boolean + ) if map_array_integer is not None: - self.map_array_integer = map_array_integer # noqa: E501 + self.map_array_integer = ( + map_array_integer + ) if map_array_anytype is not None: - self.map_array_anytype = map_array_anytype # noqa: E501 + self.map_array_anytype = ( + map_array_anytype + ) if map_map_string is not None: - self.map_map_string = map_map_string # noqa: E501 + self.map_map_string = ( + map_map_string + ) if map_map_anytype is not None: - self.map_map_anytype = map_map_anytype # noqa: E501 + self.map_map_anytype = ( + map_map_anytype + ) if anytype_1 is not None: - self.anytype_1 = anytype_1 # noqa: E501 + self.anytype_1 = ( + anytype_1 + ) if anytype_2 is not None: - self.anytype_2 = anytype_2 # noqa: E501 + self.anytype_2 = ( + anytype_2 + ) if anytype_3 is not None: - self.anytype_3 = anytype_3 # noqa: E501 + self.anytype_3 = ( + anytype_3 + ) @property def map_string(self): @@ -124,9 +154,7 @@ class AdditionalPropertiesClass(object): return self._map_string @map_string.setter - def map_string( - self, - map_string): + def map_string(self, map_string): # noqa: E501 """Sets the map_string of this AdditionalPropertiesClass. @@ -135,7 +163,8 @@ class AdditionalPropertiesClass(object): """ self._map_string = ( - map_string) + map_string + ) @property def map_number(self): @@ -148,9 +177,7 @@ class AdditionalPropertiesClass(object): return self._map_number @map_number.setter - def map_number( - self, - map_number): + def map_number(self, map_number): # noqa: E501 """Sets the map_number of this AdditionalPropertiesClass. @@ -159,7 +186,8 @@ class AdditionalPropertiesClass(object): """ self._map_number = ( - map_number) + map_number + ) @property def map_integer(self): @@ -172,9 +200,7 @@ class AdditionalPropertiesClass(object): return self._map_integer @map_integer.setter - def map_integer( - self, - map_integer): + def map_integer(self, map_integer): # noqa: E501 """Sets the map_integer of this AdditionalPropertiesClass. @@ -183,7 +209,8 @@ class AdditionalPropertiesClass(object): """ self._map_integer = ( - map_integer) + map_integer + ) @property def map_boolean(self): @@ -196,9 +223,7 @@ class AdditionalPropertiesClass(object): return self._map_boolean @map_boolean.setter - def map_boolean( - self, - map_boolean): + def map_boolean(self, map_boolean): # noqa: E501 """Sets the map_boolean of this AdditionalPropertiesClass. @@ -207,7 +232,8 @@ class AdditionalPropertiesClass(object): """ self._map_boolean = ( - map_boolean) + map_boolean + ) @property def map_array_integer(self): @@ -220,9 +246,7 @@ class AdditionalPropertiesClass(object): return self._map_array_integer @map_array_integer.setter - def map_array_integer( - self, - map_array_integer): + def map_array_integer(self, map_array_integer): # noqa: E501 """Sets the map_array_integer of this AdditionalPropertiesClass. @@ -231,7 +255,8 @@ class AdditionalPropertiesClass(object): """ self._map_array_integer = ( - map_array_integer) + map_array_integer + ) @property def map_array_anytype(self): @@ -244,9 +269,7 @@ class AdditionalPropertiesClass(object): return self._map_array_anytype @map_array_anytype.setter - def map_array_anytype( - self, - map_array_anytype): + def map_array_anytype(self, map_array_anytype): # noqa: E501 """Sets the map_array_anytype of this AdditionalPropertiesClass. @@ -255,7 +278,8 @@ class AdditionalPropertiesClass(object): """ self._map_array_anytype = ( - map_array_anytype) + map_array_anytype + ) @property def map_map_string(self): @@ -268,9 +292,7 @@ class AdditionalPropertiesClass(object): return self._map_map_string @map_map_string.setter - def map_map_string( - self, - map_map_string): + def map_map_string(self, map_map_string): # noqa: E501 """Sets the map_map_string of this AdditionalPropertiesClass. @@ -279,7 +301,8 @@ class AdditionalPropertiesClass(object): """ self._map_map_string = ( - map_map_string) + map_map_string + ) @property def map_map_anytype(self): @@ -292,9 +315,7 @@ class AdditionalPropertiesClass(object): return self._map_map_anytype @map_map_anytype.setter - def map_map_anytype( - self, - map_map_anytype): + def map_map_anytype(self, map_map_anytype): # noqa: E501 """Sets the map_map_anytype of this AdditionalPropertiesClass. @@ -303,7 +324,8 @@ class AdditionalPropertiesClass(object): """ self._map_map_anytype = ( - map_map_anytype) + map_map_anytype + ) @property def anytype_1(self): @@ -316,9 +338,7 @@ class AdditionalPropertiesClass(object): return self._anytype_1 @anytype_1.setter - def anytype_1( - self, - anytype_1): + def anytype_1(self, anytype_1): # noqa: E501 """Sets the anytype_1 of this AdditionalPropertiesClass. @@ -327,7 +347,8 @@ class AdditionalPropertiesClass(object): """ self._anytype_1 = ( - anytype_1) + anytype_1 + ) @property def anytype_2(self): @@ -340,9 +361,7 @@ class AdditionalPropertiesClass(object): return self._anytype_2 @anytype_2.setter - def anytype_2( - self, - anytype_2): + def anytype_2(self, anytype_2): # noqa: E501 """Sets the anytype_2 of this AdditionalPropertiesClass. @@ -351,7 +370,8 @@ class AdditionalPropertiesClass(object): """ self._anytype_2 = ( - anytype_2) + anytype_2 + ) @property def anytype_3(self): @@ -364,9 +384,7 @@ class AdditionalPropertiesClass(object): return self._anytype_3 @anytype_3.setter - def anytype_3( - self, - anytype_3): + def anytype_3(self, anytype_3): # noqa: E501 """Sets the anytype_3 of this AdditionalPropertiesClass. @@ -375,7 +393,8 @@ class AdditionalPropertiesClass(object): """ self._anytype_3 = ( - anytype_3) + anytype_3 + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_integer.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_integer.py index 9b3715f8f2..55ba58e1e2 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_integer.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_integer.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesInteger(object): +class AdditionalPropertiesInteger(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesInteger - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesInteger - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesInteger(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesInteger. @@ -75,7 +93,8 @@ class AdditionalPropertiesInteger(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_number.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_number.py index 1d4e26e873..32a59a5bc5 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_number.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_number.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesNumber(object): +class AdditionalPropertiesNumber(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesNumber - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesNumber - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesNumber(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesNumber. @@ -75,7 +93,8 @@ class AdditionalPropertiesNumber(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_object.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_object.py index 96b92ade01..362023c846 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_object.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_object.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesObject(object): +class AdditionalPropertiesObject(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesObject - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesObject - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesObject(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesObject. @@ -75,7 +93,8 @@ class AdditionalPropertiesObject(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_string.py b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_string.py index a61c1fb70e..e01ff7028f 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_string.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/additional_properties_string.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class AdditionalPropertiesString(object): +class AdditionalPropertiesString(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'name': 'str' + } + + validations = { } def __init__(self, name=None): # noqa: E501 - """AdditionalPropertiesString - a model defined in OpenAPI - - - - Keyword Args: - name (str): [optional] # noqa: E501 - """ + """AdditionalPropertiesString - a model defined in OpenAPI""" # noqa: E501 self._name = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def name(self): @@ -64,9 +84,7 @@ class AdditionalPropertiesString(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this AdditionalPropertiesString. @@ -75,7 +93,8 @@ class AdditionalPropertiesString(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/animal.py b/samples/client/petstore/python-experimental/petstore_api/models/animal.py index d5c0162b08..a2ce846a64 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/animal.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/animal.py @@ -10,34 +10,50 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Animal(object): +class Animal(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'class_name': 'str', - 'color': 'str', + allowed_values = { } attribute_map = { 'class_name': 'className', # noqa: E501 - 'color': 'color', # noqa: E501 + 'color': 'color' # noqa: E501 } discriminator_value_class_map = { @@ -45,15 +61,16 @@ class Animal(object): 'Cat': 'Cat' } - def __init__(self, class_name, color=None): # noqa: E501 - """Animal - a model defined in OpenAPI + openapi_types = { + 'class_name': 'str', + 'color': 'str' + } - Args: - class_name (str): + validations = { + } - Keyword Args: # noqa: E501 - color (str): [optional] if omitted the server will use the default value of 'red' # noqa: E501 - """ + def __init__(self, class_name=None, color='red'): # noqa: E501 + """Animal - a model defined in OpenAPI""" # noqa: E501 self._class_name = None self._color = None @@ -61,7 +78,9 @@ class Animal(object): self.class_name = class_name if color is not None: - self.color = color # noqa: E501 + self.color = ( + color + ) @property def class_name(self): @@ -74,9 +93,7 @@ class Animal(object): return self._class_name @class_name.setter - def class_name( - self, - class_name): + def class_name(self, class_name): # noqa: E501 """Sets the class_name of this Animal. @@ -84,10 +101,11 @@ class Animal(object): :type: str """ if class_name is None: - raise ValueError("Invalid value for `class_name`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `class_name`, must not be `None`") # noqa: E501 self._class_name = ( - class_name) + class_name + ) @property def color(self): @@ -100,9 +118,7 @@ class Animal(object): return self._color @color.setter - def color( - self, - color): + def color(self, color): # noqa: E501 """Sets the color of this Animal. @@ -111,7 +127,8 @@ class Animal(object): """ self._color = ( - color) + color + ) def get_real_child_model(self, data): """Returns the real base class specified by the discriminator""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/api_response.py b/samples/client/petstore/python-experimental/petstore_api/models/api_response.py index 4318196271..4f9f3a12bd 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/api_response.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/api_response.py @@ -10,48 +10,64 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ApiResponse(object): +class ApiResponse(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'code': 'int', - 'type': 'str', - 'message': 'str', + allowed_values = { } attribute_map = { 'code': 'code', # noqa: E501 'type': 'type', # noqa: E501 - 'message': 'message', # noqa: E501 + 'message': 'message' # noqa: E501 + } + + openapi_types = { + 'code': 'int', + 'type': 'str', + 'message': 'str' + } + + validations = { } def __init__(self, code=None, type=None, message=None): # noqa: E501 - """ApiResponse - a model defined in OpenAPI - - - - Keyword Args: - code (int): [optional] # noqa: E501 - type (str): [optional] # noqa: E501 - message (str): [optional] # noqa: E501 - """ + """ApiResponse - a model defined in OpenAPI""" # noqa: E501 self._code = None self._type = None @@ -59,11 +75,17 @@ class ApiResponse(object): self.discriminator = None if code is not None: - self.code = code # noqa: E501 + self.code = ( + code + ) if type is not None: - self.type = type # noqa: E501 + self.type = ( + type + ) if message is not None: - self.message = message # noqa: E501 + self.message = ( + message + ) @property def code(self): @@ -76,9 +98,7 @@ class ApiResponse(object): return self._code @code.setter - def code( - self, - code): + def code(self, code): # noqa: E501 """Sets the code of this ApiResponse. @@ -87,7 +107,8 @@ class ApiResponse(object): """ self._code = ( - code) + code + ) @property def type(self): @@ -100,9 +121,7 @@ class ApiResponse(object): return self._type @type.setter - def type( - self, - type): + def type(self, type): # noqa: E501 """Sets the type of this ApiResponse. @@ -111,7 +130,8 @@ class ApiResponse(object): """ self._type = ( - type) + type + ) @property def message(self): @@ -124,9 +144,7 @@ class ApiResponse(object): return self._message @message.setter - def message( - self, - message): + def message(self, message): # noqa: E501 """Sets the message of this ApiResponse. @@ -135,7 +153,8 @@ class ApiResponse(object): """ self._message = ( - message) + message + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/array_of_array_of_number_only.py b/samples/client/petstore/python-experimental/petstore_api/models/array_of_array_of_number_only.py index d49c620abc..2beb877283 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/array_of_array_of_number_only.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/array_of_array_of_number_only.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ArrayOfArrayOfNumberOnly(object): +class ArrayOfArrayOfNumberOnly(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'array_array_number': 'list[list[float]]', + allowed_values = { } attribute_map = { - 'array_array_number': 'ArrayArrayNumber', # noqa: E501 + 'array_array_number': 'ArrayArrayNumber' # noqa: E501 + } + + openapi_types = { + 'array_array_number': 'list[list[float]]' + } + + validations = { } def __init__(self, array_array_number=None): # noqa: E501 - """ArrayOfArrayOfNumberOnly - a model defined in OpenAPI - - - - Keyword Args: - array_array_number (list[list[float]]): [optional] # noqa: E501 - """ + """ArrayOfArrayOfNumberOnly - a model defined in OpenAPI""" # noqa: E501 self._array_array_number = None self.discriminator = None if array_array_number is not None: - self.array_array_number = array_array_number # noqa: E501 + self.array_array_number = ( + array_array_number + ) @property def array_array_number(self): @@ -64,9 +84,7 @@ class ArrayOfArrayOfNumberOnly(object): return self._array_array_number @array_array_number.setter - def array_array_number( - self, - array_array_number): + def array_array_number(self, array_array_number): # noqa: E501 """Sets the array_array_number of this ArrayOfArrayOfNumberOnly. @@ -75,7 +93,8 @@ class ArrayOfArrayOfNumberOnly(object): """ self._array_array_number = ( - array_array_number) + array_array_number + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/array_of_number_only.py b/samples/client/petstore/python-experimental/petstore_api/models/array_of_number_only.py index f87d00b168..7c67bcf59d 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/array_of_number_only.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/array_of_number_only.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ArrayOfNumberOnly(object): +class ArrayOfNumberOnly(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'array_number': 'list[float]', + allowed_values = { } attribute_map = { - 'array_number': 'ArrayNumber', # noqa: E501 + 'array_number': 'ArrayNumber' # noqa: E501 + } + + openapi_types = { + 'array_number': 'list[float]' + } + + validations = { } def __init__(self, array_number=None): # noqa: E501 - """ArrayOfNumberOnly - a model defined in OpenAPI - - - - Keyword Args: - array_number (list[float]): [optional] # noqa: E501 - """ + """ArrayOfNumberOnly - a model defined in OpenAPI""" # noqa: E501 self._array_number = None self.discriminator = None if array_number is not None: - self.array_number = array_number # noqa: E501 + self.array_number = ( + array_number + ) @property def array_number(self): @@ -64,9 +84,7 @@ class ArrayOfNumberOnly(object): return self._array_number @array_number.setter - def array_number( - self, - array_number): + def array_number(self, array_number): # noqa: E501 """Sets the array_number of this ArrayOfNumberOnly. @@ -75,7 +93,8 @@ class ArrayOfNumberOnly(object): """ self._array_number = ( - array_number) + array_number + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/array_test.py b/samples/client/petstore/python-experimental/petstore_api/models/array_test.py index 5098375a2f..adcb8690de 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/array_test.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/array_test.py @@ -10,48 +10,64 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ArrayTest(object): +class ArrayTest(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'array_of_string': 'list[str]', - 'array_array_of_integer': 'list[list[int]]', - 'array_array_of_model': 'list[list[ReadOnlyFirst]]', + allowed_values = { } attribute_map = { 'array_of_string': 'array_of_string', # noqa: E501 'array_array_of_integer': 'array_array_of_integer', # noqa: E501 - 'array_array_of_model': 'array_array_of_model', # noqa: E501 + 'array_array_of_model': 'array_array_of_model' # noqa: E501 + } + + openapi_types = { + 'array_of_string': 'list[str]', + 'array_array_of_integer': 'list[list[int]]', + 'array_array_of_model': 'list[list[ReadOnlyFirst]]' + } + + validations = { } def __init__(self, array_of_string=None, array_array_of_integer=None, array_array_of_model=None): # noqa: E501 - """ArrayTest - a model defined in OpenAPI - - - - Keyword Args: - array_of_string (list[str]): [optional] # noqa: E501 - array_array_of_integer (list[list[int]]): [optional] # noqa: E501 - array_array_of_model (list[list[ReadOnlyFirst]]): [optional] # noqa: E501 - """ + """ArrayTest - a model defined in OpenAPI""" # noqa: E501 self._array_of_string = None self._array_array_of_integer = None @@ -59,11 +75,17 @@ class ArrayTest(object): self.discriminator = None if array_of_string is not None: - self.array_of_string = array_of_string # noqa: E501 + self.array_of_string = ( + array_of_string + ) if array_array_of_integer is not None: - self.array_array_of_integer = array_array_of_integer # noqa: E501 + self.array_array_of_integer = ( + array_array_of_integer + ) if array_array_of_model is not None: - self.array_array_of_model = array_array_of_model # noqa: E501 + self.array_array_of_model = ( + array_array_of_model + ) @property def array_of_string(self): @@ -76,9 +98,7 @@ class ArrayTest(object): return self._array_of_string @array_of_string.setter - def array_of_string( - self, - array_of_string): + def array_of_string(self, array_of_string): # noqa: E501 """Sets the array_of_string of this ArrayTest. @@ -87,7 +107,8 @@ class ArrayTest(object): """ self._array_of_string = ( - array_of_string) + array_of_string + ) @property def array_array_of_integer(self): @@ -100,9 +121,7 @@ class ArrayTest(object): return self._array_array_of_integer @array_array_of_integer.setter - def array_array_of_integer( - self, - array_array_of_integer): + def array_array_of_integer(self, array_array_of_integer): # noqa: E501 """Sets the array_array_of_integer of this ArrayTest. @@ -111,7 +130,8 @@ class ArrayTest(object): """ self._array_array_of_integer = ( - array_array_of_integer) + array_array_of_integer + ) @property def array_array_of_model(self): @@ -124,9 +144,7 @@ class ArrayTest(object): return self._array_array_of_model @array_array_of_model.setter - def array_array_of_model( - self, - array_array_of_model): + def array_array_of_model(self, array_array_of_model): # noqa: E501 """Sets the array_array_of_model of this ArrayTest. @@ -135,7 +153,8 @@ class ArrayTest(object): """ self._array_array_of_model = ( - array_array_of_model) + array_array_of_model + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/capitalization.py b/samples/client/petstore/python-experimental/petstore_api/models/capitalization.py index e94eca3e40..5eeafb5ac7 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/capitalization.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/capitalization.py @@ -10,33 +10,45 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Capitalization(object): +class Capitalization(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'small_camel': 'str', - 'capital_camel': 'str', - 'small_snake': 'str', - 'capital_snake': 'str', - 'sca_eth_flow_points': 'str', - 'att_name': 'str', + allowed_values = { } attribute_map = { @@ -45,22 +57,23 @@ class Capitalization(object): 'small_snake': 'small_Snake', # noqa: E501 'capital_snake': 'Capital_Snake', # noqa: E501 'sca_eth_flow_points': 'SCA_ETH_Flow_Points', # noqa: E501 - 'att_name': 'ATT_NAME', # noqa: E501 + 'att_name': 'ATT_NAME' # noqa: E501 + } + + openapi_types = { + 'small_camel': 'str', + 'capital_camel': 'str', + 'small_snake': 'str', + 'capital_snake': 'str', + 'sca_eth_flow_points': 'str', + 'att_name': 'str' + } + + validations = { } def __init__(self, small_camel=None, capital_camel=None, small_snake=None, capital_snake=None, sca_eth_flow_points=None, att_name=None): # noqa: E501 - """Capitalization - a model defined in OpenAPI - - - - Keyword Args: - small_camel (str): [optional] # noqa: E501 - capital_camel (str): [optional] # noqa: E501 - small_snake (str): [optional] # noqa: E501 - capital_snake (str): [optional] # noqa: E501 - sca_eth_flow_points (str): [optional] # noqa: E501 - att_name (str): Name of the pet . [optional] # noqa: E501 - """ + """Capitalization - a model defined in OpenAPI""" # noqa: E501 self._small_camel = None self._capital_camel = None @@ -71,17 +84,29 @@ class Capitalization(object): self.discriminator = None if small_camel is not None: - self.small_camel = small_camel # noqa: E501 + self.small_camel = ( + small_camel + ) if capital_camel is not None: - self.capital_camel = capital_camel # noqa: E501 + self.capital_camel = ( + capital_camel + ) if small_snake is not None: - self.small_snake = small_snake # noqa: E501 + self.small_snake = ( + small_snake + ) if capital_snake is not None: - self.capital_snake = capital_snake # noqa: E501 + self.capital_snake = ( + capital_snake + ) if sca_eth_flow_points is not None: - self.sca_eth_flow_points = sca_eth_flow_points # noqa: E501 + self.sca_eth_flow_points = ( + sca_eth_flow_points + ) if att_name is not None: - self.att_name = att_name # noqa: E501 + self.att_name = ( + att_name + ) @property def small_camel(self): @@ -94,9 +119,7 @@ class Capitalization(object): return self._small_camel @small_camel.setter - def small_camel( - self, - small_camel): + def small_camel(self, small_camel): # noqa: E501 """Sets the small_camel of this Capitalization. @@ -105,7 +128,8 @@ class Capitalization(object): """ self._small_camel = ( - small_camel) + small_camel + ) @property def capital_camel(self): @@ -118,9 +142,7 @@ class Capitalization(object): return self._capital_camel @capital_camel.setter - def capital_camel( - self, - capital_camel): + def capital_camel(self, capital_camel): # noqa: E501 """Sets the capital_camel of this Capitalization. @@ -129,7 +151,8 @@ class Capitalization(object): """ self._capital_camel = ( - capital_camel) + capital_camel + ) @property def small_snake(self): @@ -142,9 +165,7 @@ class Capitalization(object): return self._small_snake @small_snake.setter - def small_snake( - self, - small_snake): + def small_snake(self, small_snake): # noqa: E501 """Sets the small_snake of this Capitalization. @@ -153,7 +174,8 @@ class Capitalization(object): """ self._small_snake = ( - small_snake) + small_snake + ) @property def capital_snake(self): @@ -166,9 +188,7 @@ class Capitalization(object): return self._capital_snake @capital_snake.setter - def capital_snake( - self, - capital_snake): + def capital_snake(self, capital_snake): # noqa: E501 """Sets the capital_snake of this Capitalization. @@ -177,7 +197,8 @@ class Capitalization(object): """ self._capital_snake = ( - capital_snake) + capital_snake + ) @property def sca_eth_flow_points(self): @@ -190,9 +211,7 @@ class Capitalization(object): return self._sca_eth_flow_points @sca_eth_flow_points.setter - def sca_eth_flow_points( - self, - sca_eth_flow_points): + def sca_eth_flow_points(self, sca_eth_flow_points): # noqa: E501 """Sets the sca_eth_flow_points of this Capitalization. @@ -201,7 +220,8 @@ class Capitalization(object): """ self._sca_eth_flow_points = ( - sca_eth_flow_points) + sca_eth_flow_points + ) @property def att_name(self): @@ -215,9 +235,7 @@ class Capitalization(object): return self._att_name @att_name.setter - def att_name( - self, - att_name): + def att_name(self, att_name): # noqa: E501 """Sets the att_name of this Capitalization. Name of the pet # noqa: E501 @@ -227,7 +245,8 @@ class Capitalization(object): """ self._att_name = ( - att_name) + att_name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/cat.py b/samples/client/petstore/python-experimental/petstore_api/models/cat.py index 2a19eddd5e..b496a13fe9 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/cat.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/cat.py @@ -10,54 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Cat(object): +class Cat(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'class_name': 'str', - 'declawed': 'bool', - 'color': 'str', + allowed_values = { } attribute_map = { - 'class_name': 'className', # noqa: E501 - 'declawed': 'declawed', # noqa: E501 - 'color': 'color', # noqa: E501 + 'declawed': 'declawed' # noqa: E501 } - def __init__(self, class_name, declawed=None, color=None): # noqa: E501 - """Cat - a model defined in OpenAPI + openapi_types = { + 'declawed': 'bool' + } - Args: - class_name (str): + validations = { + } - Keyword Args: # noqa: E501 - declawed (bool): [optional] # noqa: E501 - color (str): [optional] if omitted the server will use the default value of 'red' # noqa: E501 - """ + def __init__(self, declawed=None): # noqa: E501 + """Cat - a model defined in OpenAPI""" # noqa: E501 self._declawed = None self.discriminator = None if declawed is not None: - self.declawed = declawed # noqa: E501 + self.declawed = ( + declawed + ) @property def declawed(self): @@ -70,9 +84,7 @@ class Cat(object): return self._declawed @declawed.setter - def declawed( - self, - declawed): + def declawed(self, declawed): # noqa: E501 """Sets the declawed of this Cat. @@ -81,7 +93,8 @@ class Cat(object): """ self._declawed = ( - declawed) + declawed + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/cat_all_of.py b/samples/client/petstore/python-experimental/petstore_api/models/cat_all_of.py index 88260a5e3d..0a8267293d 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/cat_all_of.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/cat_all_of.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class CatAllOf(object): +class CatAllOf(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'declawed': 'bool', + allowed_values = { } attribute_map = { - 'declawed': 'declawed', # noqa: E501 + 'declawed': 'declawed' # noqa: E501 + } + + openapi_types = { + 'declawed': 'bool' + } + + validations = { } def __init__(self, declawed=None): # noqa: E501 - """CatAllOf - a model defined in OpenAPI - - - - Keyword Args: - declawed (bool): [optional] # noqa: E501 - """ + """CatAllOf - a model defined in OpenAPI""" # noqa: E501 self._declawed = None self.discriminator = None if declawed is not None: - self.declawed = declawed # noqa: E501 + self.declawed = ( + declawed + ) @property def declawed(self): @@ -64,9 +84,7 @@ class CatAllOf(object): return self._declawed @declawed.setter - def declawed( - self, - declawed): + def declawed(self, declawed): # noqa: E501 """Sets the declawed of this CatAllOf. @@ -75,7 +93,8 @@ class CatAllOf(object): """ self._declawed = ( - declawed) + declawed + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/category.py b/samples/client/petstore/python-experimental/petstore_api/models/category.py index 347ed14927..bf117a1317 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/category.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/category.py @@ -10,52 +10,71 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Category(object): +class Category(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', - 'id': 'int', + allowed_values = { } attribute_map = { - 'name': 'name', # noqa: E501 'id': 'id', # noqa: E501 + 'name': 'name' # noqa: E501 } - def __init__(self, name='default-name', id=None): # noqa: E501 - """Category - a model defined in OpenAPI + openapi_types = { + 'id': 'int', + 'name': 'str' + } - Args: + validations = { + } - Keyword Args: - name (str): defaults to 'default-name', must be one of ['default-name'] # noqa: E501 - id (int): [optional] # noqa: E501 - """ + def __init__(self, id=None, name='default-name'): # noqa: E501 + """Category - a model defined in OpenAPI""" # noqa: E501 self._id = None self._name = None self.discriminator = None if id is not None: - self.id = id # noqa: E501 + self.id = ( + id + ) self.name = name @property @@ -69,9 +88,7 @@ class Category(object): return self._id @id.setter - def id( - self, - id): + def id(self, id): # noqa: E501 """Sets the id of this Category. @@ -80,7 +97,8 @@ class Category(object): """ self._id = ( - id) + id + ) @property def name(self): @@ -93,9 +111,7 @@ class Category(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this Category. @@ -103,10 +119,11 @@ class Category(object): :type: str """ if name is None: - raise ValueError("Invalid value for `name`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `name`, must not be `None`") # noqa: E501 self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/class_model.py b/samples/client/petstore/python-experimental/petstore_api/models/class_model.py index bac11b0e13..907e0f6ce2 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/class_model.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/class_model.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ClassModel(object): +class ClassModel(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - '_class': 'str', + allowed_values = { } attribute_map = { - '_class': '_class', # noqa: E501 + '_class': '_class' # noqa: E501 + } + + openapi_types = { + '_class': 'str' + } + + validations = { } def __init__(self, _class=None): # noqa: E501 - """ClassModel - a model defined in OpenAPI - - - - Keyword Args: - _class (str): [optional] # noqa: E501 - """ + """ClassModel - a model defined in OpenAPI""" # noqa: E501 self.__class = None self.discriminator = None if _class is not None: - self._class = _class # noqa: E501 + self._class = ( + _class + ) @property def _class(self): @@ -64,9 +84,7 @@ class ClassModel(object): return self.__class @_class.setter - def _class( - self, - _class): + def _class(self, _class): # noqa: E501 """Sets the _class of this ClassModel. @@ -75,7 +93,8 @@ class ClassModel(object): """ self.__class = ( - _class) + _class + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/client.py b/samples/client/petstore/python-experimental/petstore_api/models/client.py index 4cde17963c..7b133a3871 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/client.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/client.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Client(object): +class Client(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'client': 'str', + allowed_values = { } attribute_map = { - 'client': 'client', # noqa: E501 + 'client': 'client' # noqa: E501 + } + + openapi_types = { + 'client': 'str' + } + + validations = { } def __init__(self, client=None): # noqa: E501 - """Client - a model defined in OpenAPI - - - - Keyword Args: - client (str): [optional] # noqa: E501 - """ + """Client - a model defined in OpenAPI""" # noqa: E501 self._client = None self.discriminator = None if client is not None: - self.client = client # noqa: E501 + self.client = ( + client + ) @property def client(self): @@ -64,9 +84,7 @@ class Client(object): return self._client @client.setter - def client( - self, - client): + def client(self, client): # noqa: E501 """Sets the client of this Client. @@ -75,7 +93,8 @@ class Client(object): """ self._client = ( - client) + client + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/dog.py b/samples/client/petstore/python-experimental/petstore_api/models/dog.py index 14c4eedcc5..61ef9958fc 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/dog.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/dog.py @@ -10,54 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Dog(object): +class Dog(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'class_name': 'str', - 'breed': 'str', - 'color': 'str', + allowed_values = { } attribute_map = { - 'class_name': 'className', # noqa: E501 - 'breed': 'breed', # noqa: E501 - 'color': 'color', # noqa: E501 + 'breed': 'breed' # noqa: E501 } - def __init__(self, class_name, breed=None, color=None): # noqa: E501 - """Dog - a model defined in OpenAPI + openapi_types = { + 'breed': 'str' + } - Args: - class_name (str): + validations = { + } - Keyword Args: # noqa: E501 - breed (str): [optional] # noqa: E501 - color (str): [optional] if omitted the server will use the default value of 'red' # noqa: E501 - """ + def __init__(self, breed=None): # noqa: E501 + """Dog - a model defined in OpenAPI""" # noqa: E501 self._breed = None self.discriminator = None if breed is not None: - self.breed = breed # noqa: E501 + self.breed = ( + breed + ) @property def breed(self): @@ -70,9 +84,7 @@ class Dog(object): return self._breed @breed.setter - def breed( - self, - breed): + def breed(self, breed): # noqa: E501 """Sets the breed of this Dog. @@ -81,7 +93,8 @@ class Dog(object): """ self._breed = ( - breed) + breed + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/dog_all_of.py b/samples/client/petstore/python-experimental/petstore_api/models/dog_all_of.py index 7940637ce5..cc082b5b35 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/dog_all_of.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/dog_all_of.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class DogAllOf(object): +class DogAllOf(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'breed': 'str', + allowed_values = { } attribute_map = { - 'breed': 'breed', # noqa: E501 + 'breed': 'breed' # noqa: E501 + } + + openapi_types = { + 'breed': 'str' + } + + validations = { } def __init__(self, breed=None): # noqa: E501 - """DogAllOf - a model defined in OpenAPI - - - - Keyword Args: - breed (str): [optional] # noqa: E501 - """ + """DogAllOf - a model defined in OpenAPI""" # noqa: E501 self._breed = None self.discriminator = None if breed is not None: - self.breed = breed # noqa: E501 + self.breed = ( + breed + ) @property def breed(self): @@ -64,9 +84,7 @@ class DogAllOf(object): return self._breed @breed.setter - def breed( - self, - breed): + def breed(self, breed): # noqa: E501 """Sets the breed of this DogAllOf. @@ -75,7 +93,8 @@ class DogAllOf(object): """ self._breed = ( - breed) + breed + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/enum_arrays.py b/samples/client/petstore/python-experimental/petstore_api/models/enum_arrays.py index ad0e8c3d9b..fe8355e7de 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/enum_arrays.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/enum_arrays.py @@ -10,54 +10,83 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class EnumArrays(object): +class EnumArrays(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'just_symbol': 'str', - 'array_enum': 'list[str]', + allowed_values = { + ('just_symbol',): { + '>=': ">=", + '$': "$" + }, + ('array_enum',): { + 'FISH': "fish", + 'CRAB': "crab" + }, } attribute_map = { 'just_symbol': 'just_symbol', # noqa: E501 - 'array_enum': 'array_enum', # noqa: E501 + 'array_enum': 'array_enum' # noqa: E501 + } + + openapi_types = { + 'just_symbol': 'str', + 'array_enum': 'list[str]' + } + + validations = { } def __init__(self, just_symbol=None, array_enum=None): # noqa: E501 - """EnumArrays - a model defined in OpenAPI - - - - Keyword Args: - just_symbol (str): [optional] # noqa: E501 - array_enum (list[str]): [optional] # noqa: E501 - """ + """EnumArrays - a model defined in OpenAPI""" # noqa: E501 self._just_symbol = None self._array_enum = None self.discriminator = None if just_symbol is not None: - self.just_symbol = just_symbol # noqa: E501 + self.just_symbol = ( + just_symbol + ) if array_enum is not None: - self.array_enum = array_enum # noqa: E501 + self.array_enum = ( + array_enum + ) @property def just_symbol(self): @@ -70,24 +99,23 @@ class EnumArrays(object): return self._just_symbol @just_symbol.setter - def just_symbol( - self, - just_symbol): + def just_symbol(self, just_symbol): # noqa: E501 """Sets the just_symbol of this EnumArrays. :param just_symbol: The just_symbol of this EnumArrays. # noqa: E501 :type: str """ - allowed_values = [">=", "$"] # noqa: E501 - if just_symbol not in allowed_values: - raise ValueError( - "Invalid value for `just_symbol` ({0}), must be one of {1}" # noqa: E501 - .format(just_symbol, allowed_values) - ) + check_allowed_values( + self.allowed_values, + ('just_symbol',), + just_symbol, + self.validations + ) self._just_symbol = ( - just_symbol) + just_symbol + ) @property def array_enum(self): @@ -100,25 +128,23 @@ class EnumArrays(object): return self._array_enum @array_enum.setter - def array_enum( - self, - array_enum): + def array_enum(self, array_enum): # noqa: E501 """Sets the array_enum of this EnumArrays. :param array_enum: The array_enum of this EnumArrays. # noqa: E501 :type: list[str] """ - allowed_values = ["fish", "crab"] # noqa: E501 - if not set(array_enum).issubset(set(allowed_values)): - raise ValueError( - "Invalid values for `array_enum` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(array_enum) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) + check_allowed_values( + self.allowed_values, + ('array_enum',), + array_enum, + self.validations + ) self._array_enum = ( - array_enum) + array_enum + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/enum_class.py b/samples/client/petstore/python-experimental/petstore_api/models/enum_class.py index a2f3a3e4a7..60d4f64e9c 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/enum_class.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/enum_class.py @@ -10,75 +10,97 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class EnumClass(object): +class EnumClass(ModelSimple): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. - """ - """ - allowed enum values - """ - _ABC = "_abc" - _EFG = "-efg" - _XYZ_ = "(xyz)" - - """ Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ + + allowed_values = { + ('value',): { + '_ABC': "_abc", + '-EFG': "-efg", + '(XYZ)': "(xyz)" + }, + } + openapi_types = { + 'value': 'str' } - attribute_map = { + validations = { } - def __init__(self): # noqa: E501 - """EnumClass - a model defined in OpenAPI + def __init__(self, value='-efg'): # noqa: E501 + """EnumClass - a model defined in OpenAPI""" # noqa: E501 - - - Keyword Args: - """ + self._value = None self.discriminator = None - def to_dict(self): - """Returns the model properties as a dict""" - result = {} + self.value = value - for attr, _ in six.iteritems(self.openapi_types): - value = getattr(self, attr) - if isinstance(value, list): - result[attr] = list(map( - lambda x: x.to_dict() if hasattr(x, "to_dict") else x, - value - )) - elif hasattr(value, "to_dict"): - result[attr] = value.to_dict() - elif isinstance(value, dict): - result[attr] = dict(map( - lambda item: (item[0], item[1].to_dict()) - if hasattr(item[1], "to_dict") else item, - value.items() - )) - else: - result[attr] = value + @property + def value(self): + """Gets the value of this EnumClass. # noqa: E501 - return result + + :return: The value of this EnumClass. # noqa: E501 + :rtype: str + """ + return self._value + + @value.setter + def value(self, value): # noqa: E501 + """Sets the value of this EnumClass. + + + :param value: The value of this EnumClass. # noqa: E501 + :type: str + """ + if value is None: + raise ApiValueError("Invalid value for `value`, must not be `None`") # noqa: E501 + check_allowed_values( + self.allowed_values, + ('value',), + value, + self.validations + ) + + self._value = ( + value + ) def to_str(self): """Returns the string representation of the model""" - return pprint.pformat(self.to_dict()) + return str(self._value) def __repr__(self): """For `print` and `pprint`""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/enum_test.py b/samples/client/petstore/python-experimental/petstore_api/models/enum_test.py index 4ea9e777f6..0ec5096c0a 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/enum_test.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/enum_test.py @@ -10,54 +10,86 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class EnumTest(object): +class EnumTest(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'enum_string_required': 'str', - 'enum_string': 'str', - 'enum_integer': 'int', - 'enum_number': 'float', - 'outer_enum': 'OuterEnum', + allowed_values = { + ('enum_string',): { + 'UPPER': "UPPER", + 'LOWER': "lower", + 'EMPTY': "" + }, + ('enum_string_required',): { + 'UPPER': "UPPER", + 'LOWER': "lower", + 'EMPTY': "" + }, + ('enum_integer',): { + '1': 1, + '-1': -1 + }, + ('enum_number',): { + '1.1': 1.1, + '-1.2': -1.2 + }, } attribute_map = { - 'enum_string_required': 'enum_string_required', # noqa: E501 'enum_string': 'enum_string', # noqa: E501 + 'enum_string_required': 'enum_string_required', # noqa: E501 'enum_integer': 'enum_integer', # noqa: E501 'enum_number': 'enum_number', # noqa: E501 - 'outer_enum': 'outerEnum', # noqa: E501 + 'outer_enum': 'outerEnum' # noqa: E501 } - def __init__(self, enum_string_required, enum_string=None, enum_integer=None, enum_number=None, outer_enum=None): # noqa: E501 - """EnumTest - a model defined in OpenAPI + openapi_types = { + 'enum_string': 'str', + 'enum_string_required': 'str', + 'enum_integer': 'int', + 'enum_number': 'float', + 'outer_enum': 'OuterEnum' + } - Args: - enum_string_required (str): + validations = { + } - Keyword Args: # noqa: E501 - enum_string (str): [optional] # noqa: E501 - enum_integer (int): [optional] # noqa: E501 - enum_number (float): [optional] # noqa: E501 - outer_enum (OuterEnum): [optional] # noqa: E501 - """ + def __init__(self, enum_string=None, enum_string_required=None, enum_integer=None, enum_number=None, outer_enum=None): # noqa: E501 + """EnumTest - a model defined in OpenAPI""" # noqa: E501 self._enum_string = None self._enum_string_required = None @@ -67,14 +99,22 @@ class EnumTest(object): self.discriminator = None if enum_string is not None: - self.enum_string = enum_string # noqa: E501 + self.enum_string = ( + enum_string + ) self.enum_string_required = enum_string_required if enum_integer is not None: - self.enum_integer = enum_integer # noqa: E501 + self.enum_integer = ( + enum_integer + ) if enum_number is not None: - self.enum_number = enum_number # noqa: E501 + self.enum_number = ( + enum_number + ) if outer_enum is not None: - self.outer_enum = outer_enum # noqa: E501 + self.outer_enum = ( + outer_enum + ) @property def enum_string(self): @@ -87,24 +127,23 @@ class EnumTest(object): return self._enum_string @enum_string.setter - def enum_string( - self, - enum_string): + def enum_string(self, enum_string): # noqa: E501 """Sets the enum_string of this EnumTest. :param enum_string: The enum_string of this EnumTest. # noqa: E501 :type: str """ - allowed_values = ["UPPER", "lower", ""] # noqa: E501 - if enum_string not in allowed_values: - raise ValueError( - "Invalid value for `enum_string` ({0}), must be one of {1}" # noqa: E501 - .format(enum_string, allowed_values) - ) + check_allowed_values( + self.allowed_values, + ('enum_string',), + enum_string, + self.validations + ) self._enum_string = ( - enum_string) + enum_string + ) @property def enum_string_required(self): @@ -117,9 +156,7 @@ class EnumTest(object): return self._enum_string_required @enum_string_required.setter - def enum_string_required( - self, - enum_string_required): + def enum_string_required(self, enum_string_required): # noqa: E501 """Sets the enum_string_required of this EnumTest. @@ -127,16 +164,17 @@ class EnumTest(object): :type: str """ if enum_string_required is None: - raise ValueError("Invalid value for `enum_string_required`, must not be `None`") # noqa: E501 - allowed_values = ["UPPER", "lower", ""] # noqa: E501 - if enum_string_required not in allowed_values: - raise ValueError( - "Invalid value for `enum_string_required` ({0}), must be one of {1}" # noqa: E501 - .format(enum_string_required, allowed_values) - ) + raise ApiValueError("Invalid value for `enum_string_required`, must not be `None`") # noqa: E501 + check_allowed_values( + self.allowed_values, + ('enum_string_required',), + enum_string_required, + self.validations + ) self._enum_string_required = ( - enum_string_required) + enum_string_required + ) @property def enum_integer(self): @@ -149,24 +187,23 @@ class EnumTest(object): return self._enum_integer @enum_integer.setter - def enum_integer( - self, - enum_integer): + def enum_integer(self, enum_integer): # noqa: E501 """Sets the enum_integer of this EnumTest. :param enum_integer: The enum_integer of this EnumTest. # noqa: E501 :type: int """ - allowed_values = [1, -1] # noqa: E501 - if enum_integer not in allowed_values: - raise ValueError( - "Invalid value for `enum_integer` ({0}), must be one of {1}" # noqa: E501 - .format(enum_integer, allowed_values) - ) + check_allowed_values( + self.allowed_values, + ('enum_integer',), + enum_integer, + self.validations + ) self._enum_integer = ( - enum_integer) + enum_integer + ) @property def enum_number(self): @@ -179,24 +216,23 @@ class EnumTest(object): return self._enum_number @enum_number.setter - def enum_number( - self, - enum_number): + def enum_number(self, enum_number): # noqa: E501 """Sets the enum_number of this EnumTest. :param enum_number: The enum_number of this EnumTest. # noqa: E501 :type: float """ - allowed_values = [1.1, -1.2] # noqa: E501 - if enum_number not in allowed_values: - raise ValueError( - "Invalid value for `enum_number` ({0}), must be one of {1}" # noqa: E501 - .format(enum_number, allowed_values) - ) + check_allowed_values( + self.allowed_values, + ('enum_number',), + enum_number, + self.validations + ) self._enum_number = ( - enum_number) + enum_number + ) @property def outer_enum(self): @@ -209,9 +245,7 @@ class EnumTest(object): return self._outer_enum @outer_enum.setter - def outer_enum( - self, - outer_enum): + def outer_enum(self, outer_enum): # noqa: E501 """Sets the outer_enum of this EnumTest. @@ -220,7 +254,8 @@ class EnumTest(object): """ self._outer_enum = ( - outer_enum) + outer_enum + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/file.py b/samples/client/petstore/python-experimental/petstore_api/models/file.py index 70e1611a23..6411e70e07 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/file.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/file.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class File(object): +class File(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'source_uri': 'str', + allowed_values = { } attribute_map = { - 'source_uri': 'sourceURI', # noqa: E501 + 'source_uri': 'sourceURI' # noqa: E501 + } + + openapi_types = { + 'source_uri': 'str' + } + + validations = { } def __init__(self, source_uri=None): # noqa: E501 - """File - a model defined in OpenAPI - - - - Keyword Args: - source_uri (str): Test capitalization. [optional] # noqa: E501 - """ + """File - a model defined in OpenAPI""" # noqa: E501 self._source_uri = None self.discriminator = None if source_uri is not None: - self.source_uri = source_uri # noqa: E501 + self.source_uri = ( + source_uri + ) @property def source_uri(self): @@ -65,9 +85,7 @@ class File(object): return self._source_uri @source_uri.setter - def source_uri( - self, - source_uri): + def source_uri(self, source_uri): # noqa: E501 """Sets the source_uri of this File. Test capitalization # noqa: E501 @@ -77,7 +95,8 @@ class File(object): """ self._source_uri = ( - source_uri) + source_uri + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/file_schema_test_class.py b/samples/client/petstore/python-experimental/petstore_api/models/file_schema_test_class.py index 86e926ca15..e773e2cb19 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/file_schema_test_class.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/file_schema_test_class.py @@ -10,54 +10,75 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class FileSchemaTestClass(object): +class FileSchemaTestClass(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'file': 'File', - 'files': 'list[File]', + allowed_values = { } attribute_map = { 'file': 'file', # noqa: E501 - 'files': 'files', # noqa: E501 + 'files': 'files' # noqa: E501 + } + + openapi_types = { + 'file': 'File', + 'files': 'list[File]' + } + + validations = { } def __init__(self, file=None, files=None): # noqa: E501 - """FileSchemaTestClass - a model defined in OpenAPI - - - - Keyword Args: - file (File): [optional] # noqa: E501 - files (list[File]): [optional] # noqa: E501 - """ + """FileSchemaTestClass - a model defined in OpenAPI""" # noqa: E501 self._file = None self._files = None self.discriminator = None if file is not None: - self.file = file # noqa: E501 + self.file = ( + file + ) if files is not None: - self.files = files # noqa: E501 + self.files = ( + files + ) @property def file(self): @@ -70,9 +91,7 @@ class FileSchemaTestClass(object): return self._file @file.setter - def file( - self, - file): + def file(self, file): # noqa: E501 """Sets the file of this FileSchemaTestClass. @@ -81,7 +100,8 @@ class FileSchemaTestClass(object): """ self._file = ( - file) + file + ) @property def files(self): @@ -94,9 +114,7 @@ class FileSchemaTestClass(object): return self._files @files.setter - def files( - self, - files): + def files(self, files): # noqa: E501 """Sets the files of this FileSchemaTestClass. @@ -105,7 +123,8 @@ class FileSchemaTestClass(object): """ self._files = ( - files) + files + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/format_test.py b/samples/client/petstore/python-experimental/petstore_api/models/format_test.py index a7936dc37e..8b1a5143e0 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/format_test.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/format_test.py @@ -10,78 +10,126 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class FormatTest(object): +class FormatTest(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'number': 'float', - 'byte': 'str', - 'date': 'date', - 'password': 'str', - 'integer': 'int', - 'int32': 'int', - 'int64': 'int', - 'float': 'float', - 'double': 'float', - 'string': 'str', - 'binary': 'file', - 'date_time': 'datetime', - 'uuid': 'str', + allowed_values = { } attribute_map = { - 'number': 'number', # noqa: E501 - 'byte': 'byte', # noqa: E501 - 'date': 'date', # noqa: E501 - 'password': 'password', # noqa: E501 'integer': 'integer', # noqa: E501 'int32': 'int32', # noqa: E501 'int64': 'int64', # noqa: E501 + 'number': 'number', # noqa: E501 'float': 'float', # noqa: E501 'double': 'double', # noqa: E501 'string': 'string', # noqa: E501 + 'byte': 'byte', # noqa: E501 'binary': 'binary', # noqa: E501 + 'date': 'date', # noqa: E501 'date_time': 'dateTime', # noqa: E501 'uuid': 'uuid', # noqa: E501 + 'password': 'password' # noqa: E501 } - def __init__(self, number, byte, date, password, integer=None, int32=None, int64=None, float=None, double=None, string=None, binary=None, date_time=None, uuid=None): # noqa: E501 - """FormatTest - a model defined in OpenAPI + openapi_types = { + 'integer': 'int', + 'int32': 'int', + 'int64': 'int', + 'number': 'float', + 'float': 'float', + 'double': 'float', + 'string': 'str', + 'byte': 'str', + 'binary': 'file', + 'date': 'date', + 'date_time': 'datetime', + 'uuid': 'str', + 'password': 'str' + } - Args: - number (float): - byte (str): - date (date): - password (str): + validations = { + ('integer',): { - Keyword Args: # noqa: E501 # noqa: E501 # noqa: E501 # noqa: E501 - integer (int): [optional] # noqa: E501 - int32 (int): [optional] # noqa: E501 - int64 (int): [optional] # noqa: E501 - float (float): [optional] # noqa: E501 - double (float): [optional] # noqa: E501 - string (str): [optional] # noqa: E501 - binary (file): [optional] # noqa: E501 - date_time (datetime): [optional] # noqa: E501 - uuid (str): [optional] # noqa: E501 - """ + 'inclusive_maximum': 100, + 'inclusive_minimum': 10, + }, + ('int32',): { + + 'inclusive_maximum': 200, + 'inclusive_minimum': 20, + }, + ('number',): { + + 'inclusive_maximum': 543.2, + 'inclusive_minimum': 32.1, + }, + ('float',): { + + 'inclusive_maximum': 987.6, + 'inclusive_minimum': 54.3, + }, + ('double',): { + + 'inclusive_maximum': 123.4, + 'inclusive_minimum': 67.8, + }, + ('string',): { + + 'regex': { + 'pattern': r'^[a-z]+$', # noqa: E501 + 'flags': (re.IGNORECASE) + }, + }, + ('byte',): { + + 'regex': { + 'pattern': r'^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$', # noqa: E501 + }, + }, + ('password',): { + 'max_length': 64, + 'min_length': 10, + }, + } + + def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None): # noqa: E501 + """FormatTest - a model defined in OpenAPI""" # noqa: E501 self._integer = None self._int32 = None @@ -99,26 +147,44 @@ class FormatTest(object): self.discriminator = None if integer is not None: - self.integer = integer # noqa: E501 + self.integer = ( + integer + ) if int32 is not None: - self.int32 = int32 # noqa: E501 + self.int32 = ( + int32 + ) if int64 is not None: - self.int64 = int64 # noqa: E501 + self.int64 = ( + int64 + ) self.number = number if float is not None: - self.float = float # noqa: E501 + self.float = ( + float + ) if double is not None: - self.double = double # noqa: E501 + self.double = ( + double + ) if string is not None: - self.string = string # noqa: E501 + self.string = ( + string + ) self.byte = byte if binary is not None: - self.binary = binary # noqa: E501 + self.binary = ( + binary + ) self.date = date if date_time is not None: - self.date_time = date_time # noqa: E501 + self.date_time = ( + date_time + ) if uuid is not None: - self.uuid = uuid # noqa: E501 + self.uuid = ( + uuid + ) self.password = password @property @@ -132,22 +198,22 @@ class FormatTest(object): return self._integer @integer.setter - def integer( - self, - integer): + def integer(self, integer): # noqa: E501 """Sets the integer of this FormatTest. :param integer: The integer of this FormatTest. # noqa: E501 :type: int """ - if integer is not None and integer > 100: # noqa: E501 - raise ValueError("Invalid value for `integer`, must be a value less than or equal to `100`") # noqa: E501 - if integer is not None and integer < 10: # noqa: E501 - raise ValueError("Invalid value for `integer`, must be a value greater than or equal to `10`") # noqa: E501 + check_validations( + self.validations, + ('integer',), + integer + ) self._integer = ( - integer) + integer + ) @property def int32(self): @@ -160,22 +226,22 @@ class FormatTest(object): return self._int32 @int32.setter - def int32( - self, - int32): + def int32(self, int32): # noqa: E501 """Sets the int32 of this FormatTest. :param int32: The int32 of this FormatTest. # noqa: E501 :type: int """ - if int32 is not None and int32 > 200: # noqa: E501 - raise ValueError("Invalid value for `int32`, must be a value less than or equal to `200`") # noqa: E501 - if int32 is not None and int32 < 20: # noqa: E501 - raise ValueError("Invalid value for `int32`, must be a value greater than or equal to `20`") # noqa: E501 + check_validations( + self.validations, + ('int32',), + int32 + ) self._int32 = ( - int32) + int32 + ) @property def int64(self): @@ -188,9 +254,7 @@ class FormatTest(object): return self._int64 @int64.setter - def int64( - self, - int64): + def int64(self, int64): # noqa: E501 """Sets the int64 of this FormatTest. @@ -199,7 +263,8 @@ class FormatTest(object): """ self._int64 = ( - int64) + int64 + ) @property def number(self): @@ -212,9 +277,7 @@ class FormatTest(object): return self._number @number.setter - def number( - self, - number): + def number(self, number): # noqa: E501 """Sets the number of this FormatTest. @@ -222,14 +285,16 @@ class FormatTest(object): :type: float """ if number is None: - raise ValueError("Invalid value for `number`, must not be `None`") # noqa: E501 - if number is not None and number > 543.2: # noqa: E501 - raise ValueError("Invalid value for `number`, must be a value less than or equal to `543.2`") # noqa: E501 - if number is not None and number < 32.1: # noqa: E501 - raise ValueError("Invalid value for `number`, must be a value greater than or equal to `32.1`") # noqa: E501 + raise ApiValueError("Invalid value for `number`, must not be `None`") # noqa: E501 + check_validations( + self.validations, + ('number',), + number + ) self._number = ( - number) + number + ) @property def float(self): @@ -242,22 +307,22 @@ class FormatTest(object): return self._float @float.setter - def float( - self, - float): + def float(self, float): # noqa: E501 """Sets the float of this FormatTest. :param float: The float of this FormatTest. # noqa: E501 :type: float """ - if float is not None and float > 987.6: # noqa: E501 - raise ValueError("Invalid value for `float`, must be a value less than or equal to `987.6`") # noqa: E501 - if float is not None and float < 54.3: # noqa: E501 - raise ValueError("Invalid value for `float`, must be a value greater than or equal to `54.3`") # noqa: E501 + check_validations( + self.validations, + ('float',), + float + ) self._float = ( - float) + float + ) @property def double(self): @@ -270,22 +335,22 @@ class FormatTest(object): return self._double @double.setter - def double( - self, - double): + def double(self, double): # noqa: E501 """Sets the double of this FormatTest. :param double: The double of this FormatTest. # noqa: E501 :type: float """ - if double is not None and double > 123.4: # noqa: E501 - raise ValueError("Invalid value for `double`, must be a value less than or equal to `123.4`") # noqa: E501 - if double is not None and double < 67.8: # noqa: E501 - raise ValueError("Invalid value for `double`, must be a value greater than or equal to `67.8`") # noqa: E501 + check_validations( + self.validations, + ('double',), + double + ) self._double = ( - double) + double + ) @property def string(self): @@ -298,20 +363,22 @@ class FormatTest(object): return self._string @string.setter - def string( - self, - string): + def string(self, string): # noqa: E501 """Sets the string of this FormatTest. :param string: The string of this FormatTest. # noqa: E501 :type: str """ - if string is not None and not re.search(r'[a-z]', string, flags=re.IGNORECASE): # noqa: E501 - raise ValueError(r"Invalid value for `string`, must be a follow pattern or equal to `/[a-z]/i`") # noqa: E501 + check_validations( + self.validations, + ('string',), + string + ) self._string = ( - string) + string + ) @property def byte(self): @@ -324,9 +391,7 @@ class FormatTest(object): return self._byte @byte.setter - def byte( - self, - byte): + def byte(self, byte): # noqa: E501 """Sets the byte of this FormatTest. @@ -334,12 +399,16 @@ class FormatTest(object): :type: str """ if byte is None: - raise ValueError("Invalid value for `byte`, must not be `None`") # noqa: E501 - if byte is not None and not re.search(r'^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$', byte): # noqa: E501 - raise ValueError(r"Invalid value for `byte`, must be a follow pattern or equal to `/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/`") # noqa: E501 + raise ApiValueError("Invalid value for `byte`, must not be `None`") # noqa: E501 + check_validations( + self.validations, + ('byte',), + byte + ) self._byte = ( - byte) + byte + ) @property def binary(self): @@ -352,9 +421,7 @@ class FormatTest(object): return self._binary @binary.setter - def binary( - self, - binary): + def binary(self, binary): # noqa: E501 """Sets the binary of this FormatTest. @@ -363,7 +430,8 @@ class FormatTest(object): """ self._binary = ( - binary) + binary + ) @property def date(self): @@ -376,9 +444,7 @@ class FormatTest(object): return self._date @date.setter - def date( - self, - date): + def date(self, date): # noqa: E501 """Sets the date of this FormatTest. @@ -386,10 +452,11 @@ class FormatTest(object): :type: date """ if date is None: - raise ValueError("Invalid value for `date`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `date`, must not be `None`") # noqa: E501 self._date = ( - date) + date + ) @property def date_time(self): @@ -402,9 +469,7 @@ class FormatTest(object): return self._date_time @date_time.setter - def date_time( - self, - date_time): + def date_time(self, date_time): # noqa: E501 """Sets the date_time of this FormatTest. @@ -413,7 +478,8 @@ class FormatTest(object): """ self._date_time = ( - date_time) + date_time + ) @property def uuid(self): @@ -426,9 +492,7 @@ class FormatTest(object): return self._uuid @uuid.setter - def uuid( - self, - uuid): + def uuid(self, uuid): # noqa: E501 """Sets the uuid of this FormatTest. @@ -437,7 +501,8 @@ class FormatTest(object): """ self._uuid = ( - uuid) + uuid + ) @property def password(self): @@ -450,9 +515,7 @@ class FormatTest(object): return self._password @password.setter - def password( - self, - password): + def password(self, password): # noqa: E501 """Sets the password of this FormatTest. @@ -460,14 +523,16 @@ class FormatTest(object): :type: str """ if password is None: - raise ValueError("Invalid value for `password`, must not be `None`") # noqa: E501 - if password is not None and len(password) > 64: - raise ValueError("Invalid value for `password`, length must be less than or equal to `64`") # noqa: E501 - if password is not None and len(password) < 10: - raise ValueError("Invalid value for `password`, length must be greater than or equal to `10`") # noqa: E501 + raise ApiValueError("Invalid value for `password`, must not be `None`") # noqa: E501 + check_validations( + self.validations, + ('password',), + password + ) self._password = ( - password) + password + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/has_only_read_only.py b/samples/client/petstore/python-experimental/petstore_api/models/has_only_read_only.py index 8744de3834..2ef64381ea 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/has_only_read_only.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/has_only_read_only.py @@ -10,54 +10,75 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class HasOnlyReadOnly(object): +class HasOnlyReadOnly(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'bar': 'str', - 'foo': 'str', + allowed_values = { } attribute_map = { 'bar': 'bar', # noqa: E501 - 'foo': 'foo', # noqa: E501 + 'foo': 'foo' # noqa: E501 + } + + openapi_types = { + 'bar': 'str', + 'foo': 'str' + } + + validations = { } def __init__(self, bar=None, foo=None): # noqa: E501 - """HasOnlyReadOnly - a model defined in OpenAPI - - - - Keyword Args: - bar (str): [optional] # noqa: E501 - foo (str): [optional] # noqa: E501 - """ + """HasOnlyReadOnly - a model defined in OpenAPI""" # noqa: E501 self._bar = None self._foo = None self.discriminator = None if bar is not None: - self.bar = bar # noqa: E501 + self.bar = ( + bar + ) if foo is not None: - self.foo = foo # noqa: E501 + self.foo = ( + foo + ) @property def bar(self): @@ -70,9 +91,7 @@ class HasOnlyReadOnly(object): return self._bar @bar.setter - def bar( - self, - bar): + def bar(self, bar): # noqa: E501 """Sets the bar of this HasOnlyReadOnly. @@ -81,7 +100,8 @@ class HasOnlyReadOnly(object): """ self._bar = ( - bar) + bar + ) @property def foo(self): @@ -94,9 +114,7 @@ class HasOnlyReadOnly(object): return self._foo @foo.setter - def foo( - self, - foo): + def foo(self, foo): # noqa: E501 """Sets the foo of this HasOnlyReadOnly. @@ -105,7 +123,8 @@ class HasOnlyReadOnly(object): """ self._foo = ( - foo) + foo + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/list.py b/samples/client/petstore/python-experimental/petstore_api/models/list.py index 14b9a65617..388989603a 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/list.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/list.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class List(object): +class List(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - '_123_list': 'str', + allowed_values = { } attribute_map = { - '_123_list': '123-list', # noqa: E501 + '_123_list': '123-list' # noqa: E501 + } + + openapi_types = { + '_123_list': 'str' + } + + validations = { } def __init__(self, _123_list=None): # noqa: E501 - """List - a model defined in OpenAPI - - - - Keyword Args: - _123_list (str): [optional] # noqa: E501 - """ + """List - a model defined in OpenAPI""" # noqa: E501 self.__123_list = None self.discriminator = None if _123_list is not None: - self._123_list = _123_list # noqa: E501 + self._123_list = ( + _123_list + ) @property def _123_list(self): @@ -64,9 +84,7 @@ class List(object): return self.__123_list @_123_list.setter - def _123_list( - self, - _123_list): + def _123_list(self, _123_list): # noqa: E501 """Sets the _123_list of this List. @@ -75,7 +93,8 @@ class List(object): """ self.__123_list = ( - _123_list) + _123_list + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/map_test.py b/samples/client/petstore/python-experimental/petstore_api/models/map_test.py index d6d975f16e..1717914350 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/map_test.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/map_test.py @@ -10,51 +10,70 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class MapTest(object): +class MapTest(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'map_map_of_string': 'dict(str, dict(str, str))', - 'map_of_enum_string': 'dict(str, str)', - 'direct_map': 'dict(str, bool)', - 'indirect_map': 'dict(str, bool)', + allowed_values = { + ('map_of_enum_string',): { + 'UPPER': "UPPER", + 'LOWER': "lower" + }, } attribute_map = { 'map_map_of_string': 'map_map_of_string', # noqa: E501 'map_of_enum_string': 'map_of_enum_string', # noqa: E501 'direct_map': 'direct_map', # noqa: E501 - 'indirect_map': 'indirect_map', # noqa: E501 + 'indirect_map': 'indirect_map' # noqa: E501 + } + + openapi_types = { + 'map_map_of_string': 'dict(str, dict(str, str))', + 'map_of_enum_string': 'dict(str, str)', + 'direct_map': 'dict(str, bool)', + 'indirect_map': 'StringBooleanMap' + } + + validations = { } def __init__(self, map_map_of_string=None, map_of_enum_string=None, direct_map=None, indirect_map=None): # noqa: E501 - """MapTest - a model defined in OpenAPI - - - - Keyword Args: - map_map_of_string (dict(str, dict(str, str))): [optional] # noqa: E501 - map_of_enum_string (dict(str, str)): [optional] # noqa: E501 - direct_map (dict(str, bool)): [optional] # noqa: E501 - indirect_map (dict(str, bool)): [optional] # noqa: E501 - """ + """MapTest - a model defined in OpenAPI""" # noqa: E501 self._map_map_of_string = None self._map_of_enum_string = None @@ -63,13 +82,21 @@ class MapTest(object): self.discriminator = None if map_map_of_string is not None: - self.map_map_of_string = map_map_of_string # noqa: E501 + self.map_map_of_string = ( + map_map_of_string + ) if map_of_enum_string is not None: - self.map_of_enum_string = map_of_enum_string # noqa: E501 + self.map_of_enum_string = ( + map_of_enum_string + ) if direct_map is not None: - self.direct_map = direct_map # noqa: E501 + self.direct_map = ( + direct_map + ) if indirect_map is not None: - self.indirect_map = indirect_map # noqa: E501 + self.indirect_map = ( + indirect_map + ) @property def map_map_of_string(self): @@ -82,9 +109,7 @@ class MapTest(object): return self._map_map_of_string @map_map_of_string.setter - def map_map_of_string( - self, - map_map_of_string): + def map_map_of_string(self, map_map_of_string): # noqa: E501 """Sets the map_map_of_string of this MapTest. @@ -93,7 +118,8 @@ class MapTest(object): """ self._map_map_of_string = ( - map_map_of_string) + map_map_of_string + ) @property def map_of_enum_string(self): @@ -106,25 +132,23 @@ class MapTest(object): return self._map_of_enum_string @map_of_enum_string.setter - def map_of_enum_string( - self, - map_of_enum_string): + def map_of_enum_string(self, map_of_enum_string): # noqa: E501 """Sets the map_of_enum_string of this MapTest. :param map_of_enum_string: The map_of_enum_string of this MapTest. # noqa: E501 :type: dict(str, str) """ - allowed_values = ["UPPER", "lower"] # noqa: E501 - if not set(map_of_enum_string.keys()).issubset(set(allowed_values)): - raise ValueError( - "Invalid keys in `map_of_enum_string` [{0}], must be a subset of [{1}]" # noqa: E501 - .format(", ".join(map(str, set(map_of_enum_string.keys()) - set(allowed_values))), # noqa: E501 - ", ".join(map(str, allowed_values))) - ) + check_allowed_values( + self.allowed_values, + ('map_of_enum_string',), + map_of_enum_string, + self.validations + ) self._map_of_enum_string = ( - map_of_enum_string) + map_of_enum_string + ) @property def direct_map(self): @@ -137,9 +161,7 @@ class MapTest(object): return self._direct_map @direct_map.setter - def direct_map( - self, - direct_map): + def direct_map(self, direct_map): # noqa: E501 """Sets the direct_map of this MapTest. @@ -148,7 +170,8 @@ class MapTest(object): """ self._direct_map = ( - direct_map) + direct_map + ) @property def indirect_map(self): @@ -156,23 +179,22 @@ class MapTest(object): :return: The indirect_map of this MapTest. # noqa: E501 - :rtype: dict(str, bool) + :rtype: StringBooleanMap """ return self._indirect_map @indirect_map.setter - def indirect_map( - self, - indirect_map): + def indirect_map(self, indirect_map): # noqa: E501 """Sets the indirect_map of this MapTest. :param indirect_map: The indirect_map of this MapTest. # noqa: E501 - :type: dict(str, bool) + :type: StringBooleanMap """ self._indirect_map = ( - indirect_map) + indirect_map + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/mixed_properties_and_additional_properties_class.py b/samples/client/petstore/python-experimental/petstore_api/models/mixed_properties_and_additional_properties_class.py index ac8d5626fb..670e5d9905 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/mixed_properties_and_additional_properties_class.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/mixed_properties_and_additional_properties_class.py @@ -10,48 +10,64 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class MixedPropertiesAndAdditionalPropertiesClass(object): +class MixedPropertiesAndAdditionalPropertiesClass(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'uuid': 'str', - 'date_time': 'datetime', - 'map': 'dict(str, Animal)', + allowed_values = { } attribute_map = { 'uuid': 'uuid', # noqa: E501 'date_time': 'dateTime', # noqa: E501 - 'map': 'map', # noqa: E501 + 'map': 'map' # noqa: E501 + } + + openapi_types = { + 'uuid': 'str', + 'date_time': 'datetime', + 'map': 'dict(str, Animal)' + } + + validations = { } def __init__(self, uuid=None, date_time=None, map=None): # noqa: E501 - """MixedPropertiesAndAdditionalPropertiesClass - a model defined in OpenAPI - - - - Keyword Args: - uuid (str): [optional] # noqa: E501 - date_time (datetime): [optional] # noqa: E501 - map (dict(str, Animal)): [optional] # noqa: E501 - """ + """MixedPropertiesAndAdditionalPropertiesClass - a model defined in OpenAPI""" # noqa: E501 self._uuid = None self._date_time = None @@ -59,11 +75,17 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): self.discriminator = None if uuid is not None: - self.uuid = uuid # noqa: E501 + self.uuid = ( + uuid + ) if date_time is not None: - self.date_time = date_time # noqa: E501 + self.date_time = ( + date_time + ) if map is not None: - self.map = map # noqa: E501 + self.map = ( + map + ) @property def uuid(self): @@ -76,9 +98,7 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): return self._uuid @uuid.setter - def uuid( - self, - uuid): + def uuid(self, uuid): # noqa: E501 """Sets the uuid of this MixedPropertiesAndAdditionalPropertiesClass. @@ -87,7 +107,8 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): """ self._uuid = ( - uuid) + uuid + ) @property def date_time(self): @@ -100,9 +121,7 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): return self._date_time @date_time.setter - def date_time( - self, - date_time): + def date_time(self, date_time): # noqa: E501 """Sets the date_time of this MixedPropertiesAndAdditionalPropertiesClass. @@ -111,7 +130,8 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): """ self._date_time = ( - date_time) + date_time + ) @property def map(self): @@ -124,9 +144,7 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): return self._map @map.setter - def map( - self, - map): + def map(self, map): # noqa: E501 """Sets the map of this MixedPropertiesAndAdditionalPropertiesClass. @@ -135,7 +153,8 @@ class MixedPropertiesAndAdditionalPropertiesClass(object): """ self._map = ( - map) + map + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/model200_response.py b/samples/client/petstore/python-experimental/petstore_api/models/model200_response.py index cec843833a..f110d02082 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/model200_response.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/model200_response.py @@ -10,54 +10,75 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Model200Response(object): +class Model200Response(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'int', - '_class': 'str', + allowed_values = { } attribute_map = { 'name': 'name', # noqa: E501 - '_class': 'class', # noqa: E501 + '_class': 'class' # noqa: E501 + } + + openapi_types = { + 'name': 'int', + '_class': 'str' + } + + validations = { } def __init__(self, name=None, _class=None): # noqa: E501 - """Model200Response - a model defined in OpenAPI - - - - Keyword Args: - name (int): [optional] # noqa: E501 - _class (str): [optional] # noqa: E501 - """ + """Model200Response - a model defined in OpenAPI""" # noqa: E501 self._name = None self.__class = None self.discriminator = None if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) if _class is not None: - self._class = _class # noqa: E501 + self._class = ( + _class + ) @property def name(self): @@ -70,9 +91,7 @@ class Model200Response(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this Model200Response. @@ -81,7 +100,8 @@ class Model200Response(object): """ self._name = ( - name) + name + ) @property def _class(self): @@ -94,9 +114,7 @@ class Model200Response(object): return self.__class @_class.setter - def _class( - self, - _class): + def _class(self, _class): # noqa: E501 """Sets the _class of this Model200Response. @@ -105,7 +123,8 @@ class Model200Response(object): """ self.__class = ( - _class) + _class + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/model_return.py b/samples/client/petstore/python-experimental/petstore_api/models/model_return.py index 3c8096b7c4..0ba8ad99b9 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/model_return.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/model_return.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ModelReturn(object): +class ModelReturn(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - '_return': 'int', + allowed_values = { } attribute_map = { - '_return': 'return', # noqa: E501 + '_return': 'return' # noqa: E501 + } + + openapi_types = { + '_return': 'int' + } + + validations = { } def __init__(self, _return=None): # noqa: E501 - """ModelReturn - a model defined in OpenAPI - - - - Keyword Args: - _return (int): [optional] # noqa: E501 - """ + """ModelReturn - a model defined in OpenAPI""" # noqa: E501 self.__return = None self.discriminator = None if _return is not None: - self._return = _return # noqa: E501 + self._return = ( + _return + ) @property def _return(self): @@ -64,9 +84,7 @@ class ModelReturn(object): return self.__return @_return.setter - def _return( - self, - _return): + def _return(self, _return): # noqa: E501 """Sets the _return of this ModelReturn. @@ -75,7 +93,8 @@ class ModelReturn(object): """ self.__return = ( - _return) + _return + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/name.py b/samples/client/petstore/python-experimental/petstore_api/models/name.py index 9d1814c670..59c5429366 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/name.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/name.py @@ -10,51 +10,66 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Name(object): +class Name(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'int', - 'snake_case': 'int', - '_property': 'str', - '_123_number': 'int', + allowed_values = { } attribute_map = { 'name': 'name', # noqa: E501 'snake_case': 'snake_case', # noqa: E501 '_property': 'property', # noqa: E501 - '_123_number': '123Number', # noqa: E501 + '_123_number': '123Number' # noqa: E501 } - def __init__(self, name, snake_case=None, _property=None, _123_number=None): # noqa: E501 - """Name - a model defined in OpenAPI + openapi_types = { + 'name': 'int', + 'snake_case': 'int', + '_property': 'str', + '_123_number': 'int' + } - Args: - name (int): + validations = { + } - Keyword Args: # noqa: E501 - snake_case (int): [optional] # noqa: E501 - _property (str): [optional] # noqa: E501 - _123_number (int): [optional] # noqa: E501 - """ + def __init__(self, name=None, snake_case=None, _property=None, _123_number=None): # noqa: E501 + """Name - a model defined in OpenAPI""" # noqa: E501 self._name = None self._snake_case = None @@ -64,11 +79,17 @@ class Name(object): self.name = name if snake_case is not None: - self.snake_case = snake_case # noqa: E501 + self.snake_case = ( + snake_case + ) if _property is not None: - self._property = _property # noqa: E501 + self._property = ( + _property + ) if _123_number is not None: - self._123_number = _123_number # noqa: E501 + self._123_number = ( + _123_number + ) @property def name(self): @@ -81,9 +102,7 @@ class Name(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this Name. @@ -91,10 +110,11 @@ class Name(object): :type: int """ if name is None: - raise ValueError("Invalid value for `name`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `name`, must not be `None`") # noqa: E501 self._name = ( - name) + name + ) @property def snake_case(self): @@ -107,9 +127,7 @@ class Name(object): return self._snake_case @snake_case.setter - def snake_case( - self, - snake_case): + def snake_case(self, snake_case): # noqa: E501 """Sets the snake_case of this Name. @@ -118,7 +136,8 @@ class Name(object): """ self._snake_case = ( - snake_case) + snake_case + ) @property def _property(self): @@ -131,9 +150,7 @@ class Name(object): return self.__property @_property.setter - def _property( - self, - _property): + def _property(self, _property): # noqa: E501 """Sets the _property of this Name. @@ -142,7 +159,8 @@ class Name(object): """ self.__property = ( - _property) + _property + ) @property def _123_number(self): @@ -155,9 +173,7 @@ class Name(object): return self.__123_number @_123_number.setter - def _123_number( - self, - _123_number): + def _123_number(self, _123_number): # noqa: E501 """Sets the _123_number of this Name. @@ -166,7 +182,8 @@ class Name(object): """ self.__123_number = ( - _123_number) + _123_number + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/number_only.py b/samples/client/petstore/python-experimental/petstore_api/models/number_only.py index 70741767c4..cb78256187 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/number_only.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/number_only.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class NumberOnly(object): +class NumberOnly(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'just_number': 'float', + allowed_values = { } attribute_map = { - 'just_number': 'JustNumber', # noqa: E501 + 'just_number': 'JustNumber' # noqa: E501 + } + + openapi_types = { + 'just_number': 'float' + } + + validations = { } def __init__(self, just_number=None): # noqa: E501 - """NumberOnly - a model defined in OpenAPI - - - - Keyword Args: - just_number (float): [optional] # noqa: E501 - """ + """NumberOnly - a model defined in OpenAPI""" # noqa: E501 self._just_number = None self.discriminator = None if just_number is not None: - self.just_number = just_number # noqa: E501 + self.just_number = ( + just_number + ) @property def just_number(self): @@ -64,9 +84,7 @@ class NumberOnly(object): return self._just_number @just_number.setter - def just_number( - self, - just_number): + def just_number(self, just_number): # noqa: E501 """Sets the just_number of this NumberOnly. @@ -75,7 +93,8 @@ class NumberOnly(object): """ self._just_number = ( - just_number) + just_number + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/order.py b/samples/client/petstore/python-experimental/petstore_api/models/order.py index f1c8220033..7b866df4c8 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/order.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/order.py @@ -10,33 +10,50 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Order(object): +class Order(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'id': 'int', - 'pet_id': 'int', - 'quantity': 'int', - 'ship_date': 'datetime', - 'status': 'str', - 'complete': 'bool', + allowed_values = { + ('status',): { + 'PLACED': "placed", + 'APPROVED': "approved", + 'DELIVERED': "delivered" + }, } attribute_map = { @@ -45,22 +62,23 @@ class Order(object): 'quantity': 'quantity', # noqa: E501 'ship_date': 'shipDate', # noqa: E501 'status': 'status', # noqa: E501 - 'complete': 'complete', # noqa: E501 + 'complete': 'complete' # noqa: E501 } - def __init__(self, id=None, pet_id=None, quantity=None, ship_date=None, status=None, complete=None): # noqa: E501 - """Order - a model defined in OpenAPI + openapi_types = { + 'id': 'int', + 'pet_id': 'int', + 'quantity': 'int', + 'ship_date': 'datetime', + 'status': 'str', + 'complete': 'bool' + } + validations = { + } - - Keyword Args: - id (int): [optional] # noqa: E501 - pet_id (int): [optional] # noqa: E501 - quantity (int): [optional] # noqa: E501 - ship_date (datetime): [optional] # noqa: E501 - status (str): Order Status. [optional] # noqa: E501 - complete (bool): [optional] if omitted the server will use the default value of False # noqa: E501 - """ + def __init__(self, id=None, pet_id=None, quantity=None, ship_date=None, status=None, complete=False): # noqa: E501 + """Order - a model defined in OpenAPI""" # noqa: E501 self._id = None self._pet_id = None @@ -71,17 +89,29 @@ class Order(object): self.discriminator = None if id is not None: - self.id = id # noqa: E501 + self.id = ( + id + ) if pet_id is not None: - self.pet_id = pet_id # noqa: E501 + self.pet_id = ( + pet_id + ) if quantity is not None: - self.quantity = quantity # noqa: E501 + self.quantity = ( + quantity + ) if ship_date is not None: - self.ship_date = ship_date # noqa: E501 + self.ship_date = ( + ship_date + ) if status is not None: - self.status = status # noqa: E501 + self.status = ( + status + ) if complete is not None: - self.complete = complete # noqa: E501 + self.complete = ( + complete + ) @property def id(self): @@ -94,9 +124,7 @@ class Order(object): return self._id @id.setter - def id( - self, - id): + def id(self, id): # noqa: E501 """Sets the id of this Order. @@ -105,7 +133,8 @@ class Order(object): """ self._id = ( - id) + id + ) @property def pet_id(self): @@ -118,9 +147,7 @@ class Order(object): return self._pet_id @pet_id.setter - def pet_id( - self, - pet_id): + def pet_id(self, pet_id): # noqa: E501 """Sets the pet_id of this Order. @@ -129,7 +156,8 @@ class Order(object): """ self._pet_id = ( - pet_id) + pet_id + ) @property def quantity(self): @@ -142,9 +170,7 @@ class Order(object): return self._quantity @quantity.setter - def quantity( - self, - quantity): + def quantity(self, quantity): # noqa: E501 """Sets the quantity of this Order. @@ -153,7 +179,8 @@ class Order(object): """ self._quantity = ( - quantity) + quantity + ) @property def ship_date(self): @@ -166,9 +193,7 @@ class Order(object): return self._ship_date @ship_date.setter - def ship_date( - self, - ship_date): + def ship_date(self, ship_date): # noqa: E501 """Sets the ship_date of this Order. @@ -177,7 +202,8 @@ class Order(object): """ self._ship_date = ( - ship_date) + ship_date + ) @property def status(self): @@ -191,9 +217,7 @@ class Order(object): return self._status @status.setter - def status( - self, - status): + def status(self, status): # noqa: E501 """Sets the status of this Order. Order Status # noqa: E501 @@ -201,15 +225,16 @@ class Order(object): :param status: The status of this Order. # noqa: E501 :type: str """ - allowed_values = ["placed", "approved", "delivered"] # noqa: E501 - if status not in allowed_values: - raise ValueError( - "Invalid value for `status` ({0}), must be one of {1}" # noqa: E501 - .format(status, allowed_values) - ) + check_allowed_values( + self.allowed_values, + ('status',), + status, + self.validations + ) self._status = ( - status) + status + ) @property def complete(self): @@ -222,9 +247,7 @@ class Order(object): return self._complete @complete.setter - def complete( - self, - complete): + def complete(self, complete): # noqa: E501 """Sets the complete of this Order. @@ -233,7 +256,8 @@ class Order(object): """ self._complete = ( - complete) + complete + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/outer_composite.py b/samples/client/petstore/python-experimental/petstore_api/models/outer_composite.py index f3887c8a32..70c9e7915f 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/outer_composite.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/outer_composite.py @@ -10,48 +10,64 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class OuterComposite(object): +class OuterComposite(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'my_number': 'float', - 'my_string': 'str', - 'my_boolean': 'bool', + allowed_values = { } attribute_map = { 'my_number': 'my_number', # noqa: E501 'my_string': 'my_string', # noqa: E501 - 'my_boolean': 'my_boolean', # noqa: E501 + 'my_boolean': 'my_boolean' # noqa: E501 + } + + openapi_types = { + 'my_number': 'OuterNumber', + 'my_string': 'str', + 'my_boolean': 'bool' + } + + validations = { } def __init__(self, my_number=None, my_string=None, my_boolean=None): # noqa: E501 - """OuterComposite - a model defined in OpenAPI - - - - Keyword Args: - my_number (float): [optional] # noqa: E501 - my_string (str): [optional] # noqa: E501 - my_boolean (bool): [optional] # noqa: E501 - """ + """OuterComposite - a model defined in OpenAPI""" # noqa: E501 self._my_number = None self._my_string = None @@ -59,11 +75,17 @@ class OuterComposite(object): self.discriminator = None if my_number is not None: - self.my_number = my_number # noqa: E501 + self.my_number = ( + my_number + ) if my_string is not None: - self.my_string = my_string # noqa: E501 + self.my_string = ( + my_string + ) if my_boolean is not None: - self.my_boolean = my_boolean # noqa: E501 + self.my_boolean = ( + my_boolean + ) @property def my_number(self): @@ -71,23 +93,22 @@ class OuterComposite(object): :return: The my_number of this OuterComposite. # noqa: E501 - :rtype: float + :rtype: OuterNumber """ return self._my_number @my_number.setter - def my_number( - self, - my_number): + def my_number(self, my_number): # noqa: E501 """Sets the my_number of this OuterComposite. :param my_number: The my_number of this OuterComposite. # noqa: E501 - :type: float + :type: OuterNumber """ self._my_number = ( - my_number) + my_number + ) @property def my_string(self): @@ -100,9 +121,7 @@ class OuterComposite(object): return self._my_string @my_string.setter - def my_string( - self, - my_string): + def my_string(self, my_string): # noqa: E501 """Sets the my_string of this OuterComposite. @@ -111,7 +130,8 @@ class OuterComposite(object): """ self._my_string = ( - my_string) + my_string + ) @property def my_boolean(self): @@ -124,9 +144,7 @@ class OuterComposite(object): return self._my_boolean @my_boolean.setter - def my_boolean( - self, - my_boolean): + def my_boolean(self, my_boolean): # noqa: E501 """Sets the my_boolean of this OuterComposite. @@ -135,7 +153,8 @@ class OuterComposite(object): """ self._my_boolean = ( - my_boolean) + my_boolean + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/outer_enum.py b/samples/client/petstore/python-experimental/petstore_api/models/outer_enum.py index d042dbe3ce..d9cdd3d0c6 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/outer_enum.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/outer_enum.py @@ -10,75 +10,97 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class OuterEnum(object): +class OuterEnum(ModelSimple): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. - """ - """ - allowed enum values - """ - PLACED = "placed" - APPROVED = "approved" - DELIVERED = "delivered" - - """ Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ + + allowed_values = { + ('value',): { + 'PLACED': "placed", + 'APPROVED': "approved", + 'DELIVERED': "delivered" + }, + } + openapi_types = { + 'value': 'str' } - attribute_map = { + validations = { } - def __init__(self): # noqa: E501 - """OuterEnum - a model defined in OpenAPI + def __init__(self, value=None): # noqa: E501 + """OuterEnum - a model defined in OpenAPI""" # noqa: E501 - - - Keyword Args: - """ + self._value = None self.discriminator = None - def to_dict(self): - """Returns the model properties as a dict""" - result = {} + self.value = value - for attr, _ in six.iteritems(self.openapi_types): - value = getattr(self, attr) - if isinstance(value, list): - result[attr] = list(map( - lambda x: x.to_dict() if hasattr(x, "to_dict") else x, - value - )) - elif hasattr(value, "to_dict"): - result[attr] = value.to_dict() - elif isinstance(value, dict): - result[attr] = dict(map( - lambda item: (item[0], item[1].to_dict()) - if hasattr(item[1], "to_dict") else item, - value.items() - )) - else: - result[attr] = value + @property + def value(self): + """Gets the value of this OuterEnum. # noqa: E501 - return result + + :return: The value of this OuterEnum. # noqa: E501 + :rtype: str + """ + return self._value + + @value.setter + def value(self, value): # noqa: E501 + """Sets the value of this OuterEnum. + + + :param value: The value of this OuterEnum. # noqa: E501 + :type: str + """ + if value is None: + raise ApiValueError("Invalid value for `value`, must not be `None`") # noqa: E501 + check_allowed_values( + self.allowed_values, + ('value',), + value, + self.validations + ) + + self._value = ( + value + ) def to_str(self): """Returns the string representation of the model""" - return pprint.pformat(self.to_dict()) + return str(self._value) def __repr__(self): """For `print` and `pprint`""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/outer_number.py b/samples/client/petstore/python-experimental/petstore_api/models/outer_number.py new file mode 100644 index 0000000000..36c2bd3da1 --- /dev/null +++ b/samples/client/petstore/python-experimental/petstore_api/models/outer_number.py @@ -0,0 +1,117 @@ +# coding: utf-8 + +""" + OpenAPI Petstore + + This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 + + The version of the OpenAPI document: 1.0.0 + Generated by: https://openapi-generator.tech +""" + + +import pprint # noqa: F401 +import re # noqa: F401 + +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) + + +class OuterNumber(ModelSimple): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + """ + + allowed_values = { + } + + openapi_types = { + 'value': 'float' + } + + validations = { + ('value',): { + + 'inclusive_maximum': 2E+1, + 'inclusive_minimum': 1E+1, + }, + } + + def __init__(self, value=None): # noqa: E501 + """OuterNumber - a model defined in OpenAPI""" # noqa: E501 + + self._value = None + self.discriminator = None + + self.value = value + + @property + def value(self): + """Gets the value of this OuterNumber. # noqa: E501 + + + :return: The value of this OuterNumber. # noqa: E501 + :rtype: float + """ + return self._value + + @value.setter + def value(self, value): # noqa: E501 + """Sets the value of this OuterNumber. + + + :param value: The value of this OuterNumber. # noqa: E501 + :type: float + """ + if value is None: + raise ApiValueError("Invalid value for `value`, must not be `None`") # noqa: E501 + check_validations( + self.validations, + ('value',), + value + ) + + self._value = ( + value + ) + + def to_str(self): + """Returns the string representation of the model""" + return str(self._value) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, OuterNumber): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other diff --git a/samples/client/petstore/python-experimental/petstore_api/models/pet.py b/samples/client/petstore/python-experimental/petstore_api/models/pet.py index a3b12d20c6..07db652293 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/pet.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/pet.py @@ -10,57 +10,75 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Pet(object): +class Pet(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'name': 'str', - 'photo_urls': 'list[str]', - 'id': 'int', - 'category': 'Category', - 'tags': 'list[Tag]', - 'status': 'str', + allowed_values = { + ('status',): { + 'AVAILABLE': "available", + 'PENDING': "pending", + 'SOLD': "sold" + }, } attribute_map = { - 'name': 'name', # noqa: E501 - 'photo_urls': 'photoUrls', # noqa: E501 'id': 'id', # noqa: E501 'category': 'category', # noqa: E501 + 'name': 'name', # noqa: E501 + 'photo_urls': 'photoUrls', # noqa: E501 'tags': 'tags', # noqa: E501 - 'status': 'status', # noqa: E501 + 'status': 'status' # noqa: E501 } - def __init__(self, name, photo_urls, id=None, category=None, tags=None, status=None): # noqa: E501 - """Pet - a model defined in OpenAPI + openapi_types = { + 'id': 'int', + 'category': 'Category', + 'name': 'str', + 'photo_urls': 'list[str]', + 'tags': 'list[Tag]', + 'status': 'str' + } - Args: - name (str): - photo_urls (list[str]): + validations = { + } - Keyword Args: # noqa: E501 # noqa: E501 - id (int): [optional] # noqa: E501 - category (Category): [optional] # noqa: E501 - tags (list[Tag]): [optional] # noqa: E501 - status (str): pet status in the store. [optional] # noqa: E501 - """ + def __init__(self, id=None, category=None, name=None, photo_urls=None, tags=None, status=None): # noqa: E501 + """Pet - a model defined in OpenAPI""" # noqa: E501 self._id = None self._category = None @@ -71,15 +89,23 @@ class Pet(object): self.discriminator = None if id is not None: - self.id = id # noqa: E501 + self.id = ( + id + ) if category is not None: - self.category = category # noqa: E501 + self.category = ( + category + ) self.name = name self.photo_urls = photo_urls if tags is not None: - self.tags = tags # noqa: E501 + self.tags = ( + tags + ) if status is not None: - self.status = status # noqa: E501 + self.status = ( + status + ) @property def id(self): @@ -92,9 +118,7 @@ class Pet(object): return self._id @id.setter - def id( - self, - id): + def id(self, id): # noqa: E501 """Sets the id of this Pet. @@ -103,7 +127,8 @@ class Pet(object): """ self._id = ( - id) + id + ) @property def category(self): @@ -116,9 +141,7 @@ class Pet(object): return self._category @category.setter - def category( - self, - category): + def category(self, category): # noqa: E501 """Sets the category of this Pet. @@ -127,7 +150,8 @@ class Pet(object): """ self._category = ( - category) + category + ) @property def name(self): @@ -140,9 +164,7 @@ class Pet(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this Pet. @@ -150,10 +172,11 @@ class Pet(object): :type: str """ if name is None: - raise ValueError("Invalid value for `name`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `name`, must not be `None`") # noqa: E501 self._name = ( - name) + name + ) @property def photo_urls(self): @@ -166,9 +189,7 @@ class Pet(object): return self._photo_urls @photo_urls.setter - def photo_urls( - self, - photo_urls): + def photo_urls(self, photo_urls): # noqa: E501 """Sets the photo_urls of this Pet. @@ -176,10 +197,11 @@ class Pet(object): :type: list[str] """ if photo_urls is None: - raise ValueError("Invalid value for `photo_urls`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `photo_urls`, must not be `None`") # noqa: E501 self._photo_urls = ( - photo_urls) + photo_urls + ) @property def tags(self): @@ -192,9 +214,7 @@ class Pet(object): return self._tags @tags.setter - def tags( - self, - tags): + def tags(self, tags): # noqa: E501 """Sets the tags of this Pet. @@ -203,7 +223,8 @@ class Pet(object): """ self._tags = ( - tags) + tags + ) @property def status(self): @@ -217,9 +238,7 @@ class Pet(object): return self._status @status.setter - def status( - self, - status): + def status(self, status): # noqa: E501 """Sets the status of this Pet. pet status in the store # noqa: E501 @@ -227,15 +246,16 @@ class Pet(object): :param status: The status of this Pet. # noqa: E501 :type: str """ - allowed_values = ["available", "pending", "sold"] # noqa: E501 - if status not in allowed_values: - raise ValueError( - "Invalid value for `status` ({0}), must be one of {1}" # noqa: E501 - .format(status, allowed_values) - ) + check_allowed_values( + self.allowed_values, + ('status',), + status, + self.validations + ) self._status = ( - status) + status + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/read_only_first.py b/samples/client/petstore/python-experimental/petstore_api/models/read_only_first.py index 93f2be2986..96d93afbd2 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/read_only_first.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/read_only_first.py @@ -10,54 +10,75 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class ReadOnlyFirst(object): +class ReadOnlyFirst(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'bar': 'str', - 'baz': 'str', + allowed_values = { } attribute_map = { 'bar': 'bar', # noqa: E501 - 'baz': 'baz', # noqa: E501 + 'baz': 'baz' # noqa: E501 + } + + openapi_types = { + 'bar': 'str', + 'baz': 'str' + } + + validations = { } def __init__(self, bar=None, baz=None): # noqa: E501 - """ReadOnlyFirst - a model defined in OpenAPI - - - - Keyword Args: - bar (str): [optional] # noqa: E501 - baz (str): [optional] # noqa: E501 - """ + """ReadOnlyFirst - a model defined in OpenAPI""" # noqa: E501 self._bar = None self._baz = None self.discriminator = None if bar is not None: - self.bar = bar # noqa: E501 + self.bar = ( + bar + ) if baz is not None: - self.baz = baz # noqa: E501 + self.baz = ( + baz + ) @property def bar(self): @@ -70,9 +91,7 @@ class ReadOnlyFirst(object): return self._bar @bar.setter - def bar( - self, - bar): + def bar(self, bar): # noqa: E501 """Sets the bar of this ReadOnlyFirst. @@ -81,7 +100,8 @@ class ReadOnlyFirst(object): """ self._bar = ( - bar) + bar + ) @property def baz(self): @@ -94,9 +114,7 @@ class ReadOnlyFirst(object): return self._baz @baz.setter - def baz( - self, - baz): + def baz(self, baz): # noqa: E501 """Sets the baz of this ReadOnlyFirst. @@ -105,7 +123,8 @@ class ReadOnlyFirst(object): """ self._baz = ( - baz) + baz + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/special_model_name.py b/samples/client/petstore/python-experimental/petstore_api/models/special_model_name.py index 9eb9757a1d..83ab1e6505 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/special_model_name.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/special_model_name.py @@ -10,48 +10,68 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class SpecialModelName(object): +class SpecialModelName(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'special_property_name': 'int', + allowed_values = { } attribute_map = { - 'special_property_name': '$special[property.name]', # noqa: E501 + 'special_property_name': '$special[property.name]' # noqa: E501 + } + + openapi_types = { + 'special_property_name': 'int' + } + + validations = { } def __init__(self, special_property_name=None): # noqa: E501 - """SpecialModelName - a model defined in OpenAPI - - - - Keyword Args: - special_property_name (int): [optional] # noqa: E501 - """ + """SpecialModelName - a model defined in OpenAPI""" # noqa: E501 self._special_property_name = None self.discriminator = None if special_property_name is not None: - self.special_property_name = special_property_name # noqa: E501 + self.special_property_name = ( + special_property_name + ) @property def special_property_name(self): @@ -64,9 +84,7 @@ class SpecialModelName(object): return self._special_property_name @special_property_name.setter - def special_property_name( - self, - special_property_name): + def special_property_name(self, special_property_name): # noqa: E501 """Sets the special_property_name of this SpecialModelName. @@ -75,7 +93,8 @@ class SpecialModelName(object): """ self._special_property_name = ( - special_property_name) + special_property_name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/string_boolean_map.py b/samples/client/petstore/python-experimental/petstore_api/models/string_boolean_map.py new file mode 100644 index 0000000000..01427c702b --- /dev/null +++ b/samples/client/petstore/python-experimental/petstore_api/models/string_boolean_map.py @@ -0,0 +1,108 @@ +# coding: utf-8 + +""" + OpenAPI Petstore + + This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 + + The version of the OpenAPI document: 1.0.0 + Generated by: https://openapi-generator.tech +""" + + +import pprint # noqa: F401 +import re # noqa: F401 + +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) + + +class StringBooleanMap(ModelNormal): + """NOTE: This class is auto generated by OpenAPI Generator. + Ref: https://openapi-generator.tech + + Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. + """ + + allowed_values = { + } + + attribute_map = { + } + + openapi_types = { + } + + validations = { + } + + def __init__(self): # noqa: E501 + """StringBooleanMap - a model defined in OpenAPI""" # noqa: E501 + self.discriminator = None + + def to_dict(self): + """Returns the model properties as a dict""" + result = {} + + for attr, _ in six.iteritems(self.openapi_types): + value = getattr(self, attr) + if isinstance(value, list): + result[attr] = list(map( + lambda x: x.to_dict() if hasattr(x, "to_dict") else x, + value + )) + elif hasattr(value, "to_dict"): + result[attr] = value.to_dict() + elif isinstance(value, dict): + result[attr] = dict(map( + lambda item: (item[0], item[1].to_dict()) + if hasattr(item[1], "to_dict") else item, + value.items() + )) + else: + result[attr] = value + + return result + + def to_str(self): + """Returns the string representation of the model""" + return pprint.pformat(self.to_dict()) + + def __repr__(self): + """For `print` and `pprint`""" + return self.to_str() + + def __eq__(self, other): + """Returns true if both objects are equal""" + if not isinstance(other, StringBooleanMap): + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + """Returns true if both objects are not equal""" + return not self == other diff --git a/samples/client/petstore/python-experimental/petstore_api/models/tag.py b/samples/client/petstore/python-experimental/petstore_api/models/tag.py index 2fbb5adb76..f5e08704a0 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/tag.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/tag.py @@ -10,54 +10,75 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class Tag(object): +class Tag(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'id': 'int', - 'name': 'str', + allowed_values = { } attribute_map = { 'id': 'id', # noqa: E501 - 'name': 'name', # noqa: E501 + 'name': 'name' # noqa: E501 + } + + openapi_types = { + 'id': 'int', + 'name': 'str' + } + + validations = { } def __init__(self, id=None, name=None): # noqa: E501 - """Tag - a model defined in OpenAPI - - - - Keyword Args: - id (int): [optional] # noqa: E501 - name (str): [optional] # noqa: E501 - """ + """Tag - a model defined in OpenAPI""" # noqa: E501 self._id = None self._name = None self.discriminator = None if id is not None: - self.id = id # noqa: E501 + self.id = ( + id + ) if name is not None: - self.name = name # noqa: E501 + self.name = ( + name + ) @property def id(self): @@ -70,9 +91,7 @@ class Tag(object): return self._id @id.setter - def id( - self, - id): + def id(self, id): # noqa: E501 """Sets the id of this Tag. @@ -81,7 +100,8 @@ class Tag(object): """ self._id = ( - id) + id + ) @property def name(self): @@ -94,9 +114,7 @@ class Tag(object): return self._name @name.setter - def name( - self, - name): + def name(self, name): # noqa: E501 """Sets the name of this Tag. @@ -105,7 +123,8 @@ class Tag(object): """ self._name = ( - name) + name + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/type_holder_default.py b/samples/client/petstore/python-experimental/petstore_api/models/type_holder_default.py index 08d1ac6432..a27e05e14d 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/type_holder_default.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/type_holder_default.py @@ -10,34 +10,45 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class TypeHolderDefault(object): +class TypeHolderDefault(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'string_item': 'str', - 'number_item': 'float', - 'integer_item': 'int', - 'bool_item': 'bool', - 'array_item': 'list[int]', - 'date_item': 'date', - 'datetime_item': 'datetime', + allowed_values = { } attribute_map = { @@ -45,25 +56,26 @@ class TypeHolderDefault(object): 'number_item': 'number_item', # noqa: E501 'integer_item': 'integer_item', # noqa: E501 'bool_item': 'bool_item', # noqa: E501 - 'array_item': 'array_item', # noqa: E501 'date_item': 'date_item', # noqa: E501 'datetime_item': 'datetime_item', # noqa: E501 + 'array_item': 'array_item' # noqa: E501 } - def __init__(self, array_item, string_item='what', number_item=1.234, integer_item=-2, bool_item=True, date_item=None, datetime_item=None): # noqa: E501 - """TypeHolderDefault - a model defined in OpenAPI + openapi_types = { + 'string_item': 'str', + 'number_item': 'float', + 'integer_item': 'int', + 'bool_item': 'bool', + 'date_item': 'date', + 'datetime_item': 'datetime', + 'array_item': 'list[int]' + } - Args: - array_item (list[int]): + validations = { + } - Keyword Args: - string_item (str): defaults to 'what', must be one of ['what'] # noqa: E501 - number_item (float): defaults to 1.234, must be one of [1.234] # noqa: E501 - integer_item (int): defaults to -2, must be one of [-2] # noqa: E501 - bool_item (bool): defaults to True, must be one of [True] # noqa: E501 # noqa: E501 - date_item (date): [optional] # noqa: E501 - datetime_item (datetime): [optional] # noqa: E501 - """ + def __init__(self, string_item='what', number_item=1.234, integer_item=-2, bool_item=True, date_item=None, datetime_item=None, array_item=None): # noqa: E501 + """TypeHolderDefault - a model defined in OpenAPI""" # noqa: E501 self._string_item = None self._number_item = None @@ -79,9 +91,13 @@ class TypeHolderDefault(object): self.integer_item = integer_item self.bool_item = bool_item if date_item is not None: - self.date_item = date_item # noqa: E501 + self.date_item = ( + date_item + ) if datetime_item is not None: - self.datetime_item = datetime_item # noqa: E501 + self.datetime_item = ( + datetime_item + ) self.array_item = array_item @property @@ -95,9 +111,7 @@ class TypeHolderDefault(object): return self._string_item @string_item.setter - def string_item( - self, - string_item): + def string_item(self, string_item): # noqa: E501 """Sets the string_item of this TypeHolderDefault. @@ -105,10 +119,11 @@ class TypeHolderDefault(object): :type: str """ if string_item is None: - raise ValueError("Invalid value for `string_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `string_item`, must not be `None`") # noqa: E501 self._string_item = ( - string_item) + string_item + ) @property def number_item(self): @@ -121,9 +136,7 @@ class TypeHolderDefault(object): return self._number_item @number_item.setter - def number_item( - self, - number_item): + def number_item(self, number_item): # noqa: E501 """Sets the number_item of this TypeHolderDefault. @@ -131,10 +144,11 @@ class TypeHolderDefault(object): :type: float """ if number_item is None: - raise ValueError("Invalid value for `number_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `number_item`, must not be `None`") # noqa: E501 self._number_item = ( - number_item) + number_item + ) @property def integer_item(self): @@ -147,9 +161,7 @@ class TypeHolderDefault(object): return self._integer_item @integer_item.setter - def integer_item( - self, - integer_item): + def integer_item(self, integer_item): # noqa: E501 """Sets the integer_item of this TypeHolderDefault. @@ -157,10 +169,11 @@ class TypeHolderDefault(object): :type: int """ if integer_item is None: - raise ValueError("Invalid value for `integer_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `integer_item`, must not be `None`") # noqa: E501 self._integer_item = ( - integer_item) + integer_item + ) @property def bool_item(self): @@ -173,9 +186,7 @@ class TypeHolderDefault(object): return self._bool_item @bool_item.setter - def bool_item( - self, - bool_item): + def bool_item(self, bool_item): # noqa: E501 """Sets the bool_item of this TypeHolderDefault. @@ -183,10 +194,11 @@ class TypeHolderDefault(object): :type: bool """ if bool_item is None: - raise ValueError("Invalid value for `bool_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `bool_item`, must not be `None`") # noqa: E501 self._bool_item = ( - bool_item) + bool_item + ) @property def date_item(self): @@ -199,9 +211,7 @@ class TypeHolderDefault(object): return self._date_item @date_item.setter - def date_item( - self, - date_item): + def date_item(self, date_item): # noqa: E501 """Sets the date_item of this TypeHolderDefault. @@ -210,7 +220,8 @@ class TypeHolderDefault(object): """ self._date_item = ( - date_item) + date_item + ) @property def datetime_item(self): @@ -223,9 +234,7 @@ class TypeHolderDefault(object): return self._datetime_item @datetime_item.setter - def datetime_item( - self, - datetime_item): + def datetime_item(self, datetime_item): # noqa: E501 """Sets the datetime_item of this TypeHolderDefault. @@ -234,7 +243,8 @@ class TypeHolderDefault(object): """ self._datetime_item = ( - datetime_item) + datetime_item + ) @property def array_item(self): @@ -247,9 +257,7 @@ class TypeHolderDefault(object): return self._array_item @array_item.setter - def array_item( - self, - array_item): + def array_item(self, array_item): # noqa: E501 """Sets the array_item of this TypeHolderDefault. @@ -257,10 +265,11 @@ class TypeHolderDefault(object): :type: list[int] """ if array_item is None: - raise ValueError("Invalid value for `array_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `array_item`, must not be `None`") # noqa: E501 self._array_item = ( - array_item) + array_item + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/type_holder_example.py b/samples/client/petstore/python-experimental/petstore_api/models/type_holder_example.py index 96620b8b54..661bb21a38 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/type_holder_example.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/type_holder_example.py @@ -10,32 +10,54 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class TypeHolderExample(object): +class TypeHolderExample(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'string_item': 'str', - 'number_item': 'float', - 'integer_item': 'int', - 'bool_item': 'bool', - 'array_item': 'list[int]', + allowed_values = { + ('string_item',): { + 'WHAT': "what" + }, + ('number_item',): { + '1.234': 1.234 + }, + ('integer_item',): { + '-2': -2 + }, } attribute_map = { @@ -43,21 +65,22 @@ class TypeHolderExample(object): 'number_item': 'number_item', # noqa: E501 'integer_item': 'integer_item', # noqa: E501 'bool_item': 'bool_item', # noqa: E501 - 'array_item': 'array_item', # noqa: E501 + 'array_item': 'array_item' # noqa: E501 } - def __init__(self, bool_item, array_item, string_item='what', number_item=1.234, integer_item=-2): # noqa: E501 - """TypeHolderExample - a model defined in OpenAPI + openapi_types = { + 'string_item': 'str', + 'number_item': 'float', + 'integer_item': 'int', + 'bool_item': 'bool', + 'array_item': 'list[int]' + } - Args: - bool_item (bool): - array_item (list[int]): + validations = { + } - Keyword Args: - string_item (str): defaults to 'what', must be one of ['what'] # noqa: E501 - number_item (float): defaults to 1.234, must be one of [1.234] # noqa: E501 - integer_item (int): defaults to -2, must be one of [-2] # noqa: E501 # noqa: E501 # noqa: E501 - """ + def __init__(self, string_item='what', number_item=1.234, integer_item=-2, bool_item=None, array_item=None): # noqa: E501 + """TypeHolderExample - a model defined in OpenAPI""" # noqa: E501 self._string_item = None self._number_item = None @@ -83,9 +106,7 @@ class TypeHolderExample(object): return self._string_item @string_item.setter - def string_item( - self, - string_item): + def string_item(self, string_item): # noqa: E501 """Sets the string_item of this TypeHolderExample. @@ -93,16 +114,17 @@ class TypeHolderExample(object): :type: str """ if string_item is None: - raise ValueError("Invalid value for `string_item`, must not be `None`") # noqa: E501 - allowed_values = ["what"] # noqa: E501 - if string_item not in allowed_values: - raise ValueError( - "Invalid value for `string_item` ({0}), must be one of {1}" # noqa: E501 - .format(string_item, allowed_values) - ) + raise ApiValueError("Invalid value for `string_item`, must not be `None`") # noqa: E501 + check_allowed_values( + self.allowed_values, + ('string_item',), + string_item, + self.validations + ) self._string_item = ( - string_item) + string_item + ) @property def number_item(self): @@ -115,9 +137,7 @@ class TypeHolderExample(object): return self._number_item @number_item.setter - def number_item( - self, - number_item): + def number_item(self, number_item): # noqa: E501 """Sets the number_item of this TypeHolderExample. @@ -125,16 +145,17 @@ class TypeHolderExample(object): :type: float """ if number_item is None: - raise ValueError("Invalid value for `number_item`, must not be `None`") # noqa: E501 - allowed_values = [1.234] # noqa: E501 - if number_item not in allowed_values: - raise ValueError( - "Invalid value for `number_item` ({0}), must be one of {1}" # noqa: E501 - .format(number_item, allowed_values) - ) + raise ApiValueError("Invalid value for `number_item`, must not be `None`") # noqa: E501 + check_allowed_values( + self.allowed_values, + ('number_item',), + number_item, + self.validations + ) self._number_item = ( - number_item) + number_item + ) @property def integer_item(self): @@ -147,9 +168,7 @@ class TypeHolderExample(object): return self._integer_item @integer_item.setter - def integer_item( - self, - integer_item): + def integer_item(self, integer_item): # noqa: E501 """Sets the integer_item of this TypeHolderExample. @@ -157,16 +176,17 @@ class TypeHolderExample(object): :type: int """ if integer_item is None: - raise ValueError("Invalid value for `integer_item`, must not be `None`") # noqa: E501 - allowed_values = [-2] # noqa: E501 - if integer_item not in allowed_values: - raise ValueError( - "Invalid value for `integer_item` ({0}), must be one of {1}" # noqa: E501 - .format(integer_item, allowed_values) - ) + raise ApiValueError("Invalid value for `integer_item`, must not be `None`") # noqa: E501 + check_allowed_values( + self.allowed_values, + ('integer_item',), + integer_item, + self.validations + ) self._integer_item = ( - integer_item) + integer_item + ) @property def bool_item(self): @@ -179,9 +199,7 @@ class TypeHolderExample(object): return self._bool_item @bool_item.setter - def bool_item( - self, - bool_item): + def bool_item(self, bool_item): # noqa: E501 """Sets the bool_item of this TypeHolderExample. @@ -189,10 +207,11 @@ class TypeHolderExample(object): :type: bool """ if bool_item is None: - raise ValueError("Invalid value for `bool_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `bool_item`, must not be `None`") # noqa: E501 self._bool_item = ( - bool_item) + bool_item + ) @property def array_item(self): @@ -205,9 +224,7 @@ class TypeHolderExample(object): return self._array_item @array_item.setter - def array_item( - self, - array_item): + def array_item(self, array_item): # noqa: E501 """Sets the array_item of this TypeHolderExample. @@ -215,10 +232,11 @@ class TypeHolderExample(object): :type: list[int] """ if array_item is None: - raise ValueError("Invalid value for `array_item`, must not be `None`") # noqa: E501 + raise ApiValueError("Invalid value for `array_item`, must not be `None`") # noqa: E501 self._array_item = ( - array_item) + array_item + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/user.py b/samples/client/petstore/python-experimental/petstore_api/models/user.py index 382f0cc5fc..1dcf8d7553 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/user.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/user.py @@ -10,35 +10,45 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class User(object): +class User(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'id': 'int', - 'username': 'str', - 'first_name': 'str', - 'last_name': 'str', - 'email': 'str', - 'password': 'str', - 'phone': 'str', - 'user_status': 'int', + allowed_values = { } attribute_map = { @@ -49,24 +59,25 @@ class User(object): 'email': 'email', # noqa: E501 'password': 'password', # noqa: E501 'phone': 'phone', # noqa: E501 - 'user_status': 'userStatus', # noqa: E501 + 'user_status': 'userStatus' # noqa: E501 + } + + openapi_types = { + 'id': 'int', + 'username': 'str', + 'first_name': 'str', + 'last_name': 'str', + 'email': 'str', + 'password': 'str', + 'phone': 'str', + 'user_status': 'int' + } + + validations = { } def __init__(self, id=None, username=None, first_name=None, last_name=None, email=None, password=None, phone=None, user_status=None): # noqa: E501 - """User - a model defined in OpenAPI - - - - Keyword Args: - id (int): [optional] # noqa: E501 - username (str): [optional] # noqa: E501 - first_name (str): [optional] # noqa: E501 - last_name (str): [optional] # noqa: E501 - email (str): [optional] # noqa: E501 - password (str): [optional] # noqa: E501 - phone (str): [optional] # noqa: E501 - user_status (int): User Status. [optional] # noqa: E501 - """ + """User - a model defined in OpenAPI""" # noqa: E501 self._id = None self._username = None @@ -79,21 +90,37 @@ class User(object): self.discriminator = None if id is not None: - self.id = id # noqa: E501 + self.id = ( + id + ) if username is not None: - self.username = username # noqa: E501 + self.username = ( + username + ) if first_name is not None: - self.first_name = first_name # noqa: E501 + self.first_name = ( + first_name + ) if last_name is not None: - self.last_name = last_name # noqa: E501 + self.last_name = ( + last_name + ) if email is not None: - self.email = email # noqa: E501 + self.email = ( + email + ) if password is not None: - self.password = password # noqa: E501 + self.password = ( + password + ) if phone is not None: - self.phone = phone # noqa: E501 + self.phone = ( + phone + ) if user_status is not None: - self.user_status = user_status # noqa: E501 + self.user_status = ( + user_status + ) @property def id(self): @@ -106,9 +133,7 @@ class User(object): return self._id @id.setter - def id( - self, - id): + def id(self, id): # noqa: E501 """Sets the id of this User. @@ -117,7 +142,8 @@ class User(object): """ self._id = ( - id) + id + ) @property def username(self): @@ -130,9 +156,7 @@ class User(object): return self._username @username.setter - def username( - self, - username): + def username(self, username): # noqa: E501 """Sets the username of this User. @@ -141,7 +165,8 @@ class User(object): """ self._username = ( - username) + username + ) @property def first_name(self): @@ -154,9 +179,7 @@ class User(object): return self._first_name @first_name.setter - def first_name( - self, - first_name): + def first_name(self, first_name): # noqa: E501 """Sets the first_name of this User. @@ -165,7 +188,8 @@ class User(object): """ self._first_name = ( - first_name) + first_name + ) @property def last_name(self): @@ -178,9 +202,7 @@ class User(object): return self._last_name @last_name.setter - def last_name( - self, - last_name): + def last_name(self, last_name): # noqa: E501 """Sets the last_name of this User. @@ -189,7 +211,8 @@ class User(object): """ self._last_name = ( - last_name) + last_name + ) @property def email(self): @@ -202,9 +225,7 @@ class User(object): return self._email @email.setter - def email( - self, - email): + def email(self, email): # noqa: E501 """Sets the email of this User. @@ -213,7 +234,8 @@ class User(object): """ self._email = ( - email) + email + ) @property def password(self): @@ -226,9 +248,7 @@ class User(object): return self._password @password.setter - def password( - self, - password): + def password(self, password): # noqa: E501 """Sets the password of this User. @@ -237,7 +257,8 @@ class User(object): """ self._password = ( - password) + password + ) @property def phone(self): @@ -250,9 +271,7 @@ class User(object): return self._phone @phone.setter - def phone( - self, - phone): + def phone(self, phone): # noqa: E501 """Sets the phone of this User. @@ -261,7 +280,8 @@ class User(object): """ self._phone = ( - phone) + phone + ) @property def user_status(self): @@ -275,9 +295,7 @@ class User(object): return self._user_status @user_status.setter - def user_status( - self, - user_status): + def user_status(self, user_status): # noqa: E501 """Sets the user_status of this User. User Status # noqa: E501 @@ -287,7 +305,8 @@ class User(object): """ self._user_status = ( - user_status) + user_status + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/petstore_api/models/xml_item.py b/samples/client/petstore/python-experimental/petstore_api/models/xml_item.py index 4d9c57350b..3657b04b1e 100644 --- a/samples/client/petstore/python-experimental/petstore_api/models/xml_item.py +++ b/samples/client/petstore/python-experimental/petstore_api/models/xml_item.py @@ -10,56 +10,45 @@ """ -import pprint +import pprint # noqa: F401 import re # noqa: F401 -import six +import six # noqa: F401 + +from petstore_api.exceptions import ApiValueError # noqa: F401 +from petstore_api.model_utils import ( # noqa: F401 + ModelNormal, + ModelSimple, + check_allowed_values, + check_validations +) -class XmlItem(object): +class XmlItem(ModelNormal): """NOTE: This class is auto generated by OpenAPI Generator. Ref: https://openapi-generator.tech Do not edit the class manually. + + Attributes: + allowed_values (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + with a capitalized key describing the allowed value and an allowed + value. These dicts store the allowed enum values. + attribute_map (dict): The key is attribute name + and the value is json key in definition. + discriminator_value_class_map (dict): A dict to go from the discriminator + variable value to the discriminator class name. + openapi_types (dict): The key is attribute name + and the value is attribute type. + validations (dict): The key is the tuple path to the attribute + and the for var_name this is (var_name,). The value is a dict + that stores validations for max_length, min_length, max_items, + min_items, exclusive_maximum, inclusive_maximum, exclusive_minimum, + inclusive_minimum, and regex. """ - """ - Attributes: - openapi_types (dict): The key is attribute name - and the value is attribute type. - attribute_map (dict): The key is attribute name - and the value is json key in definition. - """ - openapi_types = { - 'attribute_string': 'str', - 'attribute_number': 'float', - 'attribute_integer': 'int', - 'attribute_boolean': 'bool', - 'wrapped_array': 'list[int]', - 'name_string': 'str', - 'name_number': 'float', - 'name_integer': 'int', - 'name_boolean': 'bool', - 'name_array': 'list[int]', - 'name_wrapped_array': 'list[int]', - 'prefix_string': 'str', - 'prefix_number': 'float', - 'prefix_integer': 'int', - 'prefix_boolean': 'bool', - 'prefix_array': 'list[int]', - 'prefix_wrapped_array': 'list[int]', - 'namespace_string': 'str', - 'namespace_number': 'float', - 'namespace_integer': 'int', - 'namespace_boolean': 'bool', - 'namespace_array': 'list[int]', - 'namespace_wrapped_array': 'list[int]', - 'prefix_ns_string': 'str', - 'prefix_ns_number': 'float', - 'prefix_ns_integer': 'int', - 'prefix_ns_boolean': 'bool', - 'prefix_ns_array': 'list[int]', - 'prefix_ns_wrapped_array': 'list[int]', + allowed_values = { } attribute_map = { @@ -91,45 +80,46 @@ class XmlItem(object): 'prefix_ns_integer': 'prefix_ns_integer', # noqa: E501 'prefix_ns_boolean': 'prefix_ns_boolean', # noqa: E501 'prefix_ns_array': 'prefix_ns_array', # noqa: E501 - 'prefix_ns_wrapped_array': 'prefix_ns_wrapped_array', # noqa: E501 + 'prefix_ns_wrapped_array': 'prefix_ns_wrapped_array' # noqa: E501 + } + + openapi_types = { + 'attribute_string': 'str', + 'attribute_number': 'float', + 'attribute_integer': 'int', + 'attribute_boolean': 'bool', + 'wrapped_array': 'list[int]', + 'name_string': 'str', + 'name_number': 'float', + 'name_integer': 'int', + 'name_boolean': 'bool', + 'name_array': 'list[int]', + 'name_wrapped_array': 'list[int]', + 'prefix_string': 'str', + 'prefix_number': 'float', + 'prefix_integer': 'int', + 'prefix_boolean': 'bool', + 'prefix_array': 'list[int]', + 'prefix_wrapped_array': 'list[int]', + 'namespace_string': 'str', + 'namespace_number': 'float', + 'namespace_integer': 'int', + 'namespace_boolean': 'bool', + 'namespace_array': 'list[int]', + 'namespace_wrapped_array': 'list[int]', + 'prefix_ns_string': 'str', + 'prefix_ns_number': 'float', + 'prefix_ns_integer': 'int', + 'prefix_ns_boolean': 'bool', + 'prefix_ns_array': 'list[int]', + 'prefix_ns_wrapped_array': 'list[int]' + } + + validations = { } def __init__(self, attribute_string=None, attribute_number=None, attribute_integer=None, attribute_boolean=None, wrapped_array=None, name_string=None, name_number=None, name_integer=None, name_boolean=None, name_array=None, name_wrapped_array=None, prefix_string=None, prefix_number=None, prefix_integer=None, prefix_boolean=None, prefix_array=None, prefix_wrapped_array=None, namespace_string=None, namespace_number=None, namespace_integer=None, namespace_boolean=None, namespace_array=None, namespace_wrapped_array=None, prefix_ns_string=None, prefix_ns_number=None, prefix_ns_integer=None, prefix_ns_boolean=None, prefix_ns_array=None, prefix_ns_wrapped_array=None): # noqa: E501 - """XmlItem - a model defined in OpenAPI - - - - Keyword Args: - attribute_string (str): [optional] # noqa: E501 - attribute_number (float): [optional] # noqa: E501 - attribute_integer (int): [optional] # noqa: E501 - attribute_boolean (bool): [optional] # noqa: E501 - wrapped_array (list[int]): [optional] # noqa: E501 - name_string (str): [optional] # noqa: E501 - name_number (float): [optional] # noqa: E501 - name_integer (int): [optional] # noqa: E501 - name_boolean (bool): [optional] # noqa: E501 - name_array (list[int]): [optional] # noqa: E501 - name_wrapped_array (list[int]): [optional] # noqa: E501 - prefix_string (str): [optional] # noqa: E501 - prefix_number (float): [optional] # noqa: E501 - prefix_integer (int): [optional] # noqa: E501 - prefix_boolean (bool): [optional] # noqa: E501 - prefix_array (list[int]): [optional] # noqa: E501 - prefix_wrapped_array (list[int]): [optional] # noqa: E501 - namespace_string (str): [optional] # noqa: E501 - namespace_number (float): [optional] # noqa: E501 - namespace_integer (int): [optional] # noqa: E501 - namespace_boolean (bool): [optional] # noqa: E501 - namespace_array (list[int]): [optional] # noqa: E501 - namespace_wrapped_array (list[int]): [optional] # noqa: E501 - prefix_ns_string (str): [optional] # noqa: E501 - prefix_ns_number (float): [optional] # noqa: E501 - prefix_ns_integer (int): [optional] # noqa: E501 - prefix_ns_boolean (bool): [optional] # noqa: E501 - prefix_ns_array (list[int]): [optional] # noqa: E501 - prefix_ns_wrapped_array (list[int]): [optional] # noqa: E501 - """ + """XmlItem - a model defined in OpenAPI""" # noqa: E501 self._attribute_string = None self._attribute_number = None @@ -163,63 +153,121 @@ class XmlItem(object): self.discriminator = None if attribute_string is not None: - self.attribute_string = attribute_string # noqa: E501 + self.attribute_string = ( + attribute_string + ) if attribute_number is not None: - self.attribute_number = attribute_number # noqa: E501 + self.attribute_number = ( + attribute_number + ) if attribute_integer is not None: - self.attribute_integer = attribute_integer # noqa: E501 + self.attribute_integer = ( + attribute_integer + ) if attribute_boolean is not None: - self.attribute_boolean = attribute_boolean # noqa: E501 + self.attribute_boolean = ( + attribute_boolean + ) if wrapped_array is not None: - self.wrapped_array = wrapped_array # noqa: E501 + self.wrapped_array = ( + wrapped_array + ) if name_string is not None: - self.name_string = name_string # noqa: E501 + self.name_string = ( + name_string + ) if name_number is not None: - self.name_number = name_number # noqa: E501 + self.name_number = ( + name_number + ) if name_integer is not None: - self.name_integer = name_integer # noqa: E501 + self.name_integer = ( + name_integer + ) if name_boolean is not None: - self.name_boolean = name_boolean # noqa: E501 + self.name_boolean = ( + name_boolean + ) if name_array is not None: - self.name_array = name_array # noqa: E501 + self.name_array = ( + name_array + ) if name_wrapped_array is not None: - self.name_wrapped_array = name_wrapped_array # noqa: E501 + self.name_wrapped_array = ( + name_wrapped_array + ) if prefix_string is not None: - self.prefix_string = prefix_string # noqa: E501 + self.prefix_string = ( + prefix_string + ) if prefix_number is not None: - self.prefix_number = prefix_number # noqa: E501 + self.prefix_number = ( + prefix_number + ) if prefix_integer is not None: - self.prefix_integer = prefix_integer # noqa: E501 + self.prefix_integer = ( + prefix_integer + ) if prefix_boolean is not None: - self.prefix_boolean = prefix_boolean # noqa: E501 + self.prefix_boolean = ( + prefix_boolean + ) if prefix_array is not None: - self.prefix_array = prefix_array # noqa: E501 + self.prefix_array = ( + prefix_array + ) if prefix_wrapped_array is not None: - self.prefix_wrapped_array = prefix_wrapped_array # noqa: E501 + self.prefix_wrapped_array = ( + prefix_wrapped_array + ) if namespace_string is not None: - self.namespace_string = namespace_string # noqa: E501 + self.namespace_string = ( + namespace_string + ) if namespace_number is not None: - self.namespace_number = namespace_number # noqa: E501 + self.namespace_number = ( + namespace_number + ) if namespace_integer is not None: - self.namespace_integer = namespace_integer # noqa: E501 + self.namespace_integer = ( + namespace_integer + ) if namespace_boolean is not None: - self.namespace_boolean = namespace_boolean # noqa: E501 + self.namespace_boolean = ( + namespace_boolean + ) if namespace_array is not None: - self.namespace_array = namespace_array # noqa: E501 + self.namespace_array = ( + namespace_array + ) if namespace_wrapped_array is not None: - self.namespace_wrapped_array = namespace_wrapped_array # noqa: E501 + self.namespace_wrapped_array = ( + namespace_wrapped_array + ) if prefix_ns_string is not None: - self.prefix_ns_string = prefix_ns_string # noqa: E501 + self.prefix_ns_string = ( + prefix_ns_string + ) if prefix_ns_number is not None: - self.prefix_ns_number = prefix_ns_number # noqa: E501 + self.prefix_ns_number = ( + prefix_ns_number + ) if prefix_ns_integer is not None: - self.prefix_ns_integer = prefix_ns_integer # noqa: E501 + self.prefix_ns_integer = ( + prefix_ns_integer + ) if prefix_ns_boolean is not None: - self.prefix_ns_boolean = prefix_ns_boolean # noqa: E501 + self.prefix_ns_boolean = ( + prefix_ns_boolean + ) if prefix_ns_array is not None: - self.prefix_ns_array = prefix_ns_array # noqa: E501 + self.prefix_ns_array = ( + prefix_ns_array + ) if prefix_ns_wrapped_array is not None: - self.prefix_ns_wrapped_array = prefix_ns_wrapped_array # noqa: E501 + self.prefix_ns_wrapped_array = ( + prefix_ns_wrapped_array + ) @property def attribute_string(self): @@ -232,9 +280,7 @@ class XmlItem(object): return self._attribute_string @attribute_string.setter - def attribute_string( - self, - attribute_string): + def attribute_string(self, attribute_string): # noqa: E501 """Sets the attribute_string of this XmlItem. @@ -243,7 +289,8 @@ class XmlItem(object): """ self._attribute_string = ( - attribute_string) + attribute_string + ) @property def attribute_number(self): @@ -256,9 +303,7 @@ class XmlItem(object): return self._attribute_number @attribute_number.setter - def attribute_number( - self, - attribute_number): + def attribute_number(self, attribute_number): # noqa: E501 """Sets the attribute_number of this XmlItem. @@ -267,7 +312,8 @@ class XmlItem(object): """ self._attribute_number = ( - attribute_number) + attribute_number + ) @property def attribute_integer(self): @@ -280,9 +326,7 @@ class XmlItem(object): return self._attribute_integer @attribute_integer.setter - def attribute_integer( - self, - attribute_integer): + def attribute_integer(self, attribute_integer): # noqa: E501 """Sets the attribute_integer of this XmlItem. @@ -291,7 +335,8 @@ class XmlItem(object): """ self._attribute_integer = ( - attribute_integer) + attribute_integer + ) @property def attribute_boolean(self): @@ -304,9 +349,7 @@ class XmlItem(object): return self._attribute_boolean @attribute_boolean.setter - def attribute_boolean( - self, - attribute_boolean): + def attribute_boolean(self, attribute_boolean): # noqa: E501 """Sets the attribute_boolean of this XmlItem. @@ -315,7 +358,8 @@ class XmlItem(object): """ self._attribute_boolean = ( - attribute_boolean) + attribute_boolean + ) @property def wrapped_array(self): @@ -328,9 +372,7 @@ class XmlItem(object): return self._wrapped_array @wrapped_array.setter - def wrapped_array( - self, - wrapped_array): + def wrapped_array(self, wrapped_array): # noqa: E501 """Sets the wrapped_array of this XmlItem. @@ -339,7 +381,8 @@ class XmlItem(object): """ self._wrapped_array = ( - wrapped_array) + wrapped_array + ) @property def name_string(self): @@ -352,9 +395,7 @@ class XmlItem(object): return self._name_string @name_string.setter - def name_string( - self, - name_string): + def name_string(self, name_string): # noqa: E501 """Sets the name_string of this XmlItem. @@ -363,7 +404,8 @@ class XmlItem(object): """ self._name_string = ( - name_string) + name_string + ) @property def name_number(self): @@ -376,9 +418,7 @@ class XmlItem(object): return self._name_number @name_number.setter - def name_number( - self, - name_number): + def name_number(self, name_number): # noqa: E501 """Sets the name_number of this XmlItem. @@ -387,7 +427,8 @@ class XmlItem(object): """ self._name_number = ( - name_number) + name_number + ) @property def name_integer(self): @@ -400,9 +441,7 @@ class XmlItem(object): return self._name_integer @name_integer.setter - def name_integer( - self, - name_integer): + def name_integer(self, name_integer): # noqa: E501 """Sets the name_integer of this XmlItem. @@ -411,7 +450,8 @@ class XmlItem(object): """ self._name_integer = ( - name_integer) + name_integer + ) @property def name_boolean(self): @@ -424,9 +464,7 @@ class XmlItem(object): return self._name_boolean @name_boolean.setter - def name_boolean( - self, - name_boolean): + def name_boolean(self, name_boolean): # noqa: E501 """Sets the name_boolean of this XmlItem. @@ -435,7 +473,8 @@ class XmlItem(object): """ self._name_boolean = ( - name_boolean) + name_boolean + ) @property def name_array(self): @@ -448,9 +487,7 @@ class XmlItem(object): return self._name_array @name_array.setter - def name_array( - self, - name_array): + def name_array(self, name_array): # noqa: E501 """Sets the name_array of this XmlItem. @@ -459,7 +496,8 @@ class XmlItem(object): """ self._name_array = ( - name_array) + name_array + ) @property def name_wrapped_array(self): @@ -472,9 +510,7 @@ class XmlItem(object): return self._name_wrapped_array @name_wrapped_array.setter - def name_wrapped_array( - self, - name_wrapped_array): + def name_wrapped_array(self, name_wrapped_array): # noqa: E501 """Sets the name_wrapped_array of this XmlItem. @@ -483,7 +519,8 @@ class XmlItem(object): """ self._name_wrapped_array = ( - name_wrapped_array) + name_wrapped_array + ) @property def prefix_string(self): @@ -496,9 +533,7 @@ class XmlItem(object): return self._prefix_string @prefix_string.setter - def prefix_string( - self, - prefix_string): + def prefix_string(self, prefix_string): # noqa: E501 """Sets the prefix_string of this XmlItem. @@ -507,7 +542,8 @@ class XmlItem(object): """ self._prefix_string = ( - prefix_string) + prefix_string + ) @property def prefix_number(self): @@ -520,9 +556,7 @@ class XmlItem(object): return self._prefix_number @prefix_number.setter - def prefix_number( - self, - prefix_number): + def prefix_number(self, prefix_number): # noqa: E501 """Sets the prefix_number of this XmlItem. @@ -531,7 +565,8 @@ class XmlItem(object): """ self._prefix_number = ( - prefix_number) + prefix_number + ) @property def prefix_integer(self): @@ -544,9 +579,7 @@ class XmlItem(object): return self._prefix_integer @prefix_integer.setter - def prefix_integer( - self, - prefix_integer): + def prefix_integer(self, prefix_integer): # noqa: E501 """Sets the prefix_integer of this XmlItem. @@ -555,7 +588,8 @@ class XmlItem(object): """ self._prefix_integer = ( - prefix_integer) + prefix_integer + ) @property def prefix_boolean(self): @@ -568,9 +602,7 @@ class XmlItem(object): return self._prefix_boolean @prefix_boolean.setter - def prefix_boolean( - self, - prefix_boolean): + def prefix_boolean(self, prefix_boolean): # noqa: E501 """Sets the prefix_boolean of this XmlItem. @@ -579,7 +611,8 @@ class XmlItem(object): """ self._prefix_boolean = ( - prefix_boolean) + prefix_boolean + ) @property def prefix_array(self): @@ -592,9 +625,7 @@ class XmlItem(object): return self._prefix_array @prefix_array.setter - def prefix_array( - self, - prefix_array): + def prefix_array(self, prefix_array): # noqa: E501 """Sets the prefix_array of this XmlItem. @@ -603,7 +634,8 @@ class XmlItem(object): """ self._prefix_array = ( - prefix_array) + prefix_array + ) @property def prefix_wrapped_array(self): @@ -616,9 +648,7 @@ class XmlItem(object): return self._prefix_wrapped_array @prefix_wrapped_array.setter - def prefix_wrapped_array( - self, - prefix_wrapped_array): + def prefix_wrapped_array(self, prefix_wrapped_array): # noqa: E501 """Sets the prefix_wrapped_array of this XmlItem. @@ -627,7 +657,8 @@ class XmlItem(object): """ self._prefix_wrapped_array = ( - prefix_wrapped_array) + prefix_wrapped_array + ) @property def namespace_string(self): @@ -640,9 +671,7 @@ class XmlItem(object): return self._namespace_string @namespace_string.setter - def namespace_string( - self, - namespace_string): + def namespace_string(self, namespace_string): # noqa: E501 """Sets the namespace_string of this XmlItem. @@ -651,7 +680,8 @@ class XmlItem(object): """ self._namespace_string = ( - namespace_string) + namespace_string + ) @property def namespace_number(self): @@ -664,9 +694,7 @@ class XmlItem(object): return self._namespace_number @namespace_number.setter - def namespace_number( - self, - namespace_number): + def namespace_number(self, namespace_number): # noqa: E501 """Sets the namespace_number of this XmlItem. @@ -675,7 +703,8 @@ class XmlItem(object): """ self._namespace_number = ( - namespace_number) + namespace_number + ) @property def namespace_integer(self): @@ -688,9 +717,7 @@ class XmlItem(object): return self._namespace_integer @namespace_integer.setter - def namespace_integer( - self, - namespace_integer): + def namespace_integer(self, namespace_integer): # noqa: E501 """Sets the namespace_integer of this XmlItem. @@ -699,7 +726,8 @@ class XmlItem(object): """ self._namespace_integer = ( - namespace_integer) + namespace_integer + ) @property def namespace_boolean(self): @@ -712,9 +740,7 @@ class XmlItem(object): return self._namespace_boolean @namespace_boolean.setter - def namespace_boolean( - self, - namespace_boolean): + def namespace_boolean(self, namespace_boolean): # noqa: E501 """Sets the namespace_boolean of this XmlItem. @@ -723,7 +749,8 @@ class XmlItem(object): """ self._namespace_boolean = ( - namespace_boolean) + namespace_boolean + ) @property def namespace_array(self): @@ -736,9 +763,7 @@ class XmlItem(object): return self._namespace_array @namespace_array.setter - def namespace_array( - self, - namespace_array): + def namespace_array(self, namespace_array): # noqa: E501 """Sets the namespace_array of this XmlItem. @@ -747,7 +772,8 @@ class XmlItem(object): """ self._namespace_array = ( - namespace_array) + namespace_array + ) @property def namespace_wrapped_array(self): @@ -760,9 +786,7 @@ class XmlItem(object): return self._namespace_wrapped_array @namespace_wrapped_array.setter - def namespace_wrapped_array( - self, - namespace_wrapped_array): + def namespace_wrapped_array(self, namespace_wrapped_array): # noqa: E501 """Sets the namespace_wrapped_array of this XmlItem. @@ -771,7 +795,8 @@ class XmlItem(object): """ self._namespace_wrapped_array = ( - namespace_wrapped_array) + namespace_wrapped_array + ) @property def prefix_ns_string(self): @@ -784,9 +809,7 @@ class XmlItem(object): return self._prefix_ns_string @prefix_ns_string.setter - def prefix_ns_string( - self, - prefix_ns_string): + def prefix_ns_string(self, prefix_ns_string): # noqa: E501 """Sets the prefix_ns_string of this XmlItem. @@ -795,7 +818,8 @@ class XmlItem(object): """ self._prefix_ns_string = ( - prefix_ns_string) + prefix_ns_string + ) @property def prefix_ns_number(self): @@ -808,9 +832,7 @@ class XmlItem(object): return self._prefix_ns_number @prefix_ns_number.setter - def prefix_ns_number( - self, - prefix_ns_number): + def prefix_ns_number(self, prefix_ns_number): # noqa: E501 """Sets the prefix_ns_number of this XmlItem. @@ -819,7 +841,8 @@ class XmlItem(object): """ self._prefix_ns_number = ( - prefix_ns_number) + prefix_ns_number + ) @property def prefix_ns_integer(self): @@ -832,9 +855,7 @@ class XmlItem(object): return self._prefix_ns_integer @prefix_ns_integer.setter - def prefix_ns_integer( - self, - prefix_ns_integer): + def prefix_ns_integer(self, prefix_ns_integer): # noqa: E501 """Sets the prefix_ns_integer of this XmlItem. @@ -843,7 +864,8 @@ class XmlItem(object): """ self._prefix_ns_integer = ( - prefix_ns_integer) + prefix_ns_integer + ) @property def prefix_ns_boolean(self): @@ -856,9 +878,7 @@ class XmlItem(object): return self._prefix_ns_boolean @prefix_ns_boolean.setter - def prefix_ns_boolean( - self, - prefix_ns_boolean): + def prefix_ns_boolean(self, prefix_ns_boolean): # noqa: E501 """Sets the prefix_ns_boolean of this XmlItem. @@ -867,7 +887,8 @@ class XmlItem(object): """ self._prefix_ns_boolean = ( - prefix_ns_boolean) + prefix_ns_boolean + ) @property def prefix_ns_array(self): @@ -880,9 +901,7 @@ class XmlItem(object): return self._prefix_ns_array @prefix_ns_array.setter - def prefix_ns_array( - self, - prefix_ns_array): + def prefix_ns_array(self, prefix_ns_array): # noqa: E501 """Sets the prefix_ns_array of this XmlItem. @@ -891,7 +910,8 @@ class XmlItem(object): """ self._prefix_ns_array = ( - prefix_ns_array) + prefix_ns_array + ) @property def prefix_ns_wrapped_array(self): @@ -904,9 +924,7 @@ class XmlItem(object): return self._prefix_ns_wrapped_array @prefix_ns_wrapped_array.setter - def prefix_ns_wrapped_array( - self, - prefix_ns_wrapped_array): + def prefix_ns_wrapped_array(self, prefix_ns_wrapped_array): # noqa: E501 """Sets the prefix_ns_wrapped_array of this XmlItem. @@ -915,7 +933,8 @@ class XmlItem(object): """ self._prefix_ns_wrapped_array = ( - prefix_ns_wrapped_array) + prefix_ns_wrapped_array + ) def to_dict(self): """Returns the model properties as a dict""" diff --git a/samples/client/petstore/python-experimental/setup.py b/samples/client/petstore/python-experimental/setup.py index 86988b6d42..1d5e7c2915 100644 --- a/samples/client/petstore/python-experimental/setup.py +++ b/samples/client/petstore/python-experimental/setup.py @@ -31,7 +31,7 @@ setup( url="", keywords=["OpenAPI", "OpenAPI-Generator", "OpenAPI Petstore"], install_requires=REQUIRES, - packages=find_packages(), + packages=find_packages(exclude=["test", "tests"]), include_package_data=True, long_description="""\ This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 diff --git a/samples/client/petstore/python-experimental/test/test_fake_api.py b/samples/client/petstore/python-experimental/test/test_fake_api.py index fc2cbef35f..e8877b915e 100644 --- a/samples/client/petstore/python-experimental/test/test_fake_api.py +++ b/samples/client/petstore/python-experimental/test/test_fake_api.py @@ -40,11 +40,23 @@ class TestFakeApi(unittest.TestCase): """ pass + def test_fake_outer_enum_serialize(self): + """Test case for fake_outer_enum_serialize + + """ + # verify that the input and output are type OuterEnum + endpoint = self.api.fake_outer_enum_serialize + assert endpoint.openapi_types['body'] == 'OuterEnum' + assert endpoint.settings['response_type'] == 'OuterEnum' + def test_fake_outer_number_serialize(self): """Test case for fake_outer_number_serialize """ - pass + # verify that the input and output are the correct type + endpoint = self.api.fake_outer_number_serialize + assert endpoint.openapi_types['body'] == 'OuterNumber' + assert endpoint.settings['response_type'] == 'OuterNumber' def test_fake_outer_string_serialize(self): """Test case for fake_outer_string_serialize @@ -70,14 +82,38 @@ class TestFakeApi(unittest.TestCase): Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 # noqa: E501 """ - pass + # check that we can access the endpoint's validations + endpoint = self.api.test_endpoint_parameters + assert endpoint.validations[('number',)] == { + 'inclusive_maximum': 543.2, + 'inclusive_minimum': 32.1, + } + # make sure that an exception is thrown on an invalid value + keyword_args = dict( + number=544, # invalid + double=100, + pattern_without_delimiter="abc", + byte='sample string' + ) + with self.assertRaises(petstore_api.ApiValueError): + self.api.test_endpoint_parameters(**keyword_args) def test_test_enum_parameters(self): """Test case for test_enum_parameters To test enum parameters # noqa: E501 """ - pass + # check that we can access the endpoint's allowed_values + endpoint = self.api.test_enum_parameters + assert endpoint.allowed_values[('enum_query_string',)] == { + "_ABC": "_abc", + "-EFG": "-efg", + "(XYZ)": "(xyz)" + } + # make sure that an exception is thrown on an invalid value + keyword_args = dict(enum_query_string="bad value") + with self.assertRaises(petstore_api.ApiValueError): + self.api.test_enum_parameters(**keyword_args) def test_test_inline_additional_properties(self): """Test case for test_inline_additional_properties diff --git a/samples/client/petstore/python-experimental/test/test_format_test.py b/samples/client/petstore/python-experimental/test/test_format_test.py index 46707c77b7..ba20d7f811 100644 --- a/samples/client/petstore/python-experimental/test/test_format_test.py +++ b/samples/client/petstore/python-experimental/test/test_format_test.py @@ -2,9 +2,7 @@ """ OpenAPI Petstore - This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 - OpenAPI spec version: 1.0.0 Generated by: https://openapi-generator.tech """ @@ -16,24 +14,139 @@ import unittest import petstore_api from petstore_api.models.format_test import FormatTest # noqa: E501 -from petstore_api.rest import ApiException +from petstore_api import ApiValueError class TestFormatTest(unittest.TestCase): """FormatTest unit test stubs""" def setUp(self): - pass + self.required_named_args = dict( + number=40.1, + byte='what', + date='2019-03-23', + password='rainbowtable' + ) - def tearDown(self): - pass + def test_integer(self): + var_name = 'integer' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + key_adder_pairs = [('inclusive_maximum', 1), ('inclusive_minimum', -1)] + for key, adder in key_adder_pairs: + # value outside the bounds throws an error + with self.assertRaises(ApiValueError): + keyword_args[var_name] = validations[key] + adder + FormatTest(**keyword_args) - def testFormatTest(self): - """Test FormatTest""" - # FIXME: construct object with mandatory attributes with example values - # model = petstore_api.models.format_test.FormatTest() # noqa: E501 - pass + # value inside the bounds works + keyword_args[var_name] = validations[key] + assert (getattr(FormatTest(**keyword_args), var_name) == + validations[key]) + + def test_int32(self): + var_name = 'int32' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + key_adder_pairs = [('inclusive_maximum', 1), ('inclusive_minimum', -1)] + for key, adder in key_adder_pairs: + # value outside the bounds throws an error + with self.assertRaises(ApiValueError): + keyword_args[var_name] = validations[key] + adder + FormatTest(**keyword_args) + + # value inside the bounds works + keyword_args[var_name] = validations[key] + assert (getattr(FormatTest(**keyword_args), var_name) == + validations[key]) + + def test_number(self): + var_name = 'number' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + key_adder_pairs = [('inclusive_maximum', 1), ('inclusive_minimum', -1)] + for key, adder in key_adder_pairs: + # value outside the bounds throws an error + with self.assertRaises(ApiValueError): + keyword_args[var_name] = validations[key] + adder + FormatTest(**keyword_args) + + # value inside the bounds works + keyword_args[var_name] = validations[key] + assert (getattr(FormatTest(**keyword_args), var_name) == + validations[key]) + + def test_float(self): + var_name = 'float' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + key_adder_pairs = [('inclusive_maximum', 1), ('inclusive_minimum', -1)] + for key, adder in key_adder_pairs: + # value outside the bounds throws an error + with self.assertRaises(ApiValueError): + keyword_args[var_name] = validations[key] + adder + FormatTest(**keyword_args) + + # value inside the bounds works + keyword_args[var_name] = validations[key] + assert (getattr(FormatTest(**keyword_args), var_name) == + validations[key]) + + def test_double(self): + var_name = 'double' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + key_adder_pairs = [('inclusive_maximum', 1), ('inclusive_minimum', -1)] + for key, adder in key_adder_pairs: + # value outside the bounds throws an error + with self.assertRaises(ApiValueError): + keyword_args[var_name] = validations[key] + adder + FormatTest(**keyword_args) + + # value inside the bounds works + keyword_args[var_name] = validations[key] + assert (getattr(FormatTest(**keyword_args), var_name) == + validations[key]) + + def test_password(self): + var_name = 'password' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + key_adder_pairs = [('max_length', 1), ('min_length', -1)] + for key, adder in key_adder_pairs: + # value outside the bounds throws an error + with self.assertRaises(ApiValueError): + keyword_args[var_name] = 'a'*(validations[key] + adder) + FormatTest(**keyword_args) + + # value inside the bounds works + keyword_args[var_name] = 'a'*validations[key] + assert (getattr(FormatTest(**keyword_args), var_name) == + 'a'*validations[key]) + + def test_string(self): + var_name = 'string' + validations = FormatTest.validations[(var_name,)] + keyword_args = {} + keyword_args.update(self.required_named_args) + values_invalid = ['abc3', '1', '.', ' ', 'مرحبا', ''] + for value_invalid in values_invalid: + # invalid values throw exceptions + with self.assertRaises(ApiValueError): + keyword_args[var_name] = value_invalid + FormatTest(**keyword_args) + + # valid value works + value_valid = 'abcdz' + keyword_args[var_name] = value_valid + assert getattr(FormatTest(**keyword_args), var_name) == value_valid if __name__ == '__main__': - unittest.main() + unittest.main() \ No newline at end of file diff --git a/samples/client/petstore/python-experimental/test/test_outer_enum.py b/samples/client/petstore/python-experimental/test/test_outer_enum.py index 472e36e168..50bfff0869 100644 --- a/samples/client/petstore/python-experimental/test/test_outer_enum.py +++ b/samples/client/petstore/python-experimental/test/test_outer_enum.py @@ -5,7 +5,7 @@ This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 - OpenAPI spec version: 1.0.0 + The version of the OpenAPI document: 1.0.0 Generated by: https://openapi-generator.tech """ @@ -30,10 +30,18 @@ class TestOuterEnum(unittest.TestCase): def testOuterEnum(self): """Test OuterEnum""" - # FIXME: construct object with mandatory attributes with example values - # model = petstore_api.models.outer_enum.OuterEnum() # noqa: E501 - pass - + # make sure that we can access its allowed_values + assert OuterEnum.allowed_values[('value',)] == { + 'PLACED': "placed", + 'APPROVED': "approved", + 'DELIVERED': "delivered" + } + # make sure that an exception is thrown on an invalid value + with self.assertRaises(petstore_api.ApiValueError): + OuterEnum('bad_value') + # make sure valid value works + valid_value = OuterEnum.allowed_values[('value',)]['PLACED'] + assert valid_value == OuterEnum(valid_value).value if __name__ == '__main__': unittest.main() diff --git a/samples/client/petstore/python-experimental/test/test_outer_number.py b/samples/client/petstore/python-experimental/test/test_outer_number.py new file mode 100644 index 0000000000..31c9c41755 --- /dev/null +++ b/samples/client/petstore/python-experimental/test/test_outer_number.py @@ -0,0 +1,39 @@ +# coding: utf-8 + +""" + OpenAPI Petstore + + This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 + + The version of the OpenAPI document: 1.0.0 + Generated by: https://openapi-generator.tech +""" + + +from __future__ import absolute_import + +import unittest + +import petstore_api +from petstore_api.models.outer_number import OuterNumber # noqa: E501 +from petstore_api.rest import ApiException + + +class TestOuterNumber(unittest.TestCase): + """OuterNumber unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testOuterNumber(self): + """Test OuterNumber""" + # FIXME: construct object with mandatory attributes with example values + # model = petstore_api.models.outer_number.OuterNumber() # noqa: E501 + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/samples/client/petstore/python-experimental/test/test_string_boolean_map.py b/samples/client/petstore/python-experimental/test/test_string_boolean_map.py new file mode 100644 index 0000000000..31c1ebeec5 --- /dev/null +++ b/samples/client/petstore/python-experimental/test/test_string_boolean_map.py @@ -0,0 +1,39 @@ +# coding: utf-8 + +""" + OpenAPI Petstore + + This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ # noqa: E501 + + The version of the OpenAPI document: 1.0.0 + Generated by: https://openapi-generator.tech +""" + + +from __future__ import absolute_import + +import unittest + +import petstore_api +from petstore_api.models.string_boolean_map import StringBooleanMap # noqa: E501 +from petstore_api.rest import ApiException + + +class TestStringBooleanMap(unittest.TestCase): + """StringBooleanMap unit test stubs""" + + def setUp(self): + pass + + def tearDown(self): + pass + + def testStringBooleanMap(self): + """Test StringBooleanMap""" + # FIXME: construct object with mandatory attributes with example values + # model = petstore_api.models.string_boolean_map.StringBooleanMap() # noqa: E501 + pass + + +if __name__ == '__main__': + unittest.main() diff --git a/samples/client/petstore/python-experimental/test/test_type_holder_default.py b/samples/client/petstore/python-experimental/test/test_type_holder_default.py index 4cb90d0ed9..08a201b854 100644 --- a/samples/client/petstore/python-experimental/test/test_type_holder_default.py +++ b/samples/client/petstore/python-experimental/test/test_type_holder_default.py @@ -32,10 +32,8 @@ class TestTypeHolderDefault(unittest.TestCase): """Test TypeHolderDefault""" # required_vars are set to None now until swagger-parser/swagger-core fixes # https://github.com/swagger-api/swagger-parser/issues/971 - with self.assertRaises(TypeError): - model = TypeHolderDefault() array_item = [1, 2, 3] - model = TypeHolderDefault(array_item) + model = TypeHolderDefault(array_item=array_item) self.assertEqual(model.string_item, 'what') self.assertEqual(model.bool_item, True) diff --git a/samples/client/petstore/python-experimental/tests/test_api_exception.py b/samples/client/petstore/python-experimental/tests/test_api_exception.py index 75bf81a8de..a05c3e902c 100644 --- a/samples/client/petstore/python-experimental/tests/test_api_exception.py +++ b/samples/client/petstore/python-experimental/tests/test_api_exception.py @@ -58,15 +58,13 @@ class ApiExceptionTests(unittest.TestCase): with self.checkRaiseRegex(ApiException, "Internal Server Error"): self.pet_api.upload_file( pet_id=self.pet.id, - additional_metadata="special", - file=None + additional_metadata="special" ) try: self.pet_api.upload_file( pet_id=self.pet.id, - additional_metadata="special", - file=None + additional_metadata="special" ) except ApiException as e: self.assertEqual(e.status, 500) diff --git a/samples/client/petstore/python-experimental/tests/test_deserialization.py b/samples/client/petstore/python-experimental/tests/test_deserialization.py index 6c4e083d1c..10c5ecef42 100644 --- a/samples/client/petstore/python-experimental/tests/test_deserialization.py +++ b/samples/client/petstore/python-experimental/tests/test_deserialization.py @@ -42,13 +42,19 @@ class DeserializationTests(unittest.TestCase): deserialized = self.deserialize(response, 'dict(str, EnumTest)') self.assertTrue(isinstance(deserialized, dict)) - self.assertTrue(isinstance(deserialized['enum_test'], petstore_api.EnumTest)) - self.assertEqual(deserialized['enum_test'], - petstore_api.EnumTest(enum_string="UPPER", - enum_string_required="lower", - enum_integer=1, - enum_number=1.1, - outer_enum=petstore_api.OuterEnum.PLACED)) + self.assertTrue( + isinstance(deserialized['enum_test'], petstore_api.EnumTest)) + outer_enum_value = ( + petstore_api.OuterEnum.allowed_values[('value',)]["PLACED"]) + outer_enum = petstore_api.OuterEnum(outer_enum_value) + sample_instance = petstore_api.EnumTest( + enum_string="UPPER", + enum_string_required="lower", + enum_integer=1, + enum_number=1.1, + outer_enum=outer_enum + ) + self.assertEqual(deserialized['enum_test'], sample_instance) def test_deserialize_dict_str_pet(self): """ deserialize dict(str, Pet) """ @@ -239,3 +245,44 @@ class DeserializationTests(unittest.TestCase): deserialized = self.deserialize(response, "datetime") self.assertIsNone(deserialized) + + def test_deserialize_OuterEnum(self): + """ deserialize OuterEnum """ + # make sure that an exception is thrown on an invalid value + with self.assertRaises(petstore_api.ApiValueError): + self.deserialize( + MockResponse(data=json.dumps("test str")), + "OuterEnum" + ) + + # valid value works + placed_str = ( + petstore_api.OuterEnum.allowed_values[('value',)]["PLACED"] + ) + response = MockResponse(data=json.dumps(placed_str)) + outer_enum = self.deserialize(response, "OuterEnum") + self.assertTrue(isinstance(outer_enum, petstore_api.OuterEnum)) + self.assertTrue(outer_enum.value == placed_str) + + def test_deserialize_OuterNumber(self): + """ deserialize OuterNumber """ + # make sure that an exception is thrown on an invalid type value + with self.assertRaises(petstore_api.ApiValueError): + deserialized = self.deserialize( + MockResponse(data=json.dumps("test str")), + "OuterNumber" + ) + + # make sure that an exception is thrown on an invalid value + with self.assertRaises(petstore_api.ApiValueError): + deserialized = self.deserialize( + MockResponse(data=json.dumps(21)), + "OuterNumber" + ) + + # valid value works + number_val = 11 + response = MockResponse(data=json.dumps(number_val)) + outer_number = self.deserialize(response, "OuterNumber") + self.assertTrue(isinstance(outer_number, petstore_api.OuterNumber)) + self.assertTrue(outer_number.value == number_val) \ No newline at end of file diff --git a/samples/client/petstore/python-experimental/tests/test_pet_api.py b/samples/client/petstore/python-experimental/tests/test_pet_api.py index 4f38fbd6e1..f536f5ca28 100644 --- a/samples/client/petstore/python-experimental/tests/test_pet_api.py +++ b/samples/client/petstore/python-experimental/tests/test_pet_api.py @@ -163,7 +163,8 @@ class PetApiTests(unittest.TestCase): def test_async_with_http_info(self): self.pet_api.add_pet(self.pet) - thread = self.pet_api.get_pet_by_id_with_http_info(self.pet.id, async_req=True) + thread = self.pet_api.get_pet_by_id(self.pet.id, async_req=True, + _return_http_data_only=False) data, status, headers = thread.get() self.assertIsInstance(data, petstore_api.Pet) @@ -195,7 +196,10 @@ class PetApiTests(unittest.TestCase): def test_add_pet_and_get_pet_by_id_with_http_info(self): self.pet_api.add_pet(self.pet) - fetched = self.pet_api.get_pet_by_id_with_http_info(pet_id=self.pet.id) + fetched = self.pet_api.get_pet_by_id( + pet_id=self.pet.id, + _return_http_data_only=False + ) self.assertIsNotNone(fetched) self.assertEqual(self.pet.id, fetched[0].id) self.assertIsNotNone(fetched[0].category) diff --git a/samples/client/petstore/python-tornado/docs/FormatTest.md b/samples/client/petstore/python-tornado/docs/FormatTest.md index 31d92e2a75..4c15cd852f 100644 --- a/samples/client/petstore/python-tornado/docs/FormatTest.md +++ b/samples/client/petstore/python-tornado/docs/FormatTest.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **date_time** | **datetime** | | [optional] **uuid** | **str** | | [optional] **password** | **str** | | +**big_decimal** | [**BigDecimal**](BigDecimal.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/python-tornado/petstore_api/models/format_test.py b/samples/client/petstore/python-tornado/petstore_api/models/format_test.py index c27d6394db..1451cdcd6a 100644 --- a/samples/client/petstore/python-tornado/petstore_api/models/format_test.py +++ b/samples/client/petstore/python-tornado/petstore_api/models/format_test.py @@ -43,7 +43,8 @@ class FormatTest(object): 'date': 'date', 'date_time': 'datetime', 'uuid': 'str', - 'password': 'str' + 'password': 'str', + 'big_decimal': 'BigDecimal' } attribute_map = { @@ -59,10 +60,11 @@ class FormatTest(object): 'date': 'date', 'date_time': 'dateTime', 'uuid': 'uuid', - 'password': 'password' + 'password': 'password', + 'big_decimal': 'BigDecimal' } - def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None): # noqa: E501 + def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None, big_decimal=None): # noqa: E501 """FormatTest - a model defined in OpenAPI""" # noqa: E501 self._integer = None @@ -78,6 +80,7 @@ class FormatTest(object): self._date_time = None self._uuid = None self._password = None + self._big_decimal = None self.discriminator = None if integer is not None: @@ -102,6 +105,8 @@ class FormatTest(object): if uuid is not None: self.uuid = uuid self.password = password + if big_decimal is not None: + self.big_decimal = big_decimal @property def integer(self): @@ -412,6 +417,27 @@ class FormatTest(object): self._password = password + @property + def big_decimal(self): + """Gets the big_decimal of this FormatTest. # noqa: E501 + + + :return: The big_decimal of this FormatTest. # noqa: E501 + :rtype: BigDecimal + """ + return self._big_decimal + + @big_decimal.setter + def big_decimal(self, big_decimal): + """Sets the big_decimal of this FormatTest. + + + :param big_decimal: The big_decimal of this FormatTest. # noqa: E501 + :type: BigDecimal + """ + + self._big_decimal = big_decimal + def to_dict(self): """Returns the model properties as a dict""" result = {} diff --git a/samples/client/petstore/python/docs/FormatTest.md b/samples/client/petstore/python/docs/FormatTest.md index 31d92e2a75..4c15cd852f 100644 --- a/samples/client/petstore/python/docs/FormatTest.md +++ b/samples/client/petstore/python/docs/FormatTest.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **date_time** | **datetime** | | [optional] **uuid** | **str** | | [optional] **password** | **str** | | +**big_decimal** | [**BigDecimal**](BigDecimal.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/python/petstore_api/models/format_test.py b/samples/client/petstore/python/petstore_api/models/format_test.py index c27d6394db..1451cdcd6a 100644 --- a/samples/client/petstore/python/petstore_api/models/format_test.py +++ b/samples/client/petstore/python/petstore_api/models/format_test.py @@ -43,7 +43,8 @@ class FormatTest(object): 'date': 'date', 'date_time': 'datetime', 'uuid': 'str', - 'password': 'str' + 'password': 'str', + 'big_decimal': 'BigDecimal' } attribute_map = { @@ -59,10 +60,11 @@ class FormatTest(object): 'date': 'date', 'date_time': 'dateTime', 'uuid': 'uuid', - 'password': 'password' + 'password': 'password', + 'big_decimal': 'BigDecimal' } - def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None): # noqa: E501 + def __init__(self, integer=None, int32=None, int64=None, number=None, float=None, double=None, string=None, byte=None, binary=None, date=None, date_time=None, uuid=None, password=None, big_decimal=None): # noqa: E501 """FormatTest - a model defined in OpenAPI""" # noqa: E501 self._integer = None @@ -78,6 +80,7 @@ class FormatTest(object): self._date_time = None self._uuid = None self._password = None + self._big_decimal = None self.discriminator = None if integer is not None: @@ -102,6 +105,8 @@ class FormatTest(object): if uuid is not None: self.uuid = uuid self.password = password + if big_decimal is not None: + self.big_decimal = big_decimal @property def integer(self): @@ -412,6 +417,27 @@ class FormatTest(object): self._password = password + @property + def big_decimal(self): + """Gets the big_decimal of this FormatTest. # noqa: E501 + + + :return: The big_decimal of this FormatTest. # noqa: E501 + :rtype: BigDecimal + """ + return self._big_decimal + + @big_decimal.setter + def big_decimal(self, big_decimal): + """Sets the big_decimal of this FormatTest. + + + :param big_decimal: The big_decimal of this FormatTest. # noqa: E501 + :type: BigDecimal + """ + + self._big_decimal = big_decimal + def to_dict(self): """Returns the model properties as a dict""" result = {} diff --git a/samples/client/petstore/ruby/docs/FormatTest.md b/samples/client/petstore/ruby/docs/FormatTest.md index 46f739ae78..6c1ba0be63 100644 --- a/samples/client/petstore/ruby/docs/FormatTest.md +++ b/samples/client/petstore/ruby/docs/FormatTest.md @@ -17,6 +17,7 @@ Name | Type | Description | Notes **date_time** | **DateTime** | | [optional] **uuid** | **String** | | [optional] **password** | **String** | | +**big_decimal** | [**BigDecimal**](BigDecimal.md) | | [optional] ## Code Sample @@ -35,7 +36,8 @@ instance = Petstore::FormatTest.new(integer: null, date: null, date_time: null, uuid: 72f98069-206d-4f12-9f12-3d1e525a8e84, - password: null) + password: null, + big_decimal: null) ``` diff --git a/samples/client/petstore/ruby/lib/petstore/models/format_test.rb b/samples/client/petstore/ruby/lib/petstore/models/format_test.rb index 18c16907a0..2b8a7666c8 100644 --- a/samples/client/petstore/ruby/lib/petstore/models/format_test.rb +++ b/samples/client/petstore/ruby/lib/petstore/models/format_test.rb @@ -40,6 +40,8 @@ module Petstore attr_accessor :password + attr_accessor :big_decimal + # Attribute mapping from ruby-style variable name to JSON key. def self.attribute_map { @@ -55,7 +57,8 @@ module Petstore :'date' => :'date', :'date_time' => :'dateTime', :'uuid' => :'uuid', - :'password' => :'password' + :'password' => :'password', + :'big_decimal' => :'BigDecimal' } end @@ -74,7 +77,8 @@ module Petstore :'date' => :'Date', :'date_time' => :'DateTime', :'uuid' => :'String', - :'password' => :'String' + :'password' => :'String', + :'big_decimal' => :'BigDecimal' } end @@ -144,6 +148,10 @@ module Petstore if attributes.key?(:'password') self.password = attributes[:'password'] end + + if attributes.key?(:'big_decimal') + self.big_decimal = attributes[:'big_decimal'] + end end # Show invalid properties with the reasons. Usually used together with valid? @@ -386,7 +394,8 @@ module Petstore date == o.date && date_time == o.date_time && uuid == o.uuid && - password == o.password + password == o.password && + big_decimal == o.big_decimal end # @see the `==` method @@ -398,7 +407,7 @@ module Petstore # Calculates hash code according to all attributes. # @return [Integer] Hash code def hash - [integer, int32, int64, number, float, double, string, byte, binary, date, date_time, uuid, password].hash + [integer, int32, int64, number, float, double, string, byte, binary, date, date_time, uuid, password, big_decimal].hash end # Builds the object from hash diff --git a/samples/client/petstore/ruby/spec/api_client_spec.rb b/samples/client/petstore/ruby/spec/api_client_spec.rb index ebe2564c92..fda8734300 100644 --- a/samples/client/petstore/ruby/spec/api_client_spec.rb +++ b/samples/client/petstore/ruby/spec/api_client_spec.rb @@ -156,7 +156,7 @@ describe Petstore::ApiClient do end it 'fails for invalid collection format' do - expect(proc { api_client.build_collection_param(param, :INVALID) }).to raise_error(RuntimeError, 'unknown collection format: :INVALID') + expect{api_client.build_collection_param(param, :INVALID)}.to raise_error(RuntimeError, 'unknown collection format: :INVALID') end end diff --git a/samples/client/petstore/ruby/spec/models/format_test_spec.rb b/samples/client/petstore/ruby/spec/models/format_test_spec.rb index 49be268451..678310b4a4 100644 --- a/samples/client/petstore/ruby/spec/models/format_test_spec.rb +++ b/samples/client/petstore/ruby/spec/models/format_test_spec.rb @@ -110,4 +110,10 @@ describe 'FormatTest' do end end + describe 'test attribute "big_decimal"' do + it 'should work' do + # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers + end + end + end diff --git a/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION.orig b/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION.orig deleted file mode 100644 index 479c313e87..0000000000 --- a/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION.orig +++ /dev/null @@ -1 +0,0 @@ -4.0.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/rust-reqwest/pom.xml b/samples/client/petstore/rust-reqwest/pom.xml deleted file mode 100644 index 8ef695226a..0000000000 --- a/samples/client/petstore/rust-reqwest/pom.xml +++ /dev/null @@ -1,46 +0,0 @@ - - 4.0.0 - org.openapitools - RustReqwestPetstoreClientTests - pom - 1.0-SNAPSHOT - Rust (reqwest) Petstore Client - - - - maven-dependency-plugin - - - package - - copy-dependencies - - - ${project.build.directory} - - - - - - org.codehaus.mojo - exec-maven-plugin - 1.2.1 - - - bundle-test - integration-test - - exec - - - cargo - - check - - - - - - - - diff --git a/samples/client/petstore/rust-reqwest/src/apis/client.rs.orig b/samples/client/petstore/rust-reqwest/src/apis/client.rs.orig deleted file mode 100644 index f231908832..0000000000 --- a/samples/client/petstore/rust-reqwest/src/apis/client.rs.orig +++ /dev/null @@ -1,34 +0,0 @@ -use std::rc::Rc; - -use super::configuration::Configuration; - -pub struct APIClient { - pet_api: Box, - store_api: Box, - user_api: Box, -} - -impl APIClient { - pub fn new(configuration: Configuration) -> APIClient { - let rc = Rc::new(configuration); - - APIClient { - pet_api: Box::new(crate::apis::PetApiClient::new(rc.clone())), - store_api: Box::new(crate::apis::StoreApiClient::new(rc.clone())), - user_api: Box::new(crate::apis::UserApiClient::new(rc.clone())), - } - } - - pub fn pet_api(&self) -> &crate::apis::PetApi{ - self.pet_api.as_ref() - } - - pub fn store_api(&self) -> &crate::apis::StoreApi{ - self.store_api.as_ref() - } - - pub fn user_api(&self) -> &crate::apis::UserApi{ - self.user_api.as_ref() - } - -} diff --git a/samples/client/petstore/rust/.gitignore b/samples/client/petstore/rust/.gitignore index 6aa106405a..a9d37c560c 100644 --- a/samples/client/petstore/rust/.gitignore +++ b/samples/client/petstore/rust/.gitignore @@ -1,3 +1,2 @@ -/target/ -**/*.rs.bk +target Cargo.lock diff --git a/samples/client/petstore/rust/.openapi-generator/VERSION.orig b/samples/client/petstore/rust/.openapi-generator/VERSION.orig deleted file mode 100644 index 479c313e87..0000000000 --- a/samples/client/petstore/rust/.openapi-generator/VERSION.orig +++ /dev/null @@ -1 +0,0 @@ -4.0.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/rust/Cargo.toml b/samples/client/petstore/rust/Cargo.toml index 2ccdd98905..46b06cf9bb 100644 --- a/samples/client/petstore/rust/Cargo.toml +++ b/samples/client/petstore/rust/Cargo.toml @@ -1,17 +1,2 @@ -[package] -name = "petstore_client" -version = "1.0.0" -authors = ["OpenAPI Generator team and contributors"] - -[dependencies] -serde = "^1.0" -serde_derive = "^1.0" -serde_json = "^1.0" -url = "1.5" -hyper = "~0.11" -serde_yaml = "0.7" -base64 = "~0.7.0" -futures = "0.1.23" - -[dev-dependencies] -tokio-core = "*" +[workspace] +members = ["hyper/*", "reqwest/*"] diff --git a/samples/client/petstore/rust-reqwest/.gitignore b/samples/client/petstore/rust/hyper/fileResponseTest/.gitignore similarity index 100% rename from samples/client/petstore/rust-reqwest/.gitignore rename to samples/client/petstore/rust/hyper/fileResponseTest/.gitignore diff --git a/samples/client/petstore/rust-reqwest/.openapi-generator-ignore b/samples/client/petstore/rust/hyper/fileResponseTest/.openapi-generator-ignore similarity index 100% rename from samples/client/petstore/rust-reqwest/.openapi-generator-ignore rename to samples/client/petstore/rust/hyper/fileResponseTest/.openapi-generator-ignore diff --git a/samples/client/petstore/rust-reqwest/.openapi-generator/VERSION b/samples/client/petstore/rust/hyper/fileResponseTest/.openapi-generator/VERSION similarity index 100% rename from samples/client/petstore/rust-reqwest/.openapi-generator/VERSION rename to samples/client/petstore/rust/hyper/fileResponseTest/.openapi-generator/VERSION diff --git a/samples/client/petstore/rust-reqwest/.travis.yml b/samples/client/petstore/rust/hyper/fileResponseTest/.travis.yml similarity index 100% rename from samples/client/petstore/rust-reqwest/.travis.yml rename to samples/client/petstore/rust/hyper/fileResponseTest/.travis.yml diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/Cargo.toml b/samples/client/petstore/rust/hyper/fileResponseTest/Cargo.toml new file mode 100644 index 0000000000..f78404453c --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "fileResponseTest-hyper" +version = "1.0.0" +authors = ["OpenAPI Generator team and contributors"] + +[dependencies] +serde = "^1.0" +serde_derive = "^1.0" +serde_json = "^1.0" +url = "1.5" +hyper = "~0.11" +serde_yaml = "0.7" +base64 = "~0.7.0" +futures = "0.1.23" + +[dev-dependencies] +tokio-core = "*" diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/README.md b/samples/client/petstore/rust/hyper/fileResponseTest/README.md new file mode 100644 index 0000000000..1cb8e0b83f --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/README.md @@ -0,0 +1,43 @@ +# Rust API client for fileResponseTest-hyper + +No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + +## Overview + +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client. + +- API version: 1.0.0 +- Package version: 1.0.0 +- Build package: org.openapitools.codegen.languages.RustClientCodegen + +## Installation + +Put the package under your project folder and add the following to `Cargo.toml` under `[dependencies]`: + +``` + openapi = { path = "./generated" } +``` + +## Documentation for API Endpoints + +All URIs are relative to *http://localhost/v2* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*DefaultApi* | [**fileresponsetest**](docs/DefaultApi.md#fileresponsetest) | **Get** /tests/fileResponse | + + +## Documentation For Models + + + +To get access to the crate's generated documentation, use: + +``` +cargo doc --open +``` + +## Author + + + diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/docs/DefaultApi.md b/samples/client/petstore/rust/hyper/fileResponseTest/docs/DefaultApi.md new file mode 100644 index 0000000000..6e8157cf0e --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/docs/DefaultApi.md @@ -0,0 +1,34 @@ +# \DefaultApi + +All URIs are relative to *http://localhost/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**fileresponsetest**](DefaultApi.md#fileresponsetest) | **Get** /tests/fileResponse | + + + +## fileresponsetest + +> std::path::PathBuf fileresponsetest() + + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**std::path::PathBuf**](std::path::PathBuf.md) + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/octet-stream + +[[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/rust-reqwest/git_push.sh b/samples/client/petstore/rust/hyper/fileResponseTest/git_push.sh similarity index 100% rename from samples/client/petstore/rust-reqwest/git_push.sh rename to samples/client/petstore/rust/hyper/fileResponseTest/git_push.sh diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/client.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/client.rs new file mode 100644 index 0000000000..6105ed87f9 --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/client.rs @@ -0,0 +1,23 @@ +use std::rc::Rc; + +use hyper; +use super::configuration::Configuration; + +pub struct APIClient { + default_api: Box, +} + +impl APIClient { + pub fn new(configuration: Configuration) -> APIClient { + let rc = Rc::new(configuration); + + APIClient { + default_api: Box::new(crate::apis::DefaultApiClient::new(rc.clone())), + } + } + + pub fn default_api(&self) -> &crate::apis::DefaultApi{ + self.default_api.as_ref() + } + +} diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/configuration.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/configuration.rs new file mode 100644 index 0000000000..6a3d69dddd --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/configuration.rs @@ -0,0 +1,41 @@ +/* + * File Response Test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use hyper; + +pub struct Configuration { + pub base_path: String, + pub user_agent: Option, + pub client: hyper::client::Client, + pub basic_auth: Option, + pub oauth_access_token: Option, + pub api_key: Option, + // TODO: take an oauth2 token source, similar to the go one +} + +pub type BasicAuth = (String, Option); + +pub struct ApiKey { + pub prefix: Option, + pub key: String, +} + +impl Configuration { + pub fn new(client: hyper::client::Client) -> Configuration { + Configuration { + base_path: "http://localhost/v2".to_owned(), + user_agent: Some("OpenAPI-Generator/1.0.0/rust".to_owned()), + client: client, + basic_auth: None, + oauth_access_token: None, + api_key: None, + } + } +} diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/default_api.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/default_api.rs new file mode 100644 index 0000000000..d5440cb4df --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/default_api.rs @@ -0,0 +1,44 @@ +/* + * File Response Test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use std::rc::Rc; +use std::borrow::Borrow; + +use hyper; +use serde_json; +use futures::Future; + +use super::{Error, configuration}; +use super::request as __internal_request; + +pub struct DefaultApiClient { + configuration: Rc>, +} + +impl DefaultApiClient { + pub fn new(configuration: Rc>) -> DefaultApiClient { + DefaultApiClient { + configuration: configuration, + } + } +} + +pub trait DefaultApi { + fn fileresponsetest(&self, ) -> Box>>; +} + + +implDefaultApi for DefaultApiClient { + fn fileresponsetest(&self, ) -> Box>> { + __internal_request::Request::new(hyper::Method::Get, "/tests/fileResponse".to_string()) + .execute(self.configuration.borrow()) + } + +} diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/mod.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/mod.rs new file mode 100644 index 0000000000..cb13d23efc --- /dev/null +++ b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/mod.rs @@ -0,0 +1,58 @@ +use hyper; +use serde; +use serde_json; + +#[derive(Debug)] +pub enum Error { + UriError(hyper::error::UriError), + Hyper(hyper::Error), + Serde(serde_json::Error), + ApiError(ApiError), +} + +#[derive(Debug)] +pub struct ApiError { + pub code: hyper::StatusCode, + pub content: Option, +} + +impl<'de, T> From<(hyper::StatusCode, &'de [u8])> for Error + where T: serde::Deserialize<'de> { + fn from(e: (hyper::StatusCode, &'de [u8])) -> Self { + if e.1.len() == 0 { + return Error::ApiError(ApiError{ + code: e.0, + content: None, + }); + } + match serde_json::from_slice::(e.1) { + Ok(t) => Error::ApiError(ApiError{ + code: e.0, + content: Some(t), + }), + Err(e) => { + Error::from(e) + } + } + } +} + +impl From for Error { + fn from(e: hyper::Error) -> Self { + return Error::Hyper(e) + } +} + +impl From for Error { + fn from(e: serde_json::Error) -> Self { + return Error::Serde(e) + } +} + +mod request; + +mod default_api; +pub use self::default_api::{ DefaultApi, DefaultApiClient }; + +pub mod configuration; +pub mod client; diff --git a/samples/client/petstore/rust/src/apis/request.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/apis/request.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/request.rs rename to samples/client/petstore/rust/hyper/fileResponseTest/src/apis/request.rs diff --git a/samples/client/petstore/rust/src/lib.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/lib.rs similarity index 100% rename from samples/client/petstore/rust/src/lib.rs rename to samples/client/petstore/rust/hyper/fileResponseTest/src/lib.rs diff --git a/samples/client/petstore/rust/hyper/fileResponseTest/src/models/mod.rs b/samples/client/petstore/rust/hyper/fileResponseTest/src/models/mod.rs new file mode 100644 index 0000000000..e69de29bb2 diff --git a/samples/client/petstore/rust/hyper/petstore/.gitignore b/samples/client/petstore/rust/hyper/petstore/.gitignore new file mode 100644 index 0000000000..6aa106405a --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/.gitignore @@ -0,0 +1,3 @@ +/target/ +**/*.rs.bk +Cargo.lock diff --git a/samples/client/petstore/rust/.openapi-generator-ignore b/samples/client/petstore/rust/hyper/petstore/.openapi-generator-ignore similarity index 100% rename from samples/client/petstore/rust/.openapi-generator-ignore rename to samples/client/petstore/rust/hyper/petstore/.openapi-generator-ignore diff --git a/samples/client/petstore/rust/hyper/petstore/.openapi-generator/VERSION b/samples/client/petstore/rust/hyper/petstore/.openapi-generator/VERSION new file mode 100644 index 0000000000..83a328a922 --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/.openapi-generator/VERSION @@ -0,0 +1 @@ +4.1.0-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/rust/.travis.yml b/samples/client/petstore/rust/hyper/petstore/.travis.yml similarity index 100% rename from samples/client/petstore/rust/.travis.yml rename to samples/client/petstore/rust/hyper/petstore/.travis.yml diff --git a/samples/client/petstore/rust/hyper/petstore/Cargo.toml b/samples/client/petstore/rust/hyper/petstore/Cargo.toml new file mode 100644 index 0000000000..67fc43707a --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "petstore-hyper" +version = "1.0.0" +authors = ["OpenAPI Generator team and contributors"] + +[dependencies] +serde = "^1.0" +serde_derive = "^1.0" +serde_json = "^1.0" +url = "1.5" +hyper = "~0.11" +serde_yaml = "0.7" +base64 = "~0.7.0" +futures = "0.1.23" + +[dev-dependencies] +tokio-core = "*" diff --git a/samples/client/petstore/rust/README.md b/samples/client/petstore/rust/hyper/petstore/README.md similarity index 98% rename from samples/client/petstore/rust/README.md rename to samples/client/petstore/rust/hyper/petstore/README.md index a1149b0903..83a8b77584 100644 --- a/samples/client/petstore/rust/README.md +++ b/samples/client/petstore/rust/hyper/petstore/README.md @@ -1,4 +1,4 @@ -# Rust API client for petstore_client +# Rust API client for petstore-hyper This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. diff --git a/samples/client/petstore/rust-reqwest/docs/ApiResponse.md b/samples/client/petstore/rust/hyper/petstore/docs/ApiResponse.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/ApiResponse.md rename to samples/client/petstore/rust/hyper/petstore/docs/ApiResponse.md diff --git a/samples/client/petstore/rust-reqwest/docs/Category.md b/samples/client/petstore/rust/hyper/petstore/docs/Category.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/Category.md rename to samples/client/petstore/rust/hyper/petstore/docs/Category.md diff --git a/samples/client/petstore/rust-reqwest/docs/Order.md b/samples/client/petstore/rust/hyper/petstore/docs/Order.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/Order.md rename to samples/client/petstore/rust/hyper/petstore/docs/Order.md diff --git a/samples/client/petstore/rust-reqwest/docs/Pet.md b/samples/client/petstore/rust/hyper/petstore/docs/Pet.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/Pet.md rename to samples/client/petstore/rust/hyper/petstore/docs/Pet.md diff --git a/samples/client/petstore/rust/docs/PetApi.md b/samples/client/petstore/rust/hyper/petstore/docs/PetApi.md similarity index 100% rename from samples/client/petstore/rust/docs/PetApi.md rename to samples/client/petstore/rust/hyper/petstore/docs/PetApi.md diff --git a/samples/client/petstore/rust/docs/StoreApi.md b/samples/client/petstore/rust/hyper/petstore/docs/StoreApi.md similarity index 100% rename from samples/client/petstore/rust/docs/StoreApi.md rename to samples/client/petstore/rust/hyper/petstore/docs/StoreApi.md diff --git a/samples/client/petstore/rust-reqwest/docs/Tag.md b/samples/client/petstore/rust/hyper/petstore/docs/Tag.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/Tag.md rename to samples/client/petstore/rust/hyper/petstore/docs/Tag.md diff --git a/samples/client/petstore/rust-reqwest/docs/User.md b/samples/client/petstore/rust/hyper/petstore/docs/User.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/User.md rename to samples/client/petstore/rust/hyper/petstore/docs/User.md diff --git a/samples/client/petstore/rust/docs/UserApi.md b/samples/client/petstore/rust/hyper/petstore/docs/UserApi.md similarity index 100% rename from samples/client/petstore/rust/docs/UserApi.md rename to samples/client/petstore/rust/hyper/petstore/docs/UserApi.md diff --git a/samples/client/petstore/rust/git_push.sh b/samples/client/petstore/rust/hyper/petstore/git_push.sh similarity index 100% rename from samples/client/petstore/rust/git_push.sh rename to samples/client/petstore/rust/hyper/petstore/git_push.sh diff --git a/samples/client/petstore/rust/src/apis/client.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/client.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/client.rs rename to samples/client/petstore/rust/hyper/petstore/src/apis/client.rs diff --git a/samples/client/petstore/rust/src/apis/configuration.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/configuration.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/configuration.rs rename to samples/client/petstore/rust/hyper/petstore/src/apis/configuration.rs diff --git a/samples/client/petstore/rust/src/apis/mod.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/mod.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/mod.rs rename to samples/client/petstore/rust/hyper/petstore/src/apis/mod.rs diff --git a/samples/client/petstore/rust/src/apis/pet_api.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/pet_api.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/pet_api.rs rename to samples/client/petstore/rust/hyper/petstore/src/apis/pet_api.rs diff --git a/samples/client/petstore/rust/hyper/petstore/src/apis/request.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/request.rs new file mode 100644 index 0000000000..2d5c7eb5a6 --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/src/apis/request.rs @@ -0,0 +1,239 @@ +use std::borrow::Cow; +use std::collections::HashMap; + +use super::{configuration, Error}; +use futures; +use futures::{Future, Stream}; +use hyper; +use hyper::header::UserAgent; +use serde; +use serde_json; + +pub(crate) struct ApiKey { + pub in_header: bool, + pub in_query: bool, + pub param_name: String, +} + +impl ApiKey { + fn key(&self, prefix: &Option, key: &str) -> String { + match prefix { + None => key.to_owned(), + Some(ref prefix) => format!("{} {}", prefix, key), + } + } +} + +#[allow(dead_code)] +pub(crate) enum Auth { + None, + ApiKey(ApiKey), + Basic, + Oauth, +} + +pub(crate) struct Request { + auth: Auth, + method: hyper::Method, + path: String, + query_params: HashMap, + no_return_type: bool, + path_params: HashMap, + form_params: HashMap, + header_params: HashMap, + // TODO: multiple body params are possible technically, but not supported here. + serialized_body: Option, +} + +impl Request { + pub fn new(method: hyper::Method, path: String) -> Self { + Request { + auth: Auth::None, + method: method, + path: path, + query_params: HashMap::new(), + path_params: HashMap::new(), + form_params: HashMap::new(), + header_params: HashMap::new(), + serialized_body: None, + no_return_type: false, + } + } + + pub fn with_body_param(mut self, param: T) -> Self { + self.serialized_body = Some(serde_json::to_string(¶m).unwrap()); + self + } + + pub fn with_header_param(mut self, basename: String, param: String) -> Self { + self.header_params.insert(basename, param); + self + } + + pub fn with_query_param(mut self, basename: String, param: String) -> Self { + self.query_params.insert(basename, param); + self + } + + pub fn with_path_param(mut self, basename: String, param: String) -> Self { + self.path_params.insert(basename, param); + self + } + + pub fn with_form_param(mut self, basename: String, param: String) -> Self { + self.form_params.insert(basename, param); + self + } + + pub fn returns_nothing(mut self) -> Self { + self.no_return_type = true; + self + } + + pub fn with_auth(mut self, auth: Auth) -> Self { + self.auth = auth; + self + } + + pub fn execute<'a, C, U>( + self, + conf: &configuration::Configuration, + ) -> Box> + 'a> + where + C: hyper::client::Connect, + U: Sized + 'a, + for<'de> U: serde::Deserialize<'de>, + { + let mut query_string = ::url::form_urlencoded::Serializer::new("".to_owned()); + // raw_headers is for headers we don't know the proper type of (e.g. custom api key + // headers); headers is for ones we do know the type of. + let mut raw_headers = HashMap::new(); + let mut headers: hyper::header::Headers = hyper::header::Headers::new(); + + let mut path = self.path; + for (k, v) in self.path_params { + // replace {id} with the value of the id path param + path = path.replace(&format!("{{{}}}", k), &v); + } + + for (k, v) in self.header_params { + raw_headers.insert(k, v); + } + + for (key, val) in self.query_params { + query_string.append_pair(&key, &val); + } + + match self.auth { + Auth::ApiKey(apikey) => { + if let Some(ref key) = conf.api_key { + let val = apikey.key(&key.prefix, &key.key); + if apikey.in_query { + query_string.append_pair(&apikey.param_name, &val); + } + if apikey.in_header { + raw_headers.insert(apikey.param_name, val); + } + } + } + Auth::Basic => { + if let Some(ref auth_conf) = conf.basic_auth { + let auth = hyper::header::Authorization(hyper::header::Basic { + username: auth_conf.0.to_owned(), + password: auth_conf.1.to_owned(), + }); + headers.set(auth); + } + } + Auth::Oauth => { + if let Some(ref token) = conf.oauth_access_token { + let auth = hyper::header::Authorization(hyper::header::Bearer { + token: token.to_owned(), + }); + headers.set(auth); + } + } + Auth::None => {} + } + + let mut uri_str = format!("{}{}", conf.base_path, path); + + let query_string_str = query_string.finish(); + if query_string_str != "" { + uri_str += "?"; + uri_str += &query_string_str; + } + let uri: hyper::Uri = match uri_str.parse() { + Err(e) => { + return Box::new(futures::future::err(Error::UriError(e))); + } + Ok(u) => u, + }; + + let mut req = hyper::Request::new(self.method, uri); + { + let req_headers = req.headers_mut(); + if let Some(ref user_agent) = conf.user_agent { + req_headers.set(UserAgent::new(Cow::Owned(user_agent.clone()))); + } + + req_headers.extend(headers.iter()); + + for (key, val) in raw_headers { + req_headers.set_raw(key, val); + } + } + + if self.form_params.len() > 0 { + req.headers_mut().set(hyper::header::ContentType::form_url_encoded()); + let mut enc = ::url::form_urlencoded::Serializer::new("".to_owned()); + for (k, v) in self.form_params { + enc.append_pair(&k, &v); + } + req.set_body(enc.finish()); + } + + if let Some(body) = self.serialized_body { + req.headers_mut().set(hyper::header::ContentType::json()); + req.headers_mut() + .set(hyper::header::ContentLength(body.len() as u64)); + req.set_body(body); + } + + let no_ret_type = self.no_return_type; + let res = conf.client + .request(req) + .map_err(|e| Error::from(e)) + .and_then(|resp| { + let status = resp.status(); + resp.body() + .concat2() + .and_then(move |body| Ok((status, body))) + .map_err(|e| Error::from(e)) + }) + .and_then(|(status, body)| { + if status.is_success() { + Ok(body) + } else { + Err(Error::from((status, &*body))) + } + }); + Box::new( + res + .and_then(move |body| { + let parsed: Result = if no_ret_type { + // This is a hack; if there's no_ret_type, U is (), but serde_json gives an + // error when deserializing "" into (), so deserialize 'null' into it + // instead. + // An alternate option would be to require U: Default, and then return + // U::default() here instead since () implements that, but then we'd + // need to impl default for all models. + serde_json::from_str("null") + } else { + serde_json::from_slice(&body) + }; + parsed.map_err(|e| Error::from(e)) + }) + ) + } +} diff --git a/samples/client/petstore/rust/src/apis/store_api.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/store_api.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/store_api.rs rename to samples/client/petstore/rust/hyper/petstore/src/apis/store_api.rs diff --git a/samples/client/petstore/rust/src/apis/user_api.rs b/samples/client/petstore/rust/hyper/petstore/src/apis/user_api.rs similarity index 100% rename from samples/client/petstore/rust/src/apis/user_api.rs rename to samples/client/petstore/rust/hyper/petstore/src/apis/user_api.rs diff --git a/samples/client/petstore/rust/hyper/petstore/src/lib.rs b/samples/client/petstore/rust/hyper/petstore/src/lib.rs new file mode 100644 index 0000000000..a76d822525 --- /dev/null +++ b/samples/client/petstore/rust/hyper/petstore/src/lib.rs @@ -0,0 +1,11 @@ +#[macro_use] +extern crate serde_derive; + +extern crate serde; +extern crate serde_json; +extern crate url; +extern crate hyper; +extern crate futures; + +pub mod apis; +pub mod models; diff --git a/samples/client/petstore/rust-reqwest/src/models/api_response.rs b/samples/client/petstore/rust/hyper/petstore/src/models/api_response.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/api_response.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/api_response.rs diff --git a/samples/client/petstore/rust-reqwest/src/models/category.rs b/samples/client/petstore/rust/hyper/petstore/src/models/category.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/category.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/category.rs diff --git a/samples/client/petstore/rust-reqwest/src/models/mod.rs b/samples/client/petstore/rust/hyper/petstore/src/models/mod.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/mod.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/mod.rs diff --git a/samples/client/petstore/rust-reqwest/src/models/order.rs b/samples/client/petstore/rust/hyper/petstore/src/models/order.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/order.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/order.rs diff --git a/samples/client/petstore/rust-reqwest/src/models/pet.rs b/samples/client/petstore/rust/hyper/petstore/src/models/pet.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/pet.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/pet.rs diff --git a/samples/client/petstore/rust-reqwest/src/models/tag.rs b/samples/client/petstore/rust/hyper/petstore/src/models/tag.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/tag.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/tag.rs diff --git a/samples/client/petstore/rust-reqwest/src/models/user.rs b/samples/client/petstore/rust/hyper/petstore/src/models/user.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/models/user.rs rename to samples/client/petstore/rust/hyper/petstore/src/models/user.rs diff --git a/samples/client/petstore/rust/hyper/rust-test/.gitignore b/samples/client/petstore/rust/hyper/rust-test/.gitignore new file mode 100644 index 0000000000..6aa106405a --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/.gitignore @@ -0,0 +1,3 @@ +/target/ +**/*.rs.bk +Cargo.lock diff --git a/samples/client/petstore/rust/hyper/rust-test/.openapi-generator-ignore b/samples/client/petstore/rust/hyper/rust-test/.openapi-generator-ignore new file mode 100644 index 0000000000..7484ee590a --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/.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/rust/hyper/rust-test/.openapi-generator/VERSION b/samples/client/petstore/rust/hyper/rust-test/.openapi-generator/VERSION new file mode 100644 index 0000000000..83a328a922 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/.openapi-generator/VERSION @@ -0,0 +1 @@ +4.1.0-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/rust/hyper/rust-test/.travis.yml b/samples/client/petstore/rust/hyper/rust-test/.travis.yml new file mode 100644 index 0000000000..22761ba7ee --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/.travis.yml @@ -0,0 +1 @@ +language: rust diff --git a/samples/client/petstore/rust/hyper/rust-test/Cargo.toml b/samples/client/petstore/rust/hyper/rust-test/Cargo.toml new file mode 100644 index 0000000000..0e17417c3d --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/Cargo.toml @@ -0,0 +1,17 @@ +[package] +name = "rust-test-hyper" +version = "1.0.0" +authors = ["OpenAPI Generator team and contributors"] + +[dependencies] +serde = "^1.0" +serde_derive = "^1.0" +serde_json = "^1.0" +url = "1.5" +hyper = "~0.11" +serde_yaml = "0.7" +base64 = "~0.7.0" +futures = "0.1.23" + +[dev-dependencies] +tokio-core = "*" diff --git a/samples/client/petstore/rust/hyper/rust-test/README.md b/samples/client/petstore/rust/hyper/rust-test/README.md new file mode 100644 index 0000000000..1383eecfd3 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/README.md @@ -0,0 +1,44 @@ +# Rust API client for rust-test-hyper + +Special testing for the Rust client generator + +## Overview + +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client. + +- API version: 1.0.7 +- Package version: 1.0.0 +- Build package: org.openapitools.codegen.languages.RustClientCodegen + +## Installation + +Put the package under your project folder and add the following to `Cargo.toml` under `[dependencies]`: + +``` + openapi = { path = "./generated" } +``` + +## Documentation for API Endpoints + +All URIs are relative to *http://localhost* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*DefaultApi* | [**dummy_get**](docs/DefaultApi.md#dummy_get) | **Get** /dummy | A dummy endpoint to make the spec valid. + + +## Documentation For Models + + - [TypeTesting](docs/TypeTesting.md) + + +To get access to the crate's generated documentation, use: + +``` +cargo doc --open +``` + +## Author + + + diff --git a/samples/client/petstore/rust/hyper/rust-test/docs/DefaultApi.md b/samples/client/petstore/rust/hyper/rust-test/docs/DefaultApi.md new file mode 100644 index 0000000000..caf4632183 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/docs/DefaultApi.md @@ -0,0 +1,34 @@ +# \DefaultApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**dummy_get**](DefaultApi.md#dummy_get) | **Get** /dummy | A dummy endpoint to make the spec valid. + + + +## dummy_get + +> dummy_get() +A dummy endpoint to make the spec valid. + +### Parameters + +This endpoint does not need any parameter. + +### Return type + + (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/rust/hyper/rust-test/docs/TypeTesting.md b/samples/client/petstore/rust/hyper/rust-test/docs/TypeTesting.md new file mode 100644 index 0000000000..e84136389e --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/docs/TypeTesting.md @@ -0,0 +1,16 @@ +# TypeTesting + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**integer** | **i32** | | [optional] +**long** | **i64** | | [optional] +**number** | **f32** | | [optional] +**float** | **f32** | | [optional] +**double** | **f64** | | [optional] +**uuid** | **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/rust/hyper/rust-test/git_push.sh b/samples/client/petstore/rust/hyper/rust-test/git_push.sh new file mode 100644 index 0000000000..8442b80bb4 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/git_push.sh @@ -0,0 +1,52 @@ +#!/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-pestore-perl "minor update" + +git_user_id=$1 +git_repo_id=$2 +release_note=$3 + +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://github.com/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:${GIT_TOKEN}@github.com/${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://github.com/${git_user_id}/${git_repo_id}.git" +git push origin master 2>&1 | grep -v 'To https' + diff --git a/samples/client/petstore/rust/hyper/rust-test/src/apis/client.rs b/samples/client/petstore/rust/hyper/rust-test/src/apis/client.rs new file mode 100644 index 0000000000..6105ed87f9 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/apis/client.rs @@ -0,0 +1,23 @@ +use std::rc::Rc; + +use hyper; +use super::configuration::Configuration; + +pub struct APIClient { + default_api: Box, +} + +impl APIClient { + pub fn new(configuration: Configuration) -> APIClient { + let rc = Rc::new(configuration); + + APIClient { + default_api: Box::new(crate::apis::DefaultApiClient::new(rc.clone())), + } + } + + pub fn default_api(&self) -> &crate::apis::DefaultApi{ + self.default_api.as_ref() + } + +} diff --git a/samples/client/petstore/rust/hyper/rust-test/src/apis/configuration.rs b/samples/client/petstore/rust/hyper/rust-test/src/apis/configuration.rs new file mode 100644 index 0000000000..79762a1437 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/apis/configuration.rs @@ -0,0 +1,41 @@ +/* + * Rust client test spec + * + * Special testing for the Rust client generator + * + * The version of the OpenAPI document: 1.0.7 + * + * Generated by: https://openapi-generator.tech + */ + +use hyper; + +pub struct Configuration { + pub base_path: String, + pub user_agent: Option, + pub client: hyper::client::Client, + pub basic_auth: Option, + pub oauth_access_token: Option, + pub api_key: Option, + // TODO: take an oauth2 token source, similar to the go one +} + +pub type BasicAuth = (String, Option); + +pub struct ApiKey { + pub prefix: Option, + pub key: String, +} + +impl Configuration { + pub fn new(client: hyper::client::Client) -> Configuration { + Configuration { + base_path: "http://localhost".to_owned(), + user_agent: Some("OpenAPI-Generator/1.0.7/rust".to_owned()), + client: client, + basic_auth: None, + oauth_access_token: None, + api_key: None, + } + } +} diff --git a/samples/client/petstore/rust/hyper/rust-test/src/apis/default_api.rs b/samples/client/petstore/rust/hyper/rust-test/src/apis/default_api.rs new file mode 100644 index 0000000000..b1894d69ef --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/apis/default_api.rs @@ -0,0 +1,45 @@ +/* + * Rust client test spec + * + * Special testing for the Rust client generator + * + * The version of the OpenAPI document: 1.0.7 + * + * Generated by: https://openapi-generator.tech + */ + +use std::rc::Rc; +use std::borrow::Borrow; + +use hyper; +use serde_json; +use futures::Future; + +use super::{Error, configuration}; +use super::request as __internal_request; + +pub struct DefaultApiClient { + configuration: Rc>, +} + +impl DefaultApiClient { + pub fn new(configuration: Rc>) -> DefaultApiClient { + DefaultApiClient { + configuration: configuration, + } + } +} + +pub trait DefaultApi { + fn dummy_get(&self, ) -> Box>>; +} + + +implDefaultApi for DefaultApiClient { + fn dummy_get(&self, ) -> Box>> { + __internal_request::Request::new(hyper::Method::Get, "/dummy".to_string()) + .returns_nothing() + .execute(self.configuration.borrow()) + } + +} diff --git a/samples/client/petstore/rust/hyper/rust-test/src/apis/mod.rs b/samples/client/petstore/rust/hyper/rust-test/src/apis/mod.rs new file mode 100644 index 0000000000..cb13d23efc --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/apis/mod.rs @@ -0,0 +1,58 @@ +use hyper; +use serde; +use serde_json; + +#[derive(Debug)] +pub enum Error { + UriError(hyper::error::UriError), + Hyper(hyper::Error), + Serde(serde_json::Error), + ApiError(ApiError), +} + +#[derive(Debug)] +pub struct ApiError { + pub code: hyper::StatusCode, + pub content: Option, +} + +impl<'de, T> From<(hyper::StatusCode, &'de [u8])> for Error + where T: serde::Deserialize<'de> { + fn from(e: (hyper::StatusCode, &'de [u8])) -> Self { + if e.1.len() == 0 { + return Error::ApiError(ApiError{ + code: e.0, + content: None, + }); + } + match serde_json::from_slice::(e.1) { + Ok(t) => Error::ApiError(ApiError{ + code: e.0, + content: Some(t), + }), + Err(e) => { + Error::from(e) + } + } + } +} + +impl From for Error { + fn from(e: hyper::Error) -> Self { + return Error::Hyper(e) + } +} + +impl From for Error { + fn from(e: serde_json::Error) -> Self { + return Error::Serde(e) + } +} + +mod request; + +mod default_api; +pub use self::default_api::{ DefaultApi, DefaultApiClient }; + +pub mod configuration; +pub mod client; diff --git a/samples/client/petstore/rust/hyper/rust-test/src/apis/request.rs b/samples/client/petstore/rust/hyper/rust-test/src/apis/request.rs new file mode 100644 index 0000000000..2d5c7eb5a6 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/apis/request.rs @@ -0,0 +1,239 @@ +use std::borrow::Cow; +use std::collections::HashMap; + +use super::{configuration, Error}; +use futures; +use futures::{Future, Stream}; +use hyper; +use hyper::header::UserAgent; +use serde; +use serde_json; + +pub(crate) struct ApiKey { + pub in_header: bool, + pub in_query: bool, + pub param_name: String, +} + +impl ApiKey { + fn key(&self, prefix: &Option, key: &str) -> String { + match prefix { + None => key.to_owned(), + Some(ref prefix) => format!("{} {}", prefix, key), + } + } +} + +#[allow(dead_code)] +pub(crate) enum Auth { + None, + ApiKey(ApiKey), + Basic, + Oauth, +} + +pub(crate) struct Request { + auth: Auth, + method: hyper::Method, + path: String, + query_params: HashMap, + no_return_type: bool, + path_params: HashMap, + form_params: HashMap, + header_params: HashMap, + // TODO: multiple body params are possible technically, but not supported here. + serialized_body: Option, +} + +impl Request { + pub fn new(method: hyper::Method, path: String) -> Self { + Request { + auth: Auth::None, + method: method, + path: path, + query_params: HashMap::new(), + path_params: HashMap::new(), + form_params: HashMap::new(), + header_params: HashMap::new(), + serialized_body: None, + no_return_type: false, + } + } + + pub fn with_body_param(mut self, param: T) -> Self { + self.serialized_body = Some(serde_json::to_string(¶m).unwrap()); + self + } + + pub fn with_header_param(mut self, basename: String, param: String) -> Self { + self.header_params.insert(basename, param); + self + } + + pub fn with_query_param(mut self, basename: String, param: String) -> Self { + self.query_params.insert(basename, param); + self + } + + pub fn with_path_param(mut self, basename: String, param: String) -> Self { + self.path_params.insert(basename, param); + self + } + + pub fn with_form_param(mut self, basename: String, param: String) -> Self { + self.form_params.insert(basename, param); + self + } + + pub fn returns_nothing(mut self) -> Self { + self.no_return_type = true; + self + } + + pub fn with_auth(mut self, auth: Auth) -> Self { + self.auth = auth; + self + } + + pub fn execute<'a, C, U>( + self, + conf: &configuration::Configuration, + ) -> Box> + 'a> + where + C: hyper::client::Connect, + U: Sized + 'a, + for<'de> U: serde::Deserialize<'de>, + { + let mut query_string = ::url::form_urlencoded::Serializer::new("".to_owned()); + // raw_headers is for headers we don't know the proper type of (e.g. custom api key + // headers); headers is for ones we do know the type of. + let mut raw_headers = HashMap::new(); + let mut headers: hyper::header::Headers = hyper::header::Headers::new(); + + let mut path = self.path; + for (k, v) in self.path_params { + // replace {id} with the value of the id path param + path = path.replace(&format!("{{{}}}", k), &v); + } + + for (k, v) in self.header_params { + raw_headers.insert(k, v); + } + + for (key, val) in self.query_params { + query_string.append_pair(&key, &val); + } + + match self.auth { + Auth::ApiKey(apikey) => { + if let Some(ref key) = conf.api_key { + let val = apikey.key(&key.prefix, &key.key); + if apikey.in_query { + query_string.append_pair(&apikey.param_name, &val); + } + if apikey.in_header { + raw_headers.insert(apikey.param_name, val); + } + } + } + Auth::Basic => { + if let Some(ref auth_conf) = conf.basic_auth { + let auth = hyper::header::Authorization(hyper::header::Basic { + username: auth_conf.0.to_owned(), + password: auth_conf.1.to_owned(), + }); + headers.set(auth); + } + } + Auth::Oauth => { + if let Some(ref token) = conf.oauth_access_token { + let auth = hyper::header::Authorization(hyper::header::Bearer { + token: token.to_owned(), + }); + headers.set(auth); + } + } + Auth::None => {} + } + + let mut uri_str = format!("{}{}", conf.base_path, path); + + let query_string_str = query_string.finish(); + if query_string_str != "" { + uri_str += "?"; + uri_str += &query_string_str; + } + let uri: hyper::Uri = match uri_str.parse() { + Err(e) => { + return Box::new(futures::future::err(Error::UriError(e))); + } + Ok(u) => u, + }; + + let mut req = hyper::Request::new(self.method, uri); + { + let req_headers = req.headers_mut(); + if let Some(ref user_agent) = conf.user_agent { + req_headers.set(UserAgent::new(Cow::Owned(user_agent.clone()))); + } + + req_headers.extend(headers.iter()); + + for (key, val) in raw_headers { + req_headers.set_raw(key, val); + } + } + + if self.form_params.len() > 0 { + req.headers_mut().set(hyper::header::ContentType::form_url_encoded()); + let mut enc = ::url::form_urlencoded::Serializer::new("".to_owned()); + for (k, v) in self.form_params { + enc.append_pair(&k, &v); + } + req.set_body(enc.finish()); + } + + if let Some(body) = self.serialized_body { + req.headers_mut().set(hyper::header::ContentType::json()); + req.headers_mut() + .set(hyper::header::ContentLength(body.len() as u64)); + req.set_body(body); + } + + let no_ret_type = self.no_return_type; + let res = conf.client + .request(req) + .map_err(|e| Error::from(e)) + .and_then(|resp| { + let status = resp.status(); + resp.body() + .concat2() + .and_then(move |body| Ok((status, body))) + .map_err(|e| Error::from(e)) + }) + .and_then(|(status, body)| { + if status.is_success() { + Ok(body) + } else { + Err(Error::from((status, &*body))) + } + }); + Box::new( + res + .and_then(move |body| { + let parsed: Result = if no_ret_type { + // This is a hack; if there's no_ret_type, U is (), but serde_json gives an + // error when deserializing "" into (), so deserialize 'null' into it + // instead. + // An alternate option would be to require U: Default, and then return + // U::default() here instead since () implements that, but then we'd + // need to impl default for all models. + serde_json::from_str("null") + } else { + serde_json::from_slice(&body) + }; + parsed.map_err(|e| Error::from(e)) + }) + ) + } +} diff --git a/samples/client/petstore/rust/hyper/rust-test/src/lib.rs b/samples/client/petstore/rust/hyper/rust-test/src/lib.rs new file mode 100644 index 0000000000..a76d822525 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/lib.rs @@ -0,0 +1,11 @@ +#[macro_use] +extern crate serde_derive; + +extern crate serde; +extern crate serde_json; +extern crate url; +extern crate hyper; +extern crate futures; + +pub mod apis; +pub mod models; diff --git a/samples/client/petstore/rust/hyper/rust-test/src/models/mod.rs b/samples/client/petstore/rust/hyper/rust-test/src/models/mod.rs new file mode 100644 index 0000000000..8762207b5b --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/models/mod.rs @@ -0,0 +1,2 @@ +mod type_testing; +pub use self::type_testing::TypeTesting; diff --git a/samples/client/petstore/rust/hyper/rust-test/src/models/type_testing.rs b/samples/client/petstore/rust/hyper/rust-test/src/models/type_testing.rs new file mode 100644 index 0000000000..abd6582cc6 --- /dev/null +++ b/samples/client/petstore/rust/hyper/rust-test/src/models/type_testing.rs @@ -0,0 +1,44 @@ +/* + * Rust client test spec + * + * Special testing for the Rust client generator + * + * The version of the OpenAPI document: 1.0.7 + * + * Generated by: https://openapi-generator.tech + */ + +/// TypeTesting : Test handling of differing types (see \\#3463) + + +#[derive(Debug, PartialEq, Serialize, Deserialize)] +pub struct TypeTesting { + #[serde(rename = "integer", skip_serializing_if = "Option::is_none")] + pub integer: Option, + #[serde(rename = "long", skip_serializing_if = "Option::is_none")] + pub long: Option, + #[serde(rename = "number", skip_serializing_if = "Option::is_none")] + pub number: Option, + #[serde(rename = "float", skip_serializing_if = "Option::is_none")] + pub float: Option, + #[serde(rename = "double", skip_serializing_if = "Option::is_none")] + pub double: Option, + #[serde(rename = "uuid", skip_serializing_if = "Option::is_none")] + pub uuid: Option, +} + +impl TypeTesting { + /// Test handling of differing types (see \\#3463) + pub fn new() -> TypeTesting { + TypeTesting { + integer: None, + long: None, + number: None, + float: None, + double: None, + uuid: None, + } + } +} + + diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/.gitignore b/samples/client/petstore/rust/reqwest/fileResponseTest/.gitignore new file mode 100644 index 0000000000..6aa106405a --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/.gitignore @@ -0,0 +1,3 @@ +/target/ +**/*.rs.bk +Cargo.lock diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/.openapi-generator-ignore b/samples/client/petstore/rust/reqwest/fileResponseTest/.openapi-generator-ignore new file mode 100644 index 0000000000..7484ee590a --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/.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/rust/reqwest/fileResponseTest/.openapi-generator/VERSION b/samples/client/petstore/rust/reqwest/fileResponseTest/.openapi-generator/VERSION new file mode 100644 index 0000000000..83a328a922 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/.openapi-generator/VERSION @@ -0,0 +1 @@ +4.1.0-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/.travis.yml b/samples/client/petstore/rust/reqwest/fileResponseTest/.travis.yml new file mode 100644 index 0000000000..22761ba7ee --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/.travis.yml @@ -0,0 +1 @@ +language: rust diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/Cargo.toml b/samples/client/petstore/rust/reqwest/fileResponseTest/Cargo.toml new file mode 100644 index 0000000000..97c0f07897 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "fileResponseTest-reqwest" +version = "1.0.0" +authors = ["OpenAPI Generator team and contributors"] + +[dependencies] +serde = "^1.0" +serde_derive = "^1.0" +serde_json = "^1.0" +url = "1.5" +reqwest = "~0.9" + +[dev-dependencies] diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/README.md b/samples/client/petstore/rust/reqwest/fileResponseTest/README.md new file mode 100644 index 0000000000..8bf849adb6 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/README.md @@ -0,0 +1,43 @@ +# Rust API client for fileResponseTest-reqwest + +No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + +## Overview + +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client. + +- API version: 1.0.0 +- Package version: 1.0.0 +- Build package: org.openapitools.codegen.languages.RustClientCodegen + +## Installation + +Put the package under your project folder and add the following to `Cargo.toml` under `[dependencies]`: + +``` + openapi = { path = "./generated" } +``` + +## Documentation for API Endpoints + +All URIs are relative to *http://localhost/v2* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*DefaultApi* | [**fileresponsetest**](docs/DefaultApi.md#fileresponsetest) | **get** /tests/fileResponse | + + +## Documentation For Models + + + +To get access to the crate's generated documentation, use: + +``` +cargo doc --open +``` + +## Author + + + diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/docs/DefaultApi.md b/samples/client/petstore/rust/reqwest/fileResponseTest/docs/DefaultApi.md new file mode 100644 index 0000000000..0b0273e434 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/docs/DefaultApi.md @@ -0,0 +1,34 @@ +# \DefaultApi + +All URIs are relative to *http://localhost/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**fileresponsetest**](DefaultApi.md#fileresponsetest) | **get** /tests/fileResponse | + + + +## fileresponsetest + +> std::path::PathBuf fileresponsetest() + + +### Parameters + +This endpoint does not need any parameter. + +### Return type + +[**std::path::PathBuf**](std::path::PathBuf.md) + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/octet-stream + +[[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/rust/reqwest/fileResponseTest/git_push.sh b/samples/client/petstore/rust/reqwest/fileResponseTest/git_push.sh new file mode 100644 index 0000000000..8442b80bb4 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/git_push.sh @@ -0,0 +1,52 @@ +#!/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-pestore-perl "minor update" + +git_user_id=$1 +git_repo_id=$2 +release_note=$3 + +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://github.com/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:${GIT_TOKEN}@github.com/${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://github.com/${git_user_id}/${git_repo_id}.git" +git push origin master 2>&1 | grep -v 'To https' + diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/client.rs b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/client.rs new file mode 100644 index 0000000000..2f76997d31 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/client.rs @@ -0,0 +1,22 @@ +use std::rc::Rc; + +use super::configuration::Configuration; + +pub struct APIClient { + default_api: Box, +} + +impl APIClient { + pub fn new(configuration: Configuration) -> APIClient { + let rc = Rc::new(configuration); + + APIClient { + default_api: Box::new(crate::apis::DefaultApiClient::new(rc.clone())), + } + } + + pub fn default_api(&self) -> &crate::apis::DefaultApi{ + self.default_api.as_ref() + } + +} diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/configuration.rs b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/configuration.rs new file mode 100644 index 0000000000..107d558aa4 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/configuration.rs @@ -0,0 +1,50 @@ +/* + * File Response Test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + + +use reqwest; + +pub struct Configuration { + pub base_path: String, + pub user_agent: Option, + pub client: reqwest::Client, + pub basic_auth: Option, + pub oauth_access_token: Option, + pub bearer_access_token: Option, + pub api_key: Option, + // TODO: take an oauth2 token source, similar to the go one +} + +pub type BasicAuth = (String, Option); + +pub struct ApiKey { + pub prefix: Option, + pub key: String, +} + +impl Configuration { + pub fn new() -> Configuration { + Configuration::default() + } +} + +impl Default for Configuration { + fn default() -> Self { + Configuration { + base_path: "http://localhost/v2".to_owned(), + user_agent: Some("OpenAPI-Generator/1.0.0/rust".to_owned()), + client: reqwest::Client::new(), + basic_auth: None, + oauth_access_token: None, + bearer_access_token: None, + api_key: None, + } + } +} diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/default_api.rs b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/default_api.rs new file mode 100644 index 0000000000..487e5d3af6 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/default_api.rs @@ -0,0 +1,52 @@ +/* + * File Response Test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * + * Generated by: https://openapi-generator.tech + */ + +use std::rc::Rc; +use std::borrow::Borrow; + +use reqwest; + +use super::{Error, configuration}; + +pub struct DefaultApiClient { + configuration: Rc, +} + +impl DefaultApiClient { + pub fn new(configuration: Rc) -> DefaultApiClient { + DefaultApiClient { + configuration: configuration, + } + } +} + +pub trait DefaultApi { + fn fileresponsetest(&self, ) -> Result; +} + +impl DefaultApi for DefaultApiClient { + fn fileresponsetest(&self, ) -> Result { + let configuration: &configuration::Configuration = self.configuration.borrow(); + let client = &configuration.client; + + let uri_str = format!("{}/tests/fileResponse", configuration.base_path); + let mut req_builder = client.get(uri_str.as_str()); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + + // send request + let req = req_builder.build()?; + + Ok(client.execute(req)?.error_for_status()?.json()?) + } + +} diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/mod.rs b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/mod.rs new file mode 100644 index 0000000000..3b70668f6f --- /dev/null +++ b/samples/client/petstore/rust/reqwest/fileResponseTest/src/apis/mod.rs @@ -0,0 +1,37 @@ +use reqwest; +use serde_json; + +#[derive(Debug)] +pub enum Error { + Reqwest(reqwest::Error), + Serde(serde_json::Error), + Io(std::io::Error), +} + +impl From for Error { + fn from(e: reqwest::Error) -> Self { + Error::Reqwest(e) + } +} + +impl From for Error { + fn from(e: serde_json::Error) -> Self { + Error::Serde(e) + } +} + +impl From for Error { + fn from(e: std::io::Error) -> Self { + Error::Io(e) + } +} + +pub fn urlencode>(s: T) -> String { + ::url::form_urlencoded::byte_serialize(s.as_ref().as_bytes()).collect() +} + +mod default_api; +pub use self::default_api::{ DefaultApi, DefaultApiClient }; + +pub mod configuration; +pub mod client; diff --git a/samples/client/petstore/rust-reqwest/src/lib.rs b/samples/client/petstore/rust/reqwest/fileResponseTest/src/lib.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/lib.rs rename to samples/client/petstore/rust/reqwest/fileResponseTest/src/lib.rs diff --git a/samples/client/petstore/rust/reqwest/fileResponseTest/src/models/mod.rs b/samples/client/petstore/rust/reqwest/fileResponseTest/src/models/mod.rs new file mode 100644 index 0000000000..e69de29bb2 diff --git a/samples/client/petstore/rust/reqwest/petstore/.gitignore b/samples/client/petstore/rust/reqwest/petstore/.gitignore new file mode 100644 index 0000000000..6aa106405a --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/.gitignore @@ -0,0 +1,3 @@ +/target/ +**/*.rs.bk +Cargo.lock diff --git a/samples/client/petstore/rust/reqwest/petstore/.openapi-generator-ignore b/samples/client/petstore/rust/reqwest/petstore/.openapi-generator-ignore new file mode 100644 index 0000000000..7484ee590a --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/.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/rust/.openapi-generator/VERSION b/samples/client/petstore/rust/reqwest/petstore/.openapi-generator/VERSION similarity index 100% rename from samples/client/petstore/rust/.openapi-generator/VERSION rename to samples/client/petstore/rust/reqwest/petstore/.openapi-generator/VERSION diff --git a/samples/client/petstore/rust/reqwest/petstore/.travis.yml b/samples/client/petstore/rust/reqwest/petstore/.travis.yml new file mode 100644 index 0000000000..22761ba7ee --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/.travis.yml @@ -0,0 +1 @@ +language: rust diff --git a/samples/client/petstore/rust-reqwest/Cargo.toml b/samples/client/petstore/rust/reqwest/petstore/Cargo.toml similarity index 88% rename from samples/client/petstore/rust-reqwest/Cargo.toml rename to samples/client/petstore/rust/reqwest/petstore/Cargo.toml index 6d66b8f7c7..7a2aed735e 100644 --- a/samples/client/petstore/rust-reqwest/Cargo.toml +++ b/samples/client/petstore/rust/reqwest/petstore/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "petstore_client" +name = "petstore-reqwest" version = "1.0.0" authors = ["OpenAPI Generator team and contributors"] diff --git a/samples/client/petstore/rust-reqwest/README.md b/samples/client/petstore/rust/reqwest/petstore/README.md similarity index 98% rename from samples/client/petstore/rust-reqwest/README.md rename to samples/client/petstore/rust/reqwest/petstore/README.md index d8591a2cb9..b83be74204 100644 --- a/samples/client/petstore/rust-reqwest/README.md +++ b/samples/client/petstore/rust/reqwest/petstore/README.md @@ -1,4 +1,4 @@ -# Rust API client for petstore_client +# Rust API client for petstore-reqwest This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. diff --git a/samples/client/petstore/rust/docs/ApiResponse.md b/samples/client/petstore/rust/reqwest/petstore/docs/ApiResponse.md similarity index 100% rename from samples/client/petstore/rust/docs/ApiResponse.md rename to samples/client/petstore/rust/reqwest/petstore/docs/ApiResponse.md diff --git a/samples/client/petstore/rust/docs/Category.md b/samples/client/petstore/rust/reqwest/petstore/docs/Category.md similarity index 100% rename from samples/client/petstore/rust/docs/Category.md rename to samples/client/petstore/rust/reqwest/petstore/docs/Category.md diff --git a/samples/client/petstore/rust/docs/Order.md b/samples/client/petstore/rust/reqwest/petstore/docs/Order.md similarity index 100% rename from samples/client/petstore/rust/docs/Order.md rename to samples/client/petstore/rust/reqwest/petstore/docs/Order.md diff --git a/samples/client/petstore/rust/docs/Pet.md b/samples/client/petstore/rust/reqwest/petstore/docs/Pet.md similarity index 100% rename from samples/client/petstore/rust/docs/Pet.md rename to samples/client/petstore/rust/reqwest/petstore/docs/Pet.md diff --git a/samples/client/petstore/rust-reqwest/docs/PetApi.md b/samples/client/petstore/rust/reqwest/petstore/docs/PetApi.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/PetApi.md rename to samples/client/petstore/rust/reqwest/petstore/docs/PetApi.md diff --git a/samples/client/petstore/rust-reqwest/docs/StoreApi.md b/samples/client/petstore/rust/reqwest/petstore/docs/StoreApi.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/StoreApi.md rename to samples/client/petstore/rust/reqwest/petstore/docs/StoreApi.md diff --git a/samples/client/petstore/rust/docs/Tag.md b/samples/client/petstore/rust/reqwest/petstore/docs/Tag.md similarity index 100% rename from samples/client/petstore/rust/docs/Tag.md rename to samples/client/petstore/rust/reqwest/petstore/docs/Tag.md diff --git a/samples/client/petstore/rust/docs/User.md b/samples/client/petstore/rust/reqwest/petstore/docs/User.md similarity index 100% rename from samples/client/petstore/rust/docs/User.md rename to samples/client/petstore/rust/reqwest/petstore/docs/User.md diff --git a/samples/client/petstore/rust-reqwest/docs/UserApi.md b/samples/client/petstore/rust/reqwest/petstore/docs/UserApi.md similarity index 100% rename from samples/client/petstore/rust-reqwest/docs/UserApi.md rename to samples/client/petstore/rust/reqwest/petstore/docs/UserApi.md diff --git a/samples/client/petstore/rust/reqwest/petstore/git_push.sh b/samples/client/petstore/rust/reqwest/petstore/git_push.sh new file mode 100644 index 0000000000..8442b80bb4 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/git_push.sh @@ -0,0 +1,52 @@ +#!/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-pestore-perl "minor update" + +git_user_id=$1 +git_repo_id=$2 +release_note=$3 + +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://github.com/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:${GIT_TOKEN}@github.com/${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://github.com/${git_user_id}/${git_repo_id}.git" +git push origin master 2>&1 | grep -v 'To https' + diff --git a/samples/client/petstore/rust-reqwest/src/apis/client.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/client.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/apis/client.rs rename to samples/client/petstore/rust/reqwest/petstore/src/apis/client.rs diff --git a/samples/client/petstore/rust-reqwest/src/apis/configuration.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/configuration.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/apis/configuration.rs rename to samples/client/petstore/rust/reqwest/petstore/src/apis/configuration.rs diff --git a/samples/client/petstore/rust-reqwest/src/apis/mod.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/mod.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/apis/mod.rs rename to samples/client/petstore/rust/reqwest/petstore/src/apis/mod.rs diff --git a/samples/client/petstore/rust-reqwest/src/apis/pet_api.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/pet_api.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/apis/pet_api.rs rename to samples/client/petstore/rust/reqwest/petstore/src/apis/pet_api.rs diff --git a/samples/client/petstore/rust-reqwest/src/apis/store_api.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/store_api.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/apis/store_api.rs rename to samples/client/petstore/rust/reqwest/petstore/src/apis/store_api.rs diff --git a/samples/client/petstore/rust-reqwest/src/apis/user_api.rs b/samples/client/petstore/rust/reqwest/petstore/src/apis/user_api.rs similarity index 100% rename from samples/client/petstore/rust-reqwest/src/apis/user_api.rs rename to samples/client/petstore/rust/reqwest/petstore/src/apis/user_api.rs diff --git a/samples/client/petstore/rust/reqwest/petstore/src/lib.rs b/samples/client/petstore/rust/reqwest/petstore/src/lib.rs new file mode 100644 index 0000000000..c1dd666f79 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/petstore/src/lib.rs @@ -0,0 +1,10 @@ +#[macro_use] +extern crate serde_derive; + +extern crate serde; +extern crate serde_json; +extern crate url; +extern crate reqwest; + +pub mod apis; +pub mod models; diff --git a/samples/client/petstore/rust/src/models/api_response.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/api_response.rs similarity index 100% rename from samples/client/petstore/rust/src/models/api_response.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/api_response.rs diff --git a/samples/client/petstore/rust/src/models/category.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/category.rs similarity index 100% rename from samples/client/petstore/rust/src/models/category.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/category.rs diff --git a/samples/client/petstore/rust/src/models/mod.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/mod.rs similarity index 100% rename from samples/client/petstore/rust/src/models/mod.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/mod.rs diff --git a/samples/client/petstore/rust/src/models/order.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/order.rs similarity index 100% rename from samples/client/petstore/rust/src/models/order.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/order.rs diff --git a/samples/client/petstore/rust/src/models/pet.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/pet.rs similarity index 100% rename from samples/client/petstore/rust/src/models/pet.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/pet.rs diff --git a/samples/client/petstore/rust/src/models/tag.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/tag.rs similarity index 100% rename from samples/client/petstore/rust/src/models/tag.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/tag.rs diff --git a/samples/client/petstore/rust/src/models/user.rs b/samples/client/petstore/rust/reqwest/petstore/src/models/user.rs similarity index 100% rename from samples/client/petstore/rust/src/models/user.rs rename to samples/client/petstore/rust/reqwest/petstore/src/models/user.rs diff --git a/samples/client/petstore/rust/reqwest/rust-test/.gitignore b/samples/client/petstore/rust/reqwest/rust-test/.gitignore new file mode 100644 index 0000000000..6aa106405a --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/.gitignore @@ -0,0 +1,3 @@ +/target/ +**/*.rs.bk +Cargo.lock diff --git a/samples/client/petstore/rust/reqwest/rust-test/.openapi-generator-ignore b/samples/client/petstore/rust/reqwest/rust-test/.openapi-generator-ignore new file mode 100644 index 0000000000..7484ee590a --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/.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/rust/reqwest/rust-test/.openapi-generator/VERSION b/samples/client/petstore/rust/reqwest/rust-test/.openapi-generator/VERSION new file mode 100644 index 0000000000..83a328a922 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/.openapi-generator/VERSION @@ -0,0 +1 @@ +4.1.0-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/rust/reqwest/rust-test/.travis.yml b/samples/client/petstore/rust/reqwest/rust-test/.travis.yml new file mode 100644 index 0000000000..22761ba7ee --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/.travis.yml @@ -0,0 +1 @@ +language: rust diff --git a/samples/client/petstore/rust/reqwest/rust-test/Cargo.toml b/samples/client/petstore/rust/reqwest/rust-test/Cargo.toml new file mode 100644 index 0000000000..60c968a7cf --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "rust-test-reqwest" +version = "1.0.0" +authors = ["OpenAPI Generator team and contributors"] + +[dependencies] +serde = "^1.0" +serde_derive = "^1.0" +serde_json = "^1.0" +url = "1.5" +reqwest = "~0.9" + +[dev-dependencies] diff --git a/samples/client/petstore/rust/reqwest/rust-test/README.md b/samples/client/petstore/rust/reqwest/rust-test/README.md new file mode 100644 index 0000000000..097d18b77d --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/README.md @@ -0,0 +1,44 @@ +# Rust API client for rust-test-reqwest + +Special testing for the Rust client generator + +## Overview + +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://openapis.org) from a remote server, you can easily generate an API client. + +- API version: 1.0.7 +- Package version: 1.0.0 +- Build package: org.openapitools.codegen.languages.RustClientCodegen + +## Installation + +Put the package under your project folder and add the following to `Cargo.toml` under `[dependencies]`: + +``` + openapi = { path = "./generated" } +``` + +## Documentation for API Endpoints + +All URIs are relative to *http://localhost* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*DefaultApi* | [**dummy_get**](docs/DefaultApi.md#dummy_get) | **get** /dummy | A dummy endpoint to make the spec valid. + + +## Documentation For Models + + - [TypeTesting](docs/TypeTesting.md) + + +To get access to the crate's generated documentation, use: + +``` +cargo doc --open +``` + +## Author + + + diff --git a/samples/client/petstore/rust/reqwest/rust-test/docs/DefaultApi.md b/samples/client/petstore/rust/reqwest/rust-test/docs/DefaultApi.md new file mode 100644 index 0000000000..ea01d010f0 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/docs/DefaultApi.md @@ -0,0 +1,34 @@ +# \DefaultApi + +All URIs are relative to *http://localhost* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**dummy_get**](DefaultApi.md#dummy_get) | **get** /dummy | A dummy endpoint to make the spec valid. + + + +## dummy_get + +> dummy_get() +A dummy endpoint to make the spec valid. + +### Parameters + +This endpoint does not need any parameter. + +### Return type + + (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/rust/reqwest/rust-test/docs/TypeTesting.md b/samples/client/petstore/rust/reqwest/rust-test/docs/TypeTesting.md new file mode 100644 index 0000000000..e84136389e --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/docs/TypeTesting.md @@ -0,0 +1,16 @@ +# TypeTesting + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**integer** | **i32** | | [optional] +**long** | **i64** | | [optional] +**number** | **f32** | | [optional] +**float** | **f32** | | [optional] +**double** | **f64** | | [optional] +**uuid** | **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/rust/reqwest/rust-test/git_push.sh b/samples/client/petstore/rust/reqwest/rust-test/git_push.sh new file mode 100644 index 0000000000..8442b80bb4 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/git_push.sh @@ -0,0 +1,52 @@ +#!/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-pestore-perl "minor update" + +git_user_id=$1 +git_repo_id=$2 +release_note=$3 + +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://github.com/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:${GIT_TOKEN}@github.com/${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://github.com/${git_user_id}/${git_repo_id}.git" +git push origin master 2>&1 | grep -v 'To https' + diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/apis/client.rs b/samples/client/petstore/rust/reqwest/rust-test/src/apis/client.rs new file mode 100644 index 0000000000..2f76997d31 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/apis/client.rs @@ -0,0 +1,22 @@ +use std::rc::Rc; + +use super::configuration::Configuration; + +pub struct APIClient { + default_api: Box, +} + +impl APIClient { + pub fn new(configuration: Configuration) -> APIClient { + let rc = Rc::new(configuration); + + APIClient { + default_api: Box::new(crate::apis::DefaultApiClient::new(rc.clone())), + } + } + + pub fn default_api(&self) -> &crate::apis::DefaultApi{ + self.default_api.as_ref() + } + +} diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/apis/configuration.rs b/samples/client/petstore/rust/reqwest/rust-test/src/apis/configuration.rs new file mode 100644 index 0000000000..6aa6915560 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/apis/configuration.rs @@ -0,0 +1,50 @@ +/* + * Rust client test spec + * + * Special testing for the Rust client generator + * + * The version of the OpenAPI document: 1.0.7 + * + * Generated by: https://openapi-generator.tech + */ + + +use reqwest; + +pub struct Configuration { + pub base_path: String, + pub user_agent: Option, + pub client: reqwest::Client, + pub basic_auth: Option, + pub oauth_access_token: Option, + pub bearer_access_token: Option, + pub api_key: Option, + // TODO: take an oauth2 token source, similar to the go one +} + +pub type BasicAuth = (String, Option); + +pub struct ApiKey { + pub prefix: Option, + pub key: String, +} + +impl Configuration { + pub fn new() -> Configuration { + Configuration::default() + } +} + +impl Default for Configuration { + fn default() -> Self { + Configuration { + base_path: "http://localhost".to_owned(), + user_agent: Some("OpenAPI-Generator/1.0.7/rust".to_owned()), + client: reqwest::Client::new(), + basic_auth: None, + oauth_access_token: None, + bearer_access_token: None, + api_key: None, + } + } +} diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/apis/default_api.rs b/samples/client/petstore/rust/reqwest/rust-test/src/apis/default_api.rs new file mode 100644 index 0000000000..9404fefb7d --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/apis/default_api.rs @@ -0,0 +1,53 @@ +/* + * Rust client test spec + * + * Special testing for the Rust client generator + * + * The version of the OpenAPI document: 1.0.7 + * + * Generated by: https://openapi-generator.tech + */ + +use std::rc::Rc; +use std::borrow::Borrow; + +use reqwest; + +use super::{Error, configuration}; + +pub struct DefaultApiClient { + configuration: Rc, +} + +impl DefaultApiClient { + pub fn new(configuration: Rc) -> DefaultApiClient { + DefaultApiClient { + configuration: configuration, + } + } +} + +pub trait DefaultApi { + fn dummy_get(&self, ) -> Result<(), Error>; +} + +impl DefaultApi for DefaultApiClient { + fn dummy_get(&self, ) -> Result<(), Error> { + let configuration: &configuration::Configuration = self.configuration.borrow(); + let client = &configuration.client; + + let uri_str = format!("{}/dummy", configuration.base_path); + let mut req_builder = client.get(uri_str.as_str()); + + if let Some(ref user_agent) = configuration.user_agent { + req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone()); + } + + // send request + let req = req_builder.build()?; + + client.execute(req)?.error_for_status()?; + Ok(()) + } + +} diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/apis/mod.rs b/samples/client/petstore/rust/reqwest/rust-test/src/apis/mod.rs new file mode 100644 index 0000000000..3b70668f6f --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/apis/mod.rs @@ -0,0 +1,37 @@ +use reqwest; +use serde_json; + +#[derive(Debug)] +pub enum Error { + Reqwest(reqwest::Error), + Serde(serde_json::Error), + Io(std::io::Error), +} + +impl From for Error { + fn from(e: reqwest::Error) -> Self { + Error::Reqwest(e) + } +} + +impl From for Error { + fn from(e: serde_json::Error) -> Self { + Error::Serde(e) + } +} + +impl From for Error { + fn from(e: std::io::Error) -> Self { + Error::Io(e) + } +} + +pub fn urlencode>(s: T) -> String { + ::url::form_urlencoded::byte_serialize(s.as_ref().as_bytes()).collect() +} + +mod default_api; +pub use self::default_api::{ DefaultApi, DefaultApiClient }; + +pub mod configuration; +pub mod client; diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/lib.rs b/samples/client/petstore/rust/reqwest/rust-test/src/lib.rs new file mode 100644 index 0000000000..c1dd666f79 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/lib.rs @@ -0,0 +1,10 @@ +#[macro_use] +extern crate serde_derive; + +extern crate serde; +extern crate serde_json; +extern crate url; +extern crate reqwest; + +pub mod apis; +pub mod models; diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/models/mod.rs b/samples/client/petstore/rust/reqwest/rust-test/src/models/mod.rs new file mode 100644 index 0000000000..8762207b5b --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/models/mod.rs @@ -0,0 +1,2 @@ +mod type_testing; +pub use self::type_testing::TypeTesting; diff --git a/samples/client/petstore/rust/reqwest/rust-test/src/models/type_testing.rs b/samples/client/petstore/rust/reqwest/rust-test/src/models/type_testing.rs new file mode 100644 index 0000000000..abd6582cc6 --- /dev/null +++ b/samples/client/petstore/rust/reqwest/rust-test/src/models/type_testing.rs @@ -0,0 +1,44 @@ +/* + * Rust client test spec + * + * Special testing for the Rust client generator + * + * The version of the OpenAPI document: 1.0.7 + * + * Generated by: https://openapi-generator.tech + */ + +/// TypeTesting : Test handling of differing types (see \\#3463) + + +#[derive(Debug, PartialEq, Serialize, Deserialize)] +pub struct TypeTesting { + #[serde(rename = "integer", skip_serializing_if = "Option::is_none")] + pub integer: Option, + #[serde(rename = "long", skip_serializing_if = "Option::is_none")] + pub long: Option, + #[serde(rename = "number", skip_serializing_if = "Option::is_none")] + pub number: Option, + #[serde(rename = "float", skip_serializing_if = "Option::is_none")] + pub float: Option, + #[serde(rename = "double", skip_serializing_if = "Option::is_none")] + pub double: Option, + #[serde(rename = "uuid", skip_serializing_if = "Option::is_none")] + pub uuid: Option, +} + +impl TypeTesting { + /// Test handling of differing types (see \\#3463) + pub fn new() -> TypeTesting { + TypeTesting { + integer: None, + long: None, + number: None, + float: None, + double: None, + uuid: None, + } + } +} + + diff --git a/samples/client/petstore/rust/src/apis/client.rs.orig b/samples/client/petstore/rust/src/apis/client.rs.orig deleted file mode 100644 index 39175e119e..0000000000 --- a/samples/client/petstore/rust/src/apis/client.rs.orig +++ /dev/null @@ -1,35 +0,0 @@ -use std::rc::Rc; - -use hyper; -use super::configuration::Configuration; - -pub struct APIClient { - pet_api: Box, - store_api: Box, - user_api: Box, -} - -impl APIClient { - pub fn new(configuration: Configuration) -> APIClient { - let rc = Rc::new(configuration); - - APIClient { - pet_api: Box::new(crate::apis::PetApiClient::new(rc.clone())), - store_api: Box::new(crate::apis::StoreApiClient::new(rc.clone())), - user_api: Box::new(crate::apis::UserApiClient::new(rc.clone())), - } - } - - pub fn pet_api(&self) -> &crate::apis::PetApi{ - self.pet_api.as_ref() - } - - pub fn store_api(&self) -> &crate::apis::StoreApi{ - self.store_api.as_ref() - } - - pub fn user_api(&self) -> &crate::apis::UserApi{ - self.user_api.as_ref() - } - -} diff --git a/samples/client/petstore/scala-akka/.openapi-generator/VERSION b/samples/client/petstore/scala-akka/.openapi-generator/VERSION index afa6365606..0e97bd19ef 100644 --- a/samples/client/petstore/scala-akka/.openapi-generator/VERSION +++ b/samples/client/petstore/scala-akka/.openapi-generator/VERSION @@ -1 +1 @@ -4.0.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/EnumsSerializers.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/EnumsSerializers.scala index 85cc57e381..71ad618e31 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/EnumsSerializers.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/EnumsSerializers.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/PetApi.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/PetApi.scala index 9aeea7d8d6..658f7fb8fe 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/PetApi.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/PetApi.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -32,7 +32,7 @@ class PetApi(baseUrl: String) { * @param body Pet object that needs to be added to the store */ def addPet(body: Pet): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.POST, "http://petstore.swagger.io/v2", "/pet", "application/json") + ApiRequest[Unit](ApiMethods.POST, baseUrl, "/pet", "application/json") .withBody(body) .withErrorResponse[Unit](405) @@ -45,7 +45,7 @@ class PetApi(baseUrl: String) { * @param apiKey */ def deletePet(petId: Long, apiKey: Option[String] = None): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.DELETE, "http://petstore.swagger.io/v2", "/pet/{petId}", "application/json") + ApiRequest[Unit](ApiMethods.DELETE, baseUrl, "/pet/{petId}", "application/json") .withPathParam("petId", petId) .withHeaderParam("api_key", apiKey) .withErrorResponse[Unit](400) @@ -61,7 +61,7 @@ class PetApi(baseUrl: String) { * @param status Status values that need to be considered for filter */ def findPetsByStatus(status: Seq[String]): ApiRequest[Seq[Pet]] = - ApiRequest[Seq[Pet]](ApiMethods.GET, "http://petstore.swagger.io/v2", "/pet/findByStatus", "application/json") + ApiRequest[Seq[Pet]](ApiMethods.GET, baseUrl, "/pet/findByStatus", "application/json") .withQueryParam("status", ArrayValues(status, CSV)) .withSuccessResponse[Seq[Pet]](200) .withErrorResponse[Unit](400) @@ -77,7 +77,7 @@ class PetApi(baseUrl: String) { * @param tags Tags to filter by */ def findPetsByTags(tags: Seq[String]): ApiRequest[Seq[Pet]] = - ApiRequest[Seq[Pet]](ApiMethods.GET, "http://petstore.swagger.io/v2", "/pet/findByTags", "application/json") + ApiRequest[Seq[Pet]](ApiMethods.GET, baseUrl, "/pet/findByTags", "application/json") .withQueryParam("tags", ArrayValues(tags, CSV)) .withSuccessResponse[Seq[Pet]](200) .withErrorResponse[Unit](400) @@ -97,7 +97,7 @@ class PetApi(baseUrl: String) { * @param petId ID of pet to return */ def getPetById(petId: Long)(implicit apiKey: ApiKeyValue): ApiRequest[Pet] = - ApiRequest[Pet](ApiMethods.GET, "http://petstore.swagger.io/v2", "/pet/{petId}", "application/json") + ApiRequest[Pet](ApiMethods.GET, baseUrl, "/pet/{petId}", "application/json") .withApiKey(apiKey, "api_key", HEADER) .withPathParam("petId", petId) .withSuccessResponse[Pet](200) @@ -114,7 +114,7 @@ class PetApi(baseUrl: String) { * @param body Pet object that needs to be added to the store */ def updatePet(body: Pet): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.PUT, "http://petstore.swagger.io/v2", "/pet", "application/json") + ApiRequest[Unit](ApiMethods.PUT, baseUrl, "/pet", "application/json") .withBody(body) .withErrorResponse[Unit](400) .withErrorResponse[Unit](404) @@ -130,7 +130,7 @@ class PetApi(baseUrl: String) { * @param status Updated status of the pet */ def updatePetWithForm(petId: Long, name: Option[String] = None, status: Option[String] = None): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.POST, "http://petstore.swagger.io/v2", "/pet/{petId}", "application/x-www-form-urlencoded") + ApiRequest[Unit](ApiMethods.POST, baseUrl, "/pet/{petId}", "application/x-www-form-urlencoded") .withFormParam("name", name) .withFormParam("status", status) .withPathParam("petId", petId) @@ -146,7 +146,7 @@ class PetApi(baseUrl: String) { * @param file file to upload */ def uploadFile(petId: Long, additionalMetadata: Option[String] = None, file: Option[File] = None): ApiRequest[ApiResponse] = - ApiRequest[ApiResponse](ApiMethods.POST, "http://petstore.swagger.io/v2", "/pet/{petId}/uploadImage", "multipart/form-data") + ApiRequest[ApiResponse](ApiMethods.POST, baseUrl, "/pet/{petId}/uploadImage", "multipart/form-data") .withFormParam("additionalMetadata", additionalMetadata) .withFormParam("file", file) .withPathParam("petId", petId) diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/StoreApi.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/StoreApi.scala index 716625d5d6..534b3a4949 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/StoreApi.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/StoreApi.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -33,7 +33,7 @@ class StoreApi(baseUrl: String) { * @param orderId ID of the order that needs to be deleted */ def deleteOrder(orderId: String): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.DELETE, "http://petstore.swagger.io/v2", "/store/order/{orderId}", "application/json") + ApiRequest[Unit](ApiMethods.DELETE, baseUrl, "/store/order/{orderId}", "application/json") .withPathParam("orderId", orderId) .withErrorResponse[Unit](400) .withErrorResponse[Unit](404) @@ -49,7 +49,7 @@ class StoreApi(baseUrl: String) { * api_key (apiKey) */ def getInventory()(implicit apiKey: ApiKeyValue): ApiRequest[Map[String, Int]] = - ApiRequest[Map[String, Int]](ApiMethods.GET, "http://petstore.swagger.io/v2", "/store/inventory", "application/json") + ApiRequest[Map[String, Int]](ApiMethods.GET, baseUrl, "/store/inventory", "application/json") .withApiKey(apiKey, "api_key", HEADER) .withSuccessResponse[Map[String, Int]](200) @@ -65,7 +65,7 @@ class StoreApi(baseUrl: String) { * @param orderId ID of pet that needs to be fetched */ def getOrderById(orderId: Long): ApiRequest[Order] = - ApiRequest[Order](ApiMethods.GET, "http://petstore.swagger.io/v2", "/store/order/{orderId}", "application/json") + ApiRequest[Order](ApiMethods.GET, baseUrl, "/store/order/{orderId}", "application/json") .withPathParam("orderId", orderId) .withSuccessResponse[Order](200) .withErrorResponse[Unit](400) @@ -80,7 +80,7 @@ class StoreApi(baseUrl: String) { * @param body order placed for purchasing the pet */ def placeOrder(body: Order): ApiRequest[Order] = - ApiRequest[Order](ApiMethods.POST, "http://petstore.swagger.io/v2", "/store/order", "application/json") + ApiRequest[Order](ApiMethods.POST, baseUrl, "/store/order", "application/json") .withBody(body) .withSuccessResponse[Order](200) .withErrorResponse[Unit](400) diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/UserApi.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/UserApi.scala index e695e1b419..7a1e796b70 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/UserApi.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/api/UserApi.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). @@ -32,7 +32,7 @@ class UserApi(baseUrl: String) { * @param body Created user object */ def createUser(body: User): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.POST, "http://petstore.swagger.io/v2", "/user", "application/json") + ApiRequest[Unit](ApiMethods.POST, baseUrl, "/user", "application/json") .withBody(body) .withDefaultSuccessResponse[Unit] @@ -44,7 +44,7 @@ class UserApi(baseUrl: String) { * @param body List of user object */ def createUsersWithArrayInput(body: Seq[User]): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.POST, "http://petstore.swagger.io/v2", "/user/createWithArray", "application/json") + ApiRequest[Unit](ApiMethods.POST, baseUrl, "/user/createWithArray", "application/json") .withBody(body) .withDefaultSuccessResponse[Unit] @@ -56,7 +56,7 @@ class UserApi(baseUrl: String) { * @param body List of user object */ def createUsersWithListInput(body: Seq[User]): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.POST, "http://petstore.swagger.io/v2", "/user/createWithList", "application/json") + ApiRequest[Unit](ApiMethods.POST, baseUrl, "/user/createWithList", "application/json") .withBody(body) .withDefaultSuccessResponse[Unit] @@ -71,7 +71,7 @@ class UserApi(baseUrl: String) { * @param username The name that needs to be deleted */ def deleteUser(username: String): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.DELETE, "http://petstore.swagger.io/v2", "/user/{username}", "application/json") + ApiRequest[Unit](ApiMethods.DELETE, baseUrl, "/user/{username}", "application/json") .withPathParam("username", username) .withErrorResponse[Unit](400) .withErrorResponse[Unit](404) @@ -86,7 +86,7 @@ class UserApi(baseUrl: String) { * @param username The name that needs to be fetched. Use user1 for testing. */ def getUserByName(username: String): ApiRequest[User] = - ApiRequest[User](ApiMethods.GET, "http://petstore.swagger.io/v2", "/user/{username}", "application/json") + ApiRequest[User](ApiMethods.GET, baseUrl, "/user/{username}", "application/json") .withPathParam("username", username) .withSuccessResponse[User](200) .withErrorResponse[Unit](400) @@ -105,7 +105,7 @@ class UserApi(baseUrl: String) { * @param password The password for login in clear text */ def loginUser(username: String, password: String): ApiRequest[String] = - ApiRequest[String](ApiMethods.GET, "http://petstore.swagger.io/v2", "/user/login", "application/json") + ApiRequest[String](ApiMethods.GET, baseUrl, "/user/login", "application/json") .withQueryParam("username", username) .withQueryParam("password", password) .withSuccessResponse[String](200) @@ -121,7 +121,7 @@ class UserApi(baseUrl: String) { * code 0 : (successful operation) */ def logoutUser(): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.GET, "http://petstore.swagger.io/v2", "/user/logout", "application/json") + ApiRequest[Unit](ApiMethods.GET, baseUrl, "/user/logout", "application/json") .withDefaultSuccessResponse[Unit] @@ -136,7 +136,7 @@ class UserApi(baseUrl: String) { * @param body Updated user object */ def updateUser(username: String, body: User): ApiRequest[Unit] = - ApiRequest[Unit](ApiMethods.PUT, "http://petstore.swagger.io/v2", "/user/{username}", "application/json") + ApiRequest[Unit](ApiMethods.PUT, baseUrl, "/user/{username}", "application/json") .withBody(body) .withPathParam("username", username) .withErrorResponse[Unit](400) diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiInvoker.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiInvoker.scala index 6b9b04d374..8b6eeee0bb 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiInvoker.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiInvoker.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiRequest.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiRequest.scala index 2378d8c5fe..3dfa61094d 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiRequest.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiRequest.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiSettings.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiSettings.scala index 448cd25f08..2553aeb3c8 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiSettings.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/ApiSettings.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/requests.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/requests.scala index ff715e3eb2..155a86dcf1 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/requests.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/core/requests.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/ApiResponse.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/ApiResponse.scala index 81370edb74..0ef406429c 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/ApiResponse.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/ApiResponse.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Category.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Category.scala index 8d609a5552..23ba748215 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Category.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Category.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Order.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Order.scala index fe4daa9c35..83055706fd 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Order.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Order.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Pet.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Pet.scala index e5df29f246..1f78a72e57 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Pet.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Pet.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Tag.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Tag.scala index e46602f84f..30dfbf4419 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Tag.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/Tag.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/User.scala b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/User.scala index ef8eb6b4a0..0d33ce6475 100644 --- a/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/User.scala +++ b/samples/client/petstore/scala-akka/src/main/scala/org/openapitools/client/model/User.scala @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/swift4/default/.openapi-generator/VERSION b/samples/client/petstore/swift4/default/.openapi-generator/VERSION index 83a328a922..0e97bd19ef 100644 --- a/samples/client/petstore/swift4/default/.openapi-generator/VERSION +++ b/samples/client/petstore/swift4/default/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/swift4/default/Cartfile b/samples/client/petstore/swift4/default/Cartfile index f1823fda9a..86748c63d9 100644 --- a/samples/client/petstore/swift4/default/Cartfile +++ b/samples/client/petstore/swift4/default/Cartfile @@ -1 +1 @@ -github "Alamofire/Alamofire" ~> 4.5.0 +github "Alamofire/Alamofire" ~> 4.9.0 diff --git a/samples/client/petstore/swift4/default/PetstoreClient.podspec b/samples/client/petstore/swift4/default/PetstoreClient.podspec index 50531fd25a..a6c9a1f3d4 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient.podspec +++ b/samples/client/petstore/swift4/default/PetstoreClient.podspec @@ -10,5 +10,5 @@ Pod::Spec.new do |s| s.homepage = 'https://github.com/openapitools/openapi-generator' s.summary = 'PetstoreClient' s.source_files = 'PetstoreClient/Classes/**/*.swift' - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 1073935592..d1f658b08d 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -131,7 +131,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in + testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -165,7 +165,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in + testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -246,7 +246,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, 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 { (response, error) -> 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 { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -389,7 +389,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, 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 { (response, error) -> Void in + testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -453,7 +453,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in + testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -504,7 +504,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in + testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -539,7 +539,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in + testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 896f151180..3952547574 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -16,7 +16,7 @@ open class PetAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func addPet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in + addPetWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -54,7 +54,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in + deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -219,7 +219,7 @@ open class PetAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in + updatePetWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -258,7 +258,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in + updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 71949b335d..98ff7b5474 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -16,7 +16,7 @@ open class StoreAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in + deleteOrderWithRequestBuilder(orderId: orderId).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index efeb64468a..24d0d35e9d 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -16,7 +16,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUser(body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUserWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -51,7 +51,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithArrayInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -85,7 +85,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithListInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -119,7 +119,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in + deleteUserWithRequestBuilder(username: username).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -226,7 +226,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - logoutUserWithRequestBuilder().execute { (response, error) -> Void in + logoutUserWithRequestBuilder().execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -260,7 +260,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in + updateUserWithRequestBuilder(username: username, body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift index 04ad02a5ce..60ce28c66a 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift @@ -283,7 +283,7 @@ open class AlamofireRequestBuilder: RequestBuilder { let items = contentDisposition.components(separatedBy: ";") - var filename: String? = nil + var filename: String? for contentItem in items { @@ -294,7 +294,7 @@ open class AlamofireRequestBuilder: RequestBuilder { filename = contentItem return filename? - .replacingCharacters(in: range, with:"") + .replacingCharacters(in: range, with: "") .replacingOccurrences(of: "\"", with: "") .trimmingCharacters(in: .whitespacesAndNewlines) } @@ -435,7 +435,7 @@ open class AlamofireDecodableRequestBuilder: AlamofireRequestBuild return } - var responseObj: Response? = nil + var responseObj: Response? let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data) if decodeResult.error == nil { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift index 111d5a3a8c..0a333db0d1 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift @@ -14,8 +14,8 @@ open class CodableHelper { public static var dateformatter: DateFormatter? open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable { - var returnedDecodable: T? = nil - var returnedError: Error? = nil + var returnedDecodable: T? + var returnedError: Error? let decoder = JSONDecoder() if let df = self.dateformatter { @@ -41,7 +41,7 @@ open class CodableHelper { open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable { var returnedData: Data? - var returnedError: Error? = nil + var returnedError: Error? let encoder = JSONEncoder() if prettyPrint { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift index 24c128daad..2fa32b9e0f 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Extensions.swift @@ -152,7 +152,7 @@ extension KeyedDecodingContainerProtocol { } public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { - var tmpArray: [T]? = nil + var tmpArray: [T]? if contains(key) { tmpArray = try decodeArray(T.self, forKey: key) diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift index ca05906d42..fb76bbed26 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift @@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding { } public static func encodingParameters(jsonData: Data?) -> Parameters? { - var returnedParams: Parameters? = nil + var returnedParams: Parameters? if let jsonData = jsonData, !jsonData.isEmpty { var params = Parameters() params[jsonDataKey] = jsonData diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift index 3e68bb5d4a..7bd1267e95 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift @@ -11,7 +11,7 @@ import Alamofire open class JSONEncodingHelper { open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? // Encode the Encodable object if let encodableObj = encodableObj { @@ -25,7 +25,7 @@ open class JSONEncodingHelper { } open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? if let encodableObj = encodableObj { do { diff --git a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift index e87ce399c7..2516116586 100644 --- a/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift +++ b/samples/client/petstore/swift4/default/PetstoreClient/Classes/OpenAPIs/Models.swift @@ -27,7 +27,7 @@ open class Response { public convenience init(response: HTTPURLResponse, body: T?) { let rawHeader = response.allHeaderFields - var header = [String:String]() + var header = [String: String]() for case let (key, value) as (String, String) in rawHeader { header[key] = value } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Podfile.lock b/samples/client/petstore/swift4/default/SwaggerClientTests/Podfile.lock index 3e86a1e892..ec15c4176b 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Podfile.lock +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Podfile.lock @@ -1,7 +1,7 @@ PODS: - - Alamofire (4.7.3) - - PetstoreClient (0.0.1): - - Alamofire (~> 4.7.0) + - Alamofire (4.9.0) + - PetstoreClient (1.0.0): + - Alamofire (~> 4.9.0) DEPENDENCIES: - PetstoreClient (from `../`) @@ -15,9 +15,9 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 - PetstoreClient: ed26185215a5241fa4e937e806321d611f3d0c30 + Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 + PetstoreClient: e5c71b862a32097342e341f7088805bbfc033a3e PODFILE CHECKSUM: cedb3058b02f4776d7c31f6d92ae2f674fdf424d -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/LICENSE b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/LICENSE index 2ec3cb14fb..38a301a1db 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/LICENSE +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/README.md b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/README.md index 02082525ae..9fdc9c7387 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/README.md +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/README.md @@ -67,11 +67,12 @@ In order to keep Alamofire focused specifically on core networking implementatio - [Alamofire 2.0 Migration Guide](https://github.com/Alamofire/Alamofire/blob/master/Documentation/Alamofire%202.0%20Migration%20Guide.md) ## Communication - -- If you **need help**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). (Tag 'alamofire') -- If you'd like to **ask a general question**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). -- If you **found a bug**, open an issue. -- If you **have a feature request**, open an issue. +- If you **need help with making network requests**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire) and tag `alamofire`. +- If you need to **find or understand an API**, check [our documentation](http://alamofire.github.io/Alamofire/) or [Apple's documentation for `URLSession`](https://developer.apple.com/documentation/foundation/url_loading_system), on top of which Alamofire is built. +- If you need **help with an Alamofire feature**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you'd like to **discuss Alamofire best practices**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you'd like to **discuss a feature request**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you **found a bug**, open an issue and follow the guide. The more detail the better! - If you **want to contribute**, submit a pull request. ## Installation @@ -84,7 +85,7 @@ In order to keep Alamofire focused specifically on core networking implementatio $ gem install cocoapods ``` -> CocoaPods 1.1+ is required to build Alamofire 4.0+. +> CocoaPods 1.7+ is required to build Alamofire 4.9+. To integrate Alamofire into your Xcode project using CocoaPods, specify it in your `Podfile`: @@ -94,7 +95,7 @@ platform :ios, '10.0' use_frameworks! target '' do - pod 'Alamofire', '~> 4.7' + pod 'Alamofire', '~> 4.9' end ``` @@ -111,14 +112,13 @@ $ pod install You can install Carthage with [Homebrew](https://brew.sh/) using the following command: ```bash -$ brew update $ brew install carthage ``` To integrate Alamofire into your Xcode project using Carthage, specify it in your `Cartfile`: ```ogdl -github "Alamofire/Alamofire" ~> 4.7 +github "Alamofire/Alamofire" ~> 4.9 ``` Run `carthage update` to build the framework and drag the built `Alamofire.framework` into your Xcode project. @@ -141,7 +141,7 @@ dependencies: [ ```swift dependencies: [ - .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.0.0") + .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.9.0") ] ``` diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift index 8b90d8471e..b163f6038f 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift @@ -1,7 +1,7 @@ // // AFError.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift index a411b77491..20c3672fba 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift @@ -1,7 +1,7 @@ // // Alamofire.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -135,7 +135,8 @@ public func request( parameters: Parameters? = nil, encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil) - -> DataRequest { + -> DataRequest +{ return SessionManager.default.request( url, method: method, @@ -182,7 +183,8 @@ public func download( encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download( url, method: method, @@ -207,7 +209,8 @@ public func download( public func download( _ urlRequest: URLRequestConvertible, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download(urlRequest, to: destination) } @@ -236,7 +239,8 @@ public func download( public func download( resumingWith resumeData: Data, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download(resumingWith: resumeData, to: destination) } @@ -259,7 +263,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers) } @@ -292,7 +297,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(data, to: url, method: method, headers: headers) } @@ -325,7 +331,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(stream, to: url, method: method, headers: headers) } @@ -372,7 +379,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil, - encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) { + encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) +{ return SessionManager.default.upload( multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, @@ -408,7 +416,8 @@ public func upload( multipartFormData: @escaping (MultipartFormData) -> Void, usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold, with urlRequest: URLRequestConvertible, - encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) { + encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) +{ return SessionManager.default.upload( multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift index dea3ebc1be..a54673cca6 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift @@ -1,7 +1,7 @@ // // DispatchQueue+Alamofire.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift index 85a0685748..b840138ccc 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift @@ -1,7 +1,7 @@ // // MultipartFormData.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -98,7 +98,7 @@ open class MultipartFormData { public var contentLength: UInt64 { return bodyParts.reduce(0) { $0 + $1.bodyContentLength } } /// The boundary used to separate the body parts in the encoded form data. - public let boundary: String + public var boundary: String private var bodyParts: [BodyPart] private var bodyPartError: AFError? @@ -275,7 +275,8 @@ open class MultipartFormData { } bodyContentLength = fileSize.uint64Value - } catch { + } + catch { setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error)) return } @@ -311,7 +312,8 @@ open class MultipartFormData { withLength length: UInt64, name: String, fileName: String, - mimeType: String) { + mimeType: String) + { let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType) append(stream, withLength: length, headers: headers) } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift index 60bda83d2f..398ca827c2 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift @@ -1,7 +1,7 @@ // // NetworkReachabilityManager.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -128,7 +128,9 @@ open class NetworkReachabilityManager { private init(reachability: SCNetworkReachability) { self.reachability = reachability - self.previousFlags = SCNetworkReachabilityFlags() + + // Set the previous flags to an unreserved value to represent unknown status + self.previousFlags = SCNetworkReachabilityFlags(rawValue: 1 << 30) } deinit { @@ -146,7 +148,8 @@ open class NetworkReachabilityManager { context.info = Unmanaged.passUnretained(self).toOpaque() let callbackEnabled = SCNetworkReachabilitySetCallback( - reachability, { (_, flags, info) in + reachability, + { (_, flags, info) in let reachability = Unmanaged.fromOpaque(info!).takeUnretainedValue() reachability.notifyListener(flags) }, @@ -156,8 +159,11 @@ open class NetworkReachabilityManager { let queueEnabled = SCNetworkReachabilitySetDispatchQueue(reachability, listenerQueue) listenerQueue.async { - self.previousFlags = SCNetworkReachabilityFlags() - self.notifyListener(self.flags ?? SCNetworkReachabilityFlags()) + self.previousFlags = SCNetworkReachabilityFlags(rawValue: 1 << 30) + + guard let flags = self.flags else { return } + + self.notifyListener(flags) } return callbackEnabled && queueEnabled @@ -215,7 +221,8 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {} public func ==( lhs: NetworkReachabilityManager.NetworkReachabilityStatus, rhs: NetworkReachabilityManager.NetworkReachabilityStatus) - -> Bool { + -> Bool +{ switch (lhs, rhs) { case (.unknown, .unknown): return true diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift index e1b6120496..e1ac31bf32 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift @@ -1,7 +1,7 @@ // // Notifications.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift index 344a048cad..6195809c5d 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift @@ -1,7 +1,7 @@ // // ParameterEncoding.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -435,7 +435,8 @@ public struct PropertyListEncoding: ParameterEncoding { /// - returns: The new `PropertyListEncoding` instance. public init( format: PropertyListSerialization.PropertyListFormat = .xml, - options: PropertyListSerialization.WriteOptions = 0) { + options: PropertyListSerialization.WriteOptions = 0) + { self.format = format self.options = options } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift index 18b83a0e73..2be2ce0106 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Request.swift @@ -1,7 +1,7 @@ // // Request.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -161,7 +161,8 @@ open class Request { user: String, password: String, persistence: URLCredential.Persistence = .forSession) - -> Self { + -> Self + { let credential = URLCredential(user: user, password: password, persistence: persistence) return authenticate(usingCredential: credential) } @@ -319,21 +320,16 @@ extension Request: CustomDebugStringConvertible { var headers: [AnyHashable: Any] = [:] - if let additionalHeaders = session.configuration.httpAdditionalHeaders { - for (field, value) in additionalHeaders where field != AnyHashable("Cookie") { - headers[field] = value - } - } + session.configuration.httpAdditionalHeaders?.filter { $0.0 != AnyHashable("Cookie") } + .forEach { headers[$0.0] = $0.1 } - if let headerFields = request.allHTTPHeaderFields { - for (field, value) in headerFields where field != "Cookie" { - headers[field] = value - } - } + request.allHTTPHeaderFields?.filter { $0.0 != "Cookie" } + .forEach { headers[$0.0] = $0.1 } - for (field, value) in headers { - let escapedValue = String(describing: value).replacingOccurrences(of: "\"", with: "\\\"") - components.append("-H \"\(field): \(escapedValue)\"") + components += headers.map { + let escapedValue = String(describing: $0.value).replacingOccurrences(of: "\"", with: "\\\"") + + return "-H \"\($0.key): \(escapedValue)\"" } if let httpBodyData = request.httpBody, let httpBody = String(data: httpBodyData, encoding: .utf8) { @@ -501,8 +497,19 @@ open class DownloadRequest: Request { // MARK: State /// Cancels the request. - open override func cancel() { - downloadDelegate.downloadTask.cancel { self.downloadDelegate.resumeData = $0 } + override open func cancel() { + cancel(createResumeData: true) + } + + /// Cancels the request. + /// + /// - parameter createResumeData: Determines whether resume data is created via the underlying download task or not. + open func cancel(createResumeData: Bool) { + if createResumeData { + downloadDelegate.downloadTask.cancel { self.downloadDelegate.resumeData = $0 } + } else { + downloadDelegate.downloadTask.cancel() + } NotificationCenter.default.post( name: Notification.Name.Task.DidCancel, @@ -537,7 +544,8 @@ open class DownloadRequest: Request { open class func suggestedDownloadDestination( for directory: FileManager.SearchPathDirectory = .documentDirectory, in domain: FileManager.SearchPathDomainMask = .userDomainMask) - -> DownloadFileDestination { + -> DownloadFileDestination + { return { temporaryURL, response in let directoryURLs = FileManager.default.urls(for: directory, in: domain) diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift index 23571383ba..747a471a55 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Response.swift @@ -1,7 +1,7 @@ // // Response.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -58,7 +58,8 @@ public struct DefaultDataResponse { data: Data?, error: Error?, timeline: Timeline = Timeline(), - metrics: AnyObject? = nil) { + metrics: AnyObject? = nil) + { self.request = request self.response = response self.data = data @@ -108,7 +109,8 @@ public struct DataResponse { response: HTTPURLResponse?, data: Data?, result: Result, - timeline: Timeline = Timeline()) { + timeline: Timeline = Timeline()) + { self.request = request self.response = response self.data = data @@ -294,7 +296,8 @@ public struct DefaultDownloadResponse { resumeData: Data?, error: Error?, timeline: Timeline = Timeline(), - metrics: AnyObject? = nil) { + metrics: AnyObject? = nil) + { self.request = request self.response = response self.temporaryURL = temporaryURL @@ -356,7 +359,8 @@ public struct DownloadResponse { destinationURL: URL?, resumeData: Data?, result: Result, - timeline: Timeline = Timeline()) { + timeline: Timeline = Timeline()) + { self.request = request self.response = response self.temporaryURL = temporaryURL diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift index fd049edac1..9cc105a820 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift @@ -1,7 +1,7 @@ // // ResponseSerialization.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -144,7 +144,8 @@ extension DataRequest { queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { let result = responseSerializer.serializeResponse( self.request, @@ -181,7 +182,8 @@ extension DownloadRequest { public func response( queue: DispatchQueue? = nil, completionHandler: @escaping (DefaultDownloadResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { (queue ?? DispatchQueue.main).async { var downloadResponse = DefaultDownloadResponse( @@ -216,7 +218,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { let result = responseSerializer.serializeResponse( self.request, @@ -286,7 +289,8 @@ extension DataRequest { public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.dataResponseSerializer(), @@ -325,7 +329,8 @@ extension DownloadRequest { public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.dataResponseSerializer(), @@ -351,7 +356,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") } @@ -405,7 +411,8 @@ extension DataRequest { queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding), @@ -452,7 +459,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding), @@ -478,7 +486,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) } @@ -505,7 +514,8 @@ extension DataRequest { /// - returns: A JSON object response serializer. public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) - -> DataResponseSerializer { + -> DataResponseSerializer + { return DataResponseSerializer { _, response, data, error in return Request.serializeResponseJSON(options: options, response: response, data: data, error: error) } @@ -522,7 +532,8 @@ extension DataRequest { queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.jsonResponseSerializer(options: options), @@ -540,7 +551,8 @@ extension DownloadRequest { /// - returns: A JSON object response serializer. public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) - -> DownloadResponseSerializer { + -> DownloadResponseSerializer + { return DownloadResponseSerializer { _, response, fileURL, error in guard error == nil else { return .failure(error!) } @@ -568,7 +580,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.jsonResponseSerializer(options: options), @@ -594,7 +607,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) } @@ -621,7 +635,8 @@ extension DataRequest { /// - returns: A property list object response serializer. public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) - -> DataResponseSerializer { + -> DataResponseSerializer + { return DataResponseSerializer { _, response, data, error in return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error) } @@ -638,7 +653,8 @@ extension DataRequest { queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.propertyListResponseSerializer(options: options), @@ -656,7 +672,8 @@ extension DownloadRequest { /// - returns: A property list object response serializer. public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) - -> DownloadResponseSerializer { + -> DownloadResponseSerializer + { return DownloadResponseSerializer { _, response, fileURL, error in guard error == nil else { return .failure(error!) } @@ -684,7 +701,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options), diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Result.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Result.swift index df62e12cab..e0928089ab 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Result.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Result.swift @@ -1,7 +1,7 @@ // // Result.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -253,8 +253,8 @@ extension Result { /// - Parameter closure: A closure that takes the success value of this instance. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func withValue(_ closure: (Value) -> Void) -> Result { - if case let .success(value) = self { closure(value) } + public func withValue(_ closure: (Value) throws -> Void) rethrows -> Result { + if case let .success(value) = self { try closure(value) } return self } @@ -266,8 +266,8 @@ extension Result { /// - Parameter closure: A closure that takes the success value of this instance. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func withError(_ closure: (Error) -> Void) -> Result { - if case let .failure(error) = self { closure(error) } + public func withError(_ closure: (Error) throws -> Void) rethrows -> Result { + if case let .failure(error) = self { try closure(error) } return self } @@ -279,8 +279,8 @@ extension Result { /// - Parameter closure: A `Void` closure. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func ifSuccess(_ closure: () -> Void) -> Result { - if isSuccess { closure() } + public func ifSuccess(_ closure: () throws -> Void) rethrows -> Result { + if isSuccess { try closure() } return self } @@ -292,8 +292,8 @@ extension Result { /// - Parameter closure: A `Void` closure. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func ifFailure(_ closure: () -> Void) -> Result { - if isFailure { closure() } + public func ifFailure(_ closure: () throws -> Void) rethrows -> Result { + if isFailure { try closure() } return self } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift index d50e941fab..dea099e257 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift @@ -1,7 +1,7 @@ // // ServerTrustPolicy.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -249,6 +249,7 @@ public enum ServerTrustPolicy { let unspecified = SecTrustResultType.unspecified let proceed = SecTrustResultType.proceed + isValid = result == unspecified || result == proceed } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift index 17d0d9f150..4964f1eebf 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift @@ -1,7 +1,7 @@ // // SessionDelegate.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -255,7 +255,8 @@ extension SessionDelegate: URLSessionDelegate { open func urlSession( _ session: URLSession, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { guard sessionDidReceiveChallengeWithCompletion == nil else { sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler) return @@ -314,7 +315,8 @@ extension SessionDelegate: URLSessionTaskDelegate { task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, - completionHandler: @escaping (URLRequest?) -> Void) { + completionHandler: @escaping (URLRequest?) -> Void) + { guard taskWillPerformHTTPRedirectionWithCompletion == nil else { taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler) return @@ -340,7 +342,8 @@ extension SessionDelegate: URLSessionTaskDelegate { _ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { guard taskDidReceiveChallengeWithCompletion == nil else { taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler) return @@ -369,7 +372,8 @@ extension SessionDelegate: URLSessionTaskDelegate { open func urlSession( _ session: URLSession, task: URLSessionTask, - needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) { + needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) + { guard taskNeedNewBodyStreamWithCompletion == nil else { taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler) return @@ -394,7 +398,8 @@ extension SessionDelegate: URLSessionTaskDelegate { task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, - totalBytesExpectedToSend: Int64) { + totalBytesExpectedToSend: Int64) + { if let taskDidSendBodyData = taskDidSendBodyData { taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend) } else if let delegate = self[task]?.delegate as? UploadTaskDelegate { @@ -507,7 +512,8 @@ extension SessionDelegate: URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, - completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) { + completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) + { guard dataTaskDidReceiveResponseWithCompletion == nil else { dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler) return @@ -530,7 +536,8 @@ extension SessionDelegate: URLSessionDataDelegate { open func urlSession( _ session: URLSession, dataTask: URLSessionDataTask, - didBecome downloadTask: URLSessionDownloadTask) { + didBecome downloadTask: URLSessionDownloadTask) + { if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask { dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask) } else { @@ -566,7 +573,8 @@ extension SessionDelegate: URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, - completionHandler: @escaping (CachedURLResponse?) -> Void) { + completionHandler: @escaping (CachedURLResponse?) -> Void) + { guard dataTaskWillCacheResponseWithCompletion == nil else { dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler) return @@ -600,7 +608,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { open func urlSession( _ session: URLSession, downloadTask: URLSessionDownloadTask, - didFinishDownloadingTo location: URL) { + didFinishDownloadingTo location: URL) + { if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL { downloadTaskDidFinishDownloadingToURL(session, downloadTask, location) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -623,7 +632,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, - totalBytesExpectedToWrite: Int64) { + totalBytesExpectedToWrite: Int64) + { if let downloadTaskDidWriteData = downloadTaskDidWriteData { downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -651,7 +661,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { _ session: URLSession, downloadTask: URLSessionDownloadTask, didResumeAtOffset fileOffset: Int64, - expectedTotalBytes: Int64) { + expectedTotalBytes: Int64) + { if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset { downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -705,7 +716,8 @@ extension SessionDelegate: URLSessionStreamDelegate { _ session: URLSession, streamTask: URLSessionStreamTask, didBecome inputStream: InputStream, - outputStream: OutputStream) { + outputStream: OutputStream) + { streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream) } } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift index 8c10706677..02c36a76b7 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift @@ -1,7 +1,7 @@ // // SessionManager.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -166,7 +166,8 @@ open class SessionManager { public init( configuration: URLSessionConfiguration = URLSessionConfiguration.default, delegate: SessionDelegate = SessionDelegate(), - serverTrustPolicyManager: ServerTrustPolicyManager? = nil) { + serverTrustPolicyManager: ServerTrustPolicyManager? = nil) + { self.delegate = delegate self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil) @@ -184,7 +185,8 @@ open class SessionManager { public init?( session: URLSession, delegate: SessionDelegate, - serverTrustPolicyManager: ServerTrustPolicyManager? = nil) { + serverTrustPolicyManager: ServerTrustPolicyManager? = nil) + { guard delegate === session.delegate else { return nil } self.delegate = delegate @@ -227,7 +229,8 @@ open class SessionManager { parameters: Parameters? = nil, encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil) - -> DataRequest { + -> DataRequest + { var originalRequest: URLRequest? do { @@ -317,7 +320,8 @@ open class SessionManager { encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) let encodedURLRequest = try encoding.encode(urlRequest, with: parameters) @@ -343,7 +347,8 @@ open class SessionManager { open func download( _ urlRequest: URLRequestConvertible, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { do { let urlRequest = try urlRequest.asURLRequest() return download(.request(urlRequest), to: destination) @@ -379,7 +384,8 @@ open class SessionManager { open func download( resumingWith resumeData: Data, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { return download(.resumeData(resumeData), to: destination) } @@ -388,7 +394,8 @@ open class SessionManager { private func download( _ downloadable: DownloadRequest.Downloadable, to destination: DownloadRequest.DownloadFileDestination?) - -> DownloadRequest { + -> DownloadRequest + { do { let task = try downloadable.task(session: session, adapter: adapter, queue: queue) let download = DownloadRequest(session: session, requestTask: .download(downloadable, task)) @@ -409,7 +416,8 @@ open class SessionManager { _ downloadable: DownloadRequest.Downloadable?, to destination: DownloadRequest.DownloadFileDestination?, failedWith error: Error) - -> DownloadRequest { + -> DownloadRequest + { var downloadTask: Request.RequestTask = .download(nil, nil) if let downloadable = downloadable { @@ -450,7 +458,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(fileURL, with: urlRequest) @@ -495,7 +504,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(data, with: urlRequest) @@ -540,7 +550,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(stream, with: urlRequest) @@ -600,7 +611,9 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil, - encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) { + queue: DispatchQueue? = nil, + encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) @@ -608,10 +621,11 @@ open class SessionManager { multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, with: urlRequest, + queue: queue, encodingCompletion: encodingCompletion ) } catch { - DispatchQueue.main.async { encodingCompletion?(.failure(error)) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(.failure(error)) } } } @@ -642,7 +656,9 @@ open class SessionManager { multipartFormData: @escaping (MultipartFormData) -> Void, usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold, with urlRequest: URLRequestConvertible, - encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) { + queue: DispatchQueue? = nil, + encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) + { DispatchQueue.global(qos: .utility).async { let formData = MultipartFormData() multipartFormData(formData) @@ -664,7 +680,7 @@ open class SessionManager { streamFileURL: nil ) - DispatchQueue.main.async { encodingCompletion?(encodingResult) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(encodingResult) } } else { let fileManager = FileManager.default let tempDirectoryURL = URL(fileURLWithPath: NSTemporaryDirectory()) @@ -700,7 +716,7 @@ open class SessionManager { } } - DispatchQueue.main.async { + (queue ?? DispatchQueue.main).async { let encodingResult = MultipartFormDataEncodingResult.success( request: upload, streamingFromDisk: true, @@ -720,7 +736,7 @@ open class SessionManager { } } - DispatchQueue.main.async { encodingCompletion?(.failure(error)) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(.failure(error)) } } } } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift index 12fcbe92d3..5705737e49 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift @@ -1,7 +1,7 @@ // // TaskDelegate.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -94,7 +94,8 @@ open class TaskDelegate: NSObject { task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, - completionHandler: @escaping (URLRequest?) -> Void) { + completionHandler: @escaping (URLRequest?) -> Void) + { var redirectRequest: URLRequest? = request if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection { @@ -109,7 +110,8 @@ open class TaskDelegate: NSObject { _ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling var credential: URLCredential? @@ -148,7 +150,8 @@ open class TaskDelegate: NSObject { func urlSession( _ session: URLSession, task: URLSessionTask, - needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) { + needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) + { var bodyStream: InputStream? if let taskNeedNewBodyStream = taskNeedNewBodyStream { @@ -234,7 +237,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, - completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) { + completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) + { var disposition: URLSession.ResponseDisposition = .allow expectedContentLength = response.expectedContentLength @@ -249,7 +253,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { func urlSession( _ session: URLSession, dataTask: URLSessionDataTask, - didBecome downloadTask: URLSessionDownloadTask) { + didBecome downloadTask: URLSessionDownloadTask) + { dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask) } @@ -282,7 +287,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, - completionHandler: @escaping (CachedURLResponse?) -> Void) { + completionHandler: @escaping (CachedURLResponse?) -> Void) + { var cachedResponse: CachedURLResponse? = proposedResponse if let dataTaskWillCacheResponse = dataTaskWillCacheResponse { @@ -337,7 +343,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { func urlSession( _ session: URLSession, downloadTask: URLSessionDownloadTask, - didFinishDownloadingTo location: URL) { + didFinishDownloadingTo location: URL) + { temporaryURL = location guard @@ -372,7 +379,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, - totalBytesExpectedToWrite: Int64) { + totalBytesExpectedToWrite: Int64) + { if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() } if let downloadTaskDidWriteData = downloadTaskDidWriteData { @@ -397,7 +405,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { _ session: URLSession, downloadTask: URLSessionDownloadTask, didResumeAtOffset fileOffset: Int64, - expectedTotalBytes: Int64) { + expectedTotalBytes: Int64) + { if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset { downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes) } else { @@ -439,7 +448,8 @@ class UploadTaskDelegate: DataTaskDelegate { task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, - totalBytesExpectedToSend: Int64) { + totalBytesExpectedToSend: Int64) + { if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() } if let taskDidSendBodyData = taskDidSendBodyData { diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift index b318b1ff48..596c1bdc41 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift @@ -1,7 +1,7 @@ // // Timeline.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -64,7 +64,8 @@ public struct Timeline { requestStartTime: CFAbsoluteTime = 0.0, initialResponseTime: CFAbsoluteTime = 0.0, requestCompletedTime: CFAbsoluteTime = 0.0, - serializationCompletedTime: CFAbsoluteTime = 0.0) { + serializationCompletedTime: CFAbsoluteTime = 0.0) + { self.requestStartTime = requestStartTime self.initialResponseTime = initialResponseTime self.requestCompletedTime = requestCompletedTime diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift index deaee34ad8..59e0bbb2b0 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift @@ -1,7 +1,7 @@ // // Validation.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -94,7 +94,8 @@ extension Request { statusCode acceptableStatusCodes: S, response: HTTPURLResponse) -> ValidationResult - where S.Iterator.Element == Int { + where S.Iterator.Element == Int + { if acceptableStatusCodes.contains(response.statusCode) { return .success } else { @@ -110,7 +111,8 @@ extension Request { response: HTTPURLResponse, data: Data?) -> ValidationResult - where S.Iterator.Element == String { + where S.Iterator.Element == String + { guard let data = data, data.count > 0 else { return .success } guard @@ -217,7 +219,10 @@ extension DataRequest { /// - returns: The request. @discardableResult public func validate() -> Self { - return validate(statusCode: self.acceptableStatusCodes).validate(contentType: self.acceptableContentTypes) + let contentTypes = { [unowned self] in + self.acceptableContentTypes + } + return validate(statusCode: acceptableStatusCodes).validate(contentType: contentTypes()) } } @@ -308,6 +313,9 @@ extension DownloadRequest { /// - returns: The request. @discardableResult public func validate() -> Self { - return validate(statusCode: self.acceptableStatusCodes).validate(contentType: self.acceptableContentTypes) + let contentTypes = { [unowned self] in + self.acceptableContentTypes + } + return validate(statusCode: acceptableStatusCodes).validate(contentType: contentTypes()) } } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json index a7b610374d..bd27355c1e 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json @@ -5,7 +5,7 @@ "osx": "10.11", "tvos": "9.0" }, - "version": "0.0.1", + "version": "1.0.0", "source": { "git": "git@github.com:OpenAPITools/openapi-generator.git", "tag": "v1.0.0" @@ -17,7 +17,7 @@ "source_files": "PetstoreClient/Classes/**/*.swift", "dependencies": { "Alamofire": [ - "~> 4.7.0" + "~> 4.9.0" ] } } diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Manifest.lock b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Manifest.lock index 3e86a1e892..ec15c4176b 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Manifest.lock +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Manifest.lock @@ -1,7 +1,7 @@ PODS: - - Alamofire (4.7.3) - - PetstoreClient (0.0.1): - - Alamofire (~> 4.7.0) + - Alamofire (4.9.0) + - PetstoreClient (1.0.0): + - Alamofire (~> 4.9.0) DEPENDENCIES: - PetstoreClient (from `../`) @@ -15,9 +15,9 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 - PetstoreClient: ed26185215a5241fa4e937e806321d611f3d0c30 + Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 + PetstoreClient: e5c71b862a32097342e341f7088805bbfc033a3e PODFILE CHECKSUM: cedb3058b02f4776d7c31f6d92ae2f674fdf424d -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj index bea5377184..656584d5fe 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj @@ -7,595 +7,675 @@ objects = { /* Begin PBXBuildFile section */ - 00341EF6A7B4101FF46544D933635229 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */; }; - 0462132D8A221E85B43B5D0AFE074B23 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61179CE650778B2A5C39664F0A792B5C /* List.swift */; }; - 063AC1A2D17C03DB6AE6B56429C430AD /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */; }; - 063E2A92EA8D52DF1DE2B29A80271858 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DB9F66ED7A250BB1AE2875F8D38C7398 /* Foundation.framework */; }; - 0CEE61815D35A28299E0BA885E16C112 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */; }; - 0D8E2ADD22CCD2E6C2BF6582FCE29B47 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */; }; - 151C0E3E3BADF3BD659A77F19595BF27 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */; }; - 15ECAFF2A1CBC210557839EEDF3C3D38 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = FECB278917C7651872C44FB1C0B6E620 /* Category.swift */; }; - 1640C16ABE8012EAAFE90D791557FDF9 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */; }; - 16DB938155CCFB9BC71D6A77CF010879 /* PetstoreClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */; }; - 19C14C995002401BFE2D1473DEC489EB /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */; }; - 1D7E6E3D0746430E18CDB78891EDE347 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */; }; - 1F3BAC001FC3715C820B5C960406A561 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */; }; - 1FC3FD39157C2FFFF3869A1300730086 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 195D73DD9EF275A3C56569E2B1CA8026 /* SessionDelegate.swift */; }; - 201A9F0D023F7FE7241C5447B9E271F5 /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */; }; - 204CD8BD5DFA5F431E54B2158020313F /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */; }; - 214063DCA19E4F95FD585B94AEDE25A9 /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */; }; - 227BC4B7AA95B107A6C7122A60E0A7EB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DB9F66ED7A250BB1AE2875F8D38C7398 /* Foundation.framework */; }; - 23855C6F80E2FCD617CC96D08630B6AB /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */; }; - 2B4C80F28EAEFC3BBE5BD974EB3B95DA /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */; }; - 2F6D76F7F1D34CD4F119CF4C05F79941 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */; }; - 3265BF82EA7637405F53CDD084D84E6B /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */; }; - 355D5224AAFBFC15E7C4C969EC32AE4D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DB9F66ED7A250BB1AE2875F8D38C7398 /* Foundation.framework */; }; - 36FF8853CB34A9297AFAA8F5F7456324 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A01C037B4034EDA3D7955BC5E4E9D9D6 /* TaskDelegate.swift */; }; - 374D2C9F33B2604BD70B56ECD1CB25CE /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */; }; - 3F1A0295FDDB3D9352C4849AA6B422A6 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */; }; - 41ABC33FF82319033B71B163D60A6DB2 /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */; }; - 48153C45BEC62DCD38ACDD4D69268F19 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */; }; - 48295E9619D587EE6F54C0A4AD85BCFE /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */; }; - 4E1A913EFB404FB11524718FF0298EFE /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFCB8C44DE758E906C0BCDA455937B85 /* Alamofire.swift */; }; - 4E55388941C2C8112143B35EE1315F34 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */; }; - 500C8EDA60C07B0F127C7FC385E17D38 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66A46F517F0AF7E85A16D723F6406896 /* Notifications.swift */; }; - 512F26D1DCFE54340A28AAA8C5FABB97 /* Pods-SwaggerClientTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */; }; - 51659F8BFC3F73762CEC48B7453AD8C8 /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */; }; - 52237C35642089F77DD4D723CEB25737 /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F47F5C9CDB035C5AFADEBA5BF44F1C /* Response.swift */; }; - 58A9719584AFA2D108D9E5C585A79329 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = B029DBC43E49A740F12B5E4D2E6DD452 /* Validation.swift */; }; - 5AFB71D48FC0E7EEFD72E1E3F3CEB5C4 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */; }; - 5C0337DC320806EC3F097E911F9C0DD9 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */; }; - 5D4085BF3C1663906E50F3E00A1D97F8 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */; }; - 5EE5FED83B90A606A763CF1114D1D6FB /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2F9510473F6FFD7AA66524DB16C2263 /* ResponseSerialization.swift */; }; - 616F0481C475C488192EF999DFC00B7C /* Pods-SwaggerClientTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6AFA16CC62AEAEF1D878680C0F50F627 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5A46D45023C6CBF06AA36844D59C59E /* User.swift */; }; - 6BEA14EC335E07C7063CD1383C0C443C /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32B030D27CAC730C5EB0F22390645310 /* ServerTrustPolicy.swift */; }; - 6D4CC1413AC88773D7EFB372A9CCE959 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */; }; - 7068E8A7DDC1424EE8F24BC77E8746F4 /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46CDAC6C1187C5467E576980E1062C8B /* SessionManager.swift */; }; - 72501058DEC3917D0B2AB6365A5B539E /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */; }; - 73137082931A2CB5FA591116EB990CA7 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */; }; - 796177DE2762F24DAC16A709FD954838 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6639346628280A0D0FAD35196BF56108 /* ParameterEncoding.swift */; }; - 7B81A89A48F4B69CF3B466B42C1D261C /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */; }; - 88D4AC95BAE52DA8BB766CACFEC8D048 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 405921FE252DC3DC1087DA4217236D81 /* Name.swift */; }; - 899D343DC64C9035D1F25F9A21482069 /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */; }; - 8C9ED087F9243A6F3884E14BA47C65DE /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */; }; - 8D1E66FE754A575BFFD9E0A4AD2E5ACC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DB9F66ED7A250BB1AE2875F8D38C7398 /* Foundation.framework */; }; - 90B4ABD4170C02C607BFEBD02FC620EA /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */; }; - 917F41A1E2ED08D156901E0F106F1ED7 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */; }; - 965DACF3DC02857ECBE66C5CBA3DA5D4 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E230A0448B394DE26E688DAC8E6201E /* Request.swift */; }; - 98C6FEFF7D91A1D9C7FBAF4EE289B315 /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */; }; - B2211A048358C098B09DDD64C1D92BE3 /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */; }; - B424F524BBBE34E685129945993809A8 /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87882A1F5A92C8138D54545E51D51E6F /* Timeline.swift */; }; - B77705737566AE83ED7E448923D7FA60 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5A8AA5F9EDED0A0BDDE7E830BF4AEE0 /* NetworkReachabilityManager.swift */; }; - B921FEBEA30528C1F85E504039D08100 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */; }; - BE4BA1EDE444A770F834605F4B65348E /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4AF006B0AD5765D1BFA8253C2DCBB126 /* AFError.swift */; }; - C7787631ABBCAE939E73EF127A6DEFE5 /* Pods-SwaggerClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D2860F063F30E8636B6F063DA9E33B4E /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */; }; - D4C3899574E9D5DF5E5DA52310560BCC /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D1F50F37DFB6DC0B7B9D8C373E5A3EAE /* Alamofire-dummy.m */; }; - DBE6E2E4D205545E7988CFA5057C31D6 /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FCBF1EED873F61C6D46CE37FA5C39D3 /* DispatchQueue+Alamofire.swift */; }; - E0318FD26B8028AB3DA3699542937456 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */; }; - E3FB62FBC5A476B8F87D6E6B7AB4A655 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */; }; - E67A357BA642B394AAD8E5F853295AC8 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 706C7AFFE37BA158C3553250F4B5FAED /* Alamofire.framework */; }; - E8D261A320D518E8892DF423B4C46644 /* Pods-SwaggerClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */; }; - E9FA84DF60802AB7C37A4C66D904977E /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */; }; - EB0BE93F04174AA1C723E482729763F1 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */; }; - ECC9B55386849F36810B0F4E94C8F1B3 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7898EEC6A565DE133438C48988478954 /* Extensions.swift */; }; - ED1BB4E1E954FBDAE0A4ABE8111DFCB2 /* PetstoreClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - EF1461221681BCA12A4147900A704727 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 03DECE84DC850B04690604AB7C521277 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F315BA7152C0B8129A2E092CB2118E2D /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */; }; - F545D346865CEDE236579EDC8BF4B639 /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */; }; - F94E4DD5FA0233D2D212AA5D7F91D23B /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */; }; - F9EA61D484CC15FDDAB0D8C0D26D7949 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D60BC9955B4F7FFA62D7440CB385C11 /* Result.swift */; }; - FE8F3E7C5189F971D72565EE61E70616 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */; }; - FF9C7BC64DB23D2CED48197DE67F0335 /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 155538D91ACEEEDF82069ACF6C1A02E7 /* MultipartFormData.swift */; }; + 00020DC43A4750034730E499473769DD /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88A2B15E13C750A143B6E5D75B3EF08A /* Capitalization.swift */; }; + 012AD29BA655B831F2BE3F50ECB3BB85 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 089B2FA1773BD330AB52EF68B8C80090 /* AnotherFakeAPI.swift */; }; + 030881D9CABF4692C54FBFA6EECC2120 /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA8498C6CE23C7D39CB4064A7D3C23E1 /* JSONEncodingHelper.swift */; }; + 0376FA9CA4578351B19BF40B86DAF6C8 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5DB595A95DED4373F5C07D3F42CE2FD /* StringBooleanMap.swift */; }; + 059D92B7BBFBEC53E9A3B6E11C5C3B3A /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = CCC6858C85690F7AFEA7F6542EE9A69A /* Response.swift */; }; + 06908794B0BD0AD1C3328AD8BC4B82B6 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 153232F938AACFEEA39854060E3474F9 /* UserAPI.swift */; }; + 08E8DE6A3DE3C4AACE22E6FC79A780B5 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3677DD1DD5DA7B4FD4A71A12902EB1FF /* FileSchemaTestClass.swift */; }; + 09DCE775C28AEE3A523DDA9A9D485EBD /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EB0E56BEED9117DC5F2C7AF6582AB9C2 /* Foundation.framework */; }; + 0A39AF55285A3A4F7CBABB6D822FA4A3 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C15C076B531E2E7744C358418A0C0B5 /* Alamofire.swift */; }; + 0AB631DF2E9BC76B8736C9EFF6191C0B /* Pods-SwaggerClientTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0BB6E533AD607BA63514CA234EC13B7C /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FDDE05FE69A89680803CCE1D0DDD1BC /* ClassModel.swift */; }; + 0F31785CFEFE0D75C731D380DA0B448A /* Pods-SwaggerClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1C676BF112685E2AF7EC6D0E50897D13 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EB0E56BEED9117DC5F2C7AF6582AB9C2 /* Foundation.framework */; }; + 1D29D2ACADF961F69D32B06FA6A09E28 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = B06639F7A76DB8A9D0D0E41CDD7A6684 /* Notifications.swift */; }; + 23F07945B38A4B2E16A37448381E0728 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = B98D91A23E6414F7AF9797FDA6CDE301 /* FakeClassnameTags123API.swift */; }; + 2903713D6C0E8861C1C225BBE2005553 /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8B87E7F72022E18968F7E2884190864 /* Client.swift */; }; + 2CABDAFCB4D1AAFD4466F7B334075350 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3836ABD376ED2AA0133D2BAD057084A8 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; }; + 345CE6549CCB11C35AB61D1C95ADB09E /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C6E73F71067053DDD4DD9F74AA71B8E /* CatAllOf.swift */; }; + 355C18EEC82624A06A6CC93965258E33 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D59E1AD3CC394A93392FF3DC8CF2961 /* Request.swift */; }; + 35691EF5F336C91F9446841E240A546E /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CD03ACAF8CC392DA908F3ACB71558AF5 /* Alamofire.framework */; }; + 39CB87943FDF18297E1B55D71759E6F0 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92C52F4995CB5F6F58D97D24A9714C82 /* HasOnlyReadOnly.swift */; }; + 3B2E7969FD3611446E0C3428B6FD506E /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20EB7CD037B7A541D39B47B96C87D3BB /* User.swift */; }; + 3BD1DAFE1F3E6C9E4EB0F2099B6D6FA2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EB0E56BEED9117DC5F2C7AF6582AB9C2 /* Foundation.framework */; }; + 3D0DF4B3FD3DBE3E87FC471D5098B08C /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3906E6EA8C3F2D343170E909DB10D598 /* ApiResponse.swift */; }; + 3E0749AF6C51BCF0E4A41CF1D6A76FED /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFF7F7716086D54E6308EE52C8227B87 /* DispatchQueue+Alamofire.swift */; }; + 41B161B3DF73F631EB37EBC84E989A86 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3772CF80ABE43A1C8B98C26806814C03 /* StoreAPI.swift */; }; + 43E11CFB9D9D75B04BD1C3710122FEDC /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = BEF884C644D97FF181378FD4B0BEE949 /* CodableHelper.swift */; }; + 45C8A9D978B277C6D772171CBC9D00A2 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55BD21CB9821EDFA7774D5BF62F1447C /* EnumClass.swift */; }; + 4C67C04C2DEA0EC6A77990134EFC44F0 /* PetstoreClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C754B2060CD998899F4CDCEFBA8CBECA /* PetstoreClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 515561C8235B83BE66FDAFB598982F1A /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72401B0640F79CE5D0D95808F3809EAD /* Dog.swift */; }; + 518CCCA0F4D22FF969EBC3E3077FCC92 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2C77186D6C808BF3DF45437777838E5 /* MapTest.swift */; }; + 52BB72DA85ECC5DF65DB17DC7FE78794 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A16AB1E07D9C345D25EAA6D65AFB7D /* Pet.swift */; }; + 568163D7220FA2ACE76E2A089ED97367 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = 817EF1FA2F48683ECFBC85626DD432E2 /* TypeHolderDefault.swift */; }; + 5C270500727A5736EEBC6E2B5545122F /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28821B55DAEFB6A4294C4E45B43C7189 /* List.swift */; }; + 60B6C2A003864AAD3A426448152F67BE /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32DB5272AD01ECD0B09A86818A7754C4 /* Timeline.swift */; }; + 616E91DF676728E98777E4C2221F30FF /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F4F7045EE429F75182B88C370E5BF6B /* OuterEnum.swift */; }; + 65D4CBC83D44D1079503E162E56EB1FC /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8E4A82321F917DE99EA9ED0A4144F8D /* Return.swift */; }; + 6B598CD6C3665D587BD8EDE6202EA593 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EB0E56BEED9117DC5F2C7AF6582AB9C2 /* Foundation.framework */; }; + 6C9EBD7E61FF56596714B6E4AD520FC8 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5BA3CDA675544F94288511FF6B9A95C /* ArrayOfNumberOnly.swift */; }; + 6EFD003458AE7F689DEA720A2030C261 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B03859BDC36782899379E222720A297 /* ResponseSerialization.swift */; }; + 700D3D95AF9520CB227846DFD943A2DA /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D01BA8472F25D39F718F71557EDC8DD /* ParameterEncoding.swift */; }; + 7038EA9A3B5C95A704774228807F5BA5 /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F38D962B7C2FCDF7409552EE9E8C179 /* EnumTest.swift */; }; + 73AB05789A4982944AF68DBD013E3EB7 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5460AD0F6241621B45A17AB23A8E5B7 /* NetworkReachabilityManager.swift */; }; + 76C734AAD021F98862B409EED92BF7D9 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0DE2B0929020E3EB62D72BCE6C283C4A /* Models.swift */; }; + 772911DA6E33D1CBBC30131B7C8BDBB3 /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = BE16989701DCA0B781F86A093D7C5E22 /* Alamofire-dummy.m */; }; + 77E8F0EB9FFBE2E3EB0C77095C644606 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75C759635F88377BD7E2DEDE04C23C62 /* TaskDelegate.swift */; }; + 793AD3096164E125123B8D52AB5A9C22 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE9405B96DD389E966703C925771AE55 /* APIHelper.swift */; }; + 7E3538A6992A38276764936A9733493D /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D5A0E300C04A6DF88D620788FE38780 /* AFError.swift */; }; + 8012A57CFFC574F745FBA46D335BBA6F /* Pods-SwaggerClientTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */; }; + 82855B7090157FE1AD95290494B727D1 /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FF775468F874E6C4B902D12CAACC0E3 /* APIs.swift */; }; + 8D2A6A90A6DDAF75EA52D471258545CC /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4453BE339B79900FDC53E34FE5589CB /* ServerTrustPolicy.swift */; }; + 9013E87432F737C0EBC7E8F2CCAD38BD /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9A840A90776C4F3557DA50E60D43461 /* Name.swift */; }; + 939C0EDFC1A0E1371F8B4C08A8ED35FB /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = E68F2B0ADDEF9CCD4DDE5F0B6DBFB8EA /* AdditionalPropertiesClass.swift */; }; + 93F8F669E4B04B4DB531D251706A500E /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ADA544DF1F872830B177489DD976D01 /* OuterComposite.swift */; }; + 962EFB8F73E4755A382781A0985D65F7 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBCED4E7B2ED8CD7B003737E8500B966 /* SpecialModelName.swift */; }; + 9E4EAB317A51EDDEB0F989FAFE98FF2C /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22171F3CD54600483DE4B4FF7CA42C92 /* Order.swift */; }; + 9E6C948768C510831A7E51DACDADF113 /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = A0F2DC364EA3C24C587CAC4E7F2CACE6 /* File.swift */; }; + A1EC41966B261DCE460BCDE5124A1DBE /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F640F61D5BEE8132009BAEAA65B587A4 /* SessionDelegate.swift */; }; + A3A401A337A4033FDD4A3394D1F6DC1B /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23FFF870A0F3262D972AF2BE98E98138 /* TypeHolderExample.swift */; }; + A3BC5451845657493232AC0525864F5A /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5E55CD80321500D34FB83EFB4EFE1B1 /* ArrayOfArrayOfNumberOnly.swift */; }; + A5DA5B46FB2ACACFD536CFA4773F72EB /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = 792A29ED78AA102548A11FE803EBA726 /* AnimalFarm.swift */; }; + A78CA9C83C384A1BC74AB5AE5E11B9C6 /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 679BA825A029EC81F394535E7D9659AF /* DogAllOf.swift */; }; + A7D6F30DD00FE0799E3226CAD9B4F0F8 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6CD835DD6D842734F41B52C7DD76912 /* ReadOnlyFirst.swift */; }; + AA56769D8733D3F3E7976742D5ABA998 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33115EC2A5164913C68F8BD170389EEE /* Validation.swift */; }; + AACBCD94F445251BFB8EF281B06070FC /* Pods-SwaggerClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */; }; + AE8E12A37981E08C499422F0D7DB3562 /* PetstoreClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B4C8BF21BF7235F0CAFCEF0A0BE6F346 /* PetstoreClient-dummy.m */; }; + AEA829AB1A8AF2AD077A808AED6B178A /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFCE3D7EDCA41F256D471B40BBFD3FCE /* MultipartFormData.swift */; }; + B09502FF56FD28B439A446079AA44828 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 67BB3E8F1A01B496D370968537953FBC /* NumberOnly.swift */; }; + B6F6E4CC26451E91B59FAE0F6841DC1F /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 15A825CFEBAE606149BF0047C9F5B209 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C213B705CDEE5ABB1DD45D2D7C399916 /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = E8300E68C77CC2ED6253C2D484EBA225 /* Model200Response.swift */; }; + C47592022591B4355678CD336729BCFD /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8632E8244954DC5394C9F221CDA12310 /* FormatTest.swift */; }; + C617ABA269C12A01EE8FB2B48E2EE24E /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = C69D6F2D2B19627D7A73D8F815F56BBA /* Animal.swift */; }; + C625241EED7F5ABFA3421D1D2F33B9A7 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FB3702E62314B602C9C852FEC5CE0D0 /* PetAPI.swift */; }; + D0DD0433ABCBA1390C9D519BB8AF31B0 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED376BFA75520EB1CC8120AC95A2E285 /* ArrayTest.swift */; }; + D3FA0AA634AAEA99AB3FABC36BB4958C /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D7E25E371731FAE44F46A9F392CB5D5 /* SessionManager.swift */; }; + D6766263F6808C3555974C9090704382 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = FBE9E546637EAC1DDD7E9C12BA7BF345 /* Extensions.swift */; }; + E238DCD8EEAA785F12BC409CBC9FFEB2 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB1E2D32BAA3BD9844DB191DDADBCF12 /* Configuration.swift */; }; + EB0DD8CEA1A69867A30267439C970440 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD807F155301ECA538A2C1C296E1186D /* Result.swift */; }; + ED805B7A7AFAE3166128F815B88FF4C9 /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBFF7DE6C567908623AE0BCD2F3A3857 /* Tag.swift */; }; + F19C4993AFB23C230522A94EDC95D0AE /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 514BDF609598FE35A5525ED6A181A1A8 /* JSONEncodableEncoding.swift */; }; + F60E9EC2AB3CE86877D7ED2FEB8C6352 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD1ED5E98426A54EB45C305EE40C983E /* Category.swift */; }; + FBA30FAE70E2ABBD40E4DAC76BA02AED /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0718B8E646D897336A3ECCC5B9090E53 /* AlamofireImplementations.swift */; }; + FBE98F05475A9917F6D17BE065FEF26B /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7BC3FD15E2040B5431F44C865823CCE /* Cat.swift */; }; + FDA5017C03A4F8778D62CB4317B41830 /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE0F580409071DCE59A5124FF9E82BFB /* EnumArrays.swift */; }; + FF88BA5F972D79C65C8A0A55F1CE0652 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 17D5784904C828E658DF5CEA4EF788AA /* FakeAPI.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 36F445B57C2200D1A86649BF526FBA4E /* PBXContainerItemProxy */ = { + 20B39FDE827AD3DF13AE317B5E936361 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 3DB44B78B03970D1A5F6BCE3A095C657; + remoteGlobalIDString = 3383968E74B5371B20BB519B170DC7FD; + remoteInfo = Alamofire; + }; + 5D76C10F5893692E171BC309A834B39D /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 3383968E74B5371B20BB519B170DC7FD; + remoteInfo = Alamofire; + }; + AFC558F1633DAC5C557E46CBB263C91E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 014B234AEDAF6EC680B4B670020FC6E9; remoteInfo = PetstoreClient; }; - 6820589C863D447314A430256098049E /* PBXContainerItemProxy */ = { + FA1A8E2F3FE2899A723889F94EACA0E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 5080ADC0568C917AB5CE8B923BCA01D4; + remoteGlobalIDString = 6CC172B84D895FFAF079AB5AA2CBFA6E; remoteInfo = "Pods-SwaggerClient"; }; - B137B809E140A9969BD7702C5906D63F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = E76458C58C9140B6A16D60547E68E80C; - remoteInfo = Alamofire; - }; - BD881BE721230A508AB8F9977D51E154 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = E76458C58C9140B6A16D60547E68E80C; - remoteInfo = Alamofire; - }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0075000FF9024228C130ADDA9B81114E /* PetstoreClient-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-prefix.pch"; sourceTree = ""; }; - 03DECE84DC850B04690604AB7C521277 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; - 04F47F5C9CDB035C5AFADEBA5BF44F1C /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; - 08BDFE9C9E9365771FF2D47928E3E79A /* Pods-SwaggerClient-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-acknowledgements.plist"; sourceTree = ""; }; - 0AD61F8554C909A3AFA66AD9ECCB5F23 /* Pods-SwaggerClient-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-frameworks.sh"; sourceTree = ""; }; - 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; }; - 0FCBF1EED873F61C6D46CE37FA5C39D3 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; - 117EFB31D9AD9673BAF51B48596F19E2 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; }; - 155538D91ACEEEDF82069ACF6C1A02E7 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; - 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; }; - 195D73DD9EF275A3C56569E2B1CA8026 /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; - 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.debug.xcconfig"; sourceTree = ""; }; - 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = PetstoreClient/Classes/OpenAPIs/Configuration.swift; sourceTree = ""; }; - 1E230A0448B394DE26E688DAC8E6201E /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; - 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; }; - 210971763CB2FC0DC4E378271A37BE32 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; - 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; }; - 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; }; - 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; }; - 2BB1D491A4C824A6BFA9C0C35E36BD85 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AlamofireImplementations.swift; path = PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift; sourceTree = ""; }; - 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CodableHelper.swift; path = PetstoreClient/Classes/OpenAPIs/CodableHelper.swift; sourceTree = ""; }; - 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClient-umbrella.h"; sourceTree = ""; }; - 32B030D27CAC730C5EB0F22390645310 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; - 33A04B5D27E86AF4B84D95E21CF3F452 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; - 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodingHelper.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift; sourceTree = ""; }; - 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; }; - 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; }; - 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; }; - 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; }; - 3D60BC9955B4F7FFA62D7440CB385C11 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; - 405921FE252DC3DC1087DA4217236D81 /* Name.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; }; - 419496CDDD7E7536CBEA02BAEE2C7C21 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; }; - 46CDAC6C1187C5467E576980E1062C8B /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; - 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; }; - 49A9B3BBFEA1CFFC48229E438EA64F9E /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 4AF006B0AD5765D1BFA8253C2DCBB126 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; - 4EB7BF4F57FA381E9DA7A1AA9B04857D /* PetstoreClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PetstoreClient.modulemap; sourceTree = ""; }; - 501C268D3DC431E81C876F4F7EE389C6 /* PetstoreClient.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; path = PetstoreClient.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIHelper.swift; path = PetstoreClient/Classes/OpenAPIs/APIHelper.swift; sourceTree = ""; }; - 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; }; - 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; }; - 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; }; - 61179CE650778B2A5C39664F0A792B5C /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; }; - 61D920D6E48023BCBF18CD83450D05F5 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; - 6639346628280A0D0FAD35196BF56108 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; - 66A46F517F0AF7E85A16D723F6406896 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; - 6C0ACB269F0C836F1865A56C4AF7A07E /* Pods_SwaggerClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClient.framework; path = "Pods-SwaggerClient.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; }; - 706C7AFFE37BA158C3553250F4B5FAED /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClientTests-dummy.m"; sourceTree = ""; }; - 76645699475D3AB6EB5242AC4D0CEFAE /* Pods-SwaggerClient-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClient-acknowledgements.markdown"; sourceTree = ""; }; - 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PetstoreClient-dummy.m"; sourceTree = ""; }; - 7898EEC6A565DE133438C48988478954 /* Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Extensions.swift; path = PetstoreClient/Classes/OpenAPIs/Extensions.swift; sourceTree = ""; }; - 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; }; - 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; }; - 814471C0F27B39D751143F0CD53670BD /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 87882A1F5A92C8138D54545E51D51E6F /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; - 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; }; - 897F0C201C5E0C66A1F1E359AECF4C9C /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PetstoreClient.framework; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; }; - 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-umbrella.h"; sourceTree = ""; }; - 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; }; - 9D08EC9B39FEBA43A5B55DAF97AAEBE9 /* Pods-SwaggerClientTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClientTests.modulemap"; sourceTree = ""; }; - 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; }; - 9D780FDAD16A03CC25F4D6F3317B9423 /* Pods-SwaggerClientTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-acknowledgements.plist"; sourceTree = ""; }; - 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; }; - A01C037B4034EDA3D7955BC5E4E9D9D6 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; - AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; }; - AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.debug.xcconfig"; sourceTree = ""; }; - B029DBC43E49A740F12B5E4D2E6DD452 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; - B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIs.swift; path = PetstoreClient/Classes/OpenAPIs/APIs.swift; sourceTree = ""; }; - B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PetstoreClient.xcconfig; sourceTree = ""; }; - B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodableEncoding.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift; sourceTree = ""; }; - C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; }; - C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; }; - CAF6F32F117197F6F08B477687F09728 /* Pods-SwaggerClientTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClientTests-frameworks.sh"; sourceTree = ""; }; - CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClientTests-umbrella.h"; sourceTree = ""; }; - CFA4F581E074596AB5C3DAF3D9C39F17 /* Pods-SwaggerClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClient.modulemap"; sourceTree = ""; }; - D1F50F37DFB6DC0B7B9D8C373E5A3EAE /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; - D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; }; - D47B812D78D0AE64D85D16A96840F8C4 /* Pods-SwaggerClientTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClientTests-acknowledgements.markdown"; sourceTree = ""; }; - D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; }; - DB9F66ED7A250BB1AE2875F8D38C7398 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; }; - DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; }; - DFCB8C44DE758E906C0BCDA455937B85 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; - E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; }; - E2F9510473F6FFD7AA66524DB16C2263 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; - E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; }; - E5A46D45023C6CBF06AA36844D59C59E /* User.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; - E5A8AA5F9EDED0A0BDDE7E830BF4AEE0 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; - E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; }; - E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; }; - EA3FFA48FB4D08FC02C47F71C0089CD9 /* Pods_SwaggerClientTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClientTests.framework; path = "Pods-SwaggerClientTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.release.xcconfig"; sourceTree = ""; }; - F3E1116FA9F9F3AFD9332B7236F6E711 /* Pods-SwaggerClientTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClientTests-resources.sh"; sourceTree = ""; }; - F4BB3B2146310CA18C30F145BFF15BD9 /* Pods-SwaggerClient-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-resources.sh"; sourceTree = ""; }; - F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClient-dummy.m"; sourceTree = ""; }; - FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; }; - FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.release.xcconfig"; sourceTree = ""; }; - FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Models.swift; path = PetstoreClient/Classes/OpenAPIs/Models.swift; sourceTree = ""; }; - FECB278917C7651872C44FB1C0B6E620 /* Category.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; }; - FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; }; + 04439F9CD02EAF4B3E540DBCEC9EA5A6 /* Name.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Name.md; path = docs/Name.md; sourceTree = ""; }; + 0663474ACA37520625211A9E29325B1A /* ArrayTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayTest.md; path = docs/ArrayTest.md; sourceTree = ""; }; + 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.release.xcconfig"; sourceTree = ""; }; + 0718B8E646D897336A3ECCC5B9090E53 /* AlamofireImplementations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AlamofireImplementations.swift; path = PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift; sourceTree = ""; }; + 089B2FA1773BD330AB52EF68B8C80090 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; }; + 0A4CE8D126B31FEC4F59711D8376AC5F /* User.md */ = {isa = PBXFileReference; includeInIndex = 1; name = User.md; path = docs/User.md; sourceTree = ""; }; + 0D01BA8472F25D39F718F71557EDC8DD /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 0DE2B0929020E3EB62D72BCE6C283C4A /* Models.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Models.swift; path = PetstoreClient/Classes/OpenAPIs/Models.swift; sourceTree = ""; }; + 12CFBC4CD7ACA7011491663F90C67FF6 /* StoreAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = StoreAPI.md; path = docs/StoreAPI.md; sourceTree = ""; }; + 153232F938AACFEEA39854060E3474F9 /* UserAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; }; + 15A825CFEBAE606149BF0047C9F5B209 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; + 17D5784904C828E658DF5CEA4EF788AA /* FakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; }; + 1C15C076B531E2E7744C358418A0C0B5 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; + 1F294BB7B28A9A6C885F7B64CBEF8443 /* PetstoreClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PetstoreClient.modulemap; sourceTree = ""; }; + 20EB7CD037B7A541D39B47B96C87D3BB /* User.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; + 22171F3CD54600483DE4B4FF7CA42C92 /* Order.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; }; + 22E224873CA034BCFD7B0AE231A85146 /* PetAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = PetAPI.md; path = docs/PetAPI.md; sourceTree = ""; }; + 23FFF870A0F3262D972AF2BE98E98138 /* TypeHolderExample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = ""; }; + 27578F75ADA7E233FE419BF675250D04 /* TypeHolderDefault.md */ = {isa = PBXFileReference; includeInIndex = 1; name = TypeHolderDefault.md; path = docs/TypeHolderDefault.md; sourceTree = ""; }; + 28821B55DAEFB6A4294C4E45B43C7189 /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; }; + 2B05E36DA6DC2AEF31D2C707F891F13C /* Capitalization.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Capitalization.md; path = docs/Capitalization.md; sourceTree = ""; }; + 2E7DDA3730731B94AF27E5CA45625575 /* Model200Response.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Model200Response.md; path = docs/Model200Response.md; sourceTree = ""; }; + 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClient-umbrella.h"; sourceTree = ""; }; + 2F38D962B7C2FCDF7409552EE9E8C179 /* EnumTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; }; + 31ED5C3525921534592BF796A9C159CF /* Pods-SwaggerClientTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-acknowledgements.plist"; sourceTree = ""; }; + 32DB5272AD01ECD0B09A86818A7754C4 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; + 33115EC2A5164913C68F8BD170389EEE /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; + 3557A28606F4FEFE5FF30989436A4FF2 /* MixedPropertiesAndAdditionalPropertiesClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = MixedPropertiesAndAdditionalPropertiesClass.md; path = docs/MixedPropertiesAndAdditionalPropertiesClass.md; sourceTree = ""; }; + 3677DD1DD5DA7B4FD4A71A12902EB1FF /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; }; + 3772CF80ABE43A1C8B98C26806814C03 /* StoreAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; }; + 3836ABD376ED2AA0133D2BAD057084A8 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; }; + 3906E6EA8C3F2D343170E909DB10D598 /* ApiResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; }; + 3D7E25E371731FAE44F46A9F392CB5D5 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; + 3FF775468F874E6C4B902D12CAACC0E3 /* APIs.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIs.swift; path = PetstoreClient/Classes/OpenAPIs/APIs.swift; sourceTree = ""; }; + 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClient-dummy.m"; sourceTree = ""; }; + 4BC259C4FDD151785EAB4C9816561400 /* Animal.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Animal.md; path = docs/Animal.md; sourceTree = ""; }; + 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClientTests-dummy.m"; sourceTree = ""; }; + 4DC5DC2F9BCEFA797895B33C16D2B17E /* Pods-SwaggerClient-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-Info.plist"; sourceTree = ""; }; + 4F249C32C93DD1A7204802FC37895B5D /* Return.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Return.md; path = docs/Return.md; sourceTree = ""; }; + 4F652B81B77453471CD91E7CE335DD64 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; + 4FA198DABCDFA1B65FD0ECB5909B1E67 /* ApiResponse.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ApiResponse.md; path = docs/ApiResponse.md; sourceTree = ""; }; + 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClientTests-umbrella.h"; sourceTree = ""; }; + 514BDF609598FE35A5525ED6A181A1A8 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodableEncoding.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift; sourceTree = ""; }; + 5325403E6DEEFE98D5F986007376B8CF /* FileSchemaTestClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FileSchemaTestClass.md; path = docs/FileSchemaTestClass.md; sourceTree = ""; }; + 55BD21CB9821EDFA7774D5BF62F1447C /* EnumClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; }; + 58958D8BF88758686FC4807824BB6119 /* OuterComposite.md */ = {isa = PBXFileReference; includeInIndex = 1; name = OuterComposite.md; path = docs/OuterComposite.md; sourceTree = ""; }; + 58B41BC62A3BC0B256C157232C133465 /* DogAllOf.md */ = {isa = PBXFileReference; includeInIndex = 1; name = DogAllOf.md; path = docs/DogAllOf.md; sourceTree = ""; }; + 5ACC5320A57F68BD14E44D7BCAD0568D /* ReadOnlyFirst.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ReadOnlyFirst.md; path = docs/ReadOnlyFirst.md; sourceTree = ""; }; + 5ADA544DF1F872830B177489DD976D01 /* OuterComposite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; }; + 5B5C5D70BB1678D0B0F2B09085740561 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 5F4F7045EE429F75182B88C370E5BF6B /* OuterEnum.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; }; + 60734197F65F663D2DD26AEBF6213FBB /* AnotherFakeAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AnotherFakeAPI.md; path = docs/AnotherFakeAPI.md; sourceTree = ""; }; + 618C90E6044C36C76F3590183ED38CB2 /* Pods-SwaggerClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClient.modulemap"; sourceTree = ""; }; + 637137BD1D26949B2D3D0AC4E7920421 /* Category.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Category.md; path = docs/Category.md; sourceTree = ""; }; + 66492E1963B233D5714ADBD39D100676 /* ArrayOfArrayOfNumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayOfArrayOfNumberOnly.md; path = docs/ArrayOfArrayOfNumberOnly.md; sourceTree = ""; }; + 679BA825A029EC81F394535E7D9659AF /* DogAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = ""; }; + 67BB3E8F1A01B496D370968537953FBC /* NumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; }; + 6F47323ACFBEA80C53357E0C388D0E2D /* PetstoreClient-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PetstoreClient-Info.plist"; sourceTree = ""; }; + 71358FB3ED39E943406F45ACCDACA01F /* EnumClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumClass.md; path = docs/EnumClass.md; sourceTree = ""; }; + 72401B0640F79CE5D0D95808F3809EAD /* Dog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; }; + 727A1A9E6AD1839E9FC8F0AD288C09D7 /* StringBooleanMap.md */ = {isa = PBXFileReference; includeInIndex = 1; name = StringBooleanMap.md; path = docs/StringBooleanMap.md; sourceTree = ""; }; + 729855D9EC40248C3CC1D640DE20C997 /* PetstoreClient.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = PetstoreClient.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 7545CF55BE345EA7C318A64E7BFB1C70 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; + 75C759635F88377BD7E2DEDE04C23C62 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; + 792A29ED78AA102548A11FE803EBA726 /* AnimalFarm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; }; + 7A32170042F951AE49896CBDDC2E7E8A /* CatAllOf.md */ = {isa = PBXFileReference; includeInIndex = 1; name = CatAllOf.md; path = docs/CatAllOf.md; sourceTree = ""; }; + 7B03859BDC36782899379E222720A297 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; + 7E8622C681C084B791773E335FA776B9 /* Cat.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Cat.md; path = docs/Cat.md; sourceTree = ""; }; + 817EF1FA2F48683ECFBC85626DD432E2 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = ""; }; + 8632E8244954DC5394C9F221CDA12310 /* FormatTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; }; + 88A2B15E13C750A143B6E5D75B3EF08A /* Capitalization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; }; + 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.debug.xcconfig"; sourceTree = ""; }; + 8C6E73F71067053DDD4DD9F74AA71B8E /* CatAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = ""; }; + 8D5A0E300C04A6DF88D620788FE38780 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; + 8FB3702E62314B602C9C852FEC5CE0D0 /* PetAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; }; + 901441DA8E39EF973EBE8D69C2CDADE7 /* Pods-SwaggerClientTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-Info.plist"; sourceTree = ""; }; + 92C52F4995CB5F6F58D97D24A9714C82 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; }; + 9448B03916DFC494CD68A614565A98B8 /* Pods-SwaggerClient-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-frameworks.sh"; sourceTree = ""; }; + 94C9B18D927BCE2DBC85C868385CD0DC /* MapTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = MapTest.md; path = docs/MapTest.md; sourceTree = ""; }; + 951102FA2D54D54F57AB43F3898A804E /* Pet.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Pet.md; path = docs/Pet.md; sourceTree = ""; }; + 96AC98D0CCFA778066DE3211DF4A612B /* Alamofire-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Alamofire-Info.plist"; sourceTree = ""; }; + 96FB30FE91CE11061D85EA6BDBE094E3 /* Pods-SwaggerClient-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-acknowledgements.plist"; sourceTree = ""; }; + 9A6C4CED509D8701C458FCF9F7112D6E /* Pods_SwaggerClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClient.framework; path = "Pods-SwaggerClient.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9B6003DFE8913662F0CBE3C8AB6BF079 /* AdditionalPropertiesClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AdditionalPropertiesClass.md; path = docs/AdditionalPropertiesClass.md; sourceTree = ""; }; + 9D59E1AD3CC394A93392FF3DC8CF2961 /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9FDDE05FE69A89680803CCE1D0DDD1BC /* ClassModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; }; + A0F2DC364EA3C24C587CAC4E7F2CACE6 /* File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; }; + A0F6B1DBF2B95867B02CA909027E6CA1 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; + A2B53D4EE4458330882CB18DA789EB2C /* Tag.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Tag.md; path = docs/Tag.md; sourceTree = ""; }; + A48DFE63F7A3B54CA683DC3A18D4F013 /* EnumArrays.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumArrays.md; path = docs/EnumArrays.md; sourceTree = ""; }; + A6CD835DD6D842734F41B52C7DD76912 /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; }; + A921EAFEFCF3702C415A14A85AD33CA5 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + AFA7A7162F97A757E4763382AF0A37A5 /* HasOnlyReadOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = HasOnlyReadOnly.md; path = docs/HasOnlyReadOnly.md; sourceTree = ""; }; + AFF7F7716086D54E6308EE52C8227B87 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; + B06639F7A76DB8A9D0D0E41CDD7A6684 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; + B075721274485FCD049ED26FCAF19040 /* Client.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Client.md; path = docs/Client.md; sourceTree = ""; }; + B2DB18088B850357CD707077683B52AD /* File.md */ = {isa = PBXFileReference; includeInIndex = 1; name = File.md; path = docs/File.md; sourceTree = ""; }; + B4C8BF21BF7235F0CAFCEF0A0BE6F346 /* PetstoreClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PetstoreClient-dummy.m"; sourceTree = ""; }; + B5049D245471AD411FABB9F1AFCC3640 /* TypeHolderExample.md */ = {isa = PBXFileReference; includeInIndex = 1; name = TypeHolderExample.md; path = docs/TypeHolderExample.md; sourceTree = ""; }; + B5BA3CDA675544F94288511FF6B9A95C /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; }; + B5E55CD80321500D34FB83EFB4EFE1B1 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; }; + B62D0F5045D0C460A66547BC6573E9AD /* OuterEnum.md */ = {isa = PBXFileReference; includeInIndex = 1; name = OuterEnum.md; path = docs/OuterEnum.md; sourceTree = ""; }; + B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.release.xcconfig"; sourceTree = ""; }; + B98D91A23E6414F7AF9797FDA6CDE301 /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; }; + BA8498C6CE23C7D39CB4064A7D3C23E1 /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodingHelper.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift; sourceTree = ""; }; + BACC7B6084A20F85B87D5D8CE45D9B2D /* SpecialModelName.md */ = {isa = PBXFileReference; includeInIndex = 1; name = SpecialModelName.md; path = docs/SpecialModelName.md; sourceTree = ""; }; + BBE656A24894D09F52A6A5DD556EE6E9 /* Pods_SwaggerClientTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClientTests.framework; path = "Pods-SwaggerClientTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + BE16989701DCA0B781F86A093D7C5E22 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; + BE9405B96DD389E966703C925771AE55 /* APIHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIHelper.swift; path = PetstoreClient/Classes/OpenAPIs/APIHelper.swift; sourceTree = ""; }; + BEF884C644D97FF181378FD4B0BEE949 /* CodableHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CodableHelper.swift; path = PetstoreClient/Classes/OpenAPIs/CodableHelper.swift; sourceTree = ""; }; + BFCE3D7EDCA41F256D471B40BBFD3FCE /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; + C2C77186D6C808BF3DF45437777838E5 /* MapTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; }; + C4453BE339B79900FDC53E34FE5589CB /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; + C5DB595A95DED4373F5C07D3F42CE2FD /* StringBooleanMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; }; + C69D6F2D2B19627D7A73D8F815F56BBA /* Animal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; }; + C754B2060CD998899F4CDCEFBA8CBECA /* PetstoreClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-umbrella.h"; sourceTree = ""; }; + C7BC9D7D5D14F73B0AA9505317F78B81 /* UserAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = UserAPI.md; path = docs/UserAPI.md; sourceTree = ""; }; + CCC6858C85690F7AFEA7F6542EE9A69A /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + CD03ACAF8CC392DA908F3ACB71558AF5 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + CD1ED5E98426A54EB45C305EE40C983E /* Category.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; }; + CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.debug.xcconfig"; sourceTree = ""; }; + CDD2BF41E57383D03ED6FE46857749F0 /* ArrayOfNumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayOfNumberOnly.md; path = docs/ArrayOfNumberOnly.md; sourceTree = ""; }; + D01ADEDF5E44D58ACB8ED1AED7BF7615 /* Pods-SwaggerClientTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClientTests-acknowledgements.markdown"; sourceTree = ""; }; + D1364C96E01989778FFAFDA5E4F88C1B /* AnimalFarm.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AnimalFarm.md; path = docs/AnimalFarm.md; sourceTree = ""; }; + D1A6BA19B108998DF7350B40C83BFC47 /* Pods-SwaggerClientTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClientTests.modulemap"; sourceTree = ""; }; + D46742F1F99243487DCC614C75C1413C /* Pods-SwaggerClient-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClient-acknowledgements.markdown"; sourceTree = ""; }; + D4A16AB1E07D9C345D25EAA6D65AFB7D /* Pet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; }; + D52A73EE9B54C37128A536FC390D5EB8 /* PetstoreClient.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PetstoreClient.xcconfig; sourceTree = ""; }; + D5519F42E98E0AB5F8D4EABFC2378552 /* FakeAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FakeAPI.md; path = docs/FakeAPI.md; sourceTree = ""; }; + D60CA6A9D0CCD77FEC2C9DBB0EE13FA4 /* NumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = NumberOnly.md; path = docs/NumberOnly.md; sourceTree = ""; }; + D6E1BAA8EEFE9F5BCEA8E3B9E9FDC427 /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PetstoreClient.framework; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D7BC3FD15E2040B5431F44C865823CCE /* Cat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; }; + D87D78CA89682ED11EEC8AC29F47C45D /* FakeClassnameTags123API.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FakeClassnameTags123API.md; path = docs/FakeClassnameTags123API.md; sourceTree = ""; }; + DB1E2D32BAA3BD9844DB191DDADBCF12 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = PetstoreClient/Classes/OpenAPIs/Configuration.swift; sourceTree = ""; }; + DBCED4E7B2ED8CD7B003737E8500B966 /* SpecialModelName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; }; + DD807F155301ECA538A2C1C296E1186D /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; + DF3D111A192664C5E1E84DAAF5B62D53 /* Order.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Order.md; path = docs/Order.md; sourceTree = ""; }; + DF65595F7AD2991DF64DF985C4695033 /* PetstoreClient-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-prefix.pch"; sourceTree = ""; }; + E68F2B0ADDEF9CCD4DDE5F0B6DBFB8EA /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; }; + E8300E68C77CC2ED6253C2D484EBA225 /* Model200Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; }; + EA8063C6A81DB1729871C85C5E3202A1 /* List.md */ = {isa = PBXFileReference; includeInIndex = 1; name = List.md; path = docs/List.md; sourceTree = ""; }; + EB0E56BEED9117DC5F2C7AF6582AB9C2 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + EBFF7DE6C567908623AE0BCD2F3A3857 /* Tag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; }; + ED376BFA75520EB1CC8120AC95A2E285 /* ArrayTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; }; + F2301C552DA30E664E889DB6147B0DD7 /* EnumTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumTest.md; path = docs/EnumTest.md; sourceTree = ""; }; + F5460AD0F6241621B45A17AB23A8E5B7 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; + F640F61D5BEE8132009BAEAA65B587A4 /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; + F8B87E7F72022E18968F7E2884190864 /* Client.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; }; + F8E4A82321F917DE99EA9ED0A4144F8D /* Return.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; }; + F9A840A90776C4F3557DA50E60D43461 /* Name.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; }; + FB6837ABA24B342F12F11E34BDBEFDDF /* ClassModel.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ClassModel.md; path = docs/ClassModel.md; sourceTree = ""; }; + FBC96A1C4393E17023FA61DF149438E6 /* FormatTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FormatTest.md; path = docs/FormatTest.md; sourceTree = ""; }; + FBE9E546637EAC1DDD7E9C12BA7BF345 /* Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Extensions.swift; path = PetstoreClient/Classes/OpenAPIs/Extensions.swift; sourceTree = ""; }; + FE0F580409071DCE59A5124FF9E82BFB /* EnumArrays.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; }; + FEE4CB22965AE4F1B84A1573C068DE50 /* Dog.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Dog.md; path = docs/Dog.md; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 29A5DB3CD79795B64CA7E9283003F1AB /* Frameworks */ = { + 03039E780407C611A7B87769DDA406E5 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 227BC4B7AA95B107A6C7122A60E0A7EB /* Foundation.framework in Frameworks */, + 09DCE775C28AEE3A523DDA9A9D485EBD /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5B9729099AD7DCDA0F1992A091EA200D /* Frameworks */ = { + 0C46B78575669218123DF0F491A2EC1C /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 063E2A92EA8D52DF1DE2B29A80271858 /* Foundation.framework in Frameworks */, + 35691EF5F336C91F9446841E240A546E /* Alamofire.framework in Frameworks */, + 1C676BF112685E2AF7EC6D0E50897D13 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6E8AF668A2161F7D6F680F721DB65D2D /* Frameworks */ = { + D4EC17B7E6732812B49C04E19E9C0EF3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 8D1E66FE754A575BFFD9E0A4AD2E5ACC /* Foundation.framework in Frameworks */, + 6B598CD6C3665D587BD8EDE6202EA593 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9E424562D83B776C47B63983F17A159B /* Frameworks */ = { + F1626ADC3A7EC435D2722B3173355D36 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - E67A357BA642B394AAD8E5F853295AC8 /* Alamofire.framework in Frameworks */, - 355D5224AAFBFC15E7C4C969EC32AE4D /* Foundation.framework in Frameworks */, + 3BD1DAFE1F3E6C9E4EB0F2099B6D6FA2 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 200D10EB20F0397D47F022B50CF0433F /* Alamofire */ = { + 0ED469A71233C185DA54A94B4F90C573 /* Models */ = { isa = PBXGroup; children = ( - 4AF006B0AD5765D1BFA8253C2DCBB126 /* AFError.swift */, - DFCB8C44DE758E906C0BCDA455937B85 /* Alamofire.swift */, - 0FCBF1EED873F61C6D46CE37FA5C39D3 /* DispatchQueue+Alamofire.swift */, - 155538D91ACEEEDF82069ACF6C1A02E7 /* MultipartFormData.swift */, - E5A8AA5F9EDED0A0BDDE7E830BF4AEE0 /* NetworkReachabilityManager.swift */, - 66A46F517F0AF7E85A16D723F6406896 /* Notifications.swift */, - 6639346628280A0D0FAD35196BF56108 /* ParameterEncoding.swift */, - 1E230A0448B394DE26E688DAC8E6201E /* Request.swift */, - 04F47F5C9CDB035C5AFADEBA5BF44F1C /* Response.swift */, - E2F9510473F6FFD7AA66524DB16C2263 /* ResponseSerialization.swift */, - 3D60BC9955B4F7FFA62D7440CB385C11 /* Result.swift */, - 32B030D27CAC730C5EB0F22390645310 /* ServerTrustPolicy.swift */, - 195D73DD9EF275A3C56569E2B1CA8026 /* SessionDelegate.swift */, - 46CDAC6C1187C5467E576980E1062C8B /* SessionManager.swift */, - A01C037B4034EDA3D7955BC5E4E9D9D6 /* TaskDelegate.swift */, - 87882A1F5A92C8138D54545E51D51E6F /* Timeline.swift */, - B029DBC43E49A740F12B5E4D2E6DD452 /* Validation.swift */, - 2E5925946A4DE3B8F7E4137BACAD9618 /* Support Files */, - ); - name = Alamofire; - path = Alamofire; - sourceTree = ""; - }; - 2E5925946A4DE3B8F7E4137BACAD9618 /* Support Files */ = { - isa = PBXGroup; - children = ( - 210971763CB2FC0DC4E378271A37BE32 /* Alamofire.modulemap */, - 33A04B5D27E86AF4B84D95E21CF3F452 /* Alamofire.xcconfig */, - D1F50F37DFB6DC0B7B9D8C373E5A3EAE /* Alamofire-dummy.m */, - 61D920D6E48023BCBF18CD83450D05F5 /* Alamofire-prefix.pch */, - 03DECE84DC850B04690604AB7C521277 /* Alamofire-umbrella.h */, - 117EFB31D9AD9673BAF51B48596F19E2 /* Info.plist */, - ); - name = "Support Files"; - path = "../Target Support Files/Alamofire"; - sourceTree = ""; - }; - 35F128EB69B6F7FB7DA93BBF6C130FAE /* Pods */ = { - isa = PBXGroup; - children = ( - 200D10EB20F0397D47F022B50CF0433F /* Alamofire */, - ); - name = Pods; - sourceTree = ""; - }; - 59B91F212518421F271EBA85D5530651 /* Frameworks */ = { - isa = PBXGroup; - children = ( - 706C7AFFE37BA158C3553250F4B5FAED /* Alamofire.framework */, - D1ADA17A1622F41549DD68F5D85E04FC /* iOS */, - ); - name = Frameworks; - sourceTree = ""; - }; - 606EAF5FBC9930BD9D22CDECD222A32A /* APIs */ = { - isa = PBXGroup; - children = ( - 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */, - 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */, - 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */, - 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */, - 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */, - 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */, - ); - name = APIs; - path = PetstoreClient/Classes/OpenAPIs/APIs; - sourceTree = ""; - }; - 6D4B4C422937D815279D2A96BCCE2815 /* Support Files */ = { - isa = PBXGroup; - children = ( - 2BB1D491A4C824A6BFA9C0C35E36BD85 /* Info.plist */, - 4EB7BF4F57FA381E9DA7A1AA9B04857D /* PetstoreClient.modulemap */, - B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */, - 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */, - 0075000FF9024228C130ADDA9B81114E /* PetstoreClient-prefix.pch */, - 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */, - ); - name = "Support Files"; - path = "SwaggerClientTests/Pods/Target Support Files/PetstoreClient"; - sourceTree = ""; - }; - 7DB346D0F39D3F0E887471402A8071AB = { - isa = PBXGroup; - children = ( - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, - EC52080E65FE34CBDE5F694B08BA9836 /* Development Pods */, - 59B91F212518421F271EBA85D5530651 /* Frameworks */, - 35F128EB69B6F7FB7DA93BBF6C130FAE /* Pods */, - 9BBD96A0F02B8F92DD3659B2DCDF1A8C /* Products */, - C1A60D10CED0E61146591438999C7502 /* Targets Support Files */, - ); - sourceTree = ""; - }; - 894E625B654BBE2FB6E8E88AA51D3E5A /* PetstoreClient */ = { - isa = PBXGroup; - children = ( - 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */, - 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */, - B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */, - 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */, - 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */, - 7898EEC6A565DE133438C48988478954 /* Extensions.swift */, - B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */, - 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */, - FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */, - 606EAF5FBC9930BD9D22CDECD222A32A /* APIs */, - A3225C42DC72DA2FDCC24B1154D893D9 /* Models */, - 8B703AC5760FFB3F3A475448C3FD2DD8 /* Pod */, - 6D4B4C422937D815279D2A96BCCE2815 /* Support Files */, - ); - name = PetstoreClient; - path = ../..; - sourceTree = ""; - }; - 8B703AC5760FFB3F3A475448C3FD2DD8 /* Pod */ = { - isa = PBXGroup; - children = ( - 501C268D3DC431E81C876F4F7EE389C6 /* PetstoreClient.podspec */, - ); - name = Pod; - sourceTree = ""; - }; - 9BBD96A0F02B8F92DD3659B2DCDF1A8C /* Products */ = { - isa = PBXGroup; - children = ( - 49A9B3BBFEA1CFFC48229E438EA64F9E /* Alamofire.framework */, - 897F0C201C5E0C66A1F1E359AECF4C9C /* PetstoreClient.framework */, - 6C0ACB269F0C836F1865A56C4AF7A07E /* Pods_SwaggerClient.framework */, - EA3FFA48FB4D08FC02C47F71C0089CD9 /* Pods_SwaggerClientTests.framework */, - ); - name = Products; - sourceTree = ""; - }; - A3225C42DC72DA2FDCC24B1154D893D9 /* Models */ = { - isa = PBXGroup; - children = ( - 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */, - 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */, - FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */, - FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */, - E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */, - 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */, - 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */, - 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */, - DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */, - FECB278917C7651872C44FB1C0B6E620 /* Category.swift */, - DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */, - 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */, - D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */, - 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */, - 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */, - AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */, - 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */, - 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */, - C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */, - 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */, - 61179CE650778B2A5C39664F0A792B5C /* List.swift */, - 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */, - 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */, - E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */, - 405921FE252DC3DC1087DA4217236D81 /* Name.swift */, - E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */, - 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */, - E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */, - 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */, - C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */, - D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */, - 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */, - 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */, - 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */, - 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */, - E5A46D45023C6CBF06AA36844D59C59E /* User.swift */, + E68F2B0ADDEF9CCD4DDE5F0B6DBFB8EA /* AdditionalPropertiesClass.swift */, + C69D6F2D2B19627D7A73D8F815F56BBA /* Animal.swift */, + 792A29ED78AA102548A11FE803EBA726 /* AnimalFarm.swift */, + 3906E6EA8C3F2D343170E909DB10D598 /* ApiResponse.swift */, + B5E55CD80321500D34FB83EFB4EFE1B1 /* ArrayOfArrayOfNumberOnly.swift */, + B5BA3CDA675544F94288511FF6B9A95C /* ArrayOfNumberOnly.swift */, + ED376BFA75520EB1CC8120AC95A2E285 /* ArrayTest.swift */, + 88A2B15E13C750A143B6E5D75B3EF08A /* Capitalization.swift */, + D7BC3FD15E2040B5431F44C865823CCE /* Cat.swift */, + 8C6E73F71067053DDD4DD9F74AA71B8E /* CatAllOf.swift */, + CD1ED5E98426A54EB45C305EE40C983E /* Category.swift */, + 9FDDE05FE69A89680803CCE1D0DDD1BC /* ClassModel.swift */, + F8B87E7F72022E18968F7E2884190864 /* Client.swift */, + 72401B0640F79CE5D0D95808F3809EAD /* Dog.swift */, + 679BA825A029EC81F394535E7D9659AF /* DogAllOf.swift */, + FE0F580409071DCE59A5124FF9E82BFB /* EnumArrays.swift */, + 55BD21CB9821EDFA7774D5BF62F1447C /* EnumClass.swift */, + 2F38D962B7C2FCDF7409552EE9E8C179 /* EnumTest.swift */, + A0F2DC364EA3C24C587CAC4E7F2CACE6 /* File.swift */, + 3677DD1DD5DA7B4FD4A71A12902EB1FF /* FileSchemaTestClass.swift */, + 8632E8244954DC5394C9F221CDA12310 /* FormatTest.swift */, + 92C52F4995CB5F6F58D97D24A9714C82 /* HasOnlyReadOnly.swift */, + 28821B55DAEFB6A4294C4E45B43C7189 /* List.swift */, + C2C77186D6C808BF3DF45437777838E5 /* MapTest.swift */, + 3836ABD376ED2AA0133D2BAD057084A8 /* MixedPropertiesAndAdditionalPropertiesClass.swift */, + E8300E68C77CC2ED6253C2D484EBA225 /* Model200Response.swift */, + F9A840A90776C4F3557DA50E60D43461 /* Name.swift */, + 67BB3E8F1A01B496D370968537953FBC /* NumberOnly.swift */, + 22171F3CD54600483DE4B4FF7CA42C92 /* Order.swift */, + 5ADA544DF1F872830B177489DD976D01 /* OuterComposite.swift */, + 5F4F7045EE429F75182B88C370E5BF6B /* OuterEnum.swift */, + D4A16AB1E07D9C345D25EAA6D65AFB7D /* Pet.swift */, + A6CD835DD6D842734F41B52C7DD76912 /* ReadOnlyFirst.swift */, + F8E4A82321F917DE99EA9ED0A4144F8D /* Return.swift */, + DBCED4E7B2ED8CD7B003737E8500B966 /* SpecialModelName.swift */, + C5DB595A95DED4373F5C07D3F42CE2FD /* StringBooleanMap.swift */, + EBFF7DE6C567908623AE0BCD2F3A3857 /* Tag.swift */, + 817EF1FA2F48683ECFBC85626DD432E2 /* TypeHolderDefault.swift */, + 23FFF870A0F3262D972AF2BE98E98138 /* TypeHolderExample.swift */, + 20EB7CD037B7A541D39B47B96C87D3BB /* User.swift */, ); name = Models; path = PetstoreClient/Classes/OpenAPIs/Models; sourceTree = ""; }; - C1A60D10CED0E61146591438999C7502 /* Targets Support Files */ = { + 1C8221FE0071BDA2D0C5DE07B7736E88 /* Development Pods */ = { isa = PBXGroup; children = ( - DE503BFFEBBF78BDC743C8A6A50DFF47 /* Pods-SwaggerClient */, - E9EDF70990CC7A4463ED5FC2E3719BD0 /* Pods-SwaggerClientTests */, + 33028780CD913FF16EA9A16F3FC66D2B /* PetstoreClient */, + ); + name = "Development Pods"; + sourceTree = ""; + }; + 1E609BB01CDC050D96D2080D93E7DF1A /* Pod */ = { + isa = PBXGroup; + children = ( + 9B6003DFE8913662F0CBE3C8AB6BF079 /* AdditionalPropertiesClass.md */, + 4BC259C4FDD151785EAB4C9816561400 /* Animal.md */, + D1364C96E01989778FFAFDA5E4F88C1B /* AnimalFarm.md */, + 60734197F65F663D2DD26AEBF6213FBB /* AnotherFakeAPI.md */, + 4FA198DABCDFA1B65FD0ECB5909B1E67 /* ApiResponse.md */, + 66492E1963B233D5714ADBD39D100676 /* ArrayOfArrayOfNumberOnly.md */, + CDD2BF41E57383D03ED6FE46857749F0 /* ArrayOfNumberOnly.md */, + 0663474ACA37520625211A9E29325B1A /* ArrayTest.md */, + 2B05E36DA6DC2AEF31D2C707F891F13C /* Capitalization.md */, + 7E8622C681C084B791773E335FA776B9 /* Cat.md */, + 7A32170042F951AE49896CBDDC2E7E8A /* CatAllOf.md */, + 637137BD1D26949B2D3D0AC4E7920421 /* Category.md */, + FB6837ABA24B342F12F11E34BDBEFDDF /* ClassModel.md */, + B075721274485FCD049ED26FCAF19040 /* Client.md */, + FEE4CB22965AE4F1B84A1573C068DE50 /* Dog.md */, + 58B41BC62A3BC0B256C157232C133465 /* DogAllOf.md */, + A48DFE63F7A3B54CA683DC3A18D4F013 /* EnumArrays.md */, + 71358FB3ED39E943406F45ACCDACA01F /* EnumClass.md */, + F2301C552DA30E664E889DB6147B0DD7 /* EnumTest.md */, + D5519F42E98E0AB5F8D4EABFC2378552 /* FakeAPI.md */, + D87D78CA89682ED11EEC8AC29F47C45D /* FakeClassnameTags123API.md */, + B2DB18088B850357CD707077683B52AD /* File.md */, + 5325403E6DEEFE98D5F986007376B8CF /* FileSchemaTestClass.md */, + FBC96A1C4393E17023FA61DF149438E6 /* FormatTest.md */, + AFA7A7162F97A757E4763382AF0A37A5 /* HasOnlyReadOnly.md */, + EA8063C6A81DB1729871C85C5E3202A1 /* List.md */, + 94C9B18D927BCE2DBC85C868385CD0DC /* MapTest.md */, + 3557A28606F4FEFE5FF30989436A4FF2 /* MixedPropertiesAndAdditionalPropertiesClass.md */, + 2E7DDA3730731B94AF27E5CA45625575 /* Model200Response.md */, + 04439F9CD02EAF4B3E540DBCEC9EA5A6 /* Name.md */, + D60CA6A9D0CCD77FEC2C9DBB0EE13FA4 /* NumberOnly.md */, + DF3D111A192664C5E1E84DAAF5B62D53 /* Order.md */, + 58958D8BF88758686FC4807824BB6119 /* OuterComposite.md */, + B62D0F5045D0C460A66547BC6573E9AD /* OuterEnum.md */, + 951102FA2D54D54F57AB43F3898A804E /* Pet.md */, + 22E224873CA034BCFD7B0AE231A85146 /* PetAPI.md */, + 729855D9EC40248C3CC1D640DE20C997 /* PetstoreClient.podspec */, + 5B5C5D70BB1678D0B0F2B09085740561 /* README.md */, + 5ACC5320A57F68BD14E44D7BCAD0568D /* ReadOnlyFirst.md */, + 4F249C32C93DD1A7204802FC37895B5D /* Return.md */, + BACC7B6084A20F85B87D5D8CE45D9B2D /* SpecialModelName.md */, + 12CFBC4CD7ACA7011491663F90C67FF6 /* StoreAPI.md */, + 727A1A9E6AD1839E9FC8F0AD288C09D7 /* StringBooleanMap.md */, + A2B53D4EE4458330882CB18DA789EB2C /* Tag.md */, + 27578F75ADA7E233FE419BF675250D04 /* TypeHolderDefault.md */, + B5049D245471AD411FABB9F1AFCC3640 /* TypeHolderExample.md */, + 0A4CE8D126B31FEC4F59711D8376AC5F /* User.md */, + C7BC9D7D5D14F73B0AA9505317F78B81 /* UserAPI.md */, + ); + name = Pod; + sourceTree = ""; + }; + 27EB02841E0D43820F14F4377DE3547E /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + 8244AEBEFB4AC3530215FA5CBA26673B /* Pods-SwaggerClient */, + 86B1F48A58BFA2FA26CD584937FBEED1 /* Pods-SwaggerClientTests */, ); name = "Targets Support Files"; sourceTree = ""; }; - D1ADA17A1622F41549DD68F5D85E04FC /* iOS */ = { + 33028780CD913FF16EA9A16F3FC66D2B /* PetstoreClient */ = { isa = PBXGroup; children = ( - DB9F66ED7A250BB1AE2875F8D38C7398 /* Foundation.framework */, + 0718B8E646D897336A3ECCC5B9090E53 /* AlamofireImplementations.swift */, + BE9405B96DD389E966703C925771AE55 /* APIHelper.swift */, + 3FF775468F874E6C4B902D12CAACC0E3 /* APIs.swift */, + BEF884C644D97FF181378FD4B0BEE949 /* CodableHelper.swift */, + DB1E2D32BAA3BD9844DB191DDADBCF12 /* Configuration.swift */, + FBE9E546637EAC1DDD7E9C12BA7BF345 /* Extensions.swift */, + 514BDF609598FE35A5525ED6A181A1A8 /* JSONEncodableEncoding.swift */, + BA8498C6CE23C7D39CB4064A7D3C23E1 /* JSONEncodingHelper.swift */, + 0DE2B0929020E3EB62D72BCE6C283C4A /* Models.swift */, + 89961DD23FFA3CD864F344F00D402FB9 /* APIs */, + 0ED469A71233C185DA54A94B4F90C573 /* Models */, + 1E609BB01CDC050D96D2080D93E7DF1A /* Pod */, + 5B6407A1BF3581D31EDF042E5AEE8C90 /* Support Files */, ); - name = iOS; + name = PetstoreClient; + path = ../..; sourceTree = ""; }; - DE503BFFEBBF78BDC743C8A6A50DFF47 /* Pods-SwaggerClient */ = { + 5B6407A1BF3581D31EDF042E5AEE8C90 /* Support Files */ = { isa = PBXGroup; children = ( - 814471C0F27B39D751143F0CD53670BD /* Info.plist */, - CFA4F581E074596AB5C3DAF3D9C39F17 /* Pods-SwaggerClient.modulemap */, - 76645699475D3AB6EB5242AC4D0CEFAE /* Pods-SwaggerClient-acknowledgements.markdown */, - 08BDFE9C9E9365771FF2D47928E3E79A /* Pods-SwaggerClient-acknowledgements.plist */, - F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */, - 0AD61F8554C909A3AFA66AD9ECCB5F23 /* Pods-SwaggerClient-frameworks.sh */, - F4BB3B2146310CA18C30F145BFF15BD9 /* Pods-SwaggerClient-resources.sh */, - 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */, - AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */, - F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */, + 1F294BB7B28A9A6C885F7B64CBEF8443 /* PetstoreClient.modulemap */, + D52A73EE9B54C37128A536FC390D5EB8 /* PetstoreClient.xcconfig */, + B4C8BF21BF7235F0CAFCEF0A0BE6F346 /* PetstoreClient-dummy.m */, + 6F47323ACFBEA80C53357E0C388D0E2D /* PetstoreClient-Info.plist */, + DF65595F7AD2991DF64DF985C4695033 /* PetstoreClient-prefix.pch */, + C754B2060CD998899F4CDCEFBA8CBECA /* PetstoreClient-umbrella.h */, + ); + name = "Support Files"; + path = "SwaggerClientTests/Pods/Target Support Files/PetstoreClient"; + sourceTree = ""; + }; + 8244AEBEFB4AC3530215FA5CBA26673B /* Pods-SwaggerClient */ = { + isa = PBXGroup; + children = ( + 618C90E6044C36C76F3590183ED38CB2 /* Pods-SwaggerClient.modulemap */, + D46742F1F99243487DCC614C75C1413C /* Pods-SwaggerClient-acknowledgements.markdown */, + 96FB30FE91CE11061D85EA6BDBE094E3 /* Pods-SwaggerClient-acknowledgements.plist */, + 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */, + 9448B03916DFC494CD68A614565A98B8 /* Pods-SwaggerClient-frameworks.sh */, + 4DC5DC2F9BCEFA797895B33C16D2B17E /* Pods-SwaggerClient-Info.plist */, + 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */, + 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */, + B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */, ); name = "Pods-SwaggerClient"; path = "Target Support Files/Pods-SwaggerClient"; sourceTree = ""; }; - E9EDF70990CC7A4463ED5FC2E3719BD0 /* Pods-SwaggerClientTests */ = { + 86B1F48A58BFA2FA26CD584937FBEED1 /* Pods-SwaggerClientTests */ = { isa = PBXGroup; children = ( - 419496CDDD7E7536CBEA02BAEE2C7C21 /* Info.plist */, - 9D08EC9B39FEBA43A5B55DAF97AAEBE9 /* Pods-SwaggerClientTests.modulemap */, - D47B812D78D0AE64D85D16A96840F8C4 /* Pods-SwaggerClientTests-acknowledgements.markdown */, - 9D780FDAD16A03CC25F4D6F3317B9423 /* Pods-SwaggerClientTests-acknowledgements.plist */, - 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */, - CAF6F32F117197F6F08B477687F09728 /* Pods-SwaggerClientTests-frameworks.sh */, - F3E1116FA9F9F3AFD9332B7236F6E711 /* Pods-SwaggerClientTests-resources.sh */, - CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */, - 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */, - FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */, + D1A6BA19B108998DF7350B40C83BFC47 /* Pods-SwaggerClientTests.modulemap */, + D01ADEDF5E44D58ACB8ED1AED7BF7615 /* Pods-SwaggerClientTests-acknowledgements.markdown */, + 31ED5C3525921534592BF796A9C159CF /* Pods-SwaggerClientTests-acknowledgements.plist */, + 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */, + 901441DA8E39EF973EBE8D69C2CDADE7 /* Pods-SwaggerClientTests-Info.plist */, + 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */, + CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */, + 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */, ); name = "Pods-SwaggerClientTests"; path = "Target Support Files/Pods-SwaggerClientTests"; sourceTree = ""; }; - EC52080E65FE34CBDE5F694B08BA9836 /* Development Pods */ = { + 89961DD23FFA3CD864F344F00D402FB9 /* APIs */ = { isa = PBXGroup; children = ( - 894E625B654BBE2FB6E8E88AA51D3E5A /* PetstoreClient */, + 089B2FA1773BD330AB52EF68B8C80090 /* AnotherFakeAPI.swift */, + 17D5784904C828E658DF5CEA4EF788AA /* FakeAPI.swift */, + B98D91A23E6414F7AF9797FDA6CDE301 /* FakeClassnameTags123API.swift */, + 8FB3702E62314B602C9C852FEC5CE0D0 /* PetAPI.swift */, + 3772CF80ABE43A1C8B98C26806814C03 /* StoreAPI.swift */, + 153232F938AACFEEA39854060E3474F9 /* UserAPI.swift */, ); - name = "Development Pods"; + name = APIs; + path = PetstoreClient/Classes/OpenAPIs/APIs; + sourceTree = ""; + }; + 90FDDC7F5D24472360CA259A8D40AE98 /* Pods */ = { + isa = PBXGroup; + children = ( + ABBD6121E62B33A53CF07892A75F2030 /* Alamofire */, + ); + name = Pods; + sourceTree = ""; + }; + 9BA86B3EDA3C295EC1B9E7963803A4C5 /* Support Files */ = { + isa = PBXGroup; + children = ( + 4F652B81B77453471CD91E7CE335DD64 /* Alamofire.modulemap */, + A0F6B1DBF2B95867B02CA909027E6CA1 /* Alamofire.xcconfig */, + BE16989701DCA0B781F86A093D7C5E22 /* Alamofire-dummy.m */, + 96AC98D0CCFA778066DE3211DF4A612B /* Alamofire-Info.plist */, + 7545CF55BE345EA7C318A64E7BFB1C70 /* Alamofire-prefix.pch */, + 15A825CFEBAE606149BF0047C9F5B209 /* Alamofire-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/Alamofire"; + sourceTree = ""; + }; + A4521C22EBDAA43169A2378066A85356 /* iOS */ = { + isa = PBXGroup; + children = ( + EB0E56BEED9117DC5F2C7AF6582AB9C2 /* Foundation.framework */, + ); + name = iOS; + sourceTree = ""; + }; + ABBD6121E62B33A53CF07892A75F2030 /* Alamofire */ = { + isa = PBXGroup; + children = ( + 8D5A0E300C04A6DF88D620788FE38780 /* AFError.swift */, + 1C15C076B531E2E7744C358418A0C0B5 /* Alamofire.swift */, + AFF7F7716086D54E6308EE52C8227B87 /* DispatchQueue+Alamofire.swift */, + BFCE3D7EDCA41F256D471B40BBFD3FCE /* MultipartFormData.swift */, + F5460AD0F6241621B45A17AB23A8E5B7 /* NetworkReachabilityManager.swift */, + B06639F7A76DB8A9D0D0E41CDD7A6684 /* Notifications.swift */, + 0D01BA8472F25D39F718F71557EDC8DD /* ParameterEncoding.swift */, + 9D59E1AD3CC394A93392FF3DC8CF2961 /* Request.swift */, + CCC6858C85690F7AFEA7F6542EE9A69A /* Response.swift */, + 7B03859BDC36782899379E222720A297 /* ResponseSerialization.swift */, + DD807F155301ECA538A2C1C296E1186D /* Result.swift */, + C4453BE339B79900FDC53E34FE5589CB /* ServerTrustPolicy.swift */, + F640F61D5BEE8132009BAEAA65B587A4 /* SessionDelegate.swift */, + 3D7E25E371731FAE44F46A9F392CB5D5 /* SessionManager.swift */, + 75C759635F88377BD7E2DEDE04C23C62 /* TaskDelegate.swift */, + 32DB5272AD01ECD0B09A86818A7754C4 /* Timeline.swift */, + 33115EC2A5164913C68F8BD170389EEE /* Validation.swift */, + 9BA86B3EDA3C295EC1B9E7963803A4C5 /* Support Files */, + ); + name = Alamofire; + path = Alamofire; + sourceTree = ""; + }; + CF1408CF629C7361332E53B88F7BD30C = { + isa = PBXGroup; + children = ( + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + 1C8221FE0071BDA2D0C5DE07B7736E88 /* Development Pods */, + EFA834D50E48CF4E37AC7A12D391AC85 /* Frameworks */, + 90FDDC7F5D24472360CA259A8D40AE98 /* Pods */, + D4BB97E11D129F9DC0B3EFD7B82F99F5 /* Products */, + 27EB02841E0D43820F14F4377DE3547E /* Targets Support Files */, + ); + sourceTree = ""; + }; + D4BB97E11D129F9DC0B3EFD7B82F99F5 /* Products */ = { + isa = PBXGroup; + children = ( + A921EAFEFCF3702C415A14A85AD33CA5 /* Alamofire.framework */, + D6E1BAA8EEFE9F5BCEA8E3B9E9FDC427 /* PetstoreClient.framework */, + 9A6C4CED509D8701C458FCF9F7112D6E /* Pods_SwaggerClient.framework */, + BBE656A24894D09F52A6A5DD556EE6E9 /* Pods_SwaggerClientTests.framework */, + ); + name = Products; + sourceTree = ""; + }; + EFA834D50E48CF4E37AC7A12D391AC85 /* Frameworks */ = { + isa = PBXGroup; + children = ( + CD03ACAF8CC392DA908F3ACB71558AF5 /* Alamofire.framework */, + A4521C22EBDAA43169A2378066A85356 /* iOS */, + ); + name = Frameworks; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 09ADB09AF28E8323827EBDFA2AA40E5B /* Headers */ = { + 23D70D9651451F43E7E8CC1A87B4B7E9 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - C7787631ABBCAE939E73EF127A6DEFE5 /* Pods-SwaggerClient-umbrella.h in Headers */, + B6F6E4CC26451E91B59FAE0F6841DC1F /* Alamofire-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5E20EF16E4EBC34539E7F8ED30185D2A /* Headers */ = { + 9A5935BD5E97C4C2ADAE50D3AE92B1B1 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - ED1BB4E1E954FBDAE0A4ABE8111DFCB2 /* PetstoreClient-umbrella.h in Headers */, + 0F31785CFEFE0D75C731D380DA0B448A /* Pods-SwaggerClient-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 732D4E1722AFCFCEE4E651A873559D3B /* Headers */ = { + A5A64812E84222999005ACDF7F62E2E4 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 616F0481C475C488192EF999DFC00B7C /* Pods-SwaggerClientTests-umbrella.h in Headers */, + 4C67C04C2DEA0EC6A77990134EFC44F0 /* PetstoreClient-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - A6A607506FEAAC7C41268D3E5CF4E5FE /* Headers */ = { + A75A99D2E090C9BAAFA7D32A6536D24E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - EF1461221681BCA12A4147900A704727 /* Alamofire-umbrella.h in Headers */, + 0AB631DF2E9BC76B8736C9EFF6191C0B /* Pods-SwaggerClientTests-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 3DB44B78B03970D1A5F6BCE3A095C657 /* PetstoreClient */ = { + 014B234AEDAF6EC680B4B670020FC6E9 /* PetstoreClient */ = { isa = PBXNativeTarget; - buildConfigurationList = 694346AEA3E84AF56979B0FFBC209689 /* Build configuration list for PBXNativeTarget "PetstoreClient" */; + buildConfigurationList = 382DBE4A1A56F1CB2D9416262C3B398A /* Build configuration list for PBXNativeTarget "PetstoreClient" */; buildPhases = ( - 5E20EF16E4EBC34539E7F8ED30185D2A /* Headers */, - 11E9129E63CD4BAB6BFA8BDCBB3720DB /* Sources */, - 9E424562D83B776C47B63983F17A159B /* Frameworks */, - 7ADAACD8AC45285E6EC3201C94BB02EB /* Resources */, + A5A64812E84222999005ACDF7F62E2E4 /* Headers */, + BFFCD424113053CC873EB416E81CABA8 /* Sources */, + 0C46B78575669218123DF0F491A2EC1C /* Frameworks */, + D67BC32B7DC8ED90F08BD38FAA56169D /* Resources */, ); buildRules = ( ); dependencies = ( - 48B54A1C256DBA70336C3F56920B9882 /* PBXTargetDependency */, + 5DE874B58B87742561569DD4D3D1B529 /* PBXTargetDependency */, ); name = PetstoreClient; productName = PetstoreClient; - productReference = 897F0C201C5E0C66A1F1E359AECF4C9C /* PetstoreClient.framework */; + productReference = D6E1BAA8EEFE9F5BCEA8E3B9E9FDC427 /* PetstoreClient.framework */; productType = "com.apple.product-type.framework"; }; - 5080ADC0568C917AB5CE8B923BCA01D4 /* Pods-SwaggerClient */ = { + 3383968E74B5371B20BB519B170DC7FD /* Alamofire */ = { isa = PBXNativeTarget; - buildConfigurationList = 5AA42E756083B6780B7C9F0C9BB485B5 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */; + buildConfigurationList = E87124444A44B7DB55208E7FEC21D331 /* Build configuration list for PBXNativeTarget "Alamofire" */; buildPhases = ( - 09ADB09AF28E8323827EBDFA2AA40E5B /* Headers */, - 76F9A1A6D58567978EC6859BF07B29E4 /* Sources */, - 29A5DB3CD79795B64CA7E9283003F1AB /* Frameworks */, - 77E895BE17770CC0FE310B94875386D2 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 9E9F1EC218FA874E9A64D1A03C28F44F /* PBXTargetDependency */, - 5FF38B8F9F122F7D98FFC894B71A519A /* PBXTargetDependency */, - ); - name = "Pods-SwaggerClient"; - productName = "Pods-SwaggerClient"; - productReference = 6C0ACB269F0C836F1865A56C4AF7A07E /* Pods_SwaggerClient.framework */; - productType = "com.apple.product-type.framework"; - }; - E76458C58C9140B6A16D60547E68E80C /* Alamofire */ = { - isa = PBXNativeTarget; - buildConfigurationList = 427F0F003A1AD80AE00155AFCDEFAC20 /* Build configuration list for PBXNativeTarget "Alamofire" */; - buildPhases = ( - A6A607506FEAAC7C41268D3E5CF4E5FE /* Headers */, - CC399CEC576B42C962CEB290481CAF95 /* Sources */, - 6E8AF668A2161F7D6F680F721DB65D2D /* Frameworks */, - 3DDB7E21141D7764AE4658D5B6AFF8C6 /* Resources */, + 23D70D9651451F43E7E8CC1A87B4B7E9 /* Headers */, + A1C8B029F600160149A2404C342F6E50 /* Sources */, + F1626ADC3A7EC435D2722B3173355D36 /* Frameworks */, + 28FF73341543B6F0A7DF3C20CFFEA0AA /* Resources */, ); buildRules = ( ); @@ -603,80 +683,100 @@ ); name = Alamofire; productName = Alamofire; - productReference = 49A9B3BBFEA1CFFC48229E438EA64F9E /* Alamofire.framework */; + productReference = A921EAFEFCF3702C415A14A85AD33CA5 /* Alamofire.framework */; productType = "com.apple.product-type.framework"; }; - EAA283A8FDA10ED3D749965B3062AB9B /* Pods-SwaggerClientTests */ = { + 6CC172B84D895FFAF079AB5AA2CBFA6E /* Pods-SwaggerClient */ = { isa = PBXNativeTarget; - buildConfigurationList = 7DFD16CAA839D5E2607A2D7700691018 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */; + buildConfigurationList = 572D6D84C594D0A2084C64BFCC57B307 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */; buildPhases = ( - 732D4E1722AFCFCEE4E651A873559D3B /* Headers */, - 896221CF7DC63DEEB3A5276BB19738DD /* Sources */, - 5B9729099AD7DCDA0F1992A091EA200D /* Frameworks */, - F2A072A007D209224870DA88C7DCEAE9 /* Resources */, + 9A5935BD5E97C4C2ADAE50D3AE92B1B1 /* Headers */, + 7666F8939D4526BEC7F64C149EF4A2C8 /* Sources */, + 03039E780407C611A7B87769DDA406E5 /* Frameworks */, + A5C180CA72BCA89C035E9BA519F5DCF4 /* Resources */, ); buildRules = ( ); dependencies = ( - 36BB78CD83103E2E3589612B670D7F8B /* PBXTargetDependency */, + F234C94DB11B7BBDD1958805D4F5AB78 /* PBXTargetDependency */, + C14616AC8F7012FA96FE36A7D42D8D82 /* PBXTargetDependency */, + ); + name = "Pods-SwaggerClient"; + productName = "Pods-SwaggerClient"; + productReference = 9A6C4CED509D8701C458FCF9F7112D6E /* Pods_SwaggerClient.framework */; + productType = "com.apple.product-type.framework"; + }; + 7ECA32D1B18128C394D8D35F346BEEC7 /* Pods-SwaggerClientTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 8F09E039867007D3576FEED9032526A8 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */; + buildPhases = ( + A75A99D2E090C9BAAFA7D32A6536D24E /* Headers */, + F7D9DB86AE0913CC2B294C55BFD934AD /* Sources */, + D4EC17B7E6732812B49C04E19E9C0EF3 /* Frameworks */, + C2801E627F662CD786BE9F42773CBECF /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + C18A6DC0C9B8408542F3D944BB6D67F4 /* PBXTargetDependency */, ); name = "Pods-SwaggerClientTests"; productName = "Pods-SwaggerClientTests"; - productReference = EA3FFA48FB4D08FC02C47F71C0089CD9 /* Pods_SwaggerClientTests.framework */; + productReference = BBE656A24894D09F52A6A5DD556EE6E9 /* Pods_SwaggerClientTests.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0930; LastUpgradeCheck = 0930; }; - buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = 9BBD96A0F02B8F92DD3659B2DCDF1A8C /* Products */; + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = D4BB97E11D129F9DC0B3EFD7B82F99F5 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - E76458C58C9140B6A16D60547E68E80C /* Alamofire */, - 3DB44B78B03970D1A5F6BCE3A095C657 /* PetstoreClient */, - 5080ADC0568C917AB5CE8B923BCA01D4 /* Pods-SwaggerClient */, - EAA283A8FDA10ED3D749965B3062AB9B /* Pods-SwaggerClientTests */, + 3383968E74B5371B20BB519B170DC7FD /* Alamofire */, + 014B234AEDAF6EC680B4B670020FC6E9 /* PetstoreClient */, + 6CC172B84D895FFAF079AB5AA2CBFA6E /* Pods-SwaggerClient */, + 7ECA32D1B18128C394D8D35F346BEEC7 /* Pods-SwaggerClientTests */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 3DDB7E21141D7764AE4658D5B6AFF8C6 /* Resources */ = { + 28FF73341543B6F0A7DF3C20CFFEA0AA /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 77E895BE17770CC0FE310B94875386D2 /* Resources */ = { + A5C180CA72BCA89C035E9BA519F5DCF4 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 7ADAACD8AC45285E6EC3201C94BB02EB /* Resources */ = { + C2801E627F662CD786BE9F42773CBECF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F2A072A007D209224870DA88C7DCEAE9 /* Resources */ = { + D67BC32B7DC8ED90F08BD38FAA56169D /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -686,201 +786,141 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 11E9129E63CD4BAB6BFA8BDCBB3720DB /* Sources */ = { + 7666F8939D4526BEC7F64C149EF4A2C8 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0CEE61815D35A28299E0BA885E16C112 /* AdditionalPropertiesClass.swift in Sources */, - 151C0E3E3BADF3BD659A77F19595BF27 /* AlamofireImplementations.swift in Sources */, - B2211A048358C098B09DDD64C1D92BE3 /* Animal.swift in Sources */, - E0318FD26B8028AB3DA3699542937456 /* AnimalFarm.swift in Sources */, - 23855C6F80E2FCD617CC96D08630B6AB /* AnotherFakeAPI.swift in Sources */, - 00341EF6A7B4101FF46544D933635229 /* APIHelper.swift in Sources */, - 6D4CC1413AC88773D7EFB372A9CCE959 /* ApiResponse.swift in Sources */, - 063AC1A2D17C03DB6AE6B56429C430AD /* APIs.swift in Sources */, - 3265BF82EA7637405F53CDD084D84E6B /* ArrayOfArrayOfNumberOnly.swift in Sources */, - D2860F063F30E8636B6F063DA9E33B4E /* ArrayOfNumberOnly.swift in Sources */, - 5AFB71D48FC0E7EEFD72E1E3F3CEB5C4 /* ArrayTest.swift in Sources */, - FE8F3E7C5189F971D72565EE61E70616 /* Capitalization.swift in Sources */, - 51659F8BFC3F73762CEC48B7453AD8C8 /* Cat.swift in Sources */, - 15ECAFF2A1CBC210557839EEDF3C3D38 /* Category.swift in Sources */, - 5C0337DC320806EC3F097E911F9C0DD9 /* ClassModel.swift in Sources */, - F315BA7152C0B8129A2E092CB2118E2D /* Client.swift in Sources */, - 201A9F0D023F7FE7241C5447B9E271F5 /* CodableHelper.swift in Sources */, - 4E55388941C2C8112143B35EE1315F34 /* Configuration.swift in Sources */, - 7B81A89A48F4B69CF3B466B42C1D261C /* Dog.swift in Sources */, - 214063DCA19E4F95FD585B94AEDE25A9 /* EnumArrays.swift in Sources */, - 1D7E6E3D0746430E18CDB78891EDE347 /* EnumClass.swift in Sources */, - 2B4C80F28EAEFC3BBE5BD974EB3B95DA /* EnumTest.swift in Sources */, - ECC9B55386849F36810B0F4E94C8F1B3 /* Extensions.swift in Sources */, - 73137082931A2CB5FA591116EB990CA7 /* FakeAPI.swift in Sources */, - 1F3BAC001FC3715C820B5C960406A561 /* FakeClassnameTags123API.swift in Sources */, - 90B4ABD4170C02C607BFEBD02FC620EA /* File.swift in Sources */, - 48153C45BEC62DCD38ACDD4D69268F19 /* FileSchemaTestClass.swift in Sources */, - 374D2C9F33B2604BD70B56ECD1CB25CE /* FormatTest.swift in Sources */, - 204CD8BD5DFA5F431E54B2158020313F /* HasOnlyReadOnly.swift in Sources */, - 0D8E2ADD22CCD2E6C2BF6582FCE29B47 /* JSONEncodableEncoding.swift in Sources */, - 98C6FEFF7D91A1D9C7FBAF4EE289B315 /* JSONEncodingHelper.swift in Sources */, - 0462132D8A221E85B43B5D0AFE074B23 /* List.swift in Sources */, - 48295E9619D587EE6F54C0A4AD85BCFE /* MapTest.swift in Sources */, - 19C14C995002401BFE2D1473DEC489EB /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */, - F545D346865CEDE236579EDC8BF4B639 /* Model200Response.swift in Sources */, - F94E4DD5FA0233D2D212AA5D7F91D23B /* Models.swift in Sources */, - 88D4AC95BAE52DA8BB766CACFEC8D048 /* Name.swift in Sources */, - EB0BE93F04174AA1C723E482729763F1 /* NumberOnly.swift in Sources */, - 41ABC33FF82319033B71B163D60A6DB2 /* Order.swift in Sources */, - 5D4085BF3C1663906E50F3E00A1D97F8 /* OuterComposite.swift in Sources */, - 72501058DEC3917D0B2AB6365A5B539E /* OuterEnum.swift in Sources */, - 3F1A0295FDDB3D9352C4849AA6B422A6 /* Pet.swift in Sources */, - 2F6D76F7F1D34CD4F119CF4C05F79941 /* PetAPI.swift in Sources */, - 16DB938155CCFB9BC71D6A77CF010879 /* PetstoreClient-dummy.m in Sources */, - 1640C16ABE8012EAAFE90D791557FDF9 /* ReadOnlyFirst.swift in Sources */, - 899D343DC64C9035D1F25F9A21482069 /* Return.swift in Sources */, - 8C9ED087F9243A6F3884E14BA47C65DE /* SpecialModelName.swift in Sources */, - 917F41A1E2ED08D156901E0F106F1ED7 /* StoreAPI.swift in Sources */, - B921FEBEA30528C1F85E504039D08100 /* StringBooleanMap.swift in Sources */, - E9FA84DF60802AB7C37A4C66D904977E /* Tag.swift in Sources */, - 6AFA16CC62AEAEF1D878680C0F50F627 /* User.swift in Sources */, - E3FB62FBC5A476B8F87D6E6B7AB4A655 /* UserAPI.swift in Sources */, + AACBCD94F445251BFB8EF281B06070FC /* Pods-SwaggerClient-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 76F9A1A6D58567978EC6859BF07B29E4 /* Sources */ = { + A1C8B029F600160149A2404C342F6E50 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - E8D261A320D518E8892DF423B4C46644 /* Pods-SwaggerClient-dummy.m in Sources */, + 7E3538A6992A38276764936A9733493D /* AFError.swift in Sources */, + 772911DA6E33D1CBBC30131B7C8BDBB3 /* Alamofire-dummy.m in Sources */, + 0A39AF55285A3A4F7CBABB6D822FA4A3 /* Alamofire.swift in Sources */, + 3E0749AF6C51BCF0E4A41CF1D6A76FED /* DispatchQueue+Alamofire.swift in Sources */, + AEA829AB1A8AF2AD077A808AED6B178A /* MultipartFormData.swift in Sources */, + 73AB05789A4982944AF68DBD013E3EB7 /* NetworkReachabilityManager.swift in Sources */, + 1D29D2ACADF961F69D32B06FA6A09E28 /* Notifications.swift in Sources */, + 700D3D95AF9520CB227846DFD943A2DA /* ParameterEncoding.swift in Sources */, + 355C18EEC82624A06A6CC93965258E33 /* Request.swift in Sources */, + 059D92B7BBFBEC53E9A3B6E11C5C3B3A /* Response.swift in Sources */, + 6EFD003458AE7F689DEA720A2030C261 /* ResponseSerialization.swift in Sources */, + EB0DD8CEA1A69867A30267439C970440 /* Result.swift in Sources */, + 8D2A6A90A6DDAF75EA52D471258545CC /* ServerTrustPolicy.swift in Sources */, + A1EC41966B261DCE460BCDE5124A1DBE /* SessionDelegate.swift in Sources */, + D3FA0AA634AAEA99AB3FABC36BB4958C /* SessionManager.swift in Sources */, + 77E8F0EB9FFBE2E3EB0C77095C644606 /* TaskDelegate.swift in Sources */, + 60B6C2A003864AAD3A426448152F67BE /* Timeline.swift in Sources */, + AA56769D8733D3F3E7976742D5ABA998 /* Validation.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 896221CF7DC63DEEB3A5276BB19738DD /* Sources */ = { + BFFCD424113053CC873EB416E81CABA8 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 512F26D1DCFE54340A28AAA8C5FABB97 /* Pods-SwaggerClientTests-dummy.m in Sources */, + 939C0EDFC1A0E1371F8B4C08A8ED35FB /* AdditionalPropertiesClass.swift in Sources */, + FBA30FAE70E2ABBD40E4DAC76BA02AED /* AlamofireImplementations.swift in Sources */, + C617ABA269C12A01EE8FB2B48E2EE24E /* Animal.swift in Sources */, + A5DA5B46FB2ACACFD536CFA4773F72EB /* AnimalFarm.swift in Sources */, + 012AD29BA655B831F2BE3F50ECB3BB85 /* AnotherFakeAPI.swift in Sources */, + 793AD3096164E125123B8D52AB5A9C22 /* APIHelper.swift in Sources */, + 3D0DF4B3FD3DBE3E87FC471D5098B08C /* ApiResponse.swift in Sources */, + 82855B7090157FE1AD95290494B727D1 /* APIs.swift in Sources */, + A3BC5451845657493232AC0525864F5A /* ArrayOfArrayOfNumberOnly.swift in Sources */, + 6C9EBD7E61FF56596714B6E4AD520FC8 /* ArrayOfNumberOnly.swift in Sources */, + D0DD0433ABCBA1390C9D519BB8AF31B0 /* ArrayTest.swift in Sources */, + 00020DC43A4750034730E499473769DD /* Capitalization.swift in Sources */, + FBE98F05475A9917F6D17BE065FEF26B /* Cat.swift in Sources */, + 345CE6549CCB11C35AB61D1C95ADB09E /* CatAllOf.swift in Sources */, + F60E9EC2AB3CE86877D7ED2FEB8C6352 /* Category.swift in Sources */, + 0BB6E533AD607BA63514CA234EC13B7C /* ClassModel.swift in Sources */, + 2903713D6C0E8861C1C225BBE2005553 /* Client.swift in Sources */, + 43E11CFB9D9D75B04BD1C3710122FEDC /* CodableHelper.swift in Sources */, + E238DCD8EEAA785F12BC409CBC9FFEB2 /* Configuration.swift in Sources */, + 515561C8235B83BE66FDAFB598982F1A /* Dog.swift in Sources */, + A78CA9C83C384A1BC74AB5AE5E11B9C6 /* DogAllOf.swift in Sources */, + FDA5017C03A4F8778D62CB4317B41830 /* EnumArrays.swift in Sources */, + 45C8A9D978B277C6D772171CBC9D00A2 /* EnumClass.swift in Sources */, + 7038EA9A3B5C95A704774228807F5BA5 /* EnumTest.swift in Sources */, + D6766263F6808C3555974C9090704382 /* Extensions.swift in Sources */, + FF88BA5F972D79C65C8A0A55F1CE0652 /* FakeAPI.swift in Sources */, + 23F07945B38A4B2E16A37448381E0728 /* FakeClassnameTags123API.swift in Sources */, + 9E6C948768C510831A7E51DACDADF113 /* File.swift in Sources */, + 08E8DE6A3DE3C4AACE22E6FC79A780B5 /* FileSchemaTestClass.swift in Sources */, + C47592022591B4355678CD336729BCFD /* FormatTest.swift in Sources */, + 39CB87943FDF18297E1B55D71759E6F0 /* HasOnlyReadOnly.swift in Sources */, + F19C4993AFB23C230522A94EDC95D0AE /* JSONEncodableEncoding.swift in Sources */, + 030881D9CABF4692C54FBFA6EECC2120 /* JSONEncodingHelper.swift in Sources */, + 5C270500727A5736EEBC6E2B5545122F /* List.swift in Sources */, + 518CCCA0F4D22FF969EBC3E3077FCC92 /* MapTest.swift in Sources */, + 2CABDAFCB4D1AAFD4466F7B334075350 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */, + C213B705CDEE5ABB1DD45D2D7C399916 /* Model200Response.swift in Sources */, + 76C734AAD021F98862B409EED92BF7D9 /* Models.swift in Sources */, + 9013E87432F737C0EBC7E8F2CCAD38BD /* Name.swift in Sources */, + B09502FF56FD28B439A446079AA44828 /* NumberOnly.swift in Sources */, + 9E4EAB317A51EDDEB0F989FAFE98FF2C /* Order.swift in Sources */, + 93F8F669E4B04B4DB531D251706A500E /* OuterComposite.swift in Sources */, + 616E91DF676728E98777E4C2221F30FF /* OuterEnum.swift in Sources */, + 52BB72DA85ECC5DF65DB17DC7FE78794 /* Pet.swift in Sources */, + C625241EED7F5ABFA3421D1D2F33B9A7 /* PetAPI.swift in Sources */, + AE8E12A37981E08C499422F0D7DB3562 /* PetstoreClient-dummy.m in Sources */, + A7D6F30DD00FE0799E3226CAD9B4F0F8 /* ReadOnlyFirst.swift in Sources */, + 65D4CBC83D44D1079503E162E56EB1FC /* Return.swift in Sources */, + 962EFB8F73E4755A382781A0985D65F7 /* SpecialModelName.swift in Sources */, + 41B161B3DF73F631EB37EBC84E989A86 /* StoreAPI.swift in Sources */, + 0376FA9CA4578351B19BF40B86DAF6C8 /* StringBooleanMap.swift in Sources */, + ED805B7A7AFAE3166128F815B88FF4C9 /* Tag.swift in Sources */, + 568163D7220FA2ACE76E2A089ED97367 /* TypeHolderDefault.swift in Sources */, + A3A401A337A4033FDD4A3394D1F6DC1B /* TypeHolderExample.swift in Sources */, + 3B2E7969FD3611446E0C3428B6FD506E /* User.swift in Sources */, + 06908794B0BD0AD1C3328AD8BC4B82B6 /* UserAPI.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC399CEC576B42C962CEB290481CAF95 /* Sources */ = { + F7D9DB86AE0913CC2B294C55BFD934AD /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BE4BA1EDE444A770F834605F4B65348E /* AFError.swift in Sources */, - D4C3899574E9D5DF5E5DA52310560BCC /* Alamofire-dummy.m in Sources */, - 4E1A913EFB404FB11524718FF0298EFE /* Alamofire.swift in Sources */, - DBE6E2E4D205545E7988CFA5057C31D6 /* DispatchQueue+Alamofire.swift in Sources */, - FF9C7BC64DB23D2CED48197DE67F0335 /* MultipartFormData.swift in Sources */, - B77705737566AE83ED7E448923D7FA60 /* NetworkReachabilityManager.swift in Sources */, - 500C8EDA60C07B0F127C7FC385E17D38 /* Notifications.swift in Sources */, - 796177DE2762F24DAC16A709FD954838 /* ParameterEncoding.swift in Sources */, - 965DACF3DC02857ECBE66C5CBA3DA5D4 /* Request.swift in Sources */, - 52237C35642089F77DD4D723CEB25737 /* Response.swift in Sources */, - 5EE5FED83B90A606A763CF1114D1D6FB /* ResponseSerialization.swift in Sources */, - F9EA61D484CC15FDDAB0D8C0D26D7949 /* Result.swift in Sources */, - 6BEA14EC335E07C7063CD1383C0C443C /* ServerTrustPolicy.swift in Sources */, - 1FC3FD39157C2FFFF3869A1300730086 /* SessionDelegate.swift in Sources */, - 7068E8A7DDC1424EE8F24BC77E8746F4 /* SessionManager.swift in Sources */, - 36FF8853CB34A9297AFAA8F5F7456324 /* TaskDelegate.swift in Sources */, - B424F524BBBE34E685129945993809A8 /* Timeline.swift in Sources */, - 58A9719584AFA2D108D9E5C585A79329 /* Validation.swift in Sources */, + 8012A57CFFC574F745FBA46D335BBA6F /* Pods-SwaggerClientTests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 36BB78CD83103E2E3589612B670D7F8B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Pods-SwaggerClient"; - target = 5080ADC0568C917AB5CE8B923BCA01D4 /* Pods-SwaggerClient */; - targetProxy = 6820589C863D447314A430256098049E /* PBXContainerItemProxy */; - }; - 48B54A1C256DBA70336C3F56920B9882 /* PBXTargetDependency */ = { + 5DE874B58B87742561569DD4D3D1B529 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; - target = E76458C58C9140B6A16D60547E68E80C /* Alamofire */; - targetProxy = BD881BE721230A508AB8F9977D51E154 /* PBXContainerItemProxy */; + target = 3383968E74B5371B20BB519B170DC7FD /* Alamofire */; + targetProxy = 20B39FDE827AD3DF13AE317B5E936361 /* PBXContainerItemProxy */; }; - 5FF38B8F9F122F7D98FFC894B71A519A /* PBXTargetDependency */ = { + C14616AC8F7012FA96FE36A7D42D8D82 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = PetstoreClient; - target = 3DB44B78B03970D1A5F6BCE3A095C657 /* PetstoreClient */; - targetProxy = 36F445B57C2200D1A86649BF526FBA4E /* PBXContainerItemProxy */; + target = 014B234AEDAF6EC680B4B670020FC6E9 /* PetstoreClient */; + targetProxy = AFC558F1633DAC5C557E46CBB263C91E /* PBXContainerItemProxy */; }; - 9E9F1EC218FA874E9A64D1A03C28F44F /* PBXTargetDependency */ = { + C18A6DC0C9B8408542F3D944BB6D67F4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = "Pods-SwaggerClient"; + target = 6CC172B84D895FFAF079AB5AA2CBFA6E /* Pods-SwaggerClient */; + targetProxy = FA1A8E2F3FE2899A723889F94EACA0E5 /* PBXContainerItemProxy */; + }; + F234C94DB11B7BBDD1958805D4F5AB78 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; - target = E76458C58C9140B6A16D60547E68E80C /* Alamofire */; - targetProxy = B137B809E140A9969BD7702C5906D63F /* PBXContainerItemProxy */; + target = 3383968E74B5371B20BB519B170DC7FD /* Alamofire */; + targetProxy = 5D76C10F5893692E171BC309A834B39D /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 1C48568D4B5F1406FE8B766FACF627C9 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PetstoreClient/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; - PRODUCT_MODULE_NAME = PetstoreClient; - PRODUCT_NAME = PetstoreClient; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 1EAFDB7DE59A16060DF36FC40DC2E750 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33A04B5D27E86AF4B84D95E21CF3F452 /* Alamofire.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_MODULE_NAME = Alamofire; - PRODUCT_NAME = Alamofire; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 25CF5B41B146148FFE26D5BDC2BC4A14 /* Debug */ = { + 0F9DE41FC108FC05B463FCAC96ED8EF9 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -912,8 +952,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -946,9 +984,9 @@ }; name = Debug; }; - 38B6E741CA9DFA14FC1A0E5C462C1514 /* Release */ = { + 21979AE1790135C30E0899E08565E57B /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */; + baseConfigurationReference = 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -960,7 +998,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -980,9 +1018,9 @@ }; name = Release; }; - 460EF6038BB917930D8DE4656B4238D1 /* Debug */ = { + 2EAEE6B722B898F409C2B1C6A56C5B9B /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */; + baseConfigurationReference = 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -994,7 +1032,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1013,11 +1051,10 @@ }; name = Debug; }; - 500E98573558DDE71480CACA286F49F5 /* Debug */ = { + 41268AF552E2DC6A5873C87C81174F7D /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */; + baseConfigurationReference = A0F6B1DBF2B95867B02CA909027E6CA1 /* Alamofire.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -1027,28 +1064,59 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.2; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.1; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 8719700EFFBF46C09B7E5BB52A4E8266 /* Release */ = { + 574F3585003DE50C3AF6674F2F554A8F /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */; + baseConfigurationReference = D52A73EE9B54C37128A536FC390D5EB8 /* PetstoreClient.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/PetstoreClient/PetstoreClient-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; + PRODUCT_MODULE_NAME = PetstoreClient; + PRODUCT_NAME = PetstoreClient; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 63EF74233563D17636D6B6BC64BAC633 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -1060,7 +1128,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1080,7 +1148,72 @@ }; name = Release; }; - AA132D0D9F065373411EBFA7A6B7A947 /* Release */ = { + 7A138A57D62AD3F0FEBC72142392B2CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + A345BCBDE6C296957161A3E85A47A280 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A0F6B1DBF2B95867B02CA909027E6CA1 /* Alamofire.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.1; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + B758FBEC27C09CD6E60596DDF8B1CDBB /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -1112,8 +1245,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; @@ -1142,9 +1273,9 @@ }; name = Release; }; - D96CB0FDB49C926068CB309EDE5DF62C /* Debug */ = { + D69DDD32C596B1D7288985DF36FA2133 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */; + baseConfigurationReference = D52A73EE9B54C37128A536FC390D5EB8 /* PetstoreClient.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -1156,7 +1287,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PetstoreClient/Info.plist"; + INFOPLIST_FILE = "Target Support Files/PetstoreClient/PetstoreClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1173,86 +1304,55 @@ }; name = Debug; }; - F9711F223F590669E94B504F3CC44301 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33A04B5D27E86AF4B84D95E21CF3F452 /* Alamofire.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_MODULE_NAME = Alamofire; - PRODUCT_NAME = Alamofire; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 382DBE4A1A56F1CB2D9416262C3B398A /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = { isa = XCConfigurationList; buildConfigurations = ( - 25CF5B41B146148FFE26D5BDC2BC4A14 /* Debug */, - AA132D0D9F065373411EBFA7A6B7A947 /* Release */, + D69DDD32C596B1D7288985DF36FA2133 /* Debug */, + 574F3585003DE50C3AF6674F2F554A8F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 427F0F003A1AD80AE00155AFCDEFAC20 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - F9711F223F590669E94B504F3CC44301 /* Debug */, - 1EAFDB7DE59A16060DF36FC40DC2E750 /* Release */, + 0F9DE41FC108FC05B463FCAC96ED8EF9 /* Debug */, + B758FBEC27C09CD6E60596DDF8B1CDBB /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 5AA42E756083B6780B7C9F0C9BB485B5 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */ = { + 572D6D84C594D0A2084C64BFCC57B307 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */ = { isa = XCConfigurationList; buildConfigurations = ( - 460EF6038BB917930D8DE4656B4238D1 /* Debug */, - 8719700EFFBF46C09B7E5BB52A4E8266 /* Release */, + 2EAEE6B722B898F409C2B1C6A56C5B9B /* Debug */, + 63EF74233563D17636D6B6BC64BAC633 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 694346AEA3E84AF56979B0FFBC209689 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = { + 8F09E039867007D3576FEED9032526A8 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - D96CB0FDB49C926068CB309EDE5DF62C /* Debug */, - 1C48568D4B5F1406FE8B766FACF627C9 /* Release */, + 7A138A57D62AD3F0FEBC72142392B2CD /* Debug */, + 21979AE1790135C30E0899E08565E57B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 7DFD16CAA839D5E2607A2D7700691018 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */ = { + E87124444A44B7DB55208E7FEC21D331 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { isa = XCConfigurationList; buildConfigurations = ( - 500E98573558DDE71480CACA286F49F5 /* Debug */, - 38B6E741CA9DFA14FC1A0E5C462C1514 /* Release */, + 41268AF552E2DC6A5873C87C81174F7D /* Debug */, + A345BCBDE6C296957161A3E85A47A280 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/Info.plist b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire-Info.plist similarity index 96% rename from samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/Info.plist rename to samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire-Info.plist index df276491a1..bb5a9ffc80 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/Info.plist +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire-Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 4.4.0 + 4.9.0 CFBundleSignature ???? CFBundleVersion diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig index 6b8baab300..12a1450811 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig @@ -1,6 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Alamofire GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient-Info.plist b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig index c24f97366d..62fe7dab13 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig @@ -1,7 +1,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown index ae80cfd366..973d79a75d 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown @@ -3,7 +3,7 @@ This application makes use of the following third party libraries: ## Alamofire -Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist index 1ec7517eba..5c049b5d2a 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist @@ -14,7 +14,7 @@ FooterText - Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh index 3680284d66..c0ca87ce2d 100755 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh @@ -3,10 +3,15 @@ set -e set -u set -o pipefail +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then - # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy - # frameworks to, so exit 0 (signalling the script phase was successful). - exit 0 + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 fi echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" @@ -36,8 +41,8 @@ install_framework() local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" if [ -L "${source}" ]; then - echo "Symlinked..." - source="$(readlink "${source}")" + echo "Symlinked..." + source="$(readlink "${source}")" fi # Use filter instead of exclude so missing patterns don't throw errors. @@ -47,8 +52,13 @@ install_framework() local basename basename="$(basename -s .framework "$1")" binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" fi # Strip invalid architectures so "fat" simulator / device frameworks work on device @@ -62,7 +72,7 @@ install_framework() # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) for lib in $swift_runtime_libs; do echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" @@ -101,8 +111,8 @@ install_dsym() { # Signs a framework with the provided identity code_sign_if_enabled() { - if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then - # Use the current code_sign_identitiy + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" @@ -131,7 +141,7 @@ strip_invalid_archs() { for arch in $binary_archs; do if ! [[ "${ARCHS}" == *"$arch"* ]]; then # Strip non-valid architectures in-place - lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + lipo -remove "$arch" -output "$binary" "$binary" stripped="$stripped $arch" fi done diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig index 5ab6f3adf4..b9d6266ecd 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig index 5ab6f3adf4..b9d6266ecd 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig index 43fd8e36c0..b7db85d42c 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig @@ -1,7 +1,8 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig index 43fd8e36c0..b7db85d42c 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig @@ -1,7 +1,8 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj index b93c795a57..4fd31d11f5 100644 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj @@ -293,7 +293,7 @@ inputFileListPaths = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework", "${BUILT_PRODUCTS_DIR}/PetstoreClient/PetstoreClient.framework", ); @@ -306,7 +306,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ diff --git a/samples/client/petstore/swift4/default/SwaggerClientTests/run_xcodebuild.sh b/samples/client/petstore/swift4/default/SwaggerClientTests/run_xcodebuild.sh index 08ecb7c23d..180aec08bb 100755 --- a/samples/client/petstore/swift4/default/SwaggerClientTests/run_xcodebuild.sh +++ b/samples/client/petstore/swift4/default/SwaggerClientTests/run_xcodebuild.sh @@ -1,3 +1,3 @@ #!/bin/sh -xcodebuild clean build build-for-testing -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" -destination "platform=iOS Simulator,name=iPhone 8,OS=12.2" && xcodebuild test-without-building -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" -destination "platform=iOS Simulator,name=iPhone 8,OS=12.2" | xcpretty && exit ${PIPESTATUS[0]} +xcodebuild clean build build-for-testing -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" -destination "platform=iOS Simulator,name=iPhone 8,OS=13.0" && xcodebuild test-without-building -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" -destination "platform=iOS Simulator,name=iPhone 8,OS=13.0" | xcpretty && exit ${PIPESTATUS[0]} diff --git a/samples/client/petstore/swift4/default/git_push.sh b/samples/client/petstore/swift4/default/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/swift4/default/git_push.sh +++ b/samples/client/petstore/swift4/default/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/swift4/objcCompatible/.openapi-generator/VERSION b/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION index 83a328a922..0e97bd19ef 100644 --- a/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION +++ b/samples/client/petstore/swift4/objcCompatible/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/swift4/objcCompatible/Cartfile b/samples/client/petstore/swift4/objcCompatible/Cartfile index f1823fda9a..86748c63d9 100644 --- a/samples/client/petstore/swift4/objcCompatible/Cartfile +++ b/samples/client/petstore/swift4/objcCompatible/Cartfile @@ -1 +1 @@ -github "Alamofire/Alamofire" ~> 4.5.0 +github "Alamofire/Alamofire" ~> 4.9.0 diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient.podspec b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.podspec index 50531fd25a..a6c9a1f3d4 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient.podspec +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient.podspec @@ -10,5 +10,5 @@ Pod::Spec.new do |s| s.homepage = 'https://github.com/openapitools/openapi-generator' s.summary = 'PetstoreClient' s.source_files = 'PetstoreClient/Classes/**/*.swift' - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 4198e76546..583c6ead86 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -16,7 +16,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createXmlItem(xmlItem: XmlItem, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createXmlItemWithRequestBuilder(xmlItem: xmlItem).execute { (response, error) -> Void in + createXmlItemWithRequestBuilder(xmlItem: xmlItem).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -166,7 +166,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in + testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -200,7 +200,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in + testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -281,7 +281,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, 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 { (response, error) -> 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 { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -424,7 +424,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, 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 { (response, error) -> Void in + testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -488,7 +488,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in + testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -539,7 +539,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in + testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -574,7 +574,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in + testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -608,4 +608,52 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) } + /** + + - parameter pipe: (query) + - parameter ioutil: (query) + - parameter http: (query) + - parameter url: (query) + - parameter context: (query) + - parameter completion: completion handler to receive the data and the error objects + */ + open class func testQueryParameterCollectionFormat(pipe: [String], ioutil: [String], http: [String], url: [String], context: [String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { + testQueryParameterCollectionFormatWithRequestBuilder(pipe: pipe, ioutil: ioutil, http: http, url: url, context: context).execute { (_, error) -> Void in + if error == nil { + completion((), error) + } else { + completion(nil, error) + } + } + } + + /** + - PUT /fake/test-query-paramters + - To test the collection format in query parameters + - parameter pipe: (query) + - parameter ioutil: (query) + - parameter http: (query) + - parameter url: (query) + - parameter context: (query) + - returns: RequestBuilder + */ + open class func testQueryParameterCollectionFormatWithRequestBuilder(pipe: [String], ioutil: [String], http: [String], url: [String], context: [String]) -> RequestBuilder { + let path = "/fake/test-query-paramters" + let URLString = PetstoreClientAPI.basePath + path + let parameters: [String: Any]? = nil + + var url = URLComponents(string: URLString) + url?.queryItems = APIHelper.mapValuesToQueryItems([ + "pipe": pipe, + "ioutil": ioutil, + "http": http, + "url": url, + "context": context + ]) + + let requestBuilder: RequestBuilder.Type = PetstoreClientAPI.requestBuilderFactory.getNonDecodableBuilder() + + return requestBuilder.init(method: "PUT", URLString: (url?.string ?? URLString), parameters: parameters, isBody: false) + } + } diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 896f151180..3952547574 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -16,7 +16,7 @@ open class PetAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func addPet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in + addPetWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -54,7 +54,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in + deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -219,7 +219,7 @@ open class PetAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in + updatePetWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -258,7 +258,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in + updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 71949b335d..98ff7b5474 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -16,7 +16,7 @@ open class StoreAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in + deleteOrderWithRequestBuilder(orderId: orderId).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index efeb64468a..24d0d35e9d 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -16,7 +16,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUser(body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUserWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -51,7 +51,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithArrayInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -85,7 +85,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithListInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -119,7 +119,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in + deleteUserWithRequestBuilder(username: username).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -226,7 +226,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - logoutUserWithRequestBuilder().execute { (response, error) -> Void in + logoutUserWithRequestBuilder().execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -260,7 +260,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in + updateUserWithRequestBuilder(username: username, body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift index 04ad02a5ce..60ce28c66a 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift @@ -283,7 +283,7 @@ open class AlamofireRequestBuilder: RequestBuilder { let items = contentDisposition.components(separatedBy: ";") - var filename: String? = nil + var filename: String? for contentItem in items { @@ -294,7 +294,7 @@ open class AlamofireRequestBuilder: RequestBuilder { filename = contentItem return filename? - .replacingCharacters(in: range, with:"") + .replacingCharacters(in: range, with: "") .replacingOccurrences(of: "\"", with: "") .trimmingCharacters(in: .whitespacesAndNewlines) } @@ -435,7 +435,7 @@ open class AlamofireDecodableRequestBuilder: AlamofireRequestBuild return } - var responseObj: Response? = nil + var responseObj: Response? let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data) if decodeResult.error == nil { diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift index 111d5a3a8c..0a333db0d1 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift @@ -14,8 +14,8 @@ open class CodableHelper { public static var dateformatter: DateFormatter? open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable { - var returnedDecodable: T? = nil - var returnedError: Error? = nil + var returnedDecodable: T? + var returnedError: Error? let decoder = JSONDecoder() if let df = self.dateformatter { @@ -41,7 +41,7 @@ open class CodableHelper { open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable { var returnedData: Data? - var returnedError: Error? = nil + var returnedError: Error? let encoder = JSONEncoder() if prettyPrint { diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift index 24c128daad..2fa32b9e0f 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Extensions.swift @@ -152,7 +152,7 @@ extension KeyedDecodingContainerProtocol { } public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { - var tmpArray: [T]? = nil + var tmpArray: [T]? if contains(key) { tmpArray = try decodeArray(T.self, forKey: key) diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift index ca05906d42..fb76bbed26 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift @@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding { } public static func encodingParameters(jsonData: Data?) -> Parameters? { - var returnedParams: Parameters? = nil + var returnedParams: Parameters? if let jsonData = jsonData, !jsonData.isEmpty { var params = Parameters() params[jsonDataKey] = jsonData diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift index 3e68bb5d4a..7bd1267e95 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift @@ -11,7 +11,7 @@ import Alamofire open class JSONEncodingHelper { open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? // Encode the Encodable object if let encodableObj = encodableObj { @@ -25,7 +25,7 @@ open class JSONEncodingHelper { } open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? if let encodableObj = encodableObj { do { diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift index e87ce399c7..2516116586 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models.swift @@ -27,7 +27,7 @@ open class Response { public convenience init(response: HTTPURLResponse, body: T?) { let rawHeader = response.allHeaderFields - var header = [String:String]() + var header = [String: String]() for case let (key, value) as (String, String) in rawHeader { header[key] = value } diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 20bd6d103b..c1987c4088 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -22,8 +22,9 @@ public struct FormatTest: Codable { public var dateTime: Date? public var uuid: UUID? public var password: String + public var bigDecimal: Decimal? - public init(integer: Int?, int32: Int?, int64: Int64?, number: Double, float: Float?, double: Double?, string: String?, byte: Data, binary: URL?, date: Date, dateTime: Date?, uuid: UUID?, password: String) { + public init(integer: Int?, int32: Int?, int64: Int64?, number: Double, float: Float?, double: Double?, string: String?, byte: Data, binary: URL?, date: Date, dateTime: Date?, uuid: UUID?, password: String, bigDecimal: Decimal?) { self.integer = integer self.int32 = int32 self.int64 = int64 @@ -37,6 +38,24 @@ public struct FormatTest: Codable { self.dateTime = dateTime self.uuid = uuid self.password = password + self.bigDecimal = bigDecimal + } + + public enum CodingKeys: String, CodingKey { + 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 + case bigDecimal = "BigDecimal" } } diff --git a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 602a2a6d18..f51714718f 100644 --- a/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift4/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -11,13 +11,15 @@ public struct TypeHolderExample: Codable { public var stringItem: String public var numberItem: Double + public var floatItem: Float public var integerItem: Int public var boolItem: Bool public var arrayItem: [Int] - public init(stringItem: String, numberItem: Double, integerItem: Int, boolItem: Bool, arrayItem: [Int]) { + public init(stringItem: String, numberItem: Double, floatItem: Float, integerItem: Int, boolItem: Bool, arrayItem: [Int]) { self.stringItem = stringItem self.numberItem = numberItem + self.floatItem = floatItem self.integerItem = integerItem self.boolItem = boolItem self.arrayItem = arrayItem @@ -26,6 +28,7 @@ public struct TypeHolderExample: Codable { public enum CodingKeys: String, CodingKey { case stringItem = "string_item" case numberItem = "number_item" + case floatItem = "float_item" case integerItem = "integer_item" case boolItem = "bool_item" case arrayItem = "array_item" diff --git a/samples/client/petstore/swift4/objcCompatible/README.md b/samples/client/petstore/swift4/objcCompatible/README.md index 8c1afe63fc..a5a86abe0a 100644 --- a/samples/client/petstore/swift4/objcCompatible/README.md +++ b/samples/client/petstore/swift4/objcCompatible/README.md @@ -39,6 +39,7 @@ Class | Method | HTTP request | Description *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 +*FakeAPI* | [**testQueryParameterCollectionFormat**](docs/FakeAPI.md#testqueryparametercollectionformat) | **PUT** /fake/test-query-paramters | *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 diff --git a/samples/client/petstore/swift4/objcCompatible/docs/FakeAPI.md b/samples/client/petstore/swift4/objcCompatible/docs/FakeAPI.md index f63957bc8d..befabdf350 100644 --- a/samples/client/petstore/swift4/objcCompatible/docs/FakeAPI.md +++ b/samples/client/petstore/swift4/objcCompatible/docs/FakeAPI.md @@ -17,6 +17,7 @@ Method | HTTP request | Description [**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 +[**testQueryParameterCollectionFormat**](FakeAPI.md#testqueryparametercollectionformat) | **PUT** /fake/test-query-paramters | # **createXmlItem** @@ -711,3 +712,60 @@ No authorization required [[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) +# **testQueryParameterCollectionFormat** +```swift + open class func testQueryParameterCollectionFormat(pipe: [String], ioutil: [String], http: [String], url: [String], context: [String], completion: @escaping (_ data: Void?, _ error: Error?) -> Void) +``` + + + +To test the collection format in query 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 pipe = ["inner_example"] // [String] | +let ioutil = ["inner_example"] // [String] | +let http = ["inner_example"] // [String] | +let url = ["inner_example"] // [String] | +let context = ["inner_example"] // [String] | + +FakeAPI.testQueryParameterCollectionFormat(pipe: pipe, ioutil: ioutil, http: http, url: url, context: context) { (response, error) in + guard error == nil else { + print(error) + return + } + + if (response) { + dump(response) + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **pipe** | [**[String]**](String.md) | | + **ioutil** | [**[String]**](String.md) | | + **http** | [**[String]**](String.md) | | + **url** | [**[String]**](String.md) | | + **context** | [**[String]**](String.md) | | + +### 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/swift4/objcCompatible/docs/FormatTest.md b/samples/client/petstore/swift4/objcCompatible/docs/FormatTest.md index f74d94f6c4..55de2e05ec 100644 --- a/samples/client/petstore/swift4/objcCompatible/docs/FormatTest.md +++ b/samples/client/petstore/swift4/objcCompatible/docs/FormatTest.md @@ -16,6 +16,7 @@ Name | Type | Description | Notes **dateTime** | **Date** | | [optional] **uuid** | **UUID** | | [optional] **password** | **String** | | +**bigDecimal** | **Decimal** | | [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/swift4/objcCompatible/docs/TypeHolderExample.md b/samples/client/petstore/swift4/objcCompatible/docs/TypeHolderExample.md index 46d0471cd7..c0530dc0e5 100644 --- a/samples/client/petstore/swift4/objcCompatible/docs/TypeHolderExample.md +++ b/samples/client/petstore/swift4/objcCompatible/docs/TypeHolderExample.md @@ -5,6 +5,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **stringItem** | **String** | | **numberItem** | **Double** | | +**floatItem** | **Float** | | **integerItem** | **Int** | | **boolItem** | **Bool** | | **arrayItem** | **[Int]** | | diff --git a/samples/client/petstore/swift4/objcCompatible/git_push.sh b/samples/client/petstore/swift4/objcCompatible/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/swift4/objcCompatible/git_push.sh +++ b/samples/client/petstore/swift4/objcCompatible/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/swift4/promisekit/.openapi-generator/VERSION b/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION index 83a328a922..0e97bd19ef 100644 --- a/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION +++ b/samples/client/petstore/swift4/promisekit/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/swift4/promisekit/Cartfile b/samples/client/petstore/swift4/promisekit/Cartfile index d09a24cb3d..9835749b67 100644 --- a/samples/client/petstore/swift4/promisekit/Cartfile +++ b/samples/client/petstore/swift4/promisekit/Cartfile @@ -1,2 +1,2 @@ -github "Alamofire/Alamofire" ~> 4.5.0 +github "Alamofire/Alamofire" ~> 4.9.0 github "mxcl/PromiseKit" ~> 4.4 diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient.podspec b/samples/client/petstore/swift4/promisekit/PetstoreClient.podspec index 620913bf16..8648503b21 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient.podspec +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient.podspec @@ -11,5 +11,5 @@ Pod::Spec.new do |s| s.summary = 'PetstoreClient' s.source_files = 'PetstoreClient/Classes/**/*.swift' s.dependency 'PromiseKit/CorePromise', '~> 4.4.0' - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 3fdda64aa2..d0c22ac869 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -165,7 +165,7 @@ open class FakeAPI { */ open class func testBodyWithFileSchema( body: FileSchemaTestClass) -> Promise { let deferred = Promise.pending() - testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in + testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -201,7 +201,7 @@ open class FakeAPI { */ open class func testBodyWithQueryParams( query: String, body: User) -> Promise { let deferred = Promise.pending() - testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in + testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -292,7 +292,7 @@ open class FakeAPI { */ 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) -> Promise { let deferred = Promise.pending() - 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 { (response, error) -> 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 { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -437,7 +437,7 @@ open class FakeAPI { */ 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) -> Promise { let deferred = Promise.pending() - testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in + testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -503,7 +503,7 @@ open class FakeAPI { */ open class func testGroupParameters( requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> Promise { let deferred = Promise.pending() - testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in + testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -556,7 +556,7 @@ open class FakeAPI { */ open class func testInlineAdditionalProperties( param: [String: String]) -> Promise { let deferred = Promise.pending() - testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in + testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -593,7 +593,7 @@ open class FakeAPI { */ open class func testJsonFormData( param: String, param2: String) -> Promise { let deferred = Promise.pending() - testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in + testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index a9c64e897b..55d39cf88f 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -18,7 +18,7 @@ open class PetAPI { */ open class func addPet( body: Pet) -> Promise { let deferred = Promise.pending() - addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in + addPetWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -58,7 +58,7 @@ open class PetAPI { */ open class func deletePet( petId: Int64, apiKey: String? = nil) -> Promise { let deferred = Promise.pending() - deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in + deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -249,7 +249,7 @@ open class PetAPI { */ open class func updatePet( body: Pet) -> Promise { let deferred = Promise.pending() - updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in + updatePetWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -290,7 +290,7 @@ open class PetAPI { */ open class func updatePetWithForm( petId: Int64, name: String? = nil, status: String? = nil) -> Promise { let deferred = Promise.pending() - updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in + updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 502f44af60..05b2e4ce46 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -18,7 +18,7 @@ open class StoreAPI { */ open class func deleteOrder( orderId: String) -> Promise { let deferred = Promise.pending() - deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in + deleteOrderWithRequestBuilder(orderId: orderId).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 793c47447e..3c10309130 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -18,7 +18,7 @@ open class UserAPI { */ open class func createUser( body: User) -> Promise { let deferred = Promise.pending() - createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUserWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -55,7 +55,7 @@ open class UserAPI { */ open class func createUsersWithArrayInput( body: [User]) -> Promise { let deferred = Promise.pending() - createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithArrayInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -91,7 +91,7 @@ open class UserAPI { */ open class func createUsersWithListInput( body: [User]) -> Promise { let deferred = Promise.pending() - createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithListInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -127,7 +127,7 @@ open class UserAPI { */ open class func deleteUser( username: String) -> Promise { let deferred = Promise.pending() - deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in + deleteUserWithRequestBuilder(username: username).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -252,7 +252,7 @@ open class UserAPI { */ open class func logoutUser() -> Promise { let deferred = Promise.pending() - logoutUserWithRequestBuilder().execute { (response, error) -> Void in + logoutUserWithRequestBuilder().execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { @@ -288,7 +288,7 @@ open class UserAPI { */ open class func updateUser( username: String, body: User) -> Promise { let deferred = Promise.pending() - updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in + updateUserWithRequestBuilder(username: username, body: body).execute { (_, error) -> Void in if let error = error { deferred.reject(error) } else { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift index 04ad02a5ce..60ce28c66a 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift @@ -283,7 +283,7 @@ open class AlamofireRequestBuilder: RequestBuilder { let items = contentDisposition.components(separatedBy: ";") - var filename: String? = nil + var filename: String? for contentItem in items { @@ -294,7 +294,7 @@ open class AlamofireRequestBuilder: RequestBuilder { filename = contentItem return filename? - .replacingCharacters(in: range, with:"") + .replacingCharacters(in: range, with: "") .replacingOccurrences(of: "\"", with: "") .trimmingCharacters(in: .whitespacesAndNewlines) } @@ -435,7 +435,7 @@ open class AlamofireDecodableRequestBuilder: AlamofireRequestBuild return } - var responseObj: Response? = nil + var responseObj: Response? let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data) if decodeResult.error == nil { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift index 111d5a3a8c..0a333db0d1 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift @@ -14,8 +14,8 @@ open class CodableHelper { public static var dateformatter: DateFormatter? open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable { - var returnedDecodable: T? = nil - var returnedError: Error? = nil + var returnedDecodable: T? + var returnedError: Error? let decoder = JSONDecoder() if let df = self.dateformatter { @@ -41,7 +41,7 @@ open class CodableHelper { open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable { var returnedData: Data? - var returnedError: Error? = nil + var returnedError: Error? let encoder = JSONEncoder() if prettyPrint { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift index d6202ace07..b07e60d99e 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Extensions.swift @@ -153,7 +153,7 @@ extension KeyedDecodingContainerProtocol { } public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { - var tmpArray: [T]? = nil + var tmpArray: [T]? if contains(key) { tmpArray = try decodeArray(T.self, forKey: key) diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift index ca05906d42..fb76bbed26 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift @@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding { } public static func encodingParameters(jsonData: Data?) -> Parameters? { - var returnedParams: Parameters? = nil + var returnedParams: Parameters? if let jsonData = jsonData, !jsonData.isEmpty { var params = Parameters() params[jsonDataKey] = jsonData diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift index 3e68bb5d4a..7bd1267e95 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift @@ -11,7 +11,7 @@ import Alamofire open class JSONEncodingHelper { open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? // Encode the Encodable object if let encodableObj = encodableObj { @@ -25,7 +25,7 @@ open class JSONEncodingHelper { } open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? if let encodableObj = encodableObj { do { diff --git a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift index e87ce399c7..2516116586 100644 --- a/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift +++ b/samples/client/petstore/swift4/promisekit/PetstoreClient/Classes/OpenAPIs/Models.swift @@ -27,7 +27,7 @@ open class Response { public convenience init(response: HTTPURLResponse, body: T?) { let rawHeader = response.allHeaderFields - var header = [String:String]() + var header = [String: String]() for case let (key, value) as (String, String) in rawHeader { header[key] = value } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Podfile.lock b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Podfile.lock index 91da0d53a0..355d4c9f5f 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Podfile.lock +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Podfile.lock @@ -1,7 +1,7 @@ PODS: - - Alamofire (4.7.3) - - PetstoreClient (0.0.1): - - Alamofire (~> 4.7.0) + - Alamofire (4.9.0) + - PetstoreClient (1.0.0): + - Alamofire (~> 4.9.0) - PromiseKit/CorePromise (~> 4.4.0) - PromiseKit/CorePromise (4.4.4) @@ -18,10 +18,10 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 - PetstoreClient: 5ebb1667fa647759d434a9cf364c94174e6481cd + Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 + PetstoreClient: 16d0f56d050fe19acef55197555f60526cf4a71b PromiseKit: 6178219c4c7457ae90d7d8b34b7ac5eb36916519 PODFILE CHECKSUM: cedb3058b02f4776d7c31f6d92ae2f674fdf424d -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/LICENSE b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/LICENSE index 2ec3cb14fb..38a301a1db 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/LICENSE +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/README.md b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/README.md index 02082525ae..9fdc9c7387 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/README.md +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/README.md @@ -67,11 +67,12 @@ In order to keep Alamofire focused specifically on core networking implementatio - [Alamofire 2.0 Migration Guide](https://github.com/Alamofire/Alamofire/blob/master/Documentation/Alamofire%202.0%20Migration%20Guide.md) ## Communication - -- If you **need help**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). (Tag 'alamofire') -- If you'd like to **ask a general question**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). -- If you **found a bug**, open an issue. -- If you **have a feature request**, open an issue. +- If you **need help with making network requests**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire) and tag `alamofire`. +- If you need to **find or understand an API**, check [our documentation](http://alamofire.github.io/Alamofire/) or [Apple's documentation for `URLSession`](https://developer.apple.com/documentation/foundation/url_loading_system), on top of which Alamofire is built. +- If you need **help with an Alamofire feature**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you'd like to **discuss Alamofire best practices**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you'd like to **discuss a feature request**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you **found a bug**, open an issue and follow the guide. The more detail the better! - If you **want to contribute**, submit a pull request. ## Installation @@ -84,7 +85,7 @@ In order to keep Alamofire focused specifically on core networking implementatio $ gem install cocoapods ``` -> CocoaPods 1.1+ is required to build Alamofire 4.0+. +> CocoaPods 1.7+ is required to build Alamofire 4.9+. To integrate Alamofire into your Xcode project using CocoaPods, specify it in your `Podfile`: @@ -94,7 +95,7 @@ platform :ios, '10.0' use_frameworks! target '' do - pod 'Alamofire', '~> 4.7' + pod 'Alamofire', '~> 4.9' end ``` @@ -111,14 +112,13 @@ $ pod install You can install Carthage with [Homebrew](https://brew.sh/) using the following command: ```bash -$ brew update $ brew install carthage ``` To integrate Alamofire into your Xcode project using Carthage, specify it in your `Cartfile`: ```ogdl -github "Alamofire/Alamofire" ~> 4.7 +github "Alamofire/Alamofire" ~> 4.9 ``` Run `carthage update` to build the framework and drag the built `Alamofire.framework` into your Xcode project. @@ -141,7 +141,7 @@ dependencies: [ ```swift dependencies: [ - .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.0.0") + .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.9.0") ] ``` diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift index 8b90d8471e..b163f6038f 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift @@ -1,7 +1,7 @@ // // AFError.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift index a411b77491..20c3672fba 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift @@ -1,7 +1,7 @@ // // Alamofire.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -135,7 +135,8 @@ public func request( parameters: Parameters? = nil, encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil) - -> DataRequest { + -> DataRequest +{ return SessionManager.default.request( url, method: method, @@ -182,7 +183,8 @@ public func download( encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download( url, method: method, @@ -207,7 +209,8 @@ public func download( public func download( _ urlRequest: URLRequestConvertible, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download(urlRequest, to: destination) } @@ -236,7 +239,8 @@ public func download( public func download( resumingWith resumeData: Data, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download(resumingWith: resumeData, to: destination) } @@ -259,7 +263,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers) } @@ -292,7 +297,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(data, to: url, method: method, headers: headers) } @@ -325,7 +331,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(stream, to: url, method: method, headers: headers) } @@ -372,7 +379,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil, - encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) { + encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) +{ return SessionManager.default.upload( multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, @@ -408,7 +416,8 @@ public func upload( multipartFormData: @escaping (MultipartFormData) -> Void, usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold, with urlRequest: URLRequestConvertible, - encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) { + encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) +{ return SessionManager.default.upload( multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift index dea3ebc1be..a54673cca6 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift @@ -1,7 +1,7 @@ // // DispatchQueue+Alamofire.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift index 85a0685748..b840138ccc 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift @@ -1,7 +1,7 @@ // // MultipartFormData.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -98,7 +98,7 @@ open class MultipartFormData { public var contentLength: UInt64 { return bodyParts.reduce(0) { $0 + $1.bodyContentLength } } /// The boundary used to separate the body parts in the encoded form data. - public let boundary: String + public var boundary: String private var bodyParts: [BodyPart] private var bodyPartError: AFError? @@ -275,7 +275,8 @@ open class MultipartFormData { } bodyContentLength = fileSize.uint64Value - } catch { + } + catch { setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error)) return } @@ -311,7 +312,8 @@ open class MultipartFormData { withLength length: UInt64, name: String, fileName: String, - mimeType: String) { + mimeType: String) + { let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType) append(stream, withLength: length, headers: headers) } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift index 60bda83d2f..398ca827c2 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift @@ -1,7 +1,7 @@ // // NetworkReachabilityManager.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -128,7 +128,9 @@ open class NetworkReachabilityManager { private init(reachability: SCNetworkReachability) { self.reachability = reachability - self.previousFlags = SCNetworkReachabilityFlags() + + // Set the previous flags to an unreserved value to represent unknown status + self.previousFlags = SCNetworkReachabilityFlags(rawValue: 1 << 30) } deinit { @@ -146,7 +148,8 @@ open class NetworkReachabilityManager { context.info = Unmanaged.passUnretained(self).toOpaque() let callbackEnabled = SCNetworkReachabilitySetCallback( - reachability, { (_, flags, info) in + reachability, + { (_, flags, info) in let reachability = Unmanaged.fromOpaque(info!).takeUnretainedValue() reachability.notifyListener(flags) }, @@ -156,8 +159,11 @@ open class NetworkReachabilityManager { let queueEnabled = SCNetworkReachabilitySetDispatchQueue(reachability, listenerQueue) listenerQueue.async { - self.previousFlags = SCNetworkReachabilityFlags() - self.notifyListener(self.flags ?? SCNetworkReachabilityFlags()) + self.previousFlags = SCNetworkReachabilityFlags(rawValue: 1 << 30) + + guard let flags = self.flags else { return } + + self.notifyListener(flags) } return callbackEnabled && queueEnabled @@ -215,7 +221,8 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {} public func ==( lhs: NetworkReachabilityManager.NetworkReachabilityStatus, rhs: NetworkReachabilityManager.NetworkReachabilityStatus) - -> Bool { + -> Bool +{ switch (lhs, rhs) { case (.unknown, .unknown): return true diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift index e1b6120496..e1ac31bf32 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift @@ -1,7 +1,7 @@ // // Notifications.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift index 344a048cad..6195809c5d 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift @@ -1,7 +1,7 @@ // // ParameterEncoding.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -435,7 +435,8 @@ public struct PropertyListEncoding: ParameterEncoding { /// - returns: The new `PropertyListEncoding` instance. public init( format: PropertyListSerialization.PropertyListFormat = .xml, - options: PropertyListSerialization.WriteOptions = 0) { + options: PropertyListSerialization.WriteOptions = 0) + { self.format = format self.options = options } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift index 18b83a0e73..2be2ce0106 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Request.swift @@ -1,7 +1,7 @@ // // Request.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -161,7 +161,8 @@ open class Request { user: String, password: String, persistence: URLCredential.Persistence = .forSession) - -> Self { + -> Self + { let credential = URLCredential(user: user, password: password, persistence: persistence) return authenticate(usingCredential: credential) } @@ -319,21 +320,16 @@ extension Request: CustomDebugStringConvertible { var headers: [AnyHashable: Any] = [:] - if let additionalHeaders = session.configuration.httpAdditionalHeaders { - for (field, value) in additionalHeaders where field != AnyHashable("Cookie") { - headers[field] = value - } - } + session.configuration.httpAdditionalHeaders?.filter { $0.0 != AnyHashable("Cookie") } + .forEach { headers[$0.0] = $0.1 } - if let headerFields = request.allHTTPHeaderFields { - for (field, value) in headerFields where field != "Cookie" { - headers[field] = value - } - } + request.allHTTPHeaderFields?.filter { $0.0 != "Cookie" } + .forEach { headers[$0.0] = $0.1 } - for (field, value) in headers { - let escapedValue = String(describing: value).replacingOccurrences(of: "\"", with: "\\\"") - components.append("-H \"\(field): \(escapedValue)\"") + components += headers.map { + let escapedValue = String(describing: $0.value).replacingOccurrences(of: "\"", with: "\\\"") + + return "-H \"\($0.key): \(escapedValue)\"" } if let httpBodyData = request.httpBody, let httpBody = String(data: httpBodyData, encoding: .utf8) { @@ -501,8 +497,19 @@ open class DownloadRequest: Request { // MARK: State /// Cancels the request. - open override func cancel() { - downloadDelegate.downloadTask.cancel { self.downloadDelegate.resumeData = $0 } + override open func cancel() { + cancel(createResumeData: true) + } + + /// Cancels the request. + /// + /// - parameter createResumeData: Determines whether resume data is created via the underlying download task or not. + open func cancel(createResumeData: Bool) { + if createResumeData { + downloadDelegate.downloadTask.cancel { self.downloadDelegate.resumeData = $0 } + } else { + downloadDelegate.downloadTask.cancel() + } NotificationCenter.default.post( name: Notification.Name.Task.DidCancel, @@ -537,7 +544,8 @@ open class DownloadRequest: Request { open class func suggestedDownloadDestination( for directory: FileManager.SearchPathDirectory = .documentDirectory, in domain: FileManager.SearchPathDomainMask = .userDomainMask) - -> DownloadFileDestination { + -> DownloadFileDestination + { return { temporaryURL, response in let directoryURLs = FileManager.default.urls(for: directory, in: domain) diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift index 23571383ba..747a471a55 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Response.swift @@ -1,7 +1,7 @@ // // Response.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -58,7 +58,8 @@ public struct DefaultDataResponse { data: Data?, error: Error?, timeline: Timeline = Timeline(), - metrics: AnyObject? = nil) { + metrics: AnyObject? = nil) + { self.request = request self.response = response self.data = data @@ -108,7 +109,8 @@ public struct DataResponse { response: HTTPURLResponse?, data: Data?, result: Result, - timeline: Timeline = Timeline()) { + timeline: Timeline = Timeline()) + { self.request = request self.response = response self.data = data @@ -294,7 +296,8 @@ public struct DefaultDownloadResponse { resumeData: Data?, error: Error?, timeline: Timeline = Timeline(), - metrics: AnyObject? = nil) { + metrics: AnyObject? = nil) + { self.request = request self.response = response self.temporaryURL = temporaryURL @@ -356,7 +359,8 @@ public struct DownloadResponse { destinationURL: URL?, resumeData: Data?, result: Result, - timeline: Timeline = Timeline()) { + timeline: Timeline = Timeline()) + { self.request = request self.response = response self.temporaryURL = temporaryURL diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift index fd049edac1..9cc105a820 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift @@ -1,7 +1,7 @@ // // ResponseSerialization.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -144,7 +144,8 @@ extension DataRequest { queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { let result = responseSerializer.serializeResponse( self.request, @@ -181,7 +182,8 @@ extension DownloadRequest { public func response( queue: DispatchQueue? = nil, completionHandler: @escaping (DefaultDownloadResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { (queue ?? DispatchQueue.main).async { var downloadResponse = DefaultDownloadResponse( @@ -216,7 +218,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { let result = responseSerializer.serializeResponse( self.request, @@ -286,7 +289,8 @@ extension DataRequest { public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.dataResponseSerializer(), @@ -325,7 +329,8 @@ extension DownloadRequest { public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.dataResponseSerializer(), @@ -351,7 +356,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") } @@ -405,7 +411,8 @@ extension DataRequest { queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding), @@ -452,7 +459,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding), @@ -478,7 +486,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) } @@ -505,7 +514,8 @@ extension DataRequest { /// - returns: A JSON object response serializer. public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) - -> DataResponseSerializer { + -> DataResponseSerializer + { return DataResponseSerializer { _, response, data, error in return Request.serializeResponseJSON(options: options, response: response, data: data, error: error) } @@ -522,7 +532,8 @@ extension DataRequest { queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.jsonResponseSerializer(options: options), @@ -540,7 +551,8 @@ extension DownloadRequest { /// - returns: A JSON object response serializer. public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) - -> DownloadResponseSerializer { + -> DownloadResponseSerializer + { return DownloadResponseSerializer { _, response, fileURL, error in guard error == nil else { return .failure(error!) } @@ -568,7 +580,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.jsonResponseSerializer(options: options), @@ -594,7 +607,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) } @@ -621,7 +635,8 @@ extension DataRequest { /// - returns: A property list object response serializer. public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) - -> DataResponseSerializer { + -> DataResponseSerializer + { return DataResponseSerializer { _, response, data, error in return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error) } @@ -638,7 +653,8 @@ extension DataRequest { queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.propertyListResponseSerializer(options: options), @@ -656,7 +672,8 @@ extension DownloadRequest { /// - returns: A property list object response serializer. public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) - -> DownloadResponseSerializer { + -> DownloadResponseSerializer + { return DownloadResponseSerializer { _, response, fileURL, error in guard error == nil else { return .failure(error!) } @@ -684,7 +701,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options), diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Result.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Result.swift index df62e12cab..e0928089ab 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Result.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Result.swift @@ -1,7 +1,7 @@ // // Result.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -253,8 +253,8 @@ extension Result { /// - Parameter closure: A closure that takes the success value of this instance. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func withValue(_ closure: (Value) -> Void) -> Result { - if case let .success(value) = self { closure(value) } + public func withValue(_ closure: (Value) throws -> Void) rethrows -> Result { + if case let .success(value) = self { try closure(value) } return self } @@ -266,8 +266,8 @@ extension Result { /// - Parameter closure: A closure that takes the success value of this instance. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func withError(_ closure: (Error) -> Void) -> Result { - if case let .failure(error) = self { closure(error) } + public func withError(_ closure: (Error) throws -> Void) rethrows -> Result { + if case let .failure(error) = self { try closure(error) } return self } @@ -279,8 +279,8 @@ extension Result { /// - Parameter closure: A `Void` closure. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func ifSuccess(_ closure: () -> Void) -> Result { - if isSuccess { closure() } + public func ifSuccess(_ closure: () throws -> Void) rethrows -> Result { + if isSuccess { try closure() } return self } @@ -292,8 +292,8 @@ extension Result { /// - Parameter closure: A `Void` closure. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func ifFailure(_ closure: () -> Void) -> Result { - if isFailure { closure() } + public func ifFailure(_ closure: () throws -> Void) rethrows -> Result { + if isFailure { try closure() } return self } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift index d50e941fab..dea099e257 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift @@ -1,7 +1,7 @@ // // ServerTrustPolicy.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -249,6 +249,7 @@ public enum ServerTrustPolicy { let unspecified = SecTrustResultType.unspecified let proceed = SecTrustResultType.proceed + isValid = result == unspecified || result == proceed } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift index 17d0d9f150..4964f1eebf 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift @@ -1,7 +1,7 @@ // // SessionDelegate.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -255,7 +255,8 @@ extension SessionDelegate: URLSessionDelegate { open func urlSession( _ session: URLSession, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { guard sessionDidReceiveChallengeWithCompletion == nil else { sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler) return @@ -314,7 +315,8 @@ extension SessionDelegate: URLSessionTaskDelegate { task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, - completionHandler: @escaping (URLRequest?) -> Void) { + completionHandler: @escaping (URLRequest?) -> Void) + { guard taskWillPerformHTTPRedirectionWithCompletion == nil else { taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler) return @@ -340,7 +342,8 @@ extension SessionDelegate: URLSessionTaskDelegate { _ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { guard taskDidReceiveChallengeWithCompletion == nil else { taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler) return @@ -369,7 +372,8 @@ extension SessionDelegate: URLSessionTaskDelegate { open func urlSession( _ session: URLSession, task: URLSessionTask, - needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) { + needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) + { guard taskNeedNewBodyStreamWithCompletion == nil else { taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler) return @@ -394,7 +398,8 @@ extension SessionDelegate: URLSessionTaskDelegate { task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, - totalBytesExpectedToSend: Int64) { + totalBytesExpectedToSend: Int64) + { if let taskDidSendBodyData = taskDidSendBodyData { taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend) } else if let delegate = self[task]?.delegate as? UploadTaskDelegate { @@ -507,7 +512,8 @@ extension SessionDelegate: URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, - completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) { + completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) + { guard dataTaskDidReceiveResponseWithCompletion == nil else { dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler) return @@ -530,7 +536,8 @@ extension SessionDelegate: URLSessionDataDelegate { open func urlSession( _ session: URLSession, dataTask: URLSessionDataTask, - didBecome downloadTask: URLSessionDownloadTask) { + didBecome downloadTask: URLSessionDownloadTask) + { if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask { dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask) } else { @@ -566,7 +573,8 @@ extension SessionDelegate: URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, - completionHandler: @escaping (CachedURLResponse?) -> Void) { + completionHandler: @escaping (CachedURLResponse?) -> Void) + { guard dataTaskWillCacheResponseWithCompletion == nil else { dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler) return @@ -600,7 +608,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { open func urlSession( _ session: URLSession, downloadTask: URLSessionDownloadTask, - didFinishDownloadingTo location: URL) { + didFinishDownloadingTo location: URL) + { if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL { downloadTaskDidFinishDownloadingToURL(session, downloadTask, location) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -623,7 +632,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, - totalBytesExpectedToWrite: Int64) { + totalBytesExpectedToWrite: Int64) + { if let downloadTaskDidWriteData = downloadTaskDidWriteData { downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -651,7 +661,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { _ session: URLSession, downloadTask: URLSessionDownloadTask, didResumeAtOffset fileOffset: Int64, - expectedTotalBytes: Int64) { + expectedTotalBytes: Int64) + { if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset { downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -705,7 +716,8 @@ extension SessionDelegate: URLSessionStreamDelegate { _ session: URLSession, streamTask: URLSessionStreamTask, didBecome inputStream: InputStream, - outputStream: OutputStream) { + outputStream: OutputStream) + { streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream) } } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift index 8c10706677..02c36a76b7 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift @@ -1,7 +1,7 @@ // // SessionManager.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -166,7 +166,8 @@ open class SessionManager { public init( configuration: URLSessionConfiguration = URLSessionConfiguration.default, delegate: SessionDelegate = SessionDelegate(), - serverTrustPolicyManager: ServerTrustPolicyManager? = nil) { + serverTrustPolicyManager: ServerTrustPolicyManager? = nil) + { self.delegate = delegate self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil) @@ -184,7 +185,8 @@ open class SessionManager { public init?( session: URLSession, delegate: SessionDelegate, - serverTrustPolicyManager: ServerTrustPolicyManager? = nil) { + serverTrustPolicyManager: ServerTrustPolicyManager? = nil) + { guard delegate === session.delegate else { return nil } self.delegate = delegate @@ -227,7 +229,8 @@ open class SessionManager { parameters: Parameters? = nil, encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil) - -> DataRequest { + -> DataRequest + { var originalRequest: URLRequest? do { @@ -317,7 +320,8 @@ open class SessionManager { encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) let encodedURLRequest = try encoding.encode(urlRequest, with: parameters) @@ -343,7 +347,8 @@ open class SessionManager { open func download( _ urlRequest: URLRequestConvertible, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { do { let urlRequest = try urlRequest.asURLRequest() return download(.request(urlRequest), to: destination) @@ -379,7 +384,8 @@ open class SessionManager { open func download( resumingWith resumeData: Data, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { return download(.resumeData(resumeData), to: destination) } @@ -388,7 +394,8 @@ open class SessionManager { private func download( _ downloadable: DownloadRequest.Downloadable, to destination: DownloadRequest.DownloadFileDestination?) - -> DownloadRequest { + -> DownloadRequest + { do { let task = try downloadable.task(session: session, adapter: adapter, queue: queue) let download = DownloadRequest(session: session, requestTask: .download(downloadable, task)) @@ -409,7 +416,8 @@ open class SessionManager { _ downloadable: DownloadRequest.Downloadable?, to destination: DownloadRequest.DownloadFileDestination?, failedWith error: Error) - -> DownloadRequest { + -> DownloadRequest + { var downloadTask: Request.RequestTask = .download(nil, nil) if let downloadable = downloadable { @@ -450,7 +458,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(fileURL, with: urlRequest) @@ -495,7 +504,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(data, with: urlRequest) @@ -540,7 +550,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(stream, with: urlRequest) @@ -600,7 +611,9 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil, - encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) { + queue: DispatchQueue? = nil, + encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) @@ -608,10 +621,11 @@ open class SessionManager { multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, with: urlRequest, + queue: queue, encodingCompletion: encodingCompletion ) } catch { - DispatchQueue.main.async { encodingCompletion?(.failure(error)) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(.failure(error)) } } } @@ -642,7 +656,9 @@ open class SessionManager { multipartFormData: @escaping (MultipartFormData) -> Void, usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold, with urlRequest: URLRequestConvertible, - encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) { + queue: DispatchQueue? = nil, + encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) + { DispatchQueue.global(qos: .utility).async { let formData = MultipartFormData() multipartFormData(formData) @@ -664,7 +680,7 @@ open class SessionManager { streamFileURL: nil ) - DispatchQueue.main.async { encodingCompletion?(encodingResult) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(encodingResult) } } else { let fileManager = FileManager.default let tempDirectoryURL = URL(fileURLWithPath: NSTemporaryDirectory()) @@ -700,7 +716,7 @@ open class SessionManager { } } - DispatchQueue.main.async { + (queue ?? DispatchQueue.main).async { let encodingResult = MultipartFormDataEncodingResult.success( request: upload, streamingFromDisk: true, @@ -720,7 +736,7 @@ open class SessionManager { } } - DispatchQueue.main.async { encodingCompletion?(.failure(error)) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(.failure(error)) } } } } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift index 12fcbe92d3..5705737e49 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift @@ -1,7 +1,7 @@ // // TaskDelegate.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -94,7 +94,8 @@ open class TaskDelegate: NSObject { task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, - completionHandler: @escaping (URLRequest?) -> Void) { + completionHandler: @escaping (URLRequest?) -> Void) + { var redirectRequest: URLRequest? = request if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection { @@ -109,7 +110,8 @@ open class TaskDelegate: NSObject { _ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling var credential: URLCredential? @@ -148,7 +150,8 @@ open class TaskDelegate: NSObject { func urlSession( _ session: URLSession, task: URLSessionTask, - needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) { + needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) + { var bodyStream: InputStream? if let taskNeedNewBodyStream = taskNeedNewBodyStream { @@ -234,7 +237,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, - completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) { + completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) + { var disposition: URLSession.ResponseDisposition = .allow expectedContentLength = response.expectedContentLength @@ -249,7 +253,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { func urlSession( _ session: URLSession, dataTask: URLSessionDataTask, - didBecome downloadTask: URLSessionDownloadTask) { + didBecome downloadTask: URLSessionDownloadTask) + { dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask) } @@ -282,7 +287,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, - completionHandler: @escaping (CachedURLResponse?) -> Void) { + completionHandler: @escaping (CachedURLResponse?) -> Void) + { var cachedResponse: CachedURLResponse? = proposedResponse if let dataTaskWillCacheResponse = dataTaskWillCacheResponse { @@ -337,7 +343,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { func urlSession( _ session: URLSession, downloadTask: URLSessionDownloadTask, - didFinishDownloadingTo location: URL) { + didFinishDownloadingTo location: URL) + { temporaryURL = location guard @@ -372,7 +379,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, - totalBytesExpectedToWrite: Int64) { + totalBytesExpectedToWrite: Int64) + { if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() } if let downloadTaskDidWriteData = downloadTaskDidWriteData { @@ -397,7 +405,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { _ session: URLSession, downloadTask: URLSessionDownloadTask, didResumeAtOffset fileOffset: Int64, - expectedTotalBytes: Int64) { + expectedTotalBytes: Int64) + { if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset { downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes) } else { @@ -439,7 +448,8 @@ class UploadTaskDelegate: DataTaskDelegate { task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, - totalBytesExpectedToSend: Int64) { + totalBytesExpectedToSend: Int64) + { if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() } if let taskDidSendBodyData = taskDidSendBodyData { diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift index b318b1ff48..596c1bdc41 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift @@ -1,7 +1,7 @@ // // Timeline.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -64,7 +64,8 @@ public struct Timeline { requestStartTime: CFAbsoluteTime = 0.0, initialResponseTime: CFAbsoluteTime = 0.0, requestCompletedTime: CFAbsoluteTime = 0.0, - serializationCompletedTime: CFAbsoluteTime = 0.0) { + serializationCompletedTime: CFAbsoluteTime = 0.0) + { self.requestStartTime = requestStartTime self.initialResponseTime = initialResponseTime self.requestCompletedTime = requestCompletedTime diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift index deaee34ad8..59e0bbb2b0 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift @@ -1,7 +1,7 @@ // // Validation.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -94,7 +94,8 @@ extension Request { statusCode acceptableStatusCodes: S, response: HTTPURLResponse) -> ValidationResult - where S.Iterator.Element == Int { + where S.Iterator.Element == Int + { if acceptableStatusCodes.contains(response.statusCode) { return .success } else { @@ -110,7 +111,8 @@ extension Request { response: HTTPURLResponse, data: Data?) -> ValidationResult - where S.Iterator.Element == String { + where S.Iterator.Element == String + { guard let data = data, data.count > 0 else { return .success } guard @@ -217,7 +219,10 @@ extension DataRequest { /// - returns: The request. @discardableResult public func validate() -> Self { - return validate(statusCode: self.acceptableStatusCodes).validate(contentType: self.acceptableContentTypes) + let contentTypes = { [unowned self] in + self.acceptableContentTypes + } + return validate(statusCode: acceptableStatusCodes).validate(contentType: contentTypes()) } } @@ -308,6 +313,9 @@ extension DownloadRequest { /// - returns: The request. @discardableResult public func validate() -> Self { - return validate(statusCode: self.acceptableStatusCodes).validate(contentType: self.acceptableContentTypes) + let contentTypes = { [unowned self] in + self.acceptableContentTypes + } + return validate(statusCode: acceptableStatusCodes).validate(contentType: contentTypes()) } } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json index 0b0d0d7a97..6c368e7233 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json @@ -5,7 +5,7 @@ "osx": "10.11", "tvos": "9.0" }, - "version": "0.0.1", + "version": "1.0.0", "source": { "git": "git@github.com:OpenAPITools/openapi-generator.git", "tag": "v1.0.0" @@ -20,7 +20,7 @@ "~> 4.4.0" ], "Alamofire": [ - "~> 4.7.0" + "~> 4.9.0" ] } } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Manifest.lock b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Manifest.lock index 91da0d53a0..355d4c9f5f 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Manifest.lock +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Manifest.lock @@ -1,7 +1,7 @@ PODS: - - Alamofire (4.7.3) - - PetstoreClient (0.0.1): - - Alamofire (~> 4.7.0) + - Alamofire (4.9.0) + - PetstoreClient (1.0.0): + - Alamofire (~> 4.9.0) - PromiseKit/CorePromise (~> 4.4.0) - PromiseKit/CorePromise (4.4.4) @@ -18,10 +18,10 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 - PetstoreClient: 5ebb1667fa647759d434a9cf364c94174e6481cd + Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 + PetstoreClient: 16d0f56d050fe19acef55197555f60526cf4a71b PromiseKit: 6178219c4c7457ae90d7d8b34b7ac5eb36916519 PODFILE CHECKSUM: cedb3058b02f4776d7c31f6d92ae2f674fdf424d -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj index c058ebf80b..6e4730ff2e 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj @@ -7,764 +7,829 @@ objects = { /* Begin PBXBuildFile section */ - 02071E48F96FD71248FC1F3B968A845A /* PetstoreClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 027C4A52348FD3873244B25C792F761D /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */; }; - 0315DA53DB4D4B2A60D3EC8A1226E531 /* join.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54DD29EE59FE04DF98E96700B3A276DB /* join.swift */; }; - 037D07B26DC59D1CC0273AE6FEA1CD13 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */; }; - 063E2A92EA8D52DF1DE2B29A80271858 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */; }; - 0715CFD3F238C92E39EABF1BAE9DEDC5 /* Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22932972F4F492160D4694C01CAF311D /* Promise.swift */; }; - 0BB86B354744F4F29C727616582AB202 /* Pods-SwaggerClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0CC7E2B57382776C22F1D6A223D3FB30 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */; }; - 0EFBF7019EC6DC4EF93C814A3F36E38B /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */; }; - 10DAF72647DD12ED091372129BB268A5 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */; }; - 13806249FBAB943244612D80A34D981F /* DispatchQueue+Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B75FBDF2B74DA3B74C5F0ADD20F42A2 /* DispatchQueue+Promise.swift */; }; - 13FC85EE94586643B1FE22392C01E46A /* Promise+Properties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24AEF2E680D3A5F36B2C7C53FA70938A /* Promise+Properties.swift */; }; - 143078764176C820CA1C32429BE39512 /* PromiseKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DD27DB5AB64425B97113FA8D5A10F19 /* PromiseKit.framework */; }; - 1B071E174CBF3F5D9AA17F4C258C76D2 /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */; }; - 1C784AD3C368EA9A3B5769292677D0B1 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */; }; - 1F607CEAE14C08C2C5B56E34EBC3339C /* PromiseKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 6456A8E3DB29C967B8479EA4438C76F3 /* PromiseKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1FC3FD39157C2FFFF3869A1300730086 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64759A200040719DDE024A0F1BCDDDEE /* SessionDelegate.swift */; }; - 23650F3C69B6FD8AE505F4DBD2DB0857 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */; }; - 23FCFACCB4F9F8077B71C4A4C4FD26A9 /* after.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EDF4D8C4A3CD3A61ACE20A71F71A107 /* after.m */; }; - 24A6E2FAF5D0AE6123051BD63ACA16FE /* State.swift in Sources */ = {isa = PBXBuildFile; fileRef = E775A7621846699F1A762DB966B3DC48 /* State.swift */; }; - 2899965598E656F4804A599B41373AA5 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */; }; - 2AC0D0C21D99D9609C73EE09981714A5 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */; }; - 2C66D521D013B842DFB8DAF34B59ACCB /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */; }; - 2ED9960693780756E2B13B3506B14C49 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5A46D45023C6CBF06AA36844D59C59E /* User.swift */; }; - 36C38C55A44AB001BA635DAA42DD8983 /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */; }; - 36FF8853CB34A9297AFAA8F5F7456324 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F8D293ABA4E6DE8B257C7E9899F1B08 /* TaskDelegate.swift */; }; - 37F1F38BE0232BE70968F18FE9DDFD18 /* after.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6AFE5B442894FF7BEA9ECAB0A39B4AD /* after.swift */; }; - 3C292981845039C329CAE6DF091F163A /* AnyPromise.m in Sources */ = {isa = PBXBuildFile; fileRef = CB66B121BF9B4DF48FE2F6A4D044C443 /* AnyPromise.m */; }; - 3E8AEF1A6CDE3145AC9E940830475BA0 /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */; }; - 41340C91CBF8893B2D39505D93F9512D /* Pods-SwaggerClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */; }; - 4690D1E1498F4ADDB4DA09FD62B9B296 /* join.m in Sources */ = {isa = PBXBuildFile; fileRef = 47F1D5162720B2001CA614017A1ACE90 /* join.m */; }; - 469FA9854F6633041F5E4E5C88B476D2 /* fwd.h in Headers */ = {isa = PBXBuildFile; fileRef = 645D2C8A204D8C820EEF9684DC5A65F8 /* fwd.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4E1A913EFB404FB11524718FF0298EFE /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23C4E6603FB90F49BE8906508887D859 /* Alamofire.swift */; }; - 4EDA36131FB46358E4B474A7E40D2914 /* PromiseKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4667C7609366DAC2FC770F6565F7F2A2 /* PromiseKit-dummy.m */; }; - 4FA95E85B4C2E6B497F96627D80DF623 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */; }; - 500C8EDA60C07B0F127C7FC385E17D38 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC1CEE597A54C622C960B36A5EC2FA0F /* Notifications.swift */; }; - 512F26D1DCFE54340A28AAA8C5FABB97 /* Pods-SwaggerClientTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */; }; - 52237C35642089F77DD4D723CEB25737 /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 714D784CFA6CB99C3B07B03487960BE0 /* Response.swift */; }; - 53BE186F099D765B7B89A48B8FDEC305 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = FECB278917C7651872C44FB1C0B6E620 /* Category.swift */; }; - 54AF653DAC076544800133105D44E02D /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */; }; - 58A9719584AFA2D108D9E5C585A79329 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08A7F97EB8AC32E44E21839FA607D2CE /* Validation.swift */; }; - 5971B33F72E3D7D3C236AD2771C6B1B9 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */; }; - 5AC217BD5767F08E7C82ACF19EC6C0EF /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */; }; - 5BF9E9CAD1144E0D2E15546B47333208 /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */; }; - 5EE5FED83B90A606A763CF1114D1D6FB /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 948BFEDB052F09AD8DAE3BD3CB286673 /* ResponseSerialization.swift */; }; - 616F0481C475C488192EF999DFC00B7C /* Pods-SwaggerClientTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 61AC4F4A1910E63BDB0364F1B4CD012B /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */; }; - 635F6F0DD64B196B960CC238BE399DCD /* dispatch_promise.m in Sources */ = {isa = PBXBuildFile; fileRef = ACDBB9A0818694ED3F5545A2102E7624 /* dispatch_promise.m */; }; - 6528D060736C08F3A23765C1F8E3CE22 /* Zalgo.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA33807992507937BA2869E4D72BA073 /* Zalgo.swift */; }; - 66311DD68B248E0D685D01071F74BD63 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */; }; - 6BEA14EC335E07C7063CD1383C0C443C /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 428236967C1B816363FB039AD9A0D098 /* ServerTrustPolicy.swift */; }; - 6D340C3F8ADD35EAA72A268334008960 /* race.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2293B3E9936106C01A2A831A2C1E8AD6 /* race.swift */; }; - 6DEBDF5BE3369FD988FA2CEA7D813F98 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7898EEC6A565DE133438C48988478954 /* Extensions.swift */; }; - 6F2121D78F6240F2356B850825004415 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */; }; - 7068E8A7DDC1424EE8F24BC77E8746F4 /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9585493102C1567226760B6BACFDF648 /* SessionManager.swift */; }; - 709500A134F2E2ED97D6BAB0E9905EE9 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */; }; - 73152A114BB7ACC185D4E3C5B2A8CC07 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */; }; - 776B2513CCAA202CDE2F96A2A564A1A7 /* Promise+AnyPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 947066689D96D035F88E7408FA47E193 /* Promise+AnyPromise.swift */; }; - 796177DE2762F24DAC16A709FD954838 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3D5BF61C764F8D1E7F2631DE14AC6B36 /* ParameterEncoding.swift */; }; - 8822F29F792B2674D113973F88212968 /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */; }; - 899843F3DB6D20030909A88553419AED /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */; }; - 8A4BB6F1B691984551B4BC77C6633687 /* hang.m in Sources */ = {isa = PBXBuildFile; fileRef = CA6251246DA0044C165AC891CDE64344 /* hang.m */; }; - 8AB65820804447DD4AB80F9D9F608321 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */; }; - 8AF655C55D0F96271C37B532702B6F25 /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */; }; - 8D1E66FE754A575BFFD9E0A4AD2E5ACC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */; }; - 8DA38131F3487E52C418B14A1146D0B5 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */; }; - 8E4DFD49566930B2F419CB92D8E07C56 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */; }; - 8EF0EF0C763DE340F099EF07925608BC /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */; }; - 8F9A24B69FC11D8D3C8F74A569CB6CD5 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */; }; - 965DACF3DC02857ECBE66C5CBA3DA5D4 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = C8A3F20B5239DF2DF6CB987D4827C198 /* Request.swift */; }; - 9A15A1AF9B617CCE084F6FFE369CDE1E /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */; }; - 9C97BB2A3C9278FB023FC59391D7B02D /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */; }; - 9E8F539C0E15C6E6BD55E4BDE78B0F1B /* AnyPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9CE45709BBC984B7998B833B10FC058 /* AnyPromise.swift */; }; - 9FB58E73B8ACCB4DB5DBBAD8B87626EF /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */; }; - A16D3E85A8842716CBF75475A97CAFCC /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */; }; - A4ADEF1FAEEC1AEF8FBEE742C47EC96B /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */; }; - A56D29C425DC157942A87177E268D848 /* PromiseKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = E63746E0EEDB9AB11F3F623A63F36BB3 /* PromiseKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - AA0E012DD8D92B800F7DA4F3FBE02509 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */; }; - ABF4EED967D1D9043E0A85D41597DCC0 /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */; }; - B0D9AEEB00D6B8F4F270C4422A4CF277 /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */; }; - B15A7FFE1FD350F0AF33232278D879CA /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */; }; - B424F524BBBE34E685129945993809A8 /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE6E736FF5D4320FE1647DB1724C14B8 /* Timeline.swift */; }; - B77705737566AE83ED7E448923D7FA60 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AE857E00E364AD3F18C2C39D49D6DDD /* NetworkReachabilityManager.swift */; }; - BD9D5579D597A1DEC7872F12884B5958 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */; }; - BDFC42E8D488B782544C01EA4B836FE6 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */; }; - BE4BA1EDE444A770F834605F4B65348E /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEA7D6AB49001069ED310CBCA8FCBB44 /* AFError.swift */; }; - CC2518B4EDF73A9C100DD3B9CAD84565 /* GlobalState.m in Sources */ = {isa = PBXBuildFile; fileRef = 7824BE1937712800889974B222CAB1AD /* GlobalState.m */; }; - CD95341C60D1B637CE85F8AAE8DFA6AF /* AnyPromise.h in Headers */ = {isa = PBXBuildFile; fileRef = 80933905730AC186F9CA86852B3817E6 /* AnyPromise.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D198BD94C82D4FD954FE15A754F65BE8 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 405921FE252DC3DC1087DA4217236D81 /* Name.swift */; }; - D44FDA104AAA19A44864284354B6377C /* wrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04B96D6AE9F0F69FC801059349B8A234 /* wrap.swift */; }; - D489E6541A67815C7785EF7A68A845EF /* PetstoreClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */; }; - D4C3899574E9D5DF5E5DA52310560BCC /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 60347AB0041CEAF3AFE665EDD5ED3839 /* Alamofire-dummy.m */; }; - D6D37755B3CCC3826F1F41E3E043F106 /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */; }; - DBE6E2E4D205545E7988CFA5057C31D6 /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = F48DFEE4376C36D6CF4C7DBFEBF91F45 /* DispatchQueue+Alamofire.swift */; }; - DC567BC5B9BF3C422F0165E2B31CE032 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */; }; - E16148779492D8DB40529B26B4F35771 /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F434ADE4363A510D2EFDCE14A0C5746 /* Error.swift */; }; - E1939689D5A410305F4AE7A75F9AB32A /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */; }; - E2F45E3834F1B7EF5DB5AFA4580A250B /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */; }; - E897D091002F530F5DB439100BB35177 /* when.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E9E772008F75FBB98AEE83B59F519A9 /* when.m */; }; - EB0EB892E9CBCEAF21362C0CD884E91B /* when.swift in Sources */ = {isa = PBXBuildFile; fileRef = 05D32F7DA10CFDD71EAA3EA19946CD1D /* when.swift */; }; - EF1461221681BCA12A4147900A704727 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A16286911EF2D17072D77A2B43E34006 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F11849261F9CF3BC9BD00E80672431CD /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A03102A2289886143D394C1EEF173C69 /* Alamofire.framework */; }; - F835BCBFA377D7C2E17F901D401198D6 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61179CE650778B2A5C39664F0A792B5C /* List.swift */; }; - F9BF5C32556AB5B89CB2F37D4D0098D5 /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */; }; - F9EA61D484CC15FDDAB0D8C0D26D7949 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE689938DB1BB3BAF7C98928CB02978A /* Result.swift */; }; - FA43ABC3B765C8141EB9A954F8236E8C /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */; }; - FC7BBC1159E2CC6DA66E352C63BE59B0 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */; }; - FF9C7BC64DB23D2CED48197DE67F0335 /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D75CBCB14282D5EBA5A424CCF0655C2A /* MultipartFormData.swift */; }; + 02CB7A74792FE71D55618B1FD68A84F2 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92066FF1F08D20558637C2DF4F007414 /* TypeHolderDefault.swift */; }; + 059D92B7BBFBEC53E9A3B6E11C5C3B3A /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01B6740A1E78009ED5880C768EDAD9DB /* Response.swift */; }; + 091CC6D7CFF9374E41B1C6CB19B0E97B /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3D9FB4070F34ECD420ACB66E1938430 /* APIs.swift */; }; + 0A39AF55285A3A4F7CBABB6D822FA4A3 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B8873E6FA376A1098653C8957A9CD8A /* Alamofire.swift */; }; + 0AB631DF2E9BC76B8736C9EFF6191C0B /* Pods-SwaggerClientTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0CD12250A91D4CBC55393495F06775B2 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 706EA1E33802DC5002C4619F94BC8C99 /* JSONEncodableEncoding.swift */; }; + 0F5999FD4C7B20C99945D1766DCE1E1C /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 48D66D7CC32AD262384136A281A3F8D1 /* Alamofire.framework */; }; + 13E3586ABCE7938EB3CC6D51BAD31B42 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = D04FA8D90CF4B9585A67B86642BA750E /* User.swift */; }; + 17CBDD207E1B25F63A3E1823BC03B675 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */; }; + 1B20892D757F702E6AE23072F5E15D04 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */; }; + 1C035F0DFD555DC8249BE265F89C3071 /* PromiseKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4E1844EB7E5BB13D3E0EB4144A87D867 /* PromiseKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1D29D2ACADF961F69D32B06FA6A09E28 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D047C054BDCF57647A210CA210568D0 /* Notifications.swift */; }; + 24406F8A6355B7BEC2B072D3B17ECD47 /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 863792E6E9405D9FA494ED8635CE6C0B /* Model200Response.swift */; }; + 26DD5BC612DBFC51C9A2EC25AF219566 /* fwd.h in Headers */ = {isa = PBXBuildFile; fileRef = F0E666A2F03AB68FDC1E79B74A41E0C2 /* fwd.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 28A9B496DBCD33380CC3D4CC155F524E /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39B0696CC11BF8EA7FDEC30C719FABC2 /* Models.swift */; }; + 2CDAC18FCB90313EFA1B02A75C83E0EE /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDDADBC0BB257C4A516773B0ECA96196 /* AnotherFakeAPI.swift */; }; + 2E29AA764BF206DE155112E5BC4939E8 /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9B71ED5DCF22D2A22499C3DA4D41762 /* Name.swift */; }; + 317719762D81596E1DD4BC4786311DF5 /* when.m in Sources */ = {isa = PBXBuildFile; fileRef = 2F38E2E2D4911E1D04FABA2223BD7688 /* when.m */; }; + 355C18EEC82624A06A6CC93965258E33 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C72D782FD3C5EEE8E525751B6D4DDB8 /* Request.swift */; }; + 3593A7A85BE6F92BC7BEA765C89B1076 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A5A74AC7AF5B77CA1BD76B82062D5D3 /* PetAPI.swift */; }; + 36C038AE1EFBD5D95D3B3102A737DFDE /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7295C7D32B7C8F2805DB5D2F3D732F60 /* OuterComposite.swift */; }; + 39CFC0AF6016C70C5EA5345DFE44FEB4 /* Pods-SwaggerClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */; }; + 3B14FC1EA44225994453AA123F4262D0 /* XmlItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABBBF50FA7E854657BDB01185C7DE324 /* XmlItem.swift */; }; + 3BD1DAFE1F3E6C9E4EB0F2099B6D6FA2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */; }; + 3E0749AF6C51BCF0E4A41CF1D6A76FED /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A86D1C0C7700196DC16755F82D031B /* DispatchQueue+Alamofire.swift */; }; + 40AE1B240B27734094AB39EACA233A0D /* Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE73527DDD3B6ACE1DC5B450D1392B2A /* Promise.swift */; }; + 410EC2309E393CB88C39529E7CF18811 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9EC4A49FB365F7019625F4C1BBCB292 /* FakeAPI.swift */; }; + 47E148EE42FDCD51C69EA7EB322496BD /* join.swift in Sources */ = {isa = PBXBuildFile; fileRef = 057172115AF48E3DCA451233A4A640D4 /* join.swift */; }; + 4D4DCE405773A7673D0199A93FE9DE62 /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F4D33B469C31ECB943475DBFB00CBB /* Dog.swift */; }; + 51909107FAE52A0D1C8AE11B65DE08E7 /* after.m in Sources */ = {isa = PBXBuildFile; fileRef = 7A10AF8E314E52BF5F7CD27303878027 /* after.m */; }; + 526815FE7172F8568A44A8F4D9139970 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04D69622D72C7F771C350E30C30020EC /* SpecialModelName.swift */; }; + 5C5EA546013E597E3D52DD83B5C92D13 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97A2C094645F6A60D5A7F4E894EE23BD /* UserAPI.swift */; }; + 5CAA0F2AB773CCD6E62848CC02470C8E /* dispatch_promise.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A06291A67C87943DA0BB177E1BB5DC0 /* dispatch_promise.m */; }; + 60B6C2A003864AAD3A426448152F67BE /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F7C3F0D5E6C5A6A1BB66A132C7D958 /* Timeline.swift */; }; + 636C75AD8D045A1687F83CA89AF49A86 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = D9475C74C195567107086633A4D262E6 /* Capitalization.swift */; }; + 64B570EF5C1FF1379F8036D8FCCB63EF /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4A146F2131F799FABD6835B1CFDD347 /* StoreAPI.swift */; }; + 67D2462106E9DB4C3D16D5F521C99250 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9919E54A07648F68B8B5639C3D37053F /* MixedPropertiesAndAdditionalPropertiesClass.swift */; }; + 687C2F140C3AFB4F2FA5147EF9790F1D /* Pods-SwaggerClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 6AF9A6069796DA5834FEEAFD7221874F /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = 999653E1FEB8493AD6E227418DFE96D4 /* Return.swift */; }; + 6B598CD6C3665D587BD8EDE6202EA593 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */; }; + 6C2E4B236C0831BEF971D9F43E41401D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */; }; + 6EFD003458AE7F689DEA720A2030C261 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A009E375554819534829616F49D733C /* ResponseSerialization.swift */; }; + 6FACE6A9C43083DBB5033317AFF9AE31 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = D59752DB0583557ED0A103929DE7D1C9 /* ArrayOfNumberOnly.swift */; }; + 6FC066D0A7B565C871A65F540E37735F /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F9A53FCDA869FFF602D9C9B68A25226 /* MapTest.swift */; }; + 6FDC9E3B9907CF35FC038BD79A7DE2AC /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9A41207BF0E0F1116EFF3A7520E4F30 /* Animal.swift */; }; + 700D3D95AF9520CB227846DFD943A2DA /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45296D9EFD89DCB6A902D002A70E234F /* ParameterEncoding.swift */; }; + 726DCC0BBB21F735986DF5C9F3DCBEF6 /* PromiseKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8146A56E871C702178198F216CD8B080 /* PromiseKit-dummy.m */; }; + 73AB05789A4982944AF68DBD013E3EB7 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72572B944808AC7C4854543BC132DFD8 /* NetworkReachabilityManager.swift */; }; + 772911DA6E33D1CBBC30131B7C8BDBB3 /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 146F60360CAB9CAF5A98D361FE0762CC /* Alamofire-dummy.m */; }; + 77A253AD92BDAF5465031F9225A13F8D /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = C868C2F462554B7E170F490CC96D9129 /* OuterEnum.swift */; }; + 77E8F0EB9FFBE2E3EB0C77095C644606 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2A2E212CE2309CAC426DE24D621FDC4 /* TaskDelegate.swift */; }; + 7A00D62842DD238AC0457B7743459143 /* AnyPromise.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D7EC36638E4AB5C51EE2A9196D7E586 /* AnyPromise.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7B14AABEA6084A6CAAD77F02D700A436 /* GlobalState.m in Sources */ = {isa = PBXBuildFile; fileRef = 9C7EEAA52CAEFE414144646859D19BF6 /* GlobalState.m */; }; + 7B847086909F16338E32D2290866777C /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = F06C0DAD6966724111ECC6015B132A10 /* List.swift */; }; + 7C0B7D57C5FED546B89AF6A45F276C36 /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC9640039255992199037E6E249CD4BA /* TypeHolderExample.swift */; }; + 7D3B1A7247A69E34E48CED53C5145C34 /* PetstoreClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C65DCB83B644ABFF723D9EDA2FB9E0C /* PetstoreClient-dummy.m */; }; + 7E3538A6992A38276764936A9733493D /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77A2E5CCDF5F8198ACB62180A77E07C2 /* AFError.swift */; }; + 8012A57CFFC574F745FBA46D335BBA6F /* Pods-SwaggerClientTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */; }; + 8766DA6D3446770DAAF3D68E154E61BD /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62DA94E0DEA0A35F82AB7D9B8D7FA79F /* EnumTest.swift */; }; + 87D949C0631CC0CB929C69CA7D925B14 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3AAB640C655ED6CF3F5D5C2314B9FB6B /* FakeClassnameTags123API.swift */; }; + 8D2A6A90A6DDAF75EA52D471258545CC /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = B55431698AE115B7B9BB79A1D53B02AF /* ServerTrustPolicy.swift */; }; + 8D53C0725D4DE490174105C56C981189 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FBAE8AD90A56C780F6620DBED839BA6 /* Pet.swift */; }; + 8F063138AEB0CBD41F723D7C8C6C9A1C /* after.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2C82B8D4ECBBD48AE25659F2AEBFED8 /* after.swift */; }; + 8FC55DB96BAADB3B12B0DAB26332E40A /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 861B9982272479ABE4C4C559BFA8B0F6 /* FileSchemaTestClass.swift */; }; + 910364E886094608091F77F9DBF1AE2E /* DispatchQueue+Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 848CDB5C465B1E04DF5158F07B83EE6B /* DispatchQueue+Promise.swift */; }; + 975E21814E0F788DF6A6E5DE986229E6 /* PromiseKit.h in Headers */ = {isa = PBXBuildFile; fileRef = ADA8ECE65CA8BD73FABB353F0DBAA212 /* PromiseKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9A30D9B1EE2D5A3AC76AE389E0520352 /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11D9A9B2DA688589C27C7E886C45C6A0 /* Cat.swift */; }; + 9B72FB26EC959DD96FDBB044A9C3C525 /* join.m in Sources */ = {isa = PBXBuildFile; fileRef = 91CB8ACD285957E691D4B962FB4D995B /* join.m */; }; + 9D8C37EA1313F9BBDD200D8FCB93CCFA /* AnyPromise.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FA863F5D3ACE15F4B0EB8D1E74927ED /* AnyPromise.m */; }; + 9FBC90C0E307ADB8CD2F3CF5C0D3C8EE /* Zalgo.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3A7DCCAD07BACD1357F077BCA314A6D /* Zalgo.swift */; }; + A1EC41966B261DCE460BCDE5124A1DBE /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9E25BFB027008543966243CC338E08E /* SessionDelegate.swift */; }; + A64FF2ED84938912BA601B01121B8E23 /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9E89ABCCC57336F89BD5C8BB5B4872B /* Order.swift */; }; + AA56769D8733D3F3E7976742D5ABA998 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83D18CAC667F7E35D9B8E620072ED4D7 /* Validation.swift */; }; + ABDB6B2BD6587F48ADD190B84019CDD7 /* PromiseKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A381312D61E3EA2806B6FAD90B3BEE94 /* PromiseKit.framework */; }; + AEA829AB1A8AF2AD077A808AED6B178A /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2ED731C536593898FB5674BF6A7DC86 /* MultipartFormData.swift */; }; + B394CD18FC054147A348F808EAC8139A /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D7E4D001368609BA573263A283441DD /* AlamofireImplementations.swift */; }; + B433389CCA40FDC6A02956C940F80112 /* State.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04D9F269A5D0FA67A43F1F5D94F26D1B /* State.swift */; }; + B4A2386087F99886C5CC944C2A5B58C7 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB771F553FC5BEE61938D2B61CDA2CDF /* NumberOnly.swift */; }; + B511D9CED36E092C88AB629C511BD1E7 /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 421C2470DDB7AF4A716391E4E9BA4602 /* Category.swift */; }; + B645EC01163024890ADE8D5C9EAF8EE5 /* hang.m in Sources */ = {isa = PBXBuildFile; fileRef = C42B10EE07C66F6B51BBEB51046AB299 /* hang.m */; }; + B652075D043B2D37A0B1FA649065FC3F /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5CFB3D593ECA1A24451987289C9B395 /* StringBooleanMap.swift */; }; + B67DB5083264B8C8896D3DF3F5FE2E20 /* wrap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 38E040842BCDCCB56DA8C4C1E77A905E /* wrap.swift */; }; + B6F6E4CC26451E91B59FAE0F6841DC1F /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CD82F46EEBDF3CDC0F371A13742C7C00 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BA93909A110EB66F7167C3B326A5D2B0 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DDE9C75E8809A86C87F1EF6BE5A7262 /* AdditionalPropertiesClass.swift */; }; + BC5A794B04B4DEA6F0473FD3E8952BDC /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54113FF25263A7207B4695B993005157 /* EnumClass.swift */; }; + BE5BBDF15A7C0C9CF88A0268815B8202 /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 683B7D10FA5B9F3523A5976092B503D2 /* JSONEncodingHelper.swift */; }; + BF0B6C073FB6099B4BB906527BFA43FD /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4FB9EC1A94087BEE99F46EDC560EF076 /* ArrayOfArrayOfNumberOnly.swift */; }; + BF7C810E194570D018B13127190459E5 /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAD186DA30C241B56CD1BE298604BBC5 /* AnimalFarm.swift */; }; + BFB77FC4FC5E7D0680CE25025D0F818F /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F7E93BB98A2DE82741AB7E95364E2E3 /* FormatTest.swift */; }; + C0887203727473C7A8A9084437976426 /* when.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC9EA3D1DFE57CA229F3C7E3F3737154 /* when.swift */; }; + C1245D0FDDA57F8CEAA283B028D09D09 /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2595AC2F6A360B57A8D3D63C239BA43 /* DogAllOf.swift */; }; + C13E3FEC49E848F2CC5794FF93065029 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0467367B175C2F0A832EF481D058A3B1 /* ApiResponse.swift */; }; + C80C11BB589CAA31898343105C285051 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6F98097E49FF48BBF52B4D577575897 /* Extensions.swift */; }; + C94A6EA921453BFA4C082DFAC9C1C7EC /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7093CCE3918A0AF33C35DE6D2D7E50B2 /* ArrayTest.swift */; }; + CE18C1FBB0A93582860FFAF71E056F6A /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39FD32A271A0C2C893B43793B933F616 /* CatAllOf.swift */; }; + D1DA04105E2DD51C51C44E841F8032E1 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 29BA92EB036AC93CED81C533893913E0 /* APIHelper.swift */; }; + D3FA0AA634AAEA99AB3FABC36BB4958C /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7DF70E51226B5CFA18D8A74279984374 /* SessionManager.swift */; }; + D7EAFEBB963D9B9C8BC00951572B8571 /* AnyPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = D06090E7502DCF820B39197445505140 /* AnyPromise.swift */; }; + DF9AFA6422C6A99873955D59EF32DFAD /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = CBA48E443F18480EDF7990B4B747C01C /* Tag.swift */; }; + E160BF1E02EA978930609C95C93EEF16 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA6C5985BAF3713D3B44503E95F0FB80 /* HasOnlyReadOnly.swift */; }; + E5C45F26D8419C4BE5642B1E321894DD /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C84522B99B59B341AB4C8B336ED0C5F /* Configuration.swift */; }; + EB0DD8CEA1A69867A30267439C970440 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FDF1E434780F3B9150349C6920B90CE /* Result.swift */; }; + EC94B1BA635C6723DCFC17912BE0C588 /* Promise+Properties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 005C9DFB4855B699557271A22E350181 /* Promise+Properties.swift */; }; + ED06569D6C27D747E3E98ACF2F3CF0D8 /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8A65F4CD1E4DF96497733DACEEE24510 /* File.swift */; }; + F1620139EC36E6F5E4A98718BC41407D /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 166F3B2D4B92170923DEDBF0DC6EA0EF /* ClassModel.swift */; }; + F3A7212660A85B8AA43AD950729FBEA4 /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04534F5AA06E6782A3CA6B026100F75E /* EnumArrays.swift */; }; + F47A5B894FD1450562D373B1D33D6A61 /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E85A5CF8B173DB33BC07D63DE81D716 /* Client.swift */; }; + F7E9E11EFB5556B4D6033CC522502126 /* Promise+AnyPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8BEC984F88B74ADDDFFCF4891539CC56 /* Promise+AnyPromise.swift */; }; + FB407559577B3E19CAF1D3E75D4A7AAE /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B749F866CD9E9BFD8C8EAE1DDB1EB84 /* Error.swift */; }; + FE76A7AA575836F1EE950DDFEAE2CF7B /* race.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32FDBEBEEE3527CDFB764B9D267598AB /* race.swift */; }; + FFA407C091EEE5260E0C08655A0947EB /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A625E9EFA94098A17E16D12F9166900 /* ReadOnlyFirst.swift */; }; + FFA9DEB1EEA584789F46BBD344961268 /* PetstoreClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7083C42A5DC6552DCB8F1A1E03CCA816 /* PetstoreClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FFEE16A611067AB36CB750E960FEC9E8 /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC69D2B8F2AE344EAA07F51A9750D0D2 /* CodableHelper.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 05A5EC1BAA77DAA68451C43016EA94E6 /* PBXContainerItemProxy */ = { + 46A96CCA6A1D1F8D0F013D7285FE0374 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = E76458C58C9140B6A16D60547E68E80C; - remoteInfo = Alamofire; - }; - 6820589C863D447314A430256098049E /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = BE6551E2EC26377CF9A73DFD54EF11B2; - remoteInfo = "Pods-SwaggerClient"; - }; - 86F56BCE785BD1105D7C86BCDFD4E663 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = AB23231C19FCBCAC6FE02D4945154508; - remoteInfo = PromiseKit; - }; - 8A3661929FE5253419E235F8DFA5548D /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = E76458C58C9140B6A16D60547E68E80C; - remoteInfo = Alamofire; - }; - E45E6B008110DAB3EE83CF6549D8A3D9 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = D5D0C678763D6BFA84F005BCB7523BA3; + remoteGlobalIDString = F1D420F0D4A15B40A58DAEF987DD36C3; remoteInfo = PetstoreClient; }; - F5833DEBC56B2C5434E5E8CDB975BD5C /* PBXContainerItemProxy */ = { + 546F8B9CAB0CCCB3CAA12EAFD808A106 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = AB23231C19FCBCAC6FE02D4945154508; + remoteGlobalIDString = BB3D3DCE720C235EF143F0E12FF69CA8; + remoteInfo = PromiseKit; + }; + 8457C9F78C76721ECB8A14CE04BB0A4B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 3383968E74B5371B20BB519B170DC7FD; + remoteInfo = Alamofire; + }; + CA4BC4C012806840D9DC2B2430920C98 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 3383968E74B5371B20BB519B170DC7FD; + remoteInfo = Alamofire; + }; + FA1A8E2F3FE2899A723889F94EACA0E5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 231FDEAF460449DE9E4B3F7B823FD3A3; + remoteInfo = "Pods-SwaggerClient"; + }; + FA9F1AC6C8600F3A18D9309C97C11B70 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BB3D3DCE720C235EF143F0E12FF69CA8; remoteInfo = PromiseKit; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0075000FF9024228C130ADDA9B81114E /* PetstoreClient-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-prefix.pch"; sourceTree = ""; }; - 04B96D6AE9F0F69FC801059349B8A234 /* wrap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = wrap.swift; path = Sources/wrap.swift; sourceTree = ""; }; - 05D32F7DA10CFDD71EAA3EA19946CD1D /* when.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = when.swift; path = Sources/when.swift; sourceTree = ""; }; - 08A7F97EB8AC32E44E21839FA607D2CE /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; - 08BDFE9C9E9365771FF2D47928E3E79A /* Pods-SwaggerClient-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-acknowledgements.plist"; sourceTree = ""; }; - 0AD61F8554C909A3AFA66AD9ECCB5F23 /* Pods-SwaggerClient-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-frameworks.sh"; sourceTree = ""; }; - 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; }; - 0B4A4A4EB2DBD6F56B1383E53763FD1B /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PetstoreClient.framework; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 0B75FBDF2B74DA3B74C5F0ADD20F42A2 /* DispatchQueue+Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Promise.swift"; path = "Sources/DispatchQueue+Promise.swift"; sourceTree = ""; }; - 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; }; - 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; }; - 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.debug.xcconfig"; sourceTree = ""; }; - 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = PetstoreClient/Classes/OpenAPIs/Configuration.swift; sourceTree = ""; }; - 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; }; - 22932972F4F492160D4694C01CAF311D /* Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Promise.swift; path = Sources/Promise.swift; sourceTree = ""; }; - 2293B3E9936106C01A2A831A2C1E8AD6 /* race.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = race.swift; path = Sources/race.swift; sourceTree = ""; }; - 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; }; - 23C4E6603FB90F49BE8906508887D859 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; - 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; }; - 24AEF2E680D3A5F36B2C7C53FA70938A /* Promise+Properties.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Promise+Properties.swift"; path = "Sources/Promise+Properties.swift"; sourceTree = ""; }; - 27E9F1130735B56DF22A1439B5BA6333 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; }; - 2A8ED560E3DF01E75E0272F7A1B911DD /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; - 2BB1D491A4C824A6BFA9C0C35E36BD85 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AlamofireImplementations.swift; path = PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift; sourceTree = ""; }; - 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CodableHelper.swift; path = PetstoreClient/Classes/OpenAPIs/CodableHelper.swift; sourceTree = ""; }; - 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClient-umbrella.h"; sourceTree = ""; }; - 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodingHelper.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift; sourceTree = ""; }; - 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; }; - 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; }; - 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; }; - 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; }; - 3D5BF61C764F8D1E7F2631DE14AC6B36 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; - 3EDF4D8C4A3CD3A61ACE20A71F71A107 /* after.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = after.m; path = Sources/after.m; sourceTree = ""; }; - 405921FE252DC3DC1087DA4217236D81 /* Name.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; }; - 408CD558DEC1EFB9C57002ADB50665FC /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 419496CDDD7E7536CBEA02BAEE2C7C21 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 428236967C1B816363FB039AD9A0D098 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; - 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; }; - 451D13FDA61BDE9EB91BBC6CEA52AED4 /* PromiseKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PromiseKit.xcconfig; sourceTree = ""; }; - 45FB2502919E80623D265FE19C0A8FC4 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; - 4667C7609366DAC2FC770F6565F7F2A2 /* PromiseKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PromiseKit-dummy.m"; sourceTree = ""; }; - 46A00B403166BEF9EE215F6CB59BE9A6 /* Pods_SwaggerClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClient.framework; path = "Pods-SwaggerClient.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 47F1D5162720B2001CA614017A1ACE90 /* join.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = join.m; path = Sources/join.m; sourceTree = ""; }; - 48B406C5392E8AC40762B8EDE6DF1FE8 /* PromiseKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-prefix.pch"; sourceTree = ""; }; - 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; }; - 4DD27DB5AB64425B97113FA8D5A10F19 /* PromiseKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PromiseKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 4EB7BF4F57FA381E9DA7A1AA9B04857D /* PetstoreClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PetstoreClient.modulemap; sourceTree = ""; }; - 4F8D293ABA4E6DE8B257C7E9899F1B08 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; - 501C268D3DC431E81C876F4F7EE389C6 /* PetstoreClient.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; path = PetstoreClient.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIHelper.swift; path = PetstoreClient/Classes/OpenAPIs/APIHelper.swift; sourceTree = ""; }; - 54DD29EE59FE04DF98E96700B3A276DB /* join.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = join.swift; path = Sources/join.swift; sourceTree = ""; }; - 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; }; - 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; }; - 5F434ADE4363A510D2EFDCE14A0C5746 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = Sources/Error.swift; sourceTree = ""; }; - 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; }; - 60347AB0041CEAF3AFE665EDD5ED3839 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; - 61179CE650778B2A5C39664F0A792B5C /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; }; - 6456A8E3DB29C967B8479EA4438C76F3 /* PromiseKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = PromiseKit.h; path = Sources/PromiseKit.h; sourceTree = ""; }; - 645D2C8A204D8C820EEF9684DC5A65F8 /* fwd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fwd.h; path = Sources/fwd.h; sourceTree = ""; }; - 64759A200040719DDE024A0F1BCDDDEE /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; - 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; }; - 714D784CFA6CB99C3B07B03487960BE0 /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; - 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClientTests-dummy.m"; sourceTree = ""; }; - 76645699475D3AB6EB5242AC4D0CEFAE /* Pods-SwaggerClient-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClient-acknowledgements.markdown"; sourceTree = ""; }; - 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PetstoreClient-dummy.m"; sourceTree = ""; }; - 7824BE1937712800889974B222CAB1AD /* GlobalState.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GlobalState.m; path = Sources/GlobalState.m; sourceTree = ""; }; - 7898EEC6A565DE133438C48988478954 /* Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Extensions.swift; path = PetstoreClient/Classes/OpenAPIs/Extensions.swift; sourceTree = ""; }; - 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; }; - 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; }; - 7AE857E00E364AD3F18C2C39D49D6DDD /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; - 80933905730AC186F9CA86852B3817E6 /* AnyPromise.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AnyPromise.h; path = Sources/AnyPromise.h; sourceTree = ""; }; - 814471C0F27B39D751143F0CD53670BD /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; }; - 8BBF3490280C4ED53738743F84C890BC /* Pods_SwaggerClientTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClientTests.framework; path = "Pods-SwaggerClientTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; }; - 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 947066689D96D035F88E7408FA47E193 /* Promise+AnyPromise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Promise+AnyPromise.swift"; path = "Sources/Promise+AnyPromise.swift"; sourceTree = ""; }; - 948BFEDB052F09AD8DAE3BD3CB286673 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; - 9585493102C1567226760B6BACFDF648 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; - 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-umbrella.h"; sourceTree = ""; }; - 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; }; - 9D08EC9B39FEBA43A5B55DAF97AAEBE9 /* Pods-SwaggerClientTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClientTests.modulemap"; sourceTree = ""; }; - 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; }; - 9D780FDAD16A03CC25F4D6F3317B9423 /* Pods-SwaggerClientTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-acknowledgements.plist"; sourceTree = ""; }; - 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; }; - 9E9E772008F75FBB98AEE83B59F519A9 /* when.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = when.m; path = Sources/when.m; sourceTree = ""; }; - A03102A2289886143D394C1EEF173C69 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A16286911EF2D17072D77A2B43E34006 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; - AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; }; - ACDBB9A0818694ED3F5545A2102E7624 /* dispatch_promise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = dispatch_promise.m; path = Sources/dispatch_promise.m; sourceTree = ""; }; - AD3B511F5C43568AAFBA2714468F9FD5 /* PromiseKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PromiseKit.framework; path = PromiseKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - AE6E736FF5D4320FE1647DB1724C14B8 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; - AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.debug.xcconfig"; sourceTree = ""; }; - B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIs.swift; path = PetstoreClient/Classes/OpenAPIs/APIs.swift; sourceTree = ""; }; - B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PetstoreClient.xcconfig; sourceTree = ""; }; - B6AFE5B442894FF7BEA9ECAB0A39B4AD /* after.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = after.swift; path = Sources/after.swift; sourceTree = ""; }; - B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodableEncoding.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift; sourceTree = ""; }; - BC1CEE597A54C622C960B36A5EC2FA0F /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; - C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; }; - C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; }; - C8A3F20B5239DF2DF6CB987D4827C198 /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; - C9CE45709BBC984B7998B833B10FC058 /* AnyPromise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyPromise.swift; path = Sources/AnyPromise.swift; sourceTree = ""; }; - CA6251246DA0044C165AC891CDE64344 /* hang.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = hang.m; path = Sources/hang.m; sourceTree = ""; }; - CAF6F32F117197F6F08B477687F09728 /* Pods-SwaggerClientTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClientTests-frameworks.sh"; sourceTree = ""; }; - CB66B121BF9B4DF48FE2F6A4D044C443 /* AnyPromise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AnyPromise.m; path = Sources/AnyPromise.m; sourceTree = ""; }; - CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClientTests-umbrella.h"; sourceTree = ""; }; - CFA4F581E074596AB5C3DAF3D9C39F17 /* Pods-SwaggerClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClient.modulemap"; sourceTree = ""; }; - D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; }; - D47B812D78D0AE64D85D16A96840F8C4 /* Pods-SwaggerClientTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClientTests-acknowledgements.markdown"; sourceTree = ""; }; - D75CBCB14282D5EBA5A424CCF0655C2A /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; - D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; }; - DA33807992507937BA2869E4D72BA073 /* Zalgo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zalgo.swift; path = Sources/Zalgo.swift; sourceTree = ""; }; - DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; }; - DE689938DB1BB3BAF7C98928CB02978A /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; - DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; }; - E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; }; - E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; }; - E564E86B6F817ED6259E08FB2B589CAA /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; - E5A46D45023C6CBF06AA36844D59C59E /* User.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; - E63746E0EEDB9AB11F3F623A63F36BB3 /* PromiseKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-umbrella.h"; sourceTree = ""; }; - E708155DC6E87EA22044EC19AB55DD05 /* PromiseKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PromiseKit.modulemap; sourceTree = ""; }; - E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - E775A7621846699F1A762DB966B3DC48 /* State.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = State.swift; path = Sources/State.swift; sourceTree = ""; }; - E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; }; - E80A16C989615AAE419866DB4FD10185 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; }; - EEA7D6AB49001069ED310CBCA8FCBB44 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; - F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.release.xcconfig"; sourceTree = ""; }; - F3E1116FA9F9F3AFD9332B7236F6E711 /* Pods-SwaggerClientTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClientTests-resources.sh"; sourceTree = ""; }; - F48DFEE4376C36D6CF4C7DBFEBF91F45 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; - F4BB3B2146310CA18C30F145BFF15BD9 /* Pods-SwaggerClient-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-resources.sh"; sourceTree = ""; }; - F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClient-dummy.m"; sourceTree = ""; }; - FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; }; - FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.release.xcconfig"; sourceTree = ""; }; - FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Models.swift; path = PetstoreClient/Classes/OpenAPIs/Models.swift; sourceTree = ""; }; - FECB278917C7651872C44FB1C0B6E620 /* Category.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; }; - FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; }; + 005C9DFB4855B699557271A22E350181 /* Promise+Properties.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Promise+Properties.swift"; path = "Sources/Promise+Properties.swift"; sourceTree = ""; }; + 01A5C01DA27D0796FD50B4BA65BAF819 /* PromiseKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PromiseKit.modulemap; sourceTree = ""; }; + 01B6740A1E78009ED5880C768EDAD9DB /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + 024B6CCE54665B2B8C5A6A361996F330 /* PromiseKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PromiseKit.xcconfig; sourceTree = ""; }; + 0378F66031FCAEA1771BE52BF95BBF3A /* User.md */ = {isa = PBXFileReference; includeInIndex = 1; name = User.md; path = docs/User.md; sourceTree = ""; }; + 044ED8C312BDDA8A93EF9740A5D6635C /* Model200Response.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Model200Response.md; path = docs/Model200Response.md; sourceTree = ""; }; + 04534F5AA06E6782A3CA6B026100F75E /* EnumArrays.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; }; + 0467367B175C2F0A832EF481D058A3B1 /* ApiResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; }; + 04D69622D72C7F771C350E30C30020EC /* SpecialModelName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; }; + 04D9F269A5D0FA67A43F1F5D94F26D1B /* State.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = State.swift; path = Sources/State.swift; sourceTree = ""; }; + 04F4D33B469C31ECB943475DBFB00CBB /* Dog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; }; + 057172115AF48E3DCA451233A4A640D4 /* join.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = join.swift; path = Sources/join.swift; sourceTree = ""; }; + 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.release.xcconfig"; sourceTree = ""; }; + 07F8EFE5AA6510095D2E009863317CB9 /* Order.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Order.md; path = docs/Order.md; sourceTree = ""; }; + 09F7C3F0D5E6C5A6A1BB66A132C7D958 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; + 0E85A5CF8B173DB33BC07D63DE81D716 /* Client.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; }; + 11D9A9B2DA688589C27C7E886C45C6A0 /* Cat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; }; + 146F60360CAB9CAF5A98D361FE0762CC /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; + 166F3B2D4B92170923DEDBF0DC6EA0EF /* ClassModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; }; + 16F3A5E2D2142E1A4325498FC5C53DA0 /* DogAllOf.md */ = {isa = PBXFileReference; includeInIndex = 1; name = DogAllOf.md; path = docs/DogAllOf.md; sourceTree = ""; }; + 192D52CF963F026FC4AE2398773BBC50 /* EnumTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumTest.md; path = docs/EnumTest.md; sourceTree = ""; }; + 1ED294369B879E2098B334C63575B7F1 /* PetAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = PetAPI.md; path = docs/PetAPI.md; sourceTree = ""; }; + 1FE541DC5CA53C88DF7EBA29B807D613 /* PetstoreClient-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PetstoreClient-Info.plist"; sourceTree = ""; }; + 224E8CF92D8CEAABA9CEBF326A1F3592 /* PetstoreClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PetstoreClient.modulemap; sourceTree = ""; }; + 22770A1D5CBD0B223DC3CDB943156D32 /* Return.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Return.md; path = docs/Return.md; sourceTree = ""; }; + 25103330F23FA9F2529571F308093057 /* MapTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = MapTest.md; path = docs/MapTest.md; sourceTree = ""; }; + 262FAE23D33A5D8D25FD3174BD218D2D /* CatAllOf.md */ = {isa = PBXFileReference; includeInIndex = 1; name = CatAllOf.md; path = docs/CatAllOf.md; sourceTree = ""; }; + 29BA92EB036AC93CED81C533893913E0 /* APIHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIHelper.swift; path = PetstoreClient/Classes/OpenAPIs/APIHelper.swift; sourceTree = ""; }; + 29CE11B261C3803DAC95698C526C28F5 /* PromiseKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PromiseKit.framework; path = PromiseKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 2A06291A67C87943DA0BB177E1BB5DC0 /* dispatch_promise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = dispatch_promise.m; path = Sources/dispatch_promise.m; sourceTree = ""; }; + 2C65DCB83B644ABFF723D9EDA2FB9E0C /* PetstoreClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PetstoreClient-dummy.m"; sourceTree = ""; }; + 2C84522B99B59B341AB4C8B336ED0C5F /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = PetstoreClient/Classes/OpenAPIs/Configuration.swift; sourceTree = ""; }; + 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClient-umbrella.h"; sourceTree = ""; }; + 2F38E2E2D4911E1D04FABA2223BD7688 /* when.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = when.m; path = Sources/when.m; sourceTree = ""; }; + 31ED5C3525921534592BF796A9C159CF /* Pods-SwaggerClientTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-acknowledgements.plist"; sourceTree = ""; }; + 32FDBEBEEE3527CDFB764B9D267598AB /* race.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = race.swift; path = Sources/race.swift; sourceTree = ""; }; + 355D469521D44A6D4EB3DA64FDE5F7C6 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 37D607ECD2F930FE1DB14AAD3D2FA264 /* OuterEnum.md */ = {isa = PBXFileReference; includeInIndex = 1; name = OuterEnum.md; path = docs/OuterEnum.md; sourceTree = ""; }; + 38E040842BCDCCB56DA8C4C1E77A905E /* wrap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = wrap.swift; path = Sources/wrap.swift; sourceTree = ""; }; + 39B0696CC11BF8EA7FDEC30C719FABC2 /* Models.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Models.swift; path = PetstoreClient/Classes/OpenAPIs/Models.swift; sourceTree = ""; }; + 39FD32A271A0C2C893B43793B933F616 /* CatAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = ""; }; + 3A009E375554819534829616F49D733C /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; + 3A5A74AC7AF5B77CA1BD76B82062D5D3 /* PetAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; }; + 3AAB640C655ED6CF3F5D5C2314B9FB6B /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; }; + 3B8873E6FA376A1098653C8957A9CD8A /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; + 3F5E9D64C5F0D5EE4E79CAA59E04172C /* ApiResponse.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ApiResponse.md; path = docs/ApiResponse.md; sourceTree = ""; }; + 3FDF1E434780F3B9150349C6920B90CE /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; + 421C2470DDB7AF4A716391E4E9BA4602 /* Category.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; }; + 44CC620F46D960EF0B6F97F430F5FC1E /* Pods_SwaggerClientTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClientTests.framework; path = "Pods-SwaggerClientTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 45296D9EFD89DCB6A902D002A70E234F /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 4536398A85D1D5BBB39C3849096317B8 /* UserAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = UserAPI.md; path = docs/UserAPI.md; sourceTree = ""; }; + 45BAB97CF70E7E9B8D97D643CB602EBB /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; + 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClient-dummy.m"; sourceTree = ""; }; + 48D66D7CC32AD262384136A281A3F8D1 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClientTests-dummy.m"; sourceTree = ""; }; + 4CD9592220A0204D65C56DC92A81DA49 /* PetstoreClient.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PetstoreClient.xcconfig; sourceTree = ""; }; + 4CE19599ABE0E7AE1F173DBA59E31076 /* Client.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Client.md; path = docs/Client.md; sourceTree = ""; }; + 4DC5DC2F9BCEFA797895B33C16D2B17E /* Pods-SwaggerClient-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-Info.plist"; sourceTree = ""; }; + 4E1844EB7E5BB13D3E0EB4144A87D867 /* PromiseKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-umbrella.h"; sourceTree = ""; }; + 4F9A53FCDA869FFF602D9C9B68A25226 /* MapTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; }; + 4FB9EC1A94087BEE99F46EDC560EF076 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; }; + 4FBAE8AD90A56C780F6620DBED839BA6 /* Pet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; }; + 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClientTests-umbrella.h"; sourceTree = ""; }; + 51A86D1C0C7700196DC16755F82D031B /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; + 5386BBE743C361BFF3494F43FE388D82 /* Dog.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Dog.md; path = docs/Dog.md; sourceTree = ""; }; + 54113FF25263A7207B4695B993005157 /* EnumClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; }; + 54E07AE118C3A0E6F7D341C158295E78 /* EnumClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumClass.md; path = docs/EnumClass.md; sourceTree = ""; }; + 5FBB2BEE096BE1F26A2F82F63C2A9137 /* PetstoreClient.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = PetstoreClient.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 618C90E6044C36C76F3590183ED38CB2 /* Pods-SwaggerClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClient.modulemap"; sourceTree = ""; }; + 61A1A22EC0CE765486E1DD7D915F1B67 /* Pods_SwaggerClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClient.framework; path = "Pods-SwaggerClient.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 62DA94E0DEA0A35F82AB7D9B8D7FA79F /* EnumTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; }; + 64A2381235D9FBB789BE4EB25C3250C2 /* AnotherFakeAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AnotherFakeAPI.md; path = docs/AnotherFakeAPI.md; sourceTree = ""; }; + 67CAA50227E3326A9816E28A7CD74A9C /* StringBooleanMap.md */ = {isa = PBXFileReference; includeInIndex = 1; name = StringBooleanMap.md; path = docs/StringBooleanMap.md; sourceTree = ""; }; + 683B7D10FA5B9F3523A5976092B503D2 /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodingHelper.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift; sourceTree = ""; }; + 6C72D782FD3C5EEE8E525751B6D4DDB8 /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; + 6D7E4D001368609BA573263A283441DD /* AlamofireImplementations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AlamofireImplementations.swift; path = PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift; sourceTree = ""; }; + 6F0DF3F13D20C6C62978412D37A6E05B /* EnumArrays.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumArrays.md; path = docs/EnumArrays.md; sourceTree = ""; }; + 706EA1E33802DC5002C4619F94BC8C99 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodableEncoding.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift; sourceTree = ""; }; + 7083C42A5DC6552DCB8F1A1E03CCA816 /* PetstoreClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-umbrella.h"; sourceTree = ""; }; + 7093CCE3918A0AF33C35DE6D2D7E50B2 /* ArrayTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; }; + 72572B944808AC7C4854543BC132DFD8 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; + 7295C7D32B7C8F2805DB5D2F3D732F60 /* OuterComposite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; }; + 75855F6DC341E04EB8A436C5A5516151 /* TypeHolderDefault.md */ = {isa = PBXFileReference; includeInIndex = 1; name = TypeHolderDefault.md; path = docs/TypeHolderDefault.md; sourceTree = ""; }; + 765E58692EB6F8B6798E43E94D7F4094 /* ArrayOfArrayOfNumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayOfArrayOfNumberOnly.md; path = docs/ArrayOfArrayOfNumberOnly.md; sourceTree = ""; }; + 77A2E5CCDF5F8198ACB62180A77E07C2 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; + 77E7F6EA3ADC6756C75AAB7DBB8AB130 /* Cat.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Cat.md; path = docs/Cat.md; sourceTree = ""; }; + 7A10AF8E314E52BF5F7CD27303878027 /* after.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = after.m; path = Sources/after.m; sourceTree = ""; }; + 7A625E9EFA94098A17E16D12F9166900 /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; }; + 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + 7D7EC36638E4AB5C51EE2A9196D7E586 /* AnyPromise.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AnyPromise.h; path = Sources/AnyPromise.h; sourceTree = ""; }; + 7DF70E51226B5CFA18D8A74279984374 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; + 7FA863F5D3ACE15F4B0EB8D1E74927ED /* AnyPromise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AnyPromise.m; path = Sources/AnyPromise.m; sourceTree = ""; }; + 8146A56E871C702178198F216CD8B080 /* PromiseKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PromiseKit-dummy.m"; sourceTree = ""; }; + 81B75710FF1D97F3BBA8CF87E5D7CFDB /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PetstoreClient.framework; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 83A28F36D4BF850589924CCEF888C624 /* File.md */ = {isa = PBXFileReference; includeInIndex = 1; name = File.md; path = docs/File.md; sourceTree = ""; }; + 83D18CAC667F7E35D9B8E620072ED4D7 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; + 848CDB5C465B1E04DF5158F07B83EE6B /* DispatchQueue+Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Promise.swift"; path = "Sources/DispatchQueue+Promise.swift"; sourceTree = ""; }; + 861B9982272479ABE4C4C559BFA8B0F6 /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; }; + 863792E6E9405D9FA494ED8635CE6C0B /* Model200Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; }; + 876786DF3A2782A83F27AAB4DF9B7129 /* SpecialModelName.md */ = {isa = PBXFileReference; includeInIndex = 1; name = SpecialModelName.md; path = docs/SpecialModelName.md; sourceTree = ""; }; + 891AFA4406EB2D944EEA7D0DB1A042FC /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; + 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.debug.xcconfig"; sourceTree = ""; }; + 8A19875444C285AE928D471959E28CA2 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; + 8A65F4CD1E4DF96497733DACEEE24510 /* File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; }; + 8BAD70A6195E195061F133B7EA8670DA /* Name.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Name.md; path = docs/Name.md; sourceTree = ""; }; + 8BEC984F88B74ADDDFFCF4891539CC56 /* Promise+AnyPromise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Promise+AnyPromise.swift"; path = "Sources/Promise+AnyPromise.swift"; sourceTree = ""; }; + 8D047C054BDCF57647A210CA210568D0 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; + 8DDE9C75E8809A86C87F1EF6BE5A7262 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; }; + 8F7E93BB98A2DE82741AB7E95364E2E3 /* FormatTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; }; + 901441DA8E39EF973EBE8D69C2CDADE7 /* Pods-SwaggerClientTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-Info.plist"; sourceTree = ""; }; + 91CB8ACD285957E691D4B962FB4D995B /* join.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = join.m; path = Sources/join.m; sourceTree = ""; }; + 91E22058D6E4F60DC6174011E70A2252 /* StoreAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = StoreAPI.md; path = docs/StoreAPI.md; sourceTree = ""; }; + 92066FF1F08D20558637C2DF4F007414 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = ""; }; + 9448B03916DFC494CD68A614565A98B8 /* Pods-SwaggerClient-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-frameworks.sh"; sourceTree = ""; }; + 96FB30FE91CE11061D85EA6BDBE094E3 /* Pods-SwaggerClient-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-acknowledgements.plist"; sourceTree = ""; }; + 97A2C094645F6A60D5A7F4E894EE23BD /* UserAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; }; + 9919E54A07648F68B8B5639C3D37053F /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; }; + 999653E1FEB8493AD6E227418DFE96D4 /* Return.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; }; + 9A359A8A6EF5936FF2065AE9CBDCE44A /* ReadOnlyFirst.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ReadOnlyFirst.md; path = docs/ReadOnlyFirst.md; sourceTree = ""; }; + 9B749F866CD9E9BFD8C8EAE1DDB1EB84 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = Sources/Error.swift; sourceTree = ""; }; + 9C7EEAA52CAEFE414144646859D19BF6 /* GlobalState.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = GlobalState.m; path = Sources/GlobalState.m; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + A15505355E41E0A84C4DBB54E6722A6D /* AdditionalPropertiesClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AdditionalPropertiesClass.md; path = docs/AdditionalPropertiesClass.md; sourceTree = ""; }; + A33BB5BD82FE354BE292BE1DE69FE51F /* HasOnlyReadOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = HasOnlyReadOnly.md; path = docs/HasOnlyReadOnly.md; sourceTree = ""; }; + A35F2B8231DE6F6D8A6EA88D06013D6E /* FakeAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FakeAPI.md; path = docs/FakeAPI.md; sourceTree = ""; }; + A381312D61E3EA2806B6FAD90B3BEE94 /* PromiseKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = PromiseKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + A3B2B506FC78CDF88268C906E6638091 /* PetstoreClient-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-prefix.pch"; sourceTree = ""; }; + A4A146F2131F799FABD6835B1CFDD347 /* StoreAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; }; + A6F98097E49FF48BBF52B4D577575897 /* Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Extensions.swift; path = PetstoreClient/Classes/OpenAPIs/Extensions.swift; sourceTree = ""; }; + A87F3C66E22CB7E45520173CC79433C5 /* Tag.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Tag.md; path = docs/Tag.md; sourceTree = ""; }; + A9A41207BF0E0F1116EFF3A7520E4F30 /* Animal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; }; + A9B71ED5DCF22D2A22499C3DA4D41762 /* Name.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; }; + ABBBF50FA7E854657BDB01185C7DE324 /* XmlItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = XmlItem.swift; sourceTree = ""; }; + AC144D2DF074FA8918C17F3B8D14EE68 /* FormatTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FormatTest.md; path = docs/FormatTest.md; sourceTree = ""; }; + ADA8ECE65CA8BD73FABB353F0DBAA212 /* PromiseKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = PromiseKit.h; path = Sources/PromiseKit.h; sourceTree = ""; }; + ADC0280962FDFA97AD377F19BF78E755 /* PromiseKit-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PromiseKit-Info.plist"; sourceTree = ""; }; + AE73527DDD3B6ACE1DC5B450D1392B2A /* Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Promise.swift; path = Sources/Promise.swift; sourceTree = ""; }; + B2A2E212CE2309CAC426DE24D621FDC4 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; + B55431698AE115B7B9BB79A1D53B02AF /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; + B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.release.xcconfig"; sourceTree = ""; }; + B8EBE4324A4F4CB8BDA4FA4F6701018A /* ArrayOfNumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayOfNumberOnly.md; path = docs/ArrayOfNumberOnly.md; sourceTree = ""; }; + B9EC4A49FB365F7019625F4C1BBCB292 /* FakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; }; + BA5EB5823D5F03F25561928D53E496FC /* Alamofire-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Alamofire-Info.plist"; sourceTree = ""; }; + BA6C5985BAF3713D3B44503E95F0FB80 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; }; + BB59CDEC268DB47E3F70C984590CB9D5 /* FakeClassnameTags123API.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FakeClassnameTags123API.md; path = docs/FakeClassnameTags123API.md; sourceTree = ""; }; + BC9640039255992199037E6E249CD4BA /* TypeHolderExample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = ""; }; + BE70D2A78B09C7BC49E8D639EB88D8E7 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C291EB8933000D10C36F66A93478AA6E /* Pet.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Pet.md; path = docs/Pet.md; sourceTree = ""; }; + C42B10EE07C66F6B51BBEB51046AB299 /* hang.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = hang.m; path = Sources/hang.m; sourceTree = ""; }; + C5BF10812C8B893BE942E8A61095B391 /* NumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = NumberOnly.md; path = docs/NumberOnly.md; sourceTree = ""; }; + C868C2F462554B7E170F490CC96D9129 /* OuterEnum.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; }; + CBA48E443F18480EDF7990B4B747C01C /* Tag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; }; + CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.debug.xcconfig"; sourceTree = ""; }; + CD82F46EEBDF3CDC0F371A13742C7C00 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; + D01ADEDF5E44D58ACB8ED1AED7BF7615 /* Pods-SwaggerClientTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClientTests-acknowledgements.markdown"; sourceTree = ""; }; + D04FA8D90CF4B9585A67B86642BA750E /* User.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; + D06090E7502DCF820B39197445505140 /* AnyPromise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyPromise.swift; path = Sources/AnyPromise.swift; sourceTree = ""; }; + D0E85B45A1EC6339F7AA30F525EBDF1F /* ClassModel.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ClassModel.md; path = docs/ClassModel.md; sourceTree = ""; }; + D153E0692428B3BF93148DCD1E6BC00F /* Capitalization.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Capitalization.md; path = docs/Capitalization.md; sourceTree = ""; }; + D1A6BA19B108998DF7350B40C83BFC47 /* Pods-SwaggerClientTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClientTests.modulemap"; sourceTree = ""; }; + D2595AC2F6A360B57A8D3D63C239BA43 /* DogAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = ""; }; + D2C82B8D4ECBBD48AE25659F2AEBFED8 /* after.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = after.swift; path = Sources/after.swift; sourceTree = ""; }; + D398056DC91B13AFAA8A0A890BBD89A4 /* AnimalFarm.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AnimalFarm.md; path = docs/AnimalFarm.md; sourceTree = ""; }; + D46742F1F99243487DCC614C75C1413C /* Pods-SwaggerClient-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClient-acknowledgements.markdown"; sourceTree = ""; }; + D59752DB0583557ED0A103929DE7D1C9 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; }; + D5CFB3D593ECA1A24451987289C9B395 /* StringBooleanMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; }; + D616FE27C480390E3487E307807E75E9 /* Animal.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Animal.md; path = docs/Animal.md; sourceTree = ""; }; + D9475C74C195567107086633A4D262E6 /* Capitalization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; }; + DB771F553FC5BEE61938D2B61CDA2CDF /* NumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; }; + DBD5E9D6569D80DDB9F58CEB3C331F16 /* OuterComposite.md */ = {isa = PBXFileReference; includeInIndex = 1; name = OuterComposite.md; path = docs/OuterComposite.md; sourceTree = ""; }; + DCCC04D0377A09B744232406CEBA5F44 /* List.md */ = {isa = PBXFileReference; includeInIndex = 1; name = List.md; path = docs/List.md; sourceTree = ""; }; + DDDADBC0BB257C4A516773B0ECA96196 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; }; + E2ED731C536593898FB5674BF6A7DC86 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; + E3A91C056032AA15B2DE57D4907F5BC7 /* TypeHolderExample.md */ = {isa = PBXFileReference; includeInIndex = 1; name = TypeHolderExample.md; path = docs/TypeHolderExample.md; sourceTree = ""; }; + E9E89ABCCC57336F89BD5C8BB5B4872B /* Order.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; }; + EAD186DA30C241B56CD1BE298604BBC5 /* AnimalFarm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; }; + EC9EA3D1DFE57CA229F3C7E3F3737154 /* when.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = when.swift; path = Sources/when.swift; sourceTree = ""; }; + EF416EF4C4DA347F1AE75E98A274B44F /* Category.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Category.md; path = docs/Category.md; sourceTree = ""; }; + EF87097269A87532273FD5EDDEBD4381 /* PromiseKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-prefix.pch"; sourceTree = ""; }; + F06C0DAD6966724111ECC6015B132A10 /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; }; + F0E666A2F03AB68FDC1E79B74A41E0C2 /* fwd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fwd.h; path = Sources/fwd.h; sourceTree = ""; }; + F2117E56C19928AF73DC30FDAB4534E6 /* FileSchemaTestClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FileSchemaTestClass.md; path = docs/FileSchemaTestClass.md; sourceTree = ""; }; + F3A7DCCAD07BACD1357F077BCA314A6D /* Zalgo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zalgo.swift; path = Sources/Zalgo.swift; sourceTree = ""; }; + F3D9FB4070F34ECD420ACB66E1938430 /* APIs.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIs.swift; path = PetstoreClient/Classes/OpenAPIs/APIs.swift; sourceTree = ""; }; + F86FD53F34987F63B036CD49F23452BD /* ArrayTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayTest.md; path = docs/ArrayTest.md; sourceTree = ""; }; + F9E25BFB027008543966243CC338E08E /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; + FA65E6F618E30F8EADF884CD433F2B07 /* MixedPropertiesAndAdditionalPropertiesClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = MixedPropertiesAndAdditionalPropertiesClass.md; path = docs/MixedPropertiesAndAdditionalPropertiesClass.md; sourceTree = ""; }; + FC69D2B8F2AE344EAA07F51A9750D0D2 /* CodableHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CodableHelper.swift; path = PetstoreClient/Classes/OpenAPIs/CodableHelper.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 3E3C192441F5E9E290A576253FA2862A /* Frameworks */ = { + 810ABC6D498290E21B9332A43B49C990 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - F11849261F9CF3BC9BD00E80672431CD /* Alamofire.framework in Frameworks */, - BD9D5579D597A1DEC7872F12884B5958 /* Foundation.framework in Frameworks */, - 143078764176C820CA1C32429BE39512 /* PromiseKit.framework in Frameworks */, + 0F5999FD4C7B20C99945D1766DCE1E1C /* Alamofire.framework in Frameworks */, + 17CBDD207E1B25F63A3E1823BC03B675 /* Foundation.framework in Frameworks */, + ABDB6B2BD6587F48ADD190B84019CDD7 /* PromiseKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 4B24AB59333EF31B4775DBE45673B5FB /* Frameworks */ = { + D4EC17B7E6732812B49C04E19E9C0EF3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 0CC7E2B57382776C22F1D6A223D3FB30 /* Foundation.framework in Frameworks */, + 6B598CD6C3665D587BD8EDE6202EA593 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5B9729099AD7DCDA0F1992A091EA200D /* Frameworks */ = { + DBBF761421A799D7A8BD2A2A66AA2742 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 063E2A92EA8D52DF1DE2B29A80271858 /* Foundation.framework in Frameworks */, + 6C2E4B236C0831BEF971D9F43E41401D /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6E8AF668A2161F7D6F680F721DB65D2D /* Frameworks */ = { + F1626ADC3A7EC435D2722B3173355D36 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 8D1E66FE754A575BFFD9E0A4AD2E5ACC /* Foundation.framework in Frameworks */, + 3BD1DAFE1F3E6C9E4EB0F2099B6D6FA2 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - BD1C3010046383BAA6D89243B991B6F2 /* Frameworks */ = { + F7179B3AD176A6A966429334C5123C54 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 4FA95E85B4C2E6B497F96627D80DF623 /* Foundation.framework in Frameworks */, + 1B20892D757F702E6AE23072F5E15D04 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 107C3DDE80B0397D875BC41D8D8F734E /* PromiseKit */ = { + 16B2EE9E2B1D8BB1D015243D60C9E749 /* Pods */ = { isa = PBXGroup; children = ( - 15CB611E37F9E1F821FFD8B29C385FF9 /* CorePromise */, - 63AC42361BEBCC6C083B9575B72D40DE /* Support Files */, + B751834EF2619E4944003D0B65303DD7 /* Alamofire */, + 96FE78D4772FAD7CD22CB23A52446058 /* PromiseKit */, ); - name = PromiseKit; - path = PromiseKit; + name = Pods; sourceTree = ""; }; - 15CB611E37F9E1F821FFD8B29C385FF9 /* CorePromise */ = { + 17869DF432008141F7BA21237323EE4C /* Frameworks */ = { isa = PBXGroup; children = ( - 3EDF4D8C4A3CD3A61ACE20A71F71A107 /* after.m */, - B6AFE5B442894FF7BEA9ECAB0A39B4AD /* after.swift */, - 80933905730AC186F9CA86852B3817E6 /* AnyPromise.h */, - CB66B121BF9B4DF48FE2F6A4D044C443 /* AnyPromise.m */, - C9CE45709BBC984B7998B833B10FC058 /* AnyPromise.swift */, - ACDBB9A0818694ED3F5545A2102E7624 /* dispatch_promise.m */, - 0B75FBDF2B74DA3B74C5F0ADD20F42A2 /* DispatchQueue+Promise.swift */, - 5F434ADE4363A510D2EFDCE14A0C5746 /* Error.swift */, - 645D2C8A204D8C820EEF9684DC5A65F8 /* fwd.h */, - 7824BE1937712800889974B222CAB1AD /* GlobalState.m */, - CA6251246DA0044C165AC891CDE64344 /* hang.m */, - 47F1D5162720B2001CA614017A1ACE90 /* join.m */, - 54DD29EE59FE04DF98E96700B3A276DB /* join.swift */, - 22932972F4F492160D4694C01CAF311D /* Promise.swift */, - 947066689D96D035F88E7408FA47E193 /* Promise+AnyPromise.swift */, - 24AEF2E680D3A5F36B2C7C53FA70938A /* Promise+Properties.swift */, - 6456A8E3DB29C967B8479EA4438C76F3 /* PromiseKit.h */, - 2293B3E9936106C01A2A831A2C1E8AD6 /* race.swift */, - E775A7621846699F1A762DB966B3DC48 /* State.swift */, - 9E9E772008F75FBB98AEE83B59F519A9 /* when.m */, - 05D32F7DA10CFDD71EAA3EA19946CD1D /* when.swift */, - 04B96D6AE9F0F69FC801059349B8A234 /* wrap.swift */, - DA33807992507937BA2869E4D72BA073 /* Zalgo.swift */, + 48D66D7CC32AD262384136A281A3F8D1 /* Alamofire.framework */, + A381312D61E3EA2806B6FAD90B3BEE94 /* PromiseKit.framework */, + EEC4E2560D8C158B5E6D73FD3A7282F7 /* iOS */, ); - name = CorePromise; + name = Frameworks; sourceTree = ""; }; - 439566E0F816C232FEEB9A3F1FFFEF20 /* Alamofire */ = { + 1C8221FE0071BDA2D0C5DE07B7736E88 /* Development Pods */ = { isa = PBXGroup; children = ( - EEA7D6AB49001069ED310CBCA8FCBB44 /* AFError.swift */, - 23C4E6603FB90F49BE8906508887D859 /* Alamofire.swift */, - F48DFEE4376C36D6CF4C7DBFEBF91F45 /* DispatchQueue+Alamofire.swift */, - D75CBCB14282D5EBA5A424CCF0655C2A /* MultipartFormData.swift */, - 7AE857E00E364AD3F18C2C39D49D6DDD /* NetworkReachabilityManager.swift */, - BC1CEE597A54C622C960B36A5EC2FA0F /* Notifications.swift */, - 3D5BF61C764F8D1E7F2631DE14AC6B36 /* ParameterEncoding.swift */, - C8A3F20B5239DF2DF6CB987D4827C198 /* Request.swift */, - 714D784CFA6CB99C3B07B03487960BE0 /* Response.swift */, - 948BFEDB052F09AD8DAE3BD3CB286673 /* ResponseSerialization.swift */, - DE689938DB1BB3BAF7C98928CB02978A /* Result.swift */, - 428236967C1B816363FB039AD9A0D098 /* ServerTrustPolicy.swift */, - 64759A200040719DDE024A0F1BCDDDEE /* SessionDelegate.swift */, - 9585493102C1567226760B6BACFDF648 /* SessionManager.swift */, - 4F8D293ABA4E6DE8B257C7E9899F1B08 /* TaskDelegate.swift */, - AE6E736FF5D4320FE1647DB1724C14B8 /* Timeline.swift */, - 08A7F97EB8AC32E44E21839FA607D2CE /* Validation.swift */, - 699F78D1F95BB0051EF9E96BA468FBDD /* Support Files */, + 826C3E3C744487BED408F658C0EE4EC1 /* PetstoreClient */, ); - name = Alamofire; - path = Alamofire; + name = "Development Pods"; sourceTree = ""; }; - 4497953BF77A714B2F16A58CF8199D34 /* iOS */ = { + 1D4F3935E032683220CEBAF7CC10D3C2 /* Support Files */ = { isa = PBXGroup; children = ( - E72DCDE9F2C72B8A7CC6C951429DE6EF /* Foundation.framework */, - ); - name = iOS; - sourceTree = ""; - }; - 606EAF5FBC9930BD9D22CDECD222A32A /* APIs */ = { - isa = PBXGroup; - children = ( - 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */, - 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */, - 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */, - 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */, - 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */, - 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */, - ); - name = APIs; - path = PetstoreClient/Classes/OpenAPIs/APIs; - sourceTree = ""; - }; - 63AC42361BEBCC6C083B9575B72D40DE /* Support Files */ = { - isa = PBXGroup; - children = ( - 27E9F1130735B56DF22A1439B5BA6333 /* Info.plist */, - E708155DC6E87EA22044EC19AB55DD05 /* PromiseKit.modulemap */, - 451D13FDA61BDE9EB91BBC6CEA52AED4 /* PromiseKit.xcconfig */, - 4667C7609366DAC2FC770F6565F7F2A2 /* PromiseKit-dummy.m */, - 48B406C5392E8AC40762B8EDE6DF1FE8 /* PromiseKit-prefix.pch */, - E63746E0EEDB9AB11F3F623A63F36BB3 /* PromiseKit-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/PromiseKit"; - sourceTree = ""; - }; - 699F78D1F95BB0051EF9E96BA468FBDD /* Support Files */ = { - isa = PBXGroup; - children = ( - 2A8ED560E3DF01E75E0272F7A1B911DD /* Alamofire.modulemap */, - 45FB2502919E80623D265FE19C0A8FC4 /* Alamofire.xcconfig */, - 60347AB0041CEAF3AFE665EDD5ED3839 /* Alamofire-dummy.m */, - E564E86B6F817ED6259E08FB2B589CAA /* Alamofire-prefix.pch */, - A16286911EF2D17072D77A2B43E34006 /* Alamofire-umbrella.h */, - 408CD558DEC1EFB9C57002ADB50665FC /* Info.plist */, + 45BAB97CF70E7E9B8D97D643CB602EBB /* Alamofire.modulemap */, + 891AFA4406EB2D944EEA7D0DB1A042FC /* Alamofire.xcconfig */, + 146F60360CAB9CAF5A98D361FE0762CC /* Alamofire-dummy.m */, + BA5EB5823D5F03F25561928D53E496FC /* Alamofire-Info.plist */, + 8A19875444C285AE928D471959E28CA2 /* Alamofire-prefix.pch */, + CD82F46EEBDF3CDC0F371A13742C7C00 /* Alamofire-umbrella.h */, ); name = "Support Files"; path = "../Target Support Files/Alamofire"; sourceTree = ""; }; - 6BB94E4B786CD1A837889A78D18EDA58 /* Frameworks */ = { + 27EB02841E0D43820F14F4377DE3547E /* Targets Support Files */ = { isa = PBXGroup; children = ( - A03102A2289886143D394C1EEF173C69 /* Alamofire.framework */, - 4DD27DB5AB64425B97113FA8D5A10F19 /* PromiseKit.framework */, - 4497953BF77A714B2F16A58CF8199D34 /* iOS */, - ); - name = Frameworks; - sourceTree = ""; - }; - 6D4B4C422937D815279D2A96BCCE2815 /* Support Files */ = { - isa = PBXGroup; - children = ( - 2BB1D491A4C824A6BFA9C0C35E36BD85 /* Info.plist */, - 4EB7BF4F57FA381E9DA7A1AA9B04857D /* PetstoreClient.modulemap */, - B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */, - 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */, - 0075000FF9024228C130ADDA9B81114E /* PetstoreClient-prefix.pch */, - 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */, - ); - name = "Support Files"; - path = "SwaggerClientTests/Pods/Target Support Files/PetstoreClient"; - sourceTree = ""; - }; - 7DB346D0F39D3F0E887471402A8071AB = { - isa = PBXGroup; - children = ( - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, - EC52080E65FE34CBDE5F694B08BA9836 /* Development Pods */, - 6BB94E4B786CD1A837889A78D18EDA58 /* Frameworks */, - A1A7A33E3B583AD8CD782AFD6B69D4A0 /* Pods */, - D2A28169658A67F83CC3B568D7E0E6A1 /* Products */, - C1A60D10CED0E61146591438999C7502 /* Targets Support Files */, - ); - sourceTree = ""; - }; - 894E625B654BBE2FB6E8E88AA51D3E5A /* PetstoreClient */ = { - isa = PBXGroup; - children = ( - 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */, - 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */, - B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */, - 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */, - 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */, - 7898EEC6A565DE133438C48988478954 /* Extensions.swift */, - B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */, - 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */, - FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */, - 606EAF5FBC9930BD9D22CDECD222A32A /* APIs */, - A3225C42DC72DA2FDCC24B1154D893D9 /* Models */, - 8B703AC5760FFB3F3A475448C3FD2DD8 /* Pod */, - 6D4B4C422937D815279D2A96BCCE2815 /* Support Files */, - ); - name = PetstoreClient; - path = ../..; - sourceTree = ""; - }; - 8B703AC5760FFB3F3A475448C3FD2DD8 /* Pod */ = { - isa = PBXGroup; - children = ( - 501C268D3DC431E81C876F4F7EE389C6 /* PetstoreClient.podspec */, - ); - name = Pod; - sourceTree = ""; - }; - A1A7A33E3B583AD8CD782AFD6B69D4A0 /* Pods */ = { - isa = PBXGroup; - children = ( - 439566E0F816C232FEEB9A3F1FFFEF20 /* Alamofire */, - 107C3DDE80B0397D875BC41D8D8F734E /* PromiseKit */, - ); - name = Pods; - sourceTree = ""; - }; - A3225C42DC72DA2FDCC24B1154D893D9 /* Models */ = { - isa = PBXGroup; - children = ( - 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */, - 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */, - FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */, - FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */, - E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */, - 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */, - 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */, - 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */, - DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */, - FECB278917C7651872C44FB1C0B6E620 /* Category.swift */, - DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */, - 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */, - D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */, - 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */, - 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */, - AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */, - 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */, - 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */, - C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */, - 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */, - 61179CE650778B2A5C39664F0A792B5C /* List.swift */, - 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */, - 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */, - E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */, - 405921FE252DC3DC1087DA4217236D81 /* Name.swift */, - E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */, - 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */, - E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */, - 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */, - C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */, - D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */, - 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */, - 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */, - 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */, - 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */, - E5A46D45023C6CBF06AA36844D59C59E /* User.swift */, - ); - name = Models; - path = PetstoreClient/Classes/OpenAPIs/Models; - sourceTree = ""; - }; - C1A60D10CED0E61146591438999C7502 /* Targets Support Files */ = { - isa = PBXGroup; - children = ( - DE503BFFEBBF78BDC743C8A6A50DFF47 /* Pods-SwaggerClient */, - E9EDF70990CC7A4463ED5FC2E3719BD0 /* Pods-SwaggerClientTests */, + 8244AEBEFB4AC3530215FA5CBA26673B /* Pods-SwaggerClient */, + 86B1F48A58BFA2FA26CD584937FBEED1 /* Pods-SwaggerClientTests */, ); name = "Targets Support Files"; sourceTree = ""; }; - D2A28169658A67F83CC3B568D7E0E6A1 /* Products */ = { + 734399E851D5ED2BCDF59922F6113FFB /* Products */ = { isa = PBXGroup; children = ( - E80A16C989615AAE419866DB4FD10185 /* Alamofire.framework */, - 0B4A4A4EB2DBD6F56B1383E53763FD1B /* PetstoreClient.framework */, - 46A00B403166BEF9EE215F6CB59BE9A6 /* Pods_SwaggerClient.framework */, - 8BBF3490280C4ED53738743F84C890BC /* Pods_SwaggerClientTests.framework */, - AD3B511F5C43568AAFBA2714468F9FD5 /* PromiseKit.framework */, + BE70D2A78B09C7BC49E8D639EB88D8E7 /* Alamofire.framework */, + 81B75710FF1D97F3BBA8CF87E5D7CFDB /* PetstoreClient.framework */, + 61A1A22EC0CE765486E1DD7D915F1B67 /* Pods_SwaggerClient.framework */, + 44CC620F46D960EF0B6F97F430F5FC1E /* Pods_SwaggerClientTests.framework */, + 29CE11B261C3803DAC95698C526C28F5 /* PromiseKit.framework */, ); name = Products; sourceTree = ""; }; - DE503BFFEBBF78BDC743C8A6A50DFF47 /* Pods-SwaggerClient */ = { + 7346ED6721AC0FFB52A2045ED09577EE /* CorePromise */ = { isa = PBXGroup; children = ( - 814471C0F27B39D751143F0CD53670BD /* Info.plist */, - CFA4F581E074596AB5C3DAF3D9C39F17 /* Pods-SwaggerClient.modulemap */, - 76645699475D3AB6EB5242AC4D0CEFAE /* Pods-SwaggerClient-acknowledgements.markdown */, - 08BDFE9C9E9365771FF2D47928E3E79A /* Pods-SwaggerClient-acknowledgements.plist */, - F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */, - 0AD61F8554C909A3AFA66AD9ECCB5F23 /* Pods-SwaggerClient-frameworks.sh */, - F4BB3B2146310CA18C30F145BFF15BD9 /* Pods-SwaggerClient-resources.sh */, - 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */, - AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */, - F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */, + 7A10AF8E314E52BF5F7CD27303878027 /* after.m */, + D2C82B8D4ECBBD48AE25659F2AEBFED8 /* after.swift */, + 7D7EC36638E4AB5C51EE2A9196D7E586 /* AnyPromise.h */, + 7FA863F5D3ACE15F4B0EB8D1E74927ED /* AnyPromise.m */, + D06090E7502DCF820B39197445505140 /* AnyPromise.swift */, + 2A06291A67C87943DA0BB177E1BB5DC0 /* dispatch_promise.m */, + 848CDB5C465B1E04DF5158F07B83EE6B /* DispatchQueue+Promise.swift */, + 9B749F866CD9E9BFD8C8EAE1DDB1EB84 /* Error.swift */, + F0E666A2F03AB68FDC1E79B74A41E0C2 /* fwd.h */, + 9C7EEAA52CAEFE414144646859D19BF6 /* GlobalState.m */, + C42B10EE07C66F6B51BBEB51046AB299 /* hang.m */, + 91CB8ACD285957E691D4B962FB4D995B /* join.m */, + 057172115AF48E3DCA451233A4A640D4 /* join.swift */, + AE73527DDD3B6ACE1DC5B450D1392B2A /* Promise.swift */, + 8BEC984F88B74ADDDFFCF4891539CC56 /* Promise+AnyPromise.swift */, + 005C9DFB4855B699557271A22E350181 /* Promise+Properties.swift */, + ADA8ECE65CA8BD73FABB353F0DBAA212 /* PromiseKit.h */, + 32FDBEBEEE3527CDFB764B9D267598AB /* race.swift */, + 04D9F269A5D0FA67A43F1F5D94F26D1B /* State.swift */, + 2F38E2E2D4911E1D04FABA2223BD7688 /* when.m */, + EC9EA3D1DFE57CA229F3C7E3F3737154 /* when.swift */, + 38E040842BCDCCB56DA8C4C1E77A905E /* wrap.swift */, + F3A7DCCAD07BACD1357F077BCA314A6D /* Zalgo.swift */, + ); + name = CorePromise; + sourceTree = ""; + }; + 8244AEBEFB4AC3530215FA5CBA26673B /* Pods-SwaggerClient */ = { + isa = PBXGroup; + children = ( + 618C90E6044C36C76F3590183ED38CB2 /* Pods-SwaggerClient.modulemap */, + D46742F1F99243487DCC614C75C1413C /* Pods-SwaggerClient-acknowledgements.markdown */, + 96FB30FE91CE11061D85EA6BDBE094E3 /* Pods-SwaggerClient-acknowledgements.plist */, + 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */, + 9448B03916DFC494CD68A614565A98B8 /* Pods-SwaggerClient-frameworks.sh */, + 4DC5DC2F9BCEFA797895B33C16D2B17E /* Pods-SwaggerClient-Info.plist */, + 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */, + 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */, + B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */, ); name = "Pods-SwaggerClient"; path = "Target Support Files/Pods-SwaggerClient"; sourceTree = ""; }; - E9EDF70990CC7A4463ED5FC2E3719BD0 /* Pods-SwaggerClientTests */ = { + 826C3E3C744487BED408F658C0EE4EC1 /* PetstoreClient */ = { isa = PBXGroup; children = ( - 419496CDDD7E7536CBEA02BAEE2C7C21 /* Info.plist */, - 9D08EC9B39FEBA43A5B55DAF97AAEBE9 /* Pods-SwaggerClientTests.modulemap */, - D47B812D78D0AE64D85D16A96840F8C4 /* Pods-SwaggerClientTests-acknowledgements.markdown */, - 9D780FDAD16A03CC25F4D6F3317B9423 /* Pods-SwaggerClientTests-acknowledgements.plist */, - 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */, - CAF6F32F117197F6F08B477687F09728 /* Pods-SwaggerClientTests-frameworks.sh */, - F3E1116FA9F9F3AFD9332B7236F6E711 /* Pods-SwaggerClientTests-resources.sh */, - CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */, - 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */, - FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */, + 6D7E4D001368609BA573263A283441DD /* AlamofireImplementations.swift */, + 29BA92EB036AC93CED81C533893913E0 /* APIHelper.swift */, + F3D9FB4070F34ECD420ACB66E1938430 /* APIs.swift */, + FC69D2B8F2AE344EAA07F51A9750D0D2 /* CodableHelper.swift */, + 2C84522B99B59B341AB4C8B336ED0C5F /* Configuration.swift */, + A6F98097E49FF48BBF52B4D577575897 /* Extensions.swift */, + 706EA1E33802DC5002C4619F94BC8C99 /* JSONEncodableEncoding.swift */, + 683B7D10FA5B9F3523A5976092B503D2 /* JSONEncodingHelper.swift */, + 39B0696CC11BF8EA7FDEC30C719FABC2 /* Models.swift */, + D7B7EC664DDCDD9A4918BBBD9B9BDEBC /* APIs */, + C6C1467FD411D6CD7E3CEAF0BF82F331 /* Models */, + D15241360159478315C62D19BD01F576 /* Pod */, + E744BC5198F66515CCC110C0907A7EB9 /* Support Files */, + ); + name = PetstoreClient; + path = ../..; + sourceTree = ""; + }; + 86B1F48A58BFA2FA26CD584937FBEED1 /* Pods-SwaggerClientTests */ = { + isa = PBXGroup; + children = ( + D1A6BA19B108998DF7350B40C83BFC47 /* Pods-SwaggerClientTests.modulemap */, + D01ADEDF5E44D58ACB8ED1AED7BF7615 /* Pods-SwaggerClientTests-acknowledgements.markdown */, + 31ED5C3525921534592BF796A9C159CF /* Pods-SwaggerClientTests-acknowledgements.plist */, + 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */, + 901441DA8E39EF973EBE8D69C2CDADE7 /* Pods-SwaggerClientTests-Info.plist */, + 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */, + CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */, + 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */, ); name = "Pods-SwaggerClientTests"; path = "Target Support Files/Pods-SwaggerClientTests"; sourceTree = ""; }; - EC52080E65FE34CBDE5F694B08BA9836 /* Development Pods */ = { + 96FE78D4772FAD7CD22CB23A52446058 /* PromiseKit */ = { isa = PBXGroup; children = ( - 894E625B654BBE2FB6E8E88AA51D3E5A /* PetstoreClient */, + 7346ED6721AC0FFB52A2045ED09577EE /* CorePromise */, + C21752F874F8F012DCDD69EA749D2C85 /* Support Files */, ); - name = "Development Pods"; + name = PromiseKit; + path = PromiseKit; + sourceTree = ""; + }; + B751834EF2619E4944003D0B65303DD7 /* Alamofire */ = { + isa = PBXGroup; + children = ( + 77A2E5CCDF5F8198ACB62180A77E07C2 /* AFError.swift */, + 3B8873E6FA376A1098653C8957A9CD8A /* Alamofire.swift */, + 51A86D1C0C7700196DC16755F82D031B /* DispatchQueue+Alamofire.swift */, + E2ED731C536593898FB5674BF6A7DC86 /* MultipartFormData.swift */, + 72572B944808AC7C4854543BC132DFD8 /* NetworkReachabilityManager.swift */, + 8D047C054BDCF57647A210CA210568D0 /* Notifications.swift */, + 45296D9EFD89DCB6A902D002A70E234F /* ParameterEncoding.swift */, + 6C72D782FD3C5EEE8E525751B6D4DDB8 /* Request.swift */, + 01B6740A1E78009ED5880C768EDAD9DB /* Response.swift */, + 3A009E375554819534829616F49D733C /* ResponseSerialization.swift */, + 3FDF1E434780F3B9150349C6920B90CE /* Result.swift */, + B55431698AE115B7B9BB79A1D53B02AF /* ServerTrustPolicy.swift */, + F9E25BFB027008543966243CC338E08E /* SessionDelegate.swift */, + 7DF70E51226B5CFA18D8A74279984374 /* SessionManager.swift */, + B2A2E212CE2309CAC426DE24D621FDC4 /* TaskDelegate.swift */, + 09F7C3F0D5E6C5A6A1BB66A132C7D958 /* Timeline.swift */, + 83D18CAC667F7E35D9B8E620072ED4D7 /* Validation.swift */, + 1D4F3935E032683220CEBAF7CC10D3C2 /* Support Files */, + ); + name = Alamofire; + path = Alamofire; + sourceTree = ""; + }; + C21752F874F8F012DCDD69EA749D2C85 /* Support Files */ = { + isa = PBXGroup; + children = ( + 01A5C01DA27D0796FD50B4BA65BAF819 /* PromiseKit.modulemap */, + 024B6CCE54665B2B8C5A6A361996F330 /* PromiseKit.xcconfig */, + 8146A56E871C702178198F216CD8B080 /* PromiseKit-dummy.m */, + ADC0280962FDFA97AD377F19BF78E755 /* PromiseKit-Info.plist */, + EF87097269A87532273FD5EDDEBD4381 /* PromiseKit-prefix.pch */, + 4E1844EB7E5BB13D3E0EB4144A87D867 /* PromiseKit-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/PromiseKit"; + sourceTree = ""; + }; + C6C1467FD411D6CD7E3CEAF0BF82F331 /* Models */ = { + isa = PBXGroup; + children = ( + 8DDE9C75E8809A86C87F1EF6BE5A7262 /* AdditionalPropertiesClass.swift */, + A9A41207BF0E0F1116EFF3A7520E4F30 /* Animal.swift */, + EAD186DA30C241B56CD1BE298604BBC5 /* AnimalFarm.swift */, + 0467367B175C2F0A832EF481D058A3B1 /* ApiResponse.swift */, + 4FB9EC1A94087BEE99F46EDC560EF076 /* ArrayOfArrayOfNumberOnly.swift */, + D59752DB0583557ED0A103929DE7D1C9 /* ArrayOfNumberOnly.swift */, + 7093CCE3918A0AF33C35DE6D2D7E50B2 /* ArrayTest.swift */, + D9475C74C195567107086633A4D262E6 /* Capitalization.swift */, + 11D9A9B2DA688589C27C7E886C45C6A0 /* Cat.swift */, + 39FD32A271A0C2C893B43793B933F616 /* CatAllOf.swift */, + 421C2470DDB7AF4A716391E4E9BA4602 /* Category.swift */, + 166F3B2D4B92170923DEDBF0DC6EA0EF /* ClassModel.swift */, + 0E85A5CF8B173DB33BC07D63DE81D716 /* Client.swift */, + 04F4D33B469C31ECB943475DBFB00CBB /* Dog.swift */, + D2595AC2F6A360B57A8D3D63C239BA43 /* DogAllOf.swift */, + 04534F5AA06E6782A3CA6B026100F75E /* EnumArrays.swift */, + 54113FF25263A7207B4695B993005157 /* EnumClass.swift */, + 62DA94E0DEA0A35F82AB7D9B8D7FA79F /* EnumTest.swift */, + 8A65F4CD1E4DF96497733DACEEE24510 /* File.swift */, + 861B9982272479ABE4C4C559BFA8B0F6 /* FileSchemaTestClass.swift */, + 8F7E93BB98A2DE82741AB7E95364E2E3 /* FormatTest.swift */, + BA6C5985BAF3713D3B44503E95F0FB80 /* HasOnlyReadOnly.swift */, + F06C0DAD6966724111ECC6015B132A10 /* List.swift */, + 4F9A53FCDA869FFF602D9C9B68A25226 /* MapTest.swift */, + 9919E54A07648F68B8B5639C3D37053F /* MixedPropertiesAndAdditionalPropertiesClass.swift */, + 863792E6E9405D9FA494ED8635CE6C0B /* Model200Response.swift */, + A9B71ED5DCF22D2A22499C3DA4D41762 /* Name.swift */, + DB771F553FC5BEE61938D2B61CDA2CDF /* NumberOnly.swift */, + E9E89ABCCC57336F89BD5C8BB5B4872B /* Order.swift */, + 7295C7D32B7C8F2805DB5D2F3D732F60 /* OuterComposite.swift */, + C868C2F462554B7E170F490CC96D9129 /* OuterEnum.swift */, + 4FBAE8AD90A56C780F6620DBED839BA6 /* Pet.swift */, + 7A625E9EFA94098A17E16D12F9166900 /* ReadOnlyFirst.swift */, + 999653E1FEB8493AD6E227418DFE96D4 /* Return.swift */, + 04D69622D72C7F771C350E30C30020EC /* SpecialModelName.swift */, + D5CFB3D593ECA1A24451987289C9B395 /* StringBooleanMap.swift */, + CBA48E443F18480EDF7990B4B747C01C /* Tag.swift */, + 92066FF1F08D20558637C2DF4F007414 /* TypeHolderDefault.swift */, + BC9640039255992199037E6E249CD4BA /* TypeHolderExample.swift */, + D04FA8D90CF4B9585A67B86642BA750E /* User.swift */, + ABBBF50FA7E854657BDB01185C7DE324 /* XmlItem.swift */, + ); + name = Models; + path = PetstoreClient/Classes/OpenAPIs/Models; + sourceTree = ""; + }; + CF1408CF629C7361332E53B88F7BD30C = { + isa = PBXGroup; + children = ( + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + 1C8221FE0071BDA2D0C5DE07B7736E88 /* Development Pods */, + 17869DF432008141F7BA21237323EE4C /* Frameworks */, + 16B2EE9E2B1D8BB1D015243D60C9E749 /* Pods */, + 734399E851D5ED2BCDF59922F6113FFB /* Products */, + 27EB02841E0D43820F14F4377DE3547E /* Targets Support Files */, + ); + sourceTree = ""; + }; + D15241360159478315C62D19BD01F576 /* Pod */ = { + isa = PBXGroup; + children = ( + A15505355E41E0A84C4DBB54E6722A6D /* AdditionalPropertiesClass.md */, + D616FE27C480390E3487E307807E75E9 /* Animal.md */, + D398056DC91B13AFAA8A0A890BBD89A4 /* AnimalFarm.md */, + 64A2381235D9FBB789BE4EB25C3250C2 /* AnotherFakeAPI.md */, + 3F5E9D64C5F0D5EE4E79CAA59E04172C /* ApiResponse.md */, + 765E58692EB6F8B6798E43E94D7F4094 /* ArrayOfArrayOfNumberOnly.md */, + B8EBE4324A4F4CB8BDA4FA4F6701018A /* ArrayOfNumberOnly.md */, + F86FD53F34987F63B036CD49F23452BD /* ArrayTest.md */, + D153E0692428B3BF93148DCD1E6BC00F /* Capitalization.md */, + 77E7F6EA3ADC6756C75AAB7DBB8AB130 /* Cat.md */, + 262FAE23D33A5D8D25FD3174BD218D2D /* CatAllOf.md */, + EF416EF4C4DA347F1AE75E98A274B44F /* Category.md */, + D0E85B45A1EC6339F7AA30F525EBDF1F /* ClassModel.md */, + 4CE19599ABE0E7AE1F173DBA59E31076 /* Client.md */, + 5386BBE743C361BFF3494F43FE388D82 /* Dog.md */, + 16F3A5E2D2142E1A4325498FC5C53DA0 /* DogAllOf.md */, + 6F0DF3F13D20C6C62978412D37A6E05B /* EnumArrays.md */, + 54E07AE118C3A0E6F7D341C158295E78 /* EnumClass.md */, + 192D52CF963F026FC4AE2398773BBC50 /* EnumTest.md */, + A35F2B8231DE6F6D8A6EA88D06013D6E /* FakeAPI.md */, + BB59CDEC268DB47E3F70C984590CB9D5 /* FakeClassnameTags123API.md */, + 83A28F36D4BF850589924CCEF888C624 /* File.md */, + F2117E56C19928AF73DC30FDAB4534E6 /* FileSchemaTestClass.md */, + AC144D2DF074FA8918C17F3B8D14EE68 /* FormatTest.md */, + A33BB5BD82FE354BE292BE1DE69FE51F /* HasOnlyReadOnly.md */, + DCCC04D0377A09B744232406CEBA5F44 /* List.md */, + 25103330F23FA9F2529571F308093057 /* MapTest.md */, + FA65E6F618E30F8EADF884CD433F2B07 /* MixedPropertiesAndAdditionalPropertiesClass.md */, + 044ED8C312BDDA8A93EF9740A5D6635C /* Model200Response.md */, + 8BAD70A6195E195061F133B7EA8670DA /* Name.md */, + C5BF10812C8B893BE942E8A61095B391 /* NumberOnly.md */, + 07F8EFE5AA6510095D2E009863317CB9 /* Order.md */, + DBD5E9D6569D80DDB9F58CEB3C331F16 /* OuterComposite.md */, + 37D607ECD2F930FE1DB14AAD3D2FA264 /* OuterEnum.md */, + C291EB8933000D10C36F66A93478AA6E /* Pet.md */, + 1ED294369B879E2098B334C63575B7F1 /* PetAPI.md */, + 5FBB2BEE096BE1F26A2F82F63C2A9137 /* PetstoreClient.podspec */, + 355D469521D44A6D4EB3DA64FDE5F7C6 /* README.md */, + 9A359A8A6EF5936FF2065AE9CBDCE44A /* ReadOnlyFirst.md */, + 22770A1D5CBD0B223DC3CDB943156D32 /* Return.md */, + 876786DF3A2782A83F27AAB4DF9B7129 /* SpecialModelName.md */, + 91E22058D6E4F60DC6174011E70A2252 /* StoreAPI.md */, + 67CAA50227E3326A9816E28A7CD74A9C /* StringBooleanMap.md */, + A87F3C66E22CB7E45520173CC79433C5 /* Tag.md */, + 75855F6DC341E04EB8A436C5A5516151 /* TypeHolderDefault.md */, + E3A91C056032AA15B2DE57D4907F5BC7 /* TypeHolderExample.md */, + 0378F66031FCAEA1771BE52BF95BBF3A /* User.md */, + 4536398A85D1D5BBB39C3849096317B8 /* UserAPI.md */, + ); + name = Pod; + sourceTree = ""; + }; + D7B7EC664DDCDD9A4918BBBD9B9BDEBC /* APIs */ = { + isa = PBXGroup; + children = ( + DDDADBC0BB257C4A516773B0ECA96196 /* AnotherFakeAPI.swift */, + B9EC4A49FB365F7019625F4C1BBCB292 /* FakeAPI.swift */, + 3AAB640C655ED6CF3F5D5C2314B9FB6B /* FakeClassnameTags123API.swift */, + 3A5A74AC7AF5B77CA1BD76B82062D5D3 /* PetAPI.swift */, + A4A146F2131F799FABD6835B1CFDD347 /* StoreAPI.swift */, + 97A2C094645F6A60D5A7F4E894EE23BD /* UserAPI.swift */, + ); + name = APIs; + path = PetstoreClient/Classes/OpenAPIs/APIs; + sourceTree = ""; + }; + E744BC5198F66515CCC110C0907A7EB9 /* Support Files */ = { + isa = PBXGroup; + children = ( + 224E8CF92D8CEAABA9CEBF326A1F3592 /* PetstoreClient.modulemap */, + 4CD9592220A0204D65C56DC92A81DA49 /* PetstoreClient.xcconfig */, + 2C65DCB83B644ABFF723D9EDA2FB9E0C /* PetstoreClient-dummy.m */, + 1FE541DC5CA53C88DF7EBA29B807D613 /* PetstoreClient-Info.plist */, + A3B2B506FC78CDF88268C906E6638091 /* PetstoreClient-prefix.pch */, + 7083C42A5DC6552DCB8F1A1E03CCA816 /* PetstoreClient-umbrella.h */, + ); + name = "Support Files"; + path = "SwaggerClientTests/Pods/Target Support Files/PetstoreClient"; + sourceTree = ""; + }; + EEC4E2560D8C158B5E6D73FD3A7282F7 /* iOS */ = { + isa = PBXGroup; + children = ( + 7D20359CE0E73D6BC8E83D987C902D2E /* Foundation.framework */, + ); + name = iOS; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 02F50E80E587BE96B4E95067BD6BE068 /* Headers */ = { + 23D70D9651451F43E7E8CC1A87B4B7E9 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 0BB86B354744F4F29C727616582AB202 /* Pods-SwaggerClient-umbrella.h in Headers */, + B6F6E4CC26451E91B59FAE0F6841DC1F /* Alamofire-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 0F6A59E9948BE954E90EAF386700CBCD /* Headers */ = { + 3268A0F9B56A3813E4AEC25C8CD0A4D3 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 02071E48F96FD71248FC1F3B968A845A /* PetstoreClient-umbrella.h in Headers */, + 687C2F140C3AFB4F2FA5147EF9790F1D /* Pods-SwaggerClient-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 3AAB342F377F0368EEDC0C5D21A79BCE /* Headers */ = { + 3F6DDD6D33EC31E5C134A39FD5A16C7F /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - CD95341C60D1B637CE85F8AAE8DFA6AF /* AnyPromise.h in Headers */, - 469FA9854F6633041F5E4E5C88B476D2 /* fwd.h in Headers */, - A56D29C425DC157942A87177E268D848 /* PromiseKit-umbrella.h in Headers */, - 1F607CEAE14C08C2C5B56E34EBC3339C /* PromiseKit.h in Headers */, + 7A00D62842DD238AC0457B7743459143 /* AnyPromise.h in Headers */, + 26DD5BC612DBFC51C9A2EC25AF219566 /* fwd.h in Headers */, + 1C035F0DFD555DC8249BE265F89C3071 /* PromiseKit-umbrella.h in Headers */, + 975E21814E0F788DF6A6E5DE986229E6 /* PromiseKit.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 732D4E1722AFCFCEE4E651A873559D3B /* Headers */ = { + A75A99D2E090C9BAAFA7D32A6536D24E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 616F0481C475C488192EF999DFC00B7C /* Pods-SwaggerClientTests-umbrella.h in Headers */, + 0AB631DF2E9BC76B8736C9EFF6191C0B /* Pods-SwaggerClientTests-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - A6A607506FEAAC7C41268D3E5CF4E5FE /* Headers */ = { + B77B7E691107B1EA5EE14B6E55E08D23 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - EF1461221681BCA12A4147900A704727 /* Alamofire-umbrella.h in Headers */, + FFA9DEB1EEA584789F46BBD344961268 /* PetstoreClient-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - AB23231C19FCBCAC6FE02D4945154508 /* PromiseKit */ = { + 231FDEAF460449DE9E4B3F7B823FD3A3 /* Pods-SwaggerClient */ = { isa = PBXNativeTarget; - buildConfigurationList = B4D6ACD959AB5AE83A80961D086A68E9 /* Build configuration list for PBXNativeTarget "PromiseKit" */; + buildConfigurationList = 2191953FE475159265C17FB5EE76C4FD /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */; buildPhases = ( - 3AAB342F377F0368EEDC0C5D21A79BCE /* Headers */, - 924A956FEAA25DE2FBBE41BA07E46B33 /* Sources */, - BD1C3010046383BAA6D89243B991B6F2 /* Frameworks */, - 103A6F8535E40ED8DCCE7D670D75E50B /* Resources */, + 3268A0F9B56A3813E4AEC25C8CD0A4D3 /* Headers */, + 6085E5872EE87CAE6BF6A38C6034EF63 /* Sources */, + F7179B3AD176A6A966429334C5123C54 /* Frameworks */, + 5DBF8C2B793EFCFD59F448F0F6F195CB /* Resources */, ); buildRules = ( ); dependencies = ( - ); - name = PromiseKit; - productName = PromiseKit; - productReference = AD3B511F5C43568AAFBA2714468F9FD5 /* PromiseKit.framework */; - productType = "com.apple.product-type.framework"; - }; - BE6551E2EC26377CF9A73DFD54EF11B2 /* Pods-SwaggerClient */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2B2CBC0406D06EB33EEA41A284879F46 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */; - buildPhases = ( - 02F50E80E587BE96B4E95067BD6BE068 /* Headers */, - 598B5E6C576D4DC49662A79163E39BFA /* Sources */, - 4B24AB59333EF31B4775DBE45673B5FB /* Frameworks */, - 119B6810611A48384779D223B7BA230E /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 3AA0A9F29B2B1EC92DCA8A6584E73490 /* PBXTargetDependency */, - 4C83472DF2408ED6C39494541A48970E /* PBXTargetDependency */, - C65AA9BE76D8009BD0FCB60C07552150 /* PBXTargetDependency */, + 104B105982370A7B9131E436EA78FECF /* PBXTargetDependency */, + BCF2E1EDC25542296AD484069283D527 /* PBXTargetDependency */, + 881BE8BEE1BCB47A20F79F7E463C2E17 /* PBXTargetDependency */, ); name = "Pods-SwaggerClient"; productName = "Pods-SwaggerClient"; - productReference = 46A00B403166BEF9EE215F6CB59BE9A6 /* Pods_SwaggerClient.framework */; + productReference = 61A1A22EC0CE765486E1DD7D915F1B67 /* Pods_SwaggerClient.framework */; productType = "com.apple.product-type.framework"; }; - D5D0C678763D6BFA84F005BCB7523BA3 /* PetstoreClient */ = { + 3383968E74B5371B20BB519B170DC7FD /* Alamofire */ = { isa = PBXNativeTarget; - buildConfigurationList = 3274FB8E04EC2FA338B7782D4F392D13 /* Build configuration list for PBXNativeTarget "PetstoreClient" */; + buildConfigurationList = E87124444A44B7DB55208E7FEC21D331 /* Build configuration list for PBXNativeTarget "Alamofire" */; buildPhases = ( - 0F6A59E9948BE954E90EAF386700CBCD /* Headers */, - ED0D4AF0F0A06B74A62568C4D5759A6A /* Sources */, - 3E3C192441F5E9E290A576253FA2862A /* Frameworks */, - B6A8766549F0BAB6516A2E5077660A71 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 59FD7FD4821C64EF3F0E5B0953A7023B /* PBXTargetDependency */, - 5CBC27193C875E29493A80A2DD624D5A /* PBXTargetDependency */, - ); - name = PetstoreClient; - productName = PetstoreClient; - productReference = 0B4A4A4EB2DBD6F56B1383E53763FD1B /* PetstoreClient.framework */; - productType = "com.apple.product-type.framework"; - }; - E76458C58C9140B6A16D60547E68E80C /* Alamofire */ = { - isa = PBXNativeTarget; - buildConfigurationList = 427F0F003A1AD80AE00155AFCDEFAC20 /* Build configuration list for PBXNativeTarget "Alamofire" */; - buildPhases = ( - A6A607506FEAAC7C41268D3E5CF4E5FE /* Headers */, - CC399CEC576B42C962CEB290481CAF95 /* Sources */, - 6E8AF668A2161F7D6F680F721DB65D2D /* Frameworks */, - 3DDB7E21141D7764AE4658D5B6AFF8C6 /* Resources */, + 23D70D9651451F43E7E8CC1A87B4B7E9 /* Headers */, + A1C8B029F600160149A2404C342F6E50 /* Sources */, + F1626ADC3A7EC435D2722B3173355D36 /* Frameworks */, + 28FF73341543B6F0A7DF3C20CFFEA0AA /* Resources */, ); buildRules = ( ); @@ -772,88 +837,126 @@ ); name = Alamofire; productName = Alamofire; - productReference = E80A16C989615AAE419866DB4FD10185 /* Alamofire.framework */; + productReference = BE70D2A78B09C7BC49E8D639EB88D8E7 /* Alamofire.framework */; productType = "com.apple.product-type.framework"; }; - EAA283A8FDA10ED3D749965B3062AB9B /* Pods-SwaggerClientTests */ = { + 7ECA32D1B18128C394D8D35F346BEEC7 /* Pods-SwaggerClientTests */ = { isa = PBXNativeTarget; - buildConfigurationList = 7DFD16CAA839D5E2607A2D7700691018 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */; + buildConfigurationList = 8F09E039867007D3576FEED9032526A8 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */; buildPhases = ( - 732D4E1722AFCFCEE4E651A873559D3B /* Headers */, - 896221CF7DC63DEEB3A5276BB19738DD /* Sources */, - 5B9729099AD7DCDA0F1992A091EA200D /* Frameworks */, - F2A072A007D209224870DA88C7DCEAE9 /* Resources */, + A75A99D2E090C9BAAFA7D32A6536D24E /* Headers */, + F7D9DB86AE0913CC2B294C55BFD934AD /* Sources */, + D4EC17B7E6732812B49C04E19E9C0EF3 /* Frameworks */, + C2801E627F662CD786BE9F42773CBECF /* Resources */, ); buildRules = ( ); dependencies = ( - 36BB78CD83103E2E3589612B670D7F8B /* PBXTargetDependency */, + C18A6DC0C9B8408542F3D944BB6D67F4 /* PBXTargetDependency */, ); name = "Pods-SwaggerClientTests"; productName = "Pods-SwaggerClientTests"; - productReference = 8BBF3490280C4ED53738743F84C890BC /* Pods_SwaggerClientTests.framework */; + productReference = 44CC620F46D960EF0B6F97F430F5FC1E /* Pods_SwaggerClientTests.framework */; + productType = "com.apple.product-type.framework"; + }; + BB3D3DCE720C235EF143F0E12FF69CA8 /* PromiseKit */ = { + isa = PBXNativeTarget; + buildConfigurationList = 3987909F169C9B57D460372E7FA7D4C2 /* Build configuration list for PBXNativeTarget "PromiseKit" */; + buildPhases = ( + 3F6DDD6D33EC31E5C134A39FD5A16C7F /* Headers */, + 4D751F3449218FB77503D67042F9D0AF /* Sources */, + DBBF761421A799D7A8BD2A2A66AA2742 /* Frameworks */, + 4D173F63C3AAD95EBBF2E67E50A776B7 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = PromiseKit; + productName = PromiseKit; + productReference = 29CE11B261C3803DAC95698C526C28F5 /* PromiseKit.framework */; + productType = "com.apple.product-type.framework"; + }; + F1D420F0D4A15B40A58DAEF987DD36C3 /* PetstoreClient */ = { + isa = PBXNativeTarget; + buildConfigurationList = 6CA821BA53BCC09E04DDA621C18E2CD7 /* Build configuration list for PBXNativeTarget "PetstoreClient" */; + buildPhases = ( + B77B7E691107B1EA5EE14B6E55E08D23 /* Headers */, + E2E80565ACA4BF140CCB71BF3BCCAC59 /* Sources */, + 810ABC6D498290E21B9332A43B49C990 /* Frameworks */, + D82B8B0EB0022FBE167BF08C8EA8B48F /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + C03AB392CD24547D8AFE0D2BDE56D2D0 /* PBXTargetDependency */, + 2B474439E57C1B019F32DB682991704B /* PBXTargetDependency */, + ); + name = PetstoreClient; + productName = PetstoreClient; + productReference = 81B75710FF1D97F3BBA8CF87E5D7CFDB /* PetstoreClient.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0930; LastUpgradeCheck = 0930; }; - buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = D2A28169658A67F83CC3B568D7E0E6A1 /* Products */; + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = 734399E851D5ED2BCDF59922F6113FFB /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - E76458C58C9140B6A16D60547E68E80C /* Alamofire */, - D5D0C678763D6BFA84F005BCB7523BA3 /* PetstoreClient */, - BE6551E2EC26377CF9A73DFD54EF11B2 /* Pods-SwaggerClient */, - EAA283A8FDA10ED3D749965B3062AB9B /* Pods-SwaggerClientTests */, - AB23231C19FCBCAC6FE02D4945154508 /* PromiseKit */, + 3383968E74B5371B20BB519B170DC7FD /* Alamofire */, + F1D420F0D4A15B40A58DAEF987DD36C3 /* PetstoreClient */, + 231FDEAF460449DE9E4B3F7B823FD3A3 /* Pods-SwaggerClient */, + 7ECA32D1B18128C394D8D35F346BEEC7 /* Pods-SwaggerClientTests */, + BB3D3DCE720C235EF143F0E12FF69CA8 /* PromiseKit */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 103A6F8535E40ED8DCCE7D670D75E50B /* Resources */ = { + 28FF73341543B6F0A7DF3C20CFFEA0AA /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 119B6810611A48384779D223B7BA230E /* Resources */ = { + 4D173F63C3AAD95EBBF2E67E50A776B7 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 3DDB7E21141D7764AE4658D5B6AFF8C6 /* Resources */ = { + 5DBF8C2B793EFCFD59F448F0F6F195CB /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - B6A8766549F0BAB6516A2E5077660A71 /* Resources */ = { + C2801E627F662CD786BE9F42773CBECF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F2A072A007D209224870DA88C7DCEAE9 /* Resources */ = { + D82B8B0EB0022FBE167BF08C8EA8B48F /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -863,241 +966,182 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 598B5E6C576D4DC49662A79163E39BFA /* Sources */ = { + 4D751F3449218FB77503D67042F9D0AF /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 41340C91CBF8893B2D39505D93F9512D /* Pods-SwaggerClient-dummy.m in Sources */, + 51909107FAE52A0D1C8AE11B65DE08E7 /* after.m in Sources */, + 8F063138AEB0CBD41F723D7C8C6C9A1C /* after.swift in Sources */, + 9D8C37EA1313F9BBDD200D8FCB93CCFA /* AnyPromise.m in Sources */, + D7EAFEBB963D9B9C8BC00951572B8571 /* AnyPromise.swift in Sources */, + 5CAA0F2AB773CCD6E62848CC02470C8E /* dispatch_promise.m in Sources */, + 910364E886094608091F77F9DBF1AE2E /* DispatchQueue+Promise.swift in Sources */, + FB407559577B3E19CAF1D3E75D4A7AAE /* Error.swift in Sources */, + 7B14AABEA6084A6CAAD77F02D700A436 /* GlobalState.m in Sources */, + B645EC01163024890ADE8D5C9EAF8EE5 /* hang.m in Sources */, + 9B72FB26EC959DD96FDBB044A9C3C525 /* join.m in Sources */, + 47E148EE42FDCD51C69EA7EB322496BD /* join.swift in Sources */, + F7E9E11EFB5556B4D6033CC522502126 /* Promise+AnyPromise.swift in Sources */, + EC94B1BA635C6723DCFC17912BE0C588 /* Promise+Properties.swift in Sources */, + 40AE1B240B27734094AB39EACA233A0D /* Promise.swift in Sources */, + 726DCC0BBB21F735986DF5C9F3DCBEF6 /* PromiseKit-dummy.m in Sources */, + FE76A7AA575836F1EE950DDFEAE2CF7B /* race.swift in Sources */, + B433389CCA40FDC6A02956C940F80112 /* State.swift in Sources */, + 317719762D81596E1DD4BC4786311DF5 /* when.m in Sources */, + C0887203727473C7A8A9084437976426 /* when.swift in Sources */, + B67DB5083264B8C8896D3DF3F5FE2E20 /* wrap.swift in Sources */, + 9FBC90C0E307ADB8CD2F3CF5C0D3C8EE /* Zalgo.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 896221CF7DC63DEEB3A5276BB19738DD /* Sources */ = { + 6085E5872EE87CAE6BF6A38C6034EF63 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 512F26D1DCFE54340A28AAA8C5FABB97 /* Pods-SwaggerClientTests-dummy.m in Sources */, + 39CFC0AF6016C70C5EA5345DFE44FEB4 /* Pods-SwaggerClient-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 924A956FEAA25DE2FBBE41BA07E46B33 /* Sources */ = { + A1C8B029F600160149A2404C342F6E50 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 23FCFACCB4F9F8077B71C4A4C4FD26A9 /* after.m in Sources */, - 37F1F38BE0232BE70968F18FE9DDFD18 /* after.swift in Sources */, - 3C292981845039C329CAE6DF091F163A /* AnyPromise.m in Sources */, - 9E8F539C0E15C6E6BD55E4BDE78B0F1B /* AnyPromise.swift in Sources */, - 635F6F0DD64B196B960CC238BE399DCD /* dispatch_promise.m in Sources */, - 13806249FBAB943244612D80A34D981F /* DispatchQueue+Promise.swift in Sources */, - E16148779492D8DB40529B26B4F35771 /* Error.swift in Sources */, - CC2518B4EDF73A9C100DD3B9CAD84565 /* GlobalState.m in Sources */, - 8A4BB6F1B691984551B4BC77C6633687 /* hang.m in Sources */, - 4690D1E1498F4ADDB4DA09FD62B9B296 /* join.m in Sources */, - 0315DA53DB4D4B2A60D3EC8A1226E531 /* join.swift in Sources */, - 776B2513CCAA202CDE2F96A2A564A1A7 /* Promise+AnyPromise.swift in Sources */, - 13FC85EE94586643B1FE22392C01E46A /* Promise+Properties.swift in Sources */, - 0715CFD3F238C92E39EABF1BAE9DEDC5 /* Promise.swift in Sources */, - 4EDA36131FB46358E4B474A7E40D2914 /* PromiseKit-dummy.m in Sources */, - 6D340C3F8ADD35EAA72A268334008960 /* race.swift in Sources */, - 24A6E2FAF5D0AE6123051BD63ACA16FE /* State.swift in Sources */, - E897D091002F530F5DB439100BB35177 /* when.m in Sources */, - EB0EB892E9CBCEAF21362C0CD884E91B /* when.swift in Sources */, - D44FDA104AAA19A44864284354B6377C /* wrap.swift in Sources */, - 6528D060736C08F3A23765C1F8E3CE22 /* Zalgo.swift in Sources */, + 7E3538A6992A38276764936A9733493D /* AFError.swift in Sources */, + 772911DA6E33D1CBBC30131B7C8BDBB3 /* Alamofire-dummy.m in Sources */, + 0A39AF55285A3A4F7CBABB6D822FA4A3 /* Alamofire.swift in Sources */, + 3E0749AF6C51BCF0E4A41CF1D6A76FED /* DispatchQueue+Alamofire.swift in Sources */, + AEA829AB1A8AF2AD077A808AED6B178A /* MultipartFormData.swift in Sources */, + 73AB05789A4982944AF68DBD013E3EB7 /* NetworkReachabilityManager.swift in Sources */, + 1D29D2ACADF961F69D32B06FA6A09E28 /* Notifications.swift in Sources */, + 700D3D95AF9520CB227846DFD943A2DA /* ParameterEncoding.swift in Sources */, + 355C18EEC82624A06A6CC93965258E33 /* Request.swift in Sources */, + 059D92B7BBFBEC53E9A3B6E11C5C3B3A /* Response.swift in Sources */, + 6EFD003458AE7F689DEA720A2030C261 /* ResponseSerialization.swift in Sources */, + EB0DD8CEA1A69867A30267439C970440 /* Result.swift in Sources */, + 8D2A6A90A6DDAF75EA52D471258545CC /* ServerTrustPolicy.swift in Sources */, + A1EC41966B261DCE460BCDE5124A1DBE /* SessionDelegate.swift in Sources */, + D3FA0AA634AAEA99AB3FABC36BB4958C /* SessionManager.swift in Sources */, + 77E8F0EB9FFBE2E3EB0C77095C644606 /* TaskDelegate.swift in Sources */, + 60B6C2A003864AAD3A426448152F67BE /* Timeline.swift in Sources */, + AA56769D8733D3F3E7976742D5ABA998 /* Validation.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC399CEC576B42C962CEB290481CAF95 /* Sources */ = { + E2E80565ACA4BF140CCB71BF3BCCAC59 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BE4BA1EDE444A770F834605F4B65348E /* AFError.swift in Sources */, - D4C3899574E9D5DF5E5DA52310560BCC /* Alamofire-dummy.m in Sources */, - 4E1A913EFB404FB11524718FF0298EFE /* Alamofire.swift in Sources */, - DBE6E2E4D205545E7988CFA5057C31D6 /* DispatchQueue+Alamofire.swift in Sources */, - FF9C7BC64DB23D2CED48197DE67F0335 /* MultipartFormData.swift in Sources */, - B77705737566AE83ED7E448923D7FA60 /* NetworkReachabilityManager.swift in Sources */, - 500C8EDA60C07B0F127C7FC385E17D38 /* Notifications.swift in Sources */, - 796177DE2762F24DAC16A709FD954838 /* ParameterEncoding.swift in Sources */, - 965DACF3DC02857ECBE66C5CBA3DA5D4 /* Request.swift in Sources */, - 52237C35642089F77DD4D723CEB25737 /* Response.swift in Sources */, - 5EE5FED83B90A606A763CF1114D1D6FB /* ResponseSerialization.swift in Sources */, - F9EA61D484CC15FDDAB0D8C0D26D7949 /* Result.swift in Sources */, - 6BEA14EC335E07C7063CD1383C0C443C /* ServerTrustPolicy.swift in Sources */, - 1FC3FD39157C2FFFF3869A1300730086 /* SessionDelegate.swift in Sources */, - 7068E8A7DDC1424EE8F24BC77E8746F4 /* SessionManager.swift in Sources */, - 36FF8853CB34A9297AFAA8F5F7456324 /* TaskDelegate.swift in Sources */, - B424F524BBBE34E685129945993809A8 /* Timeline.swift in Sources */, - 58A9719584AFA2D108D9E5C585A79329 /* Validation.swift in Sources */, + BA93909A110EB66F7167C3B326A5D2B0 /* AdditionalPropertiesClass.swift in Sources */, + B394CD18FC054147A348F808EAC8139A /* AlamofireImplementations.swift in Sources */, + 6FDC9E3B9907CF35FC038BD79A7DE2AC /* Animal.swift in Sources */, + BF7C810E194570D018B13127190459E5 /* AnimalFarm.swift in Sources */, + 2CDAC18FCB90313EFA1B02A75C83E0EE /* AnotherFakeAPI.swift in Sources */, + D1DA04105E2DD51C51C44E841F8032E1 /* APIHelper.swift in Sources */, + C13E3FEC49E848F2CC5794FF93065029 /* ApiResponse.swift in Sources */, + 091CC6D7CFF9374E41B1C6CB19B0E97B /* APIs.swift in Sources */, + BF0B6C073FB6099B4BB906527BFA43FD /* ArrayOfArrayOfNumberOnly.swift in Sources */, + 6FACE6A9C43083DBB5033317AFF9AE31 /* ArrayOfNumberOnly.swift in Sources */, + C94A6EA921453BFA4C082DFAC9C1C7EC /* ArrayTest.swift in Sources */, + 636C75AD8D045A1687F83CA89AF49A86 /* Capitalization.swift in Sources */, + 9A30D9B1EE2D5A3AC76AE389E0520352 /* Cat.swift in Sources */, + CE18C1FBB0A93582860FFAF71E056F6A /* CatAllOf.swift in Sources */, + B511D9CED36E092C88AB629C511BD1E7 /* Category.swift in Sources */, + F1620139EC36E6F5E4A98718BC41407D /* ClassModel.swift in Sources */, + F47A5B894FD1450562D373B1D33D6A61 /* Client.swift in Sources */, + FFEE16A611067AB36CB750E960FEC9E8 /* CodableHelper.swift in Sources */, + E5C45F26D8419C4BE5642B1E321894DD /* Configuration.swift in Sources */, + 4D4DCE405773A7673D0199A93FE9DE62 /* Dog.swift in Sources */, + C1245D0FDDA57F8CEAA283B028D09D09 /* DogAllOf.swift in Sources */, + F3A7212660A85B8AA43AD950729FBEA4 /* EnumArrays.swift in Sources */, + BC5A794B04B4DEA6F0473FD3E8952BDC /* EnumClass.swift in Sources */, + 8766DA6D3446770DAAF3D68E154E61BD /* EnumTest.swift in Sources */, + C80C11BB589CAA31898343105C285051 /* Extensions.swift in Sources */, + 410EC2309E393CB88C39529E7CF18811 /* FakeAPI.swift in Sources */, + 87D949C0631CC0CB929C69CA7D925B14 /* FakeClassnameTags123API.swift in Sources */, + ED06569D6C27D747E3E98ACF2F3CF0D8 /* File.swift in Sources */, + 8FC55DB96BAADB3B12B0DAB26332E40A /* FileSchemaTestClass.swift in Sources */, + BFB77FC4FC5E7D0680CE25025D0F818F /* FormatTest.swift in Sources */, + E160BF1E02EA978930609C95C93EEF16 /* HasOnlyReadOnly.swift in Sources */, + 0CD12250A91D4CBC55393495F06775B2 /* JSONEncodableEncoding.swift in Sources */, + BE5BBDF15A7C0C9CF88A0268815B8202 /* JSONEncodingHelper.swift in Sources */, + 7B847086909F16338E32D2290866777C /* List.swift in Sources */, + 6FC066D0A7B565C871A65F540E37735F /* MapTest.swift in Sources */, + 67D2462106E9DB4C3D16D5F521C99250 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */, + 24406F8A6355B7BEC2B072D3B17ECD47 /* Model200Response.swift in Sources */, + 28A9B496DBCD33380CC3D4CC155F524E /* Models.swift in Sources */, + 2E29AA764BF206DE155112E5BC4939E8 /* Name.swift in Sources */, + B4A2386087F99886C5CC944C2A5B58C7 /* NumberOnly.swift in Sources */, + A64FF2ED84938912BA601B01121B8E23 /* Order.swift in Sources */, + 36C038AE1EFBD5D95D3B3102A737DFDE /* OuterComposite.swift in Sources */, + 77A253AD92BDAF5465031F9225A13F8D /* OuterEnum.swift in Sources */, + 8D53C0725D4DE490174105C56C981189 /* Pet.swift in Sources */, + 3593A7A85BE6F92BC7BEA765C89B1076 /* PetAPI.swift in Sources */, + 7D3B1A7247A69E34E48CED53C5145C34 /* PetstoreClient-dummy.m in Sources */, + FFA407C091EEE5260E0C08655A0947EB /* ReadOnlyFirst.swift in Sources */, + 6AF9A6069796DA5834FEEAFD7221874F /* Return.swift in Sources */, + 526815FE7172F8568A44A8F4D9139970 /* SpecialModelName.swift in Sources */, + 64B570EF5C1FF1379F8036D8FCCB63EF /* StoreAPI.swift in Sources */, + B652075D043B2D37A0B1FA649065FC3F /* StringBooleanMap.swift in Sources */, + DF9AFA6422C6A99873955D59EF32DFAD /* Tag.swift in Sources */, + 02CB7A74792FE71D55618B1FD68A84F2 /* TypeHolderDefault.swift in Sources */, + 7C0B7D57C5FED546B89AF6A45F276C36 /* TypeHolderExample.swift in Sources */, + 13E3586ABCE7938EB3CC6D51BAD31B42 /* User.swift in Sources */, + 5C5EA546013E597E3D52DD83B5C92D13 /* UserAPI.swift in Sources */, + 3B14FC1EA44225994453AA123F4262D0 /* XmlItem.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - ED0D4AF0F0A06B74A62568C4D5759A6A /* Sources */ = { + F7D9DB86AE0913CC2B294C55BFD934AD /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BDFC42E8D488B782544C01EA4B836FE6 /* AdditionalPropertiesClass.swift in Sources */, - 8DA38131F3487E52C418B14A1146D0B5 /* AlamofireImplementations.swift in Sources */, - 9FB58E73B8ACCB4DB5DBBAD8B87626EF /* Animal.swift in Sources */, - 5AC217BD5767F08E7C82ACF19EC6C0EF /* AnimalFarm.swift in Sources */, - 899843F3DB6D20030909A88553419AED /* AnotherFakeAPI.swift in Sources */, - 5971B33F72E3D7D3C236AD2771C6B1B9 /* APIHelper.swift in Sources */, - 2C66D521D013B842DFB8DAF34B59ACCB /* ApiResponse.swift in Sources */, - ABF4EED967D1D9043E0A85D41597DCC0 /* APIs.swift in Sources */, - F9BF5C32556AB5B89CB2F37D4D0098D5 /* ArrayOfArrayOfNumberOnly.swift in Sources */, - FC7BBC1159E2CC6DA66E352C63BE59B0 /* ArrayOfNumberOnly.swift in Sources */, - 73152A114BB7ACC185D4E3C5B2A8CC07 /* ArrayTest.swift in Sources */, - 0EFBF7019EC6DC4EF93C814A3F36E38B /* Capitalization.swift in Sources */, - D6D37755B3CCC3826F1F41E3E043F106 /* Cat.swift in Sources */, - 53BE186F099D765B7B89A48B8FDEC305 /* Category.swift in Sources */, - 8AF655C55D0F96271C37B532702B6F25 /* ClassModel.swift in Sources */, - FA43ABC3B765C8141EB9A954F8236E8C /* Client.swift in Sources */, - A4ADEF1FAEEC1AEF8FBEE742C47EC96B /* CodableHelper.swift in Sources */, - 23650F3C69B6FD8AE505F4DBD2DB0857 /* Configuration.swift in Sources */, - 9C97BB2A3C9278FB023FC59391D7B02D /* Dog.swift in Sources */, - E2F45E3834F1B7EF5DB5AFA4580A250B /* EnumArrays.swift in Sources */, - 8F9A24B69FC11D8D3C8F74A569CB6CD5 /* EnumClass.swift in Sources */, - 36C38C55A44AB001BA635DAA42DD8983 /* EnumTest.swift in Sources */, - 6DEBDF5BE3369FD988FA2CEA7D813F98 /* Extensions.swift in Sources */, - 8AB65820804447DD4AB80F9D9F608321 /* FakeAPI.swift in Sources */, - 709500A134F2E2ED97D6BAB0E9905EE9 /* FakeClassnameTags123API.swift in Sources */, - 8822F29F792B2674D113973F88212968 /* File.swift in Sources */, - DC567BC5B9BF3C422F0165E2B31CE032 /* FileSchemaTestClass.swift in Sources */, - 3E8AEF1A6CDE3145AC9E940830475BA0 /* FormatTest.swift in Sources */, - 9A15A1AF9B617CCE084F6FFE369CDE1E /* HasOnlyReadOnly.swift in Sources */, - 6F2121D78F6240F2356B850825004415 /* JSONEncodableEncoding.swift in Sources */, - 54AF653DAC076544800133105D44E02D /* JSONEncodingHelper.swift in Sources */, - F835BCBFA377D7C2E17F901D401198D6 /* List.swift in Sources */, - 037D07B26DC59D1CC0273AE6FEA1CD13 /* MapTest.swift in Sources */, - E1939689D5A410305F4AE7A75F9AB32A /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */, - 5BF9E9CAD1144E0D2E15546B47333208 /* Model200Response.swift in Sources */, - 8E4DFD49566930B2F419CB92D8E07C56 /* Models.swift in Sources */, - D198BD94C82D4FD954FE15A754F65BE8 /* Name.swift in Sources */, - 10DAF72647DD12ED091372129BB268A5 /* NumberOnly.swift in Sources */, - 027C4A52348FD3873244B25C792F761D /* Order.swift in Sources */, - 61AC4F4A1910E63BDB0364F1B4CD012B /* OuterComposite.swift in Sources */, - 1B071E174CBF3F5D9AA17F4C258C76D2 /* OuterEnum.swift in Sources */, - 2899965598E656F4804A599B41373AA5 /* Pet.swift in Sources */, - 2AC0D0C21D99D9609C73EE09981714A5 /* PetAPI.swift in Sources */, - D489E6541A67815C7785EF7A68A845EF /* PetstoreClient-dummy.m in Sources */, - AA0E012DD8D92B800F7DA4F3FBE02509 /* ReadOnlyFirst.swift in Sources */, - B0D9AEEB00D6B8F4F270C4422A4CF277 /* Return.swift in Sources */, - 1C784AD3C368EA9A3B5769292677D0B1 /* SpecialModelName.swift in Sources */, - B15A7FFE1FD350F0AF33232278D879CA /* StoreAPI.swift in Sources */, - A16D3E85A8842716CBF75475A97CAFCC /* StringBooleanMap.swift in Sources */, - 8EF0EF0C763DE340F099EF07925608BC /* Tag.swift in Sources */, - 2ED9960693780756E2B13B3506B14C49 /* User.swift in Sources */, - 66311DD68B248E0D685D01071F74BD63 /* UserAPI.swift in Sources */, + 8012A57CFFC574F745FBA46D335BBA6F /* Pods-SwaggerClientTests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 36BB78CD83103E2E3589612B670D7F8B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Pods-SwaggerClient"; - target = BE6551E2EC26377CF9A73DFD54EF11B2 /* Pods-SwaggerClient */; - targetProxy = 6820589C863D447314A430256098049E /* PBXContainerItemProxy */; - }; - 3AA0A9F29B2B1EC92DCA8A6584E73490 /* PBXTargetDependency */ = { + 104B105982370A7B9131E436EA78FECF /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; - target = E76458C58C9140B6A16D60547E68E80C /* Alamofire */; - targetProxy = 05A5EC1BAA77DAA68451C43016EA94E6 /* PBXContainerItemProxy */; + target = 3383968E74B5371B20BB519B170DC7FD /* Alamofire */; + targetProxy = 8457C9F78C76721ECB8A14CE04BB0A4B /* PBXContainerItemProxy */; }; - 4C83472DF2408ED6C39494541A48970E /* PBXTargetDependency */ = { + 2B474439E57C1B019F32DB682991704B /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = PromiseKit; + target = BB3D3DCE720C235EF143F0E12FF69CA8 /* PromiseKit */; + targetProxy = FA9F1AC6C8600F3A18D9309C97C11B70 /* PBXContainerItemProxy */; + }; + 881BE8BEE1BCB47A20F79F7E463C2E17 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = PromiseKit; + target = BB3D3DCE720C235EF143F0E12FF69CA8 /* PromiseKit */; + targetProxy = 546F8B9CAB0CCCB3CAA12EAFD808A106 /* PBXContainerItemProxy */; + }; + BCF2E1EDC25542296AD484069283D527 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = PetstoreClient; - target = D5D0C678763D6BFA84F005BCB7523BA3 /* PetstoreClient */; - targetProxy = E45E6B008110DAB3EE83CF6549D8A3D9 /* PBXContainerItemProxy */; + target = F1D420F0D4A15B40A58DAEF987DD36C3 /* PetstoreClient */; + targetProxy = 46A96CCA6A1D1F8D0F013D7285FE0374 /* PBXContainerItemProxy */; }; - 59FD7FD4821C64EF3F0E5B0953A7023B /* PBXTargetDependency */ = { + C03AB392CD24547D8AFE0D2BDE56D2D0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; - target = E76458C58C9140B6A16D60547E68E80C /* Alamofire */; - targetProxy = 8A3661929FE5253419E235F8DFA5548D /* PBXContainerItemProxy */; + target = 3383968E74B5371B20BB519B170DC7FD /* Alamofire */; + targetProxy = CA4BC4C012806840D9DC2B2430920C98 /* PBXContainerItemProxy */; }; - 5CBC27193C875E29493A80A2DD624D5A /* PBXTargetDependency */ = { + C18A6DC0C9B8408542F3D944BB6D67F4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = PromiseKit; - target = AB23231C19FCBCAC6FE02D4945154508 /* PromiseKit */; - targetProxy = 86F56BCE785BD1105D7C86BCDFD4E663 /* PBXContainerItemProxy */; - }; - C65AA9BE76D8009BD0FCB60C07552150 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = PromiseKit; - target = AB23231C19FCBCAC6FE02D4945154508 /* PromiseKit */; - targetProxy = F5833DEBC56B2C5434E5E8CDB975BD5C /* PBXContainerItemProxy */; + name = "Pods-SwaggerClient"; + target = 231FDEAF460449DE9E4B3F7B823FD3A3 /* Pods-SwaggerClient */; + targetProxy = FA1A8E2F3FE2899A723889F94EACA0E5 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 0A5EDEB5E747FB5A3C01A8A74E768F19 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 45FB2502919E80623D265FE19C0A8FC4 /* Alamofire.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_MODULE_NAME = Alamofire; - PRODUCT_NAME = Alamofire; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 1C4D9D8B4B0B58B9CE50A2EC57763147 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 451D13FDA61BDE9EB91BBC6CEA52AED4 /* PromiseKit.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/PromiseKit/PromiseKit-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PromiseKit/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/PromiseKit/PromiseKit.modulemap"; - PRODUCT_MODULE_NAME = PromiseKit; - PRODUCT_NAME = PromiseKit; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 25CF5B41B146148FFE26D5BDC2BC4A14 /* Debug */ = { + 0F9DE41FC108FC05B463FCAC96ED8EF9 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -1129,8 +1173,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -1163,9 +1205,43 @@ }; name = Debug; }; - 2E9278E2913BC2126BC29FBE78815918 /* Debug */ = { + 21979AE1790135C30E0899E08565E57B /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 45FB2502919E80623D265FE19C0A8FC4 /* Alamofire.xcconfig */; + baseConfigurationReference = 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 41268AF552E2DC6A5873C87C81174F7D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 891AFA4406EB2D944EEA7D0DB1A042FC /* Alamofire.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -1177,7 +1253,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1187,16 +1263,16 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 5.1; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - 38B6E741CA9DFA14FC1A0E5C462C1514 /* Release */ = { + 553C8AFAF42C60331D9FA03EEF295F28 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */; + baseConfigurationReference = 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -1208,106 +1284,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.2; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 500E98573558DDE71480CACA286F49F5 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.2; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 535CAE19B0A36EE9C78D852501067528 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PetstoreClient/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; - PRODUCT_MODULE_NAME = PetstoreClient; - PRODUCT_NAME = PetstoreClient; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - A0782DA178B083E1071268C8AE32EE5E /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.2; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1326,7 +1303,138 @@ }; name = Debug; }; - AA132D0D9F065373411EBFA7A6B7A947 /* Release */ = { + 5A7FB8487CCD0B9D57F2BDB6B7A98A95 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 4CD9592220A0204D65C56DC92A81DA49 /* PetstoreClient.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/PetstoreClient/PetstoreClient-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; + PRODUCT_MODULE_NAME = PetstoreClient; + PRODUCT_NAME = PetstoreClient; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 7A138A57D62AD3F0FEBC72142392B2CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + A345BCBDE6C296957161A3E85A47A280 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 891AFA4406EB2D944EEA7D0DB1A042FC /* Alamofire.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.1; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + B1EA1C390BCDF899D7871D750D72F598 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.2; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + B758FBEC27C09CD6E60596DDF8B1CDBB /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -1358,8 +1466,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; @@ -1388,40 +1494,9 @@ }; name = Release; }; - B5342C9885B636CE0CEA3E231A86AA4C /* Debug */ = { + D4426CC727889C4CB9BCE3EB60935D8B /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PetstoreClient/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; - PRODUCT_MODULE_NAME = PetstoreClient; - PRODUCT_NAME = PetstoreClient; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - B892647419E33B104186B6C57EE229D4 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 451D13FDA61BDE9EB91BBC6CEA52AED4 /* PromiseKit.xcconfig */; + baseConfigurationReference = 024B6CCE54665B2B8C5A6A361996F330 /* PromiseKit.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -1433,7 +1508,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_PREFIX_HEADER = "Target Support Files/PromiseKit/PromiseKit-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PromiseKit/Info.plist"; + INFOPLIST_FILE = "Target Support Files/PromiseKit/PromiseKit-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1450,11 +1525,10 @@ }; name = Debug; }; - DBB468A0027CA362D8D7951C55840E31 /* Release */ = { + E57FA9A7602457E80A9F159F84427954 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */; + baseConfigurationReference = 4CD9592220A0204D65C56DC92A81DA49 /* PetstoreClient.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -1464,19 +1538,49 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/PetstoreClient/PetstoreClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.2; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; + PRODUCT_MODULE_NAME = PetstoreClient; + PRODUCT_NAME = PetstoreClient; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + EE29BBD317E28565EB50045103465E23 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 024B6CCE54665B2B8C5A6A361996F330 /* PromiseKit.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/PromiseKit/PromiseKit-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/PromiseKit/PromiseKit-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/PromiseKit/PromiseKit.modulemap"; + PRODUCT_MODULE_NAME = PromiseKit; + PRODUCT_NAME = PromiseKit; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -1487,61 +1591,61 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 2B2CBC0406D06EB33EEA41A284879F46 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */ = { + 2191953FE475159265C17FB5EE76C4FD /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */ = { isa = XCConfigurationList; buildConfigurations = ( - A0782DA178B083E1071268C8AE32EE5E /* Debug */, - DBB468A0027CA362D8D7951C55840E31 /* Release */, + 553C8AFAF42C60331D9FA03EEF295F28 /* Debug */, + B1EA1C390BCDF899D7871D750D72F598 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 3987909F169C9B57D460372E7FA7D4C2 /* Build configuration list for PBXNativeTarget "PromiseKit" */ = { isa = XCConfigurationList; buildConfigurations = ( - 25CF5B41B146148FFE26D5BDC2BC4A14 /* Debug */, - AA132D0D9F065373411EBFA7A6B7A947 /* Release */, + D4426CC727889C4CB9BCE3EB60935D8B /* Debug */, + EE29BBD317E28565EB50045103465E23 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3274FB8E04EC2FA338B7782D4F392D13 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - B5342C9885B636CE0CEA3E231A86AA4C /* Debug */, - 535CAE19B0A36EE9C78D852501067528 /* Release */, + 0F9DE41FC108FC05B463FCAC96ED8EF9 /* Debug */, + B758FBEC27C09CD6E60596DDF8B1CDBB /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 427F0F003A1AD80AE00155AFCDEFAC20 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { + 6CA821BA53BCC09E04DDA621C18E2CD7 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = { isa = XCConfigurationList; buildConfigurations = ( - 2E9278E2913BC2126BC29FBE78815918 /* Debug */, - 0A5EDEB5E747FB5A3C01A8A74E768F19 /* Release */, + E57FA9A7602457E80A9F159F84427954 /* Debug */, + 5A7FB8487CCD0B9D57F2BDB6B7A98A95 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 7DFD16CAA839D5E2607A2D7700691018 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */ = { + 8F09E039867007D3576FEED9032526A8 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 500E98573558DDE71480CACA286F49F5 /* Debug */, - 38B6E741CA9DFA14FC1A0E5C462C1514 /* Release */, + 7A138A57D62AD3F0FEBC72142392B2CD /* Debug */, + 21979AE1790135C30E0899E08565E57B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - B4D6ACD959AB5AE83A80961D086A68E9 /* Build configuration list for PBXNativeTarget "PromiseKit" */ = { + E87124444A44B7DB55208E7FEC21D331 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { isa = XCConfigurationList; buildConfigurations = ( - B892647419E33B104186B6C57EE229D4 /* Debug */, - 1C4D9D8B4B0B58B9CE50A2EC57763147 /* Release */, + 41268AF552E2DC6A5873C87C81174F7D /* Debug */, + A345BCBDE6C296957161A3E85A47A280 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; } diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire-Info.plist b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire-Info.plist new file mode 100644 index 0000000000..bb5a9ffc80 --- /dev/null +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 4.9.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig index 6b8baab300..12a1450811 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Alamofire/Alamofire.xcconfig @@ -1,6 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Alamofire GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient-Info.plist b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig index 1704e72da4..69e0045b36 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PetstoreClient/PetstoreClient.xcconfig @@ -1,7 +1,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown index 075a598537..5bdac20a17 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.markdown @@ -3,7 +3,7 @@ This application makes use of the following third party libraries: ## Alamofire -Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist index 08968b494e..315eee1ef8 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-acknowledgements.plist @@ -14,7 +14,7 @@ FooterText - Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh index 9e0a7d4afa..9c68a38d70 100755 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh @@ -3,10 +3,15 @@ set -e set -u set -o pipefail +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then - # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy - # frameworks to, so exit 0 (signalling the script phase was successful). - exit 0 + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 fi echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" @@ -36,8 +41,8 @@ install_framework() local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" if [ -L "${source}" ]; then - echo "Symlinked..." - source="$(readlink "${source}")" + echo "Symlinked..." + source="$(readlink "${source}")" fi # Use filter instead of exclude so missing patterns don't throw errors. @@ -47,8 +52,13 @@ install_framework() local basename basename="$(basename -s .framework "$1")" binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" fi # Strip invalid architectures so "fat" simulator / device frameworks work on device @@ -62,7 +72,7 @@ install_framework() # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) for lib in $swift_runtime_libs; do echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" @@ -101,8 +111,8 @@ install_dsym() { # Signs a framework with the provided identity code_sign_if_enabled() { - if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then - # Use the current code_sign_identitiy + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" @@ -131,7 +141,7 @@ strip_invalid_archs() { for arch in $binary_archs; do if ! [[ "${ARCHS}" == *"$arch"* ]]; then # Strip non-valid architectures in-place - lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + lipo -remove "$arch" -output "$binary" "$binary" stripped="$stripped $arch" fi done diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig index 52a643ada6..59f45a2a86 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "PromiseKit" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "Foundation" -framework "PetstoreClient" -framework "PromiseKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig index 52a643ada6..59f45a2a86 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "PromiseKit" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "Foundation" -framework "PetstoreClient" -framework "PromiseKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig index 436aa2cb9e..6750422210 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig @@ -1,7 +1,8 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "Foundation" -framework "PetstoreClient" -framework "PromiseKit" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig index 436aa2cb9e..6750422210 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig @@ -1,7 +1,8 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "Foundation" -framework "PetstoreClient" -framework "PromiseKit" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit-Info.plist b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit-Info.plist new file mode 100644 index 0000000000..ee58f387be --- /dev/null +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 4.4.4 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit.xcconfig b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit.xcconfig index 6c47b4c1b9..329063190b 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit.xcconfig +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/Pods/Target Support Files/PromiseKit/PromiseKit.xcconfig @@ -1,7 +1,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -framework "Foundation" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "Foundation" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj index 9fcee5b909..514ec061c2 100644 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj @@ -262,7 +262,7 @@ files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework", "${BUILT_PRODUCTS_DIR}/PetstoreClient/PetstoreClient.framework", "${BUILT_PRODUCTS_DIR}/PromiseKit/PromiseKit.framework", @@ -275,7 +275,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; 79FE27B09B2DD354C831BD49 /* [CP] Check Pods Manifest.lock */ = { diff --git a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/run_xcodebuild.sh b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/run_xcodebuild.sh index 7975187791..5de1147746 100755 --- a/samples/client/petstore/swift4/promisekit/SwaggerClientTests/run_xcodebuild.sh +++ b/samples/client/petstore/swift4/promisekit/SwaggerClientTests/run_xcodebuild.sh @@ -1,3 +1,3 @@ #!/bin/sh -xcodebuild -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" test -destination "platform=iOS Simulator,name=iPhone 8,OS=12.2" | xcpretty && exit ${PIPESTATUS[0]} +xcodebuild -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" test -destination "platform=iOS Simulator,name=iPhone 8,OS=13.0" | xcpretty && exit ${PIPESTATUS[0]} diff --git a/samples/client/petstore/swift4/promisekit/git_push.sh b/samples/client/petstore/swift4/promisekit/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/swift4/promisekit/git_push.sh +++ b/samples/client/petstore/swift4/promisekit/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/swift4/rxswift/.openapi-generator/VERSION b/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION index 83a328a922..0e97bd19ef 100644 --- a/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION +++ b/samples/client/petstore/swift4/rxswift/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/swift4/rxswift/Cartfile b/samples/client/petstore/swift4/rxswift/Cartfile index 95a72e26c1..60ba4967b6 100644 --- a/samples/client/petstore/swift4/rxswift/Cartfile +++ b/samples/client/petstore/swift4/rxswift/Cartfile @@ -1,2 +1,2 @@ -github "Alamofire/Alamofire" ~> 4.5.0 +github "Alamofire/Alamofire" ~> 4.9.0 github "ReactiveX/RxSwift" ~> 4.0 diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient.podspec b/samples/client/petstore/swift4/rxswift/PetstoreClient.podspec index 17a7f7a5c9..3b01a31b97 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient.podspec +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient.podspec @@ -11,5 +11,5 @@ Pod::Spec.new do |s| s.summary = 'PetstoreClient' s.source_files = 'PetstoreClient/Classes/**/*.swift' s.dependency 'RxSwift', '~> 4.0' - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 8e6840eeaa..474af3c46c 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -173,7 +173,7 @@ open class FakeAPI { */ open class func testBodyWithFileSchema(body: FileSchemaTestClass) -> Observable { return Observable.create { observer -> Disposable in - testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in + testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -211,7 +211,7 @@ open class FakeAPI { */ open class func testBodyWithQueryParams(query: String, body: User) -> Observable { return Observable.create { observer -> Disposable in - testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in + testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -306,7 +306,7 @@ open class FakeAPI { */ 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) -> Observable { return Observable.create { observer -> Disposable 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 { (response, error) -> 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 { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -453,7 +453,7 @@ open class FakeAPI { */ 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) -> Observable { return Observable.create { observer -> Disposable in - testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (response, error) -> Void in + testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -521,7 +521,7 @@ open class FakeAPI { */ open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil) -> Observable { return Observable.create { observer -> Disposable in - testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in + testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -576,7 +576,7 @@ open class FakeAPI { */ open class func testInlineAdditionalProperties(param: [String: String]) -> Observable { return Observable.create { observer -> Disposable in - testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in + testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -615,7 +615,7 @@ open class FakeAPI { */ open class func testJsonFormData(param: String, param2: String) -> Observable { return Observable.create { observer -> Disposable in - testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in + testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index fcbd3f3b00..8231330d1c 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -18,7 +18,7 @@ open class PetAPI { */ open class func addPet(body: Pet) -> Observable { return Observable.create { observer -> Disposable in - addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in + addPetWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -60,7 +60,7 @@ open class PetAPI { */ open class func deletePet(petId: Int64, apiKey: String? = nil) -> Observable { return Observable.create { observer -> Disposable in - deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in + deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -259,7 +259,7 @@ open class PetAPI { */ open class func updatePet(body: Pet) -> Observable { return Observable.create { observer -> Disposable in - updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in + updatePetWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -302,7 +302,7 @@ open class PetAPI { */ open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil) -> Observable { return Observable.create { observer -> Disposable in - updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in + updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 6171b68c85..b0e3d380fc 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -18,7 +18,7 @@ open class StoreAPI { */ open class func deleteOrder(orderId: String) -> Observable { return Observable.create { observer -> Disposable in - deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in + deleteOrderWithRequestBuilder(orderId: orderId).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index baeb80933a..a50f0f0e9b 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -18,7 +18,7 @@ open class UserAPI { */ open class func createUser(body: User) -> Observable { return Observable.create { observer -> Disposable in - createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUserWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -57,7 +57,7 @@ open class UserAPI { */ open class func createUsersWithArrayInput(body: [User]) -> Observable { return Observable.create { observer -> Disposable in - createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithArrayInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -95,7 +95,7 @@ open class UserAPI { */ open class func createUsersWithListInput(body: [User]) -> Observable { return Observable.create { observer -> Disposable in - createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithListInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -133,7 +133,7 @@ open class UserAPI { */ open class func deleteUser(username: String) -> Observable { return Observable.create { observer -> Disposable in - deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in + deleteUserWithRequestBuilder(username: username).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -264,7 +264,7 @@ open class UserAPI { */ open class func logoutUser() -> Observable { return Observable.create { observer -> Disposable in - logoutUserWithRequestBuilder().execute { (response, error) -> Void in + logoutUserWithRequestBuilder().execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { @@ -302,7 +302,7 @@ open class UserAPI { */ open class func updateUser(username: String, body: User) -> Observable { return Observable.create { observer -> Disposable in - updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in + updateUserWithRequestBuilder(username: username, body: body).execute { (_, error) -> Void in if let error = error { observer.onError(error) } else { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift index 04ad02a5ce..60ce28c66a 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift @@ -283,7 +283,7 @@ open class AlamofireRequestBuilder: RequestBuilder { let items = contentDisposition.components(separatedBy: ";") - var filename: String? = nil + var filename: String? for contentItem in items { @@ -294,7 +294,7 @@ open class AlamofireRequestBuilder: RequestBuilder { filename = contentItem return filename? - .replacingCharacters(in: range, with:"") + .replacingCharacters(in: range, with: "") .replacingOccurrences(of: "\"", with: "") .trimmingCharacters(in: .whitespacesAndNewlines) } @@ -435,7 +435,7 @@ open class AlamofireDecodableRequestBuilder: AlamofireRequestBuild return } - var responseObj: Response? = nil + var responseObj: Response? let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data) if decodeResult.error == nil { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift index 111d5a3a8c..0a333db0d1 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift @@ -14,8 +14,8 @@ open class CodableHelper { public static var dateformatter: DateFormatter? open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable { - var returnedDecodable: T? = nil - var returnedError: Error? = nil + var returnedDecodable: T? + var returnedError: Error? let decoder = JSONDecoder() if let df = self.dateformatter { @@ -41,7 +41,7 @@ open class CodableHelper { open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable { var returnedData: Data? - var returnedError: Error? = nil + var returnedError: Error? let encoder = JSONEncoder() if prettyPrint { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift index 24c128daad..2fa32b9e0f 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Extensions.swift @@ -152,7 +152,7 @@ extension KeyedDecodingContainerProtocol { } public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { - var tmpArray: [T]? = nil + var tmpArray: [T]? if contains(key) { tmpArray = try decodeArray(T.self, forKey: key) diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift index ca05906d42..fb76bbed26 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift @@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding { } public static func encodingParameters(jsonData: Data?) -> Parameters? { - var returnedParams: Parameters? = nil + var returnedParams: Parameters? if let jsonData = jsonData, !jsonData.isEmpty { var params = Parameters() params[jsonDataKey] = jsonData diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift index 3e68bb5d4a..7bd1267e95 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift @@ -11,7 +11,7 @@ import Alamofire open class JSONEncodingHelper { open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? // Encode the Encodable object if let encodableObj = encodableObj { @@ -25,7 +25,7 @@ open class JSONEncodingHelper { } open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? if let encodableObj = encodableObj { do { diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift index e87ce399c7..2516116586 100644 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift +++ b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models.swift @@ -27,7 +27,7 @@ open class Response { public convenience init(response: HTTPURLResponse, body: T?) { let rawHeader = response.allHeaderFields - var header = [String:String]() + var header = [String: String]() for case let (key, value) as (String, String) in rawHeader { header[key] = value } diff --git a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift deleted file mode 100644 index 3f1237fee4..0000000000 --- a/samples/client/petstore/swift4/rxswift/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ /dev/null @@ -1,45 +0,0 @@ -// -// StringBooleanMap.swift -// -// Generated by openapi-generator -// https://openapi-generator.tech -// - -import Foundation - -public struct StringBooleanMap: Codable { - - 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: String.self) - - try container.encodeMap(additionalProperties) - } - - // Decodable protocol methods - - public init(from decoder: Decoder) throws { - let container = try decoder.container(keyedBy: String.self) - - var nonAdditionalPropertyKeys = Set() - additionalProperties = try container.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) - } - -} diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Podfile.lock b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Podfile.lock index ade4d8375f..83d09b4381 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Podfile.lock +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Podfile.lock @@ -1,11 +1,9 @@ PODS: - - Alamofire (4.7.3) - - PetstoreClient (0.0.1): - - Alamofire (~> 4.7.0) + - Alamofire (4.9.0) + - PetstoreClient (1.0.0): + - Alamofire (~> 4.9.0) - RxSwift (~> 4.0) - - RxAtomic (4.4.0) - - RxSwift (4.4.0): - - RxAtomic (~> 4.4) + - RxSwift (4.5.0) DEPENDENCIES: - PetstoreClient (from `../`) @@ -13,7 +11,6 @@ DEPENDENCIES: SPEC REPOS: https://github.com/cocoapods/specs.git: - Alamofire - - RxAtomic - RxSwift EXTERNAL SOURCES: @@ -21,11 +18,10 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 - PetstoreClient: 80be9a47f05232f2d10af7e18eedd089e09676a1 - RxAtomic: eacf60db868c96bfd63320e28619fe29c179656f - RxSwift: 5976ecd04fc2fefd648827c23de5e11157faa973 + Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 + PetstoreClient: 432f1430feb6f893260645040aa967411fea06d9 + RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575 PODFILE CHECKSUM: cedb3058b02f4776d7c31f6d92ae2f674fdf424d -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/LICENSE b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/LICENSE index 2ec3cb14fb..38a301a1db 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/LICENSE +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/README.md b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/README.md index 02082525ae..9fdc9c7387 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/README.md +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/README.md @@ -67,11 +67,12 @@ In order to keep Alamofire focused specifically on core networking implementatio - [Alamofire 2.0 Migration Guide](https://github.com/Alamofire/Alamofire/blob/master/Documentation/Alamofire%202.0%20Migration%20Guide.md) ## Communication - -- If you **need help**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). (Tag 'alamofire') -- If you'd like to **ask a general question**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire). -- If you **found a bug**, open an issue. -- If you **have a feature request**, open an issue. +- If you **need help with making network requests**, use [Stack Overflow](https://stackoverflow.com/questions/tagged/alamofire) and tag `alamofire`. +- If you need to **find or understand an API**, check [our documentation](http://alamofire.github.io/Alamofire/) or [Apple's documentation for `URLSession`](https://developer.apple.com/documentation/foundation/url_loading_system), on top of which Alamofire is built. +- If you need **help with an Alamofire feature**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you'd like to **discuss Alamofire best practices**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you'd like to **discuss a feature request**, use [our forum on swift.org](https://forums.swift.org/c/related-projects/alamofire). +- If you **found a bug**, open an issue and follow the guide. The more detail the better! - If you **want to contribute**, submit a pull request. ## Installation @@ -84,7 +85,7 @@ In order to keep Alamofire focused specifically on core networking implementatio $ gem install cocoapods ``` -> CocoaPods 1.1+ is required to build Alamofire 4.0+. +> CocoaPods 1.7+ is required to build Alamofire 4.9+. To integrate Alamofire into your Xcode project using CocoaPods, specify it in your `Podfile`: @@ -94,7 +95,7 @@ platform :ios, '10.0' use_frameworks! target '' do - pod 'Alamofire', '~> 4.7' + pod 'Alamofire', '~> 4.9' end ``` @@ -111,14 +112,13 @@ $ pod install You can install Carthage with [Homebrew](https://brew.sh/) using the following command: ```bash -$ brew update $ brew install carthage ``` To integrate Alamofire into your Xcode project using Carthage, specify it in your `Cartfile`: ```ogdl -github "Alamofire/Alamofire" ~> 4.7 +github "Alamofire/Alamofire" ~> 4.9 ``` Run `carthage update` to build the framework and drag the built `Alamofire.framework` into your Xcode project. @@ -141,7 +141,7 @@ dependencies: [ ```swift dependencies: [ - .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.0.0") + .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.9.0") ] ``` diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift index 8b90d8471e..b163f6038f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/AFError.swift @@ -1,7 +1,7 @@ // // AFError.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift index a411b77491..20c3672fba 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Alamofire.swift @@ -1,7 +1,7 @@ // // Alamofire.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -135,7 +135,8 @@ public func request( parameters: Parameters? = nil, encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil) - -> DataRequest { + -> DataRequest +{ return SessionManager.default.request( url, method: method, @@ -182,7 +183,8 @@ public func download( encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download( url, method: method, @@ -207,7 +209,8 @@ public func download( public func download( _ urlRequest: URLRequestConvertible, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download(urlRequest, to: destination) } @@ -236,7 +239,8 @@ public func download( public func download( resumingWith resumeData: Data, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest +{ return SessionManager.default.download(resumingWith: resumeData, to: destination) } @@ -259,7 +263,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(fileURL, to: url, method: method, headers: headers) } @@ -292,7 +297,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(data, to: url, method: method, headers: headers) } @@ -325,7 +331,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest +{ return SessionManager.default.upload(stream, to: url, method: method, headers: headers) } @@ -372,7 +379,8 @@ public func upload( to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil, - encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) { + encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) +{ return SessionManager.default.upload( multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, @@ -408,7 +416,8 @@ public func upload( multipartFormData: @escaping (MultipartFormData) -> Void, usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold, with urlRequest: URLRequestConvertible, - encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) { + encodingCompletion: ((SessionManager.MultipartFormDataEncodingResult) -> Void)?) +{ return SessionManager.default.upload( multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift index dea3ebc1be..a54673cca6 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/DispatchQueue+Alamofire.swift @@ -1,7 +1,7 @@ // // DispatchQueue+Alamofire.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift index 85a0685748..b840138ccc 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/MultipartFormData.swift @@ -1,7 +1,7 @@ // // MultipartFormData.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -98,7 +98,7 @@ open class MultipartFormData { public var contentLength: UInt64 { return bodyParts.reduce(0) { $0 + $1.bodyContentLength } } /// The boundary used to separate the body parts in the encoded form data. - public let boundary: String + public var boundary: String private var bodyParts: [BodyPart] private var bodyPartError: AFError? @@ -275,7 +275,8 @@ open class MultipartFormData { } bodyContentLength = fileSize.uint64Value - } catch { + } + catch { setBodyPartError(withReason: .bodyPartFileSizeQueryFailedWithError(forURL: fileURL, error: error)) return } @@ -311,7 +312,8 @@ open class MultipartFormData { withLength length: UInt64, name: String, fileName: String, - mimeType: String) { + mimeType: String) + { let headers = contentHeaders(withName: name, fileName: fileName, mimeType: mimeType) append(stream, withLength: length, headers: headers) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift index 60bda83d2f..398ca827c2 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/NetworkReachabilityManager.swift @@ -1,7 +1,7 @@ // // NetworkReachabilityManager.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -128,7 +128,9 @@ open class NetworkReachabilityManager { private init(reachability: SCNetworkReachability) { self.reachability = reachability - self.previousFlags = SCNetworkReachabilityFlags() + + // Set the previous flags to an unreserved value to represent unknown status + self.previousFlags = SCNetworkReachabilityFlags(rawValue: 1 << 30) } deinit { @@ -146,7 +148,8 @@ open class NetworkReachabilityManager { context.info = Unmanaged.passUnretained(self).toOpaque() let callbackEnabled = SCNetworkReachabilitySetCallback( - reachability, { (_, flags, info) in + reachability, + { (_, flags, info) in let reachability = Unmanaged.fromOpaque(info!).takeUnretainedValue() reachability.notifyListener(flags) }, @@ -156,8 +159,11 @@ open class NetworkReachabilityManager { let queueEnabled = SCNetworkReachabilitySetDispatchQueue(reachability, listenerQueue) listenerQueue.async { - self.previousFlags = SCNetworkReachabilityFlags() - self.notifyListener(self.flags ?? SCNetworkReachabilityFlags()) + self.previousFlags = SCNetworkReachabilityFlags(rawValue: 1 << 30) + + guard let flags = self.flags else { return } + + self.notifyListener(flags) } return callbackEnabled && queueEnabled @@ -215,7 +221,8 @@ extension NetworkReachabilityManager.NetworkReachabilityStatus: Equatable {} public func ==( lhs: NetworkReachabilityManager.NetworkReachabilityStatus, rhs: NetworkReachabilityManager.NetworkReachabilityStatus) - -> Bool { + -> Bool +{ switch (lhs, rhs) { case (.unknown, .unknown): return true diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift index e1b6120496..e1ac31bf32 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Notifications.swift @@ -1,7 +1,7 @@ // // Notifications.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift index 344a048cad..6195809c5d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ParameterEncoding.swift @@ -1,7 +1,7 @@ // // ParameterEncoding.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -435,7 +435,8 @@ public struct PropertyListEncoding: ParameterEncoding { /// - returns: The new `PropertyListEncoding` instance. public init( format: PropertyListSerialization.PropertyListFormat = .xml, - options: PropertyListSerialization.WriteOptions = 0) { + options: PropertyListSerialization.WriteOptions = 0) + { self.format = format self.options = options } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift index 18b83a0e73..2be2ce0106 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Request.swift @@ -1,7 +1,7 @@ // // Request.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -161,7 +161,8 @@ open class Request { user: String, password: String, persistence: URLCredential.Persistence = .forSession) - -> Self { + -> Self + { let credential = URLCredential(user: user, password: password, persistence: persistence) return authenticate(usingCredential: credential) } @@ -319,21 +320,16 @@ extension Request: CustomDebugStringConvertible { var headers: [AnyHashable: Any] = [:] - if let additionalHeaders = session.configuration.httpAdditionalHeaders { - for (field, value) in additionalHeaders where field != AnyHashable("Cookie") { - headers[field] = value - } - } + session.configuration.httpAdditionalHeaders?.filter { $0.0 != AnyHashable("Cookie") } + .forEach { headers[$0.0] = $0.1 } - if let headerFields = request.allHTTPHeaderFields { - for (field, value) in headerFields where field != "Cookie" { - headers[field] = value - } - } + request.allHTTPHeaderFields?.filter { $0.0 != "Cookie" } + .forEach { headers[$0.0] = $0.1 } - for (field, value) in headers { - let escapedValue = String(describing: value).replacingOccurrences(of: "\"", with: "\\\"") - components.append("-H \"\(field): \(escapedValue)\"") + components += headers.map { + let escapedValue = String(describing: $0.value).replacingOccurrences(of: "\"", with: "\\\"") + + return "-H \"\($0.key): \(escapedValue)\"" } if let httpBodyData = request.httpBody, let httpBody = String(data: httpBodyData, encoding: .utf8) { @@ -501,8 +497,19 @@ open class DownloadRequest: Request { // MARK: State /// Cancels the request. - open override func cancel() { - downloadDelegate.downloadTask.cancel { self.downloadDelegate.resumeData = $0 } + override open func cancel() { + cancel(createResumeData: true) + } + + /// Cancels the request. + /// + /// - parameter createResumeData: Determines whether resume data is created via the underlying download task or not. + open func cancel(createResumeData: Bool) { + if createResumeData { + downloadDelegate.downloadTask.cancel { self.downloadDelegate.resumeData = $0 } + } else { + downloadDelegate.downloadTask.cancel() + } NotificationCenter.default.post( name: Notification.Name.Task.DidCancel, @@ -537,7 +544,8 @@ open class DownloadRequest: Request { open class func suggestedDownloadDestination( for directory: FileManager.SearchPathDirectory = .documentDirectory, in domain: FileManager.SearchPathDomainMask = .userDomainMask) - -> DownloadFileDestination { + -> DownloadFileDestination + { return { temporaryURL, response in let directoryURLs = FileManager.default.urls(for: directory, in: domain) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift index 23571383ba..747a471a55 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Response.swift @@ -1,7 +1,7 @@ // // Response.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -58,7 +58,8 @@ public struct DefaultDataResponse { data: Data?, error: Error?, timeline: Timeline = Timeline(), - metrics: AnyObject? = nil) { + metrics: AnyObject? = nil) + { self.request = request self.response = response self.data = data @@ -108,7 +109,8 @@ public struct DataResponse { response: HTTPURLResponse?, data: Data?, result: Result, - timeline: Timeline = Timeline()) { + timeline: Timeline = Timeline()) + { self.request = request self.response = response self.data = data @@ -294,7 +296,8 @@ public struct DefaultDownloadResponse { resumeData: Data?, error: Error?, timeline: Timeline = Timeline(), - metrics: AnyObject? = nil) { + metrics: AnyObject? = nil) + { self.request = request self.response = response self.temporaryURL = temporaryURL @@ -356,7 +359,8 @@ public struct DownloadResponse { destinationURL: URL?, resumeData: Data?, result: Result, - timeline: Timeline = Timeline()) { + timeline: Timeline = Timeline()) + { self.request = request self.response = response self.temporaryURL = temporaryURL diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift index fd049edac1..9cc105a820 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ResponseSerialization.swift @@ -1,7 +1,7 @@ // // ResponseSerialization.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -144,7 +144,8 @@ extension DataRequest { queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { let result = responseSerializer.serializeResponse( self.request, @@ -181,7 +182,8 @@ extension DownloadRequest { public func response( queue: DispatchQueue? = nil, completionHandler: @escaping (DefaultDownloadResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { (queue ?? DispatchQueue.main).async { var downloadResponse = DefaultDownloadResponse( @@ -216,7 +218,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, responseSerializer: T, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { delegate.queue.addOperation { let result = responseSerializer.serializeResponse( self.request, @@ -286,7 +289,8 @@ extension DataRequest { public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.dataResponseSerializer(), @@ -325,7 +329,8 @@ extension DownloadRequest { public func responseData( queue: DispatchQueue? = nil, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.dataResponseSerializer(), @@ -351,7 +356,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success("") } @@ -405,7 +411,8 @@ extension DataRequest { queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.stringResponseSerializer(encoding: encoding), @@ -452,7 +459,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, encoding: String.Encoding? = nil, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.stringResponseSerializer(encoding: encoding), @@ -478,7 +486,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) } @@ -505,7 +514,8 @@ extension DataRequest { /// - returns: A JSON object response serializer. public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) - -> DataResponseSerializer { + -> DataResponseSerializer + { return DataResponseSerializer { _, response, data, error in return Request.serializeResponseJSON(options: options, response: response, data: data, error: error) } @@ -522,7 +532,8 @@ extension DataRequest { queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.jsonResponseSerializer(options: options), @@ -540,7 +551,8 @@ extension DownloadRequest { /// - returns: A JSON object response serializer. public static func jsonResponseSerializer( options: JSONSerialization.ReadingOptions = .allowFragments) - -> DownloadResponseSerializer { + -> DownloadResponseSerializer + { return DownloadResponseSerializer { _, response, fileURL, error in guard error == nil else { return .failure(error!) } @@ -568,7 +580,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, options: JSONSerialization.ReadingOptions = .allowFragments, completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.jsonResponseSerializer(options: options), @@ -594,7 +607,8 @@ extension Request { response: HTTPURLResponse?, data: Data?, error: Error?) - -> Result { + -> Result + { guard error == nil else { return .failure(error!) } if let response = response, emptyDataStatusCodes.contains(response.statusCode) { return .success(NSNull()) } @@ -621,7 +635,8 @@ extension DataRequest { /// - returns: A property list object response serializer. public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) - -> DataResponseSerializer { + -> DataResponseSerializer + { return DataResponseSerializer { _, response, data, error in return Request.serializeResponsePropertyList(options: options, response: response, data: data, error: error) } @@ -638,7 +653,8 @@ extension DataRequest { queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DataResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DataRequest.propertyListResponseSerializer(options: options), @@ -656,7 +672,8 @@ extension DownloadRequest { /// - returns: A property list object response serializer. public static func propertyListResponseSerializer( options: PropertyListSerialization.ReadOptions = []) - -> DownloadResponseSerializer { + -> DownloadResponseSerializer + { return DownloadResponseSerializer { _, response, fileURL, error in guard error == nil else { return .failure(error!) } @@ -684,7 +701,8 @@ extension DownloadRequest { queue: DispatchQueue? = nil, options: PropertyListSerialization.ReadOptions = [], completionHandler: @escaping (DownloadResponse) -> Void) - -> Self { + -> Self + { return response( queue: queue, responseSerializer: DownloadRequest.propertyListResponseSerializer(options: options), diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Result.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Result.swift index df62e12cab..e0928089ab 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Result.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Result.swift @@ -1,7 +1,7 @@ // // Result.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -253,8 +253,8 @@ extension Result { /// - Parameter closure: A closure that takes the success value of this instance. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func withValue(_ closure: (Value) -> Void) -> Result { - if case let .success(value) = self { closure(value) } + public func withValue(_ closure: (Value) throws -> Void) rethrows -> Result { + if case let .success(value) = self { try closure(value) } return self } @@ -266,8 +266,8 @@ extension Result { /// - Parameter closure: A closure that takes the success value of this instance. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func withError(_ closure: (Error) -> Void) -> Result { - if case let .failure(error) = self { closure(error) } + public func withError(_ closure: (Error) throws -> Void) rethrows -> Result { + if case let .failure(error) = self { try closure(error) } return self } @@ -279,8 +279,8 @@ extension Result { /// - Parameter closure: A `Void` closure. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func ifSuccess(_ closure: () -> Void) -> Result { - if isSuccess { closure() } + public func ifSuccess(_ closure: () throws -> Void) rethrows -> Result { + if isSuccess { try closure() } return self } @@ -292,8 +292,8 @@ extension Result { /// - Parameter closure: A `Void` closure. /// - Returns: This `Result` instance, unmodified. @discardableResult - public func ifFailure(_ closure: () -> Void) -> Result { - if isFailure { closure() } + public func ifFailure(_ closure: () throws -> Void) rethrows -> Result { + if isFailure { try closure() } return self } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift index d50e941fab..dea099e257 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/ServerTrustPolicy.swift @@ -1,7 +1,7 @@ // // ServerTrustPolicy.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -249,6 +249,7 @@ public enum ServerTrustPolicy { let unspecified = SecTrustResultType.unspecified let proceed = SecTrustResultType.proceed + isValid = result == unspecified || result == proceed } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift index 17d0d9f150..4964f1eebf 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionDelegate.swift @@ -1,7 +1,7 @@ // // SessionDelegate.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -255,7 +255,8 @@ extension SessionDelegate: URLSessionDelegate { open func urlSession( _ session: URLSession, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { guard sessionDidReceiveChallengeWithCompletion == nil else { sessionDidReceiveChallengeWithCompletion?(session, challenge, completionHandler) return @@ -314,7 +315,8 @@ extension SessionDelegate: URLSessionTaskDelegate { task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, - completionHandler: @escaping (URLRequest?) -> Void) { + completionHandler: @escaping (URLRequest?) -> Void) + { guard taskWillPerformHTTPRedirectionWithCompletion == nil else { taskWillPerformHTTPRedirectionWithCompletion?(session, task, response, request, completionHandler) return @@ -340,7 +342,8 @@ extension SessionDelegate: URLSessionTaskDelegate { _ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { guard taskDidReceiveChallengeWithCompletion == nil else { taskDidReceiveChallengeWithCompletion?(session, task, challenge, completionHandler) return @@ -369,7 +372,8 @@ extension SessionDelegate: URLSessionTaskDelegate { open func urlSession( _ session: URLSession, task: URLSessionTask, - needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) { + needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) + { guard taskNeedNewBodyStreamWithCompletion == nil else { taskNeedNewBodyStreamWithCompletion?(session, task, completionHandler) return @@ -394,7 +398,8 @@ extension SessionDelegate: URLSessionTaskDelegate { task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, - totalBytesExpectedToSend: Int64) { + totalBytesExpectedToSend: Int64) + { if let taskDidSendBodyData = taskDidSendBodyData { taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalBytesExpectedToSend) } else if let delegate = self[task]?.delegate as? UploadTaskDelegate { @@ -507,7 +512,8 @@ extension SessionDelegate: URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, - completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) { + completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) + { guard dataTaskDidReceiveResponseWithCompletion == nil else { dataTaskDidReceiveResponseWithCompletion?(session, dataTask, response, completionHandler) return @@ -530,7 +536,8 @@ extension SessionDelegate: URLSessionDataDelegate { open func urlSession( _ session: URLSession, dataTask: URLSessionDataTask, - didBecome downloadTask: URLSessionDownloadTask) { + didBecome downloadTask: URLSessionDownloadTask) + { if let dataTaskDidBecomeDownloadTask = dataTaskDidBecomeDownloadTask { dataTaskDidBecomeDownloadTask(session, dataTask, downloadTask) } else { @@ -566,7 +573,8 @@ extension SessionDelegate: URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, - completionHandler: @escaping (CachedURLResponse?) -> Void) { + completionHandler: @escaping (CachedURLResponse?) -> Void) + { guard dataTaskWillCacheResponseWithCompletion == nil else { dataTaskWillCacheResponseWithCompletion?(session, dataTask, proposedResponse, completionHandler) return @@ -600,7 +608,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { open func urlSession( _ session: URLSession, downloadTask: URLSessionDownloadTask, - didFinishDownloadingTo location: URL) { + didFinishDownloadingTo location: URL) + { if let downloadTaskDidFinishDownloadingToURL = downloadTaskDidFinishDownloadingToURL { downloadTaskDidFinishDownloadingToURL(session, downloadTask, location) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -623,7 +632,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, - totalBytesExpectedToWrite: Int64) { + totalBytesExpectedToWrite: Int64) + { if let downloadTaskDidWriteData = downloadTaskDidWriteData { downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -651,7 +661,8 @@ extension SessionDelegate: URLSessionDownloadDelegate { _ session: URLSession, downloadTask: URLSessionDownloadTask, didResumeAtOffset fileOffset: Int64, - expectedTotalBytes: Int64) { + expectedTotalBytes: Int64) + { if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset { downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes) } else if let delegate = self[downloadTask]?.delegate as? DownloadTaskDelegate { @@ -705,7 +716,8 @@ extension SessionDelegate: URLSessionStreamDelegate { _ session: URLSession, streamTask: URLSessionStreamTask, didBecome inputStream: InputStream, - outputStream: OutputStream) { + outputStream: OutputStream) + { streamTaskDidBecomeInputAndOutputStreams?(session, streamTask, inputStream, outputStream) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift index 8c10706677..02c36a76b7 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/SessionManager.swift @@ -1,7 +1,7 @@ // // SessionManager.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -166,7 +166,8 @@ open class SessionManager { public init( configuration: URLSessionConfiguration = URLSessionConfiguration.default, delegate: SessionDelegate = SessionDelegate(), - serverTrustPolicyManager: ServerTrustPolicyManager? = nil) { + serverTrustPolicyManager: ServerTrustPolicyManager? = nil) + { self.delegate = delegate self.session = URLSession(configuration: configuration, delegate: delegate, delegateQueue: nil) @@ -184,7 +185,8 @@ open class SessionManager { public init?( session: URLSession, delegate: SessionDelegate, - serverTrustPolicyManager: ServerTrustPolicyManager? = nil) { + serverTrustPolicyManager: ServerTrustPolicyManager? = nil) + { guard delegate === session.delegate else { return nil } self.delegate = delegate @@ -227,7 +229,8 @@ open class SessionManager { parameters: Parameters? = nil, encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil) - -> DataRequest { + -> DataRequest + { var originalRequest: URLRequest? do { @@ -317,7 +320,8 @@ open class SessionManager { encoding: ParameterEncoding = URLEncoding.default, headers: HTTPHeaders? = nil, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) let encodedURLRequest = try encoding.encode(urlRequest, with: parameters) @@ -343,7 +347,8 @@ open class SessionManager { open func download( _ urlRequest: URLRequestConvertible, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { do { let urlRequest = try urlRequest.asURLRequest() return download(.request(urlRequest), to: destination) @@ -379,7 +384,8 @@ open class SessionManager { open func download( resumingWith resumeData: Data, to destination: DownloadRequest.DownloadFileDestination? = nil) - -> DownloadRequest { + -> DownloadRequest + { return download(.resumeData(resumeData), to: destination) } @@ -388,7 +394,8 @@ open class SessionManager { private func download( _ downloadable: DownloadRequest.Downloadable, to destination: DownloadRequest.DownloadFileDestination?) - -> DownloadRequest { + -> DownloadRequest + { do { let task = try downloadable.task(session: session, adapter: adapter, queue: queue) let download = DownloadRequest(session: session, requestTask: .download(downloadable, task)) @@ -409,7 +416,8 @@ open class SessionManager { _ downloadable: DownloadRequest.Downloadable?, to destination: DownloadRequest.DownloadFileDestination?, failedWith error: Error) - -> DownloadRequest { + -> DownloadRequest + { var downloadTask: Request.RequestTask = .download(nil, nil) if let downloadable = downloadable { @@ -450,7 +458,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(fileURL, with: urlRequest) @@ -495,7 +504,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(data, with: urlRequest) @@ -540,7 +550,8 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil) - -> UploadRequest { + -> UploadRequest + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) return upload(stream, with: urlRequest) @@ -600,7 +611,9 @@ open class SessionManager { to url: URLConvertible, method: HTTPMethod = .post, headers: HTTPHeaders? = nil, - encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) { + queue: DispatchQueue? = nil, + encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) + { do { let urlRequest = try URLRequest(url: url, method: method, headers: headers) @@ -608,10 +621,11 @@ open class SessionManager { multipartFormData: multipartFormData, usingThreshold: encodingMemoryThreshold, with: urlRequest, + queue: queue, encodingCompletion: encodingCompletion ) } catch { - DispatchQueue.main.async { encodingCompletion?(.failure(error)) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(.failure(error)) } } } @@ -642,7 +656,9 @@ open class SessionManager { multipartFormData: @escaping (MultipartFormData) -> Void, usingThreshold encodingMemoryThreshold: UInt64 = SessionManager.multipartFormDataEncodingMemoryThreshold, with urlRequest: URLRequestConvertible, - encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) { + queue: DispatchQueue? = nil, + encodingCompletion: ((MultipartFormDataEncodingResult) -> Void)?) + { DispatchQueue.global(qos: .utility).async { let formData = MultipartFormData() multipartFormData(formData) @@ -664,7 +680,7 @@ open class SessionManager { streamFileURL: nil ) - DispatchQueue.main.async { encodingCompletion?(encodingResult) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(encodingResult) } } else { let fileManager = FileManager.default let tempDirectoryURL = URL(fileURLWithPath: NSTemporaryDirectory()) @@ -700,7 +716,7 @@ open class SessionManager { } } - DispatchQueue.main.async { + (queue ?? DispatchQueue.main).async { let encodingResult = MultipartFormDataEncodingResult.success( request: upload, streamingFromDisk: true, @@ -720,7 +736,7 @@ open class SessionManager { } } - DispatchQueue.main.async { encodingCompletion?(.failure(error)) } + (queue ?? DispatchQueue.main).async { encodingCompletion?(.failure(error)) } } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift index 12fcbe92d3..5705737e49 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/TaskDelegate.swift @@ -1,7 +1,7 @@ // // TaskDelegate.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -94,7 +94,8 @@ open class TaskDelegate: NSObject { task: URLSessionTask, willPerformHTTPRedirection response: HTTPURLResponse, newRequest request: URLRequest, - completionHandler: @escaping (URLRequest?) -> Void) { + completionHandler: @escaping (URLRequest?) -> Void) + { var redirectRequest: URLRequest? = request if let taskWillPerformHTTPRedirection = taskWillPerformHTTPRedirection { @@ -109,7 +110,8 @@ open class TaskDelegate: NSObject { _ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, - completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) { + completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void) + { var disposition: URLSession.AuthChallengeDisposition = .performDefaultHandling var credential: URLCredential? @@ -148,7 +150,8 @@ open class TaskDelegate: NSObject { func urlSession( _ session: URLSession, task: URLSessionTask, - needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) { + needNewBodyStream completionHandler: @escaping (InputStream?) -> Void) + { var bodyStream: InputStream? if let taskNeedNewBodyStream = taskNeedNewBodyStream { @@ -234,7 +237,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, didReceive response: URLResponse, - completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) { + completionHandler: @escaping (URLSession.ResponseDisposition) -> Void) + { var disposition: URLSession.ResponseDisposition = .allow expectedContentLength = response.expectedContentLength @@ -249,7 +253,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { func urlSession( _ session: URLSession, dataTask: URLSessionDataTask, - didBecome downloadTask: URLSessionDownloadTask) { + didBecome downloadTask: URLSessionDownloadTask) + { dataTaskDidBecomeDownloadTask?(session, dataTask, downloadTask) } @@ -282,7 +287,8 @@ class DataTaskDelegate: TaskDelegate, URLSessionDataDelegate { _ session: URLSession, dataTask: URLSessionDataTask, willCacheResponse proposedResponse: CachedURLResponse, - completionHandler: @escaping (CachedURLResponse?) -> Void) { + completionHandler: @escaping (CachedURLResponse?) -> Void) + { var cachedResponse: CachedURLResponse? = proposedResponse if let dataTaskWillCacheResponse = dataTaskWillCacheResponse { @@ -337,7 +343,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { func urlSession( _ session: URLSession, downloadTask: URLSessionDownloadTask, - didFinishDownloadingTo location: URL) { + didFinishDownloadingTo location: URL) + { temporaryURL = location guard @@ -372,7 +379,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, - totalBytesExpectedToWrite: Int64) { + totalBytesExpectedToWrite: Int64) + { if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() } if let downloadTaskDidWriteData = downloadTaskDidWriteData { @@ -397,7 +405,8 @@ class DownloadTaskDelegate: TaskDelegate, URLSessionDownloadDelegate { _ session: URLSession, downloadTask: URLSessionDownloadTask, didResumeAtOffset fileOffset: Int64, - expectedTotalBytes: Int64) { + expectedTotalBytes: Int64) + { if let downloadTaskDidResumeAtOffset = downloadTaskDidResumeAtOffset { downloadTaskDidResumeAtOffset(session, downloadTask, fileOffset, expectedTotalBytes) } else { @@ -439,7 +448,8 @@ class UploadTaskDelegate: DataTaskDelegate { task: URLSessionTask, didSendBodyData bytesSent: Int64, totalBytesSent: Int64, - totalBytesExpectedToSend: Int64) { + totalBytesExpectedToSend: Int64) + { if initialResponseTime == nil { initialResponseTime = CFAbsoluteTimeGetCurrent() } if let taskDidSendBodyData = taskDidSendBodyData { diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift index b318b1ff48..596c1bdc41 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Timeline.swift @@ -1,7 +1,7 @@ // // Timeline.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -64,7 +64,8 @@ public struct Timeline { requestStartTime: CFAbsoluteTime = 0.0, initialResponseTime: CFAbsoluteTime = 0.0, requestCompletedTime: CFAbsoluteTime = 0.0, - serializationCompletedTime: CFAbsoluteTime = 0.0) { + serializationCompletedTime: CFAbsoluteTime = 0.0) + { self.requestStartTime = requestStartTime self.initialResponseTime = initialResponseTime self.requestCompletedTime = requestCompletedTime diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift index deaee34ad8..59e0bbb2b0 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Alamofire/Source/Validation.swift @@ -1,7 +1,7 @@ // // Validation.swift // -// Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -94,7 +94,8 @@ extension Request { statusCode acceptableStatusCodes: S, response: HTTPURLResponse) -> ValidationResult - where S.Iterator.Element == Int { + where S.Iterator.Element == Int + { if acceptableStatusCodes.contains(response.statusCode) { return .success } else { @@ -110,7 +111,8 @@ extension Request { response: HTTPURLResponse, data: Data?) -> ValidationResult - where S.Iterator.Element == String { + where S.Iterator.Element == String + { guard let data = data, data.count > 0 else { return .success } guard @@ -217,7 +219,10 @@ extension DataRequest { /// - returns: The request. @discardableResult public func validate() -> Self { - return validate(statusCode: self.acceptableStatusCodes).validate(contentType: self.acceptableContentTypes) + let contentTypes = { [unowned self] in + self.acceptableContentTypes + } + return validate(statusCode: acceptableStatusCodes).validate(contentType: contentTypes()) } } @@ -308,6 +313,9 @@ extension DownloadRequest { /// - returns: The request. @discardableResult public func validate() -> Self { - return validate(statusCode: self.acceptableStatusCodes).validate(contentType: self.acceptableContentTypes) + let contentTypes = { [unowned self] in + self.acceptableContentTypes + } + return validate(statusCode: acceptableStatusCodes).validate(contentType: contentTypes()) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json index 862a7234f7..2d9c418f90 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Local Podspecs/PetstoreClient.podspec.json @@ -5,7 +5,7 @@ "osx": "10.11", "tvos": "9.0" }, - "version": "0.0.1", + "version": "1.0.0", "source": { "git": "git@github.com:OpenAPITools/openapi-generator.git", "tag": "v1.0.0" @@ -20,7 +20,7 @@ "~> 4.0" ], "Alamofire": [ - "~> 4.7.0" + "~> 4.9.0" ] } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Manifest.lock b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Manifest.lock index ade4d8375f..83d09b4381 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Manifest.lock +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Manifest.lock @@ -1,11 +1,9 @@ PODS: - - Alamofire (4.7.3) - - PetstoreClient (0.0.1): - - Alamofire (~> 4.7.0) + - Alamofire (4.9.0) + - PetstoreClient (1.0.0): + - Alamofire (~> 4.9.0) - RxSwift (~> 4.0) - - RxAtomic (4.4.0) - - RxSwift (4.4.0): - - RxAtomic (~> 4.4) + - RxSwift (4.5.0) DEPENDENCIES: - PetstoreClient (from `../`) @@ -13,7 +11,6 @@ DEPENDENCIES: SPEC REPOS: https://github.com/cocoapods/specs.git: - Alamofire - - RxAtomic - RxSwift EXTERNAL SOURCES: @@ -21,11 +18,10 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Alamofire: c7287b6e5d7da964a70935e5db17046b7fde6568 - PetstoreClient: 80be9a47f05232f2d10af7e18eedd089e09676a1 - RxAtomic: eacf60db868c96bfd63320e28619fe29c179656f - RxSwift: 5976ecd04fc2fefd648827c23de5e11157faa973 + Alamofire: afc3e7c6db61476cb45cdd23fed06bad03bbc321 + PetstoreClient: 432f1430feb6f893260645040aa967411fea06d9 + RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575 PODFILE CHECKSUM: cedb3058b02f4776d7c31f6d92ae2f674fdf424d -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj index 014854fad2..32601008ce 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Pods.xcodeproj/project.pbxproj @@ -7,1240 +7,1220 @@ objects = { /* Begin PBXBuildFile section */ - 013DB2850F82193F90FEADC118F88952 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34F426BAC76F5AB75C76CED6AED8CEDD /* ObserverBase.swift */; }; - 0146B75CE3524B51126D537A62B1C9ED /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = BBF526890A2DCF73707BD12E37C773FE /* Producer.swift */; }; - 0283D712F6B9A4B8C9F6276C9306148B /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD06CCCAF7E011CE929AA102BE4ADD5B /* Zip.swift */; }; - 030CBF901383D6AF32FD4DE0F355DB68 /* ObservableType+PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04605CEDAF236CB0AFA904971654F957 /* ObservableType+PrimitiveSequence.swift */; }; - 039EC6F1278A169BA4ECB24D190CF3A1 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */; }; - 0484D620BC8C2AD729AAE2CC692338E3 /* RxAtomic.c in Sources */ = {isa = PBXBuildFile; fileRef = F91A5F83D79D90843B8E0DF27F74DC94 /* RxAtomic.c */; }; - 051AF78B3F15564896626F1D12AB1122 /* RxAtomic.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A4396561FA55B095E5EC0AE59830FEA9 /* RxAtomic.framework */; }; - 0608CF373888968B4435E7F69B66029C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */; }; - 063E2A92EA8D52DF1DE2B29A80271858 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */; }; - 09622457315D763AFE075B3B4FF52B1F /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = B70A72E268366835E7762937B2D551B9 /* Scan.swift */; }; - 0AF6C284BCEF370CEEA0B32ABA03BD6E /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5A46D45023C6CBF06AA36844D59C59E /* User.swift */; }; - 0BF450E11E04B522316037A2BEF4C650 /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDDF69070AD2DA47959FDA346CBEF596 /* StartWith.swift */; }; - 0D6A6CB14BC8B2B782C7B866689F68A7 /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = C78EABFE61E6B1A811A930550037EC14 /* DisposeBase.swift */; }; - 0DD4712404180F6AA44D95A8F011DA4D /* Dematerialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80056B2FADCC6463FB6BFF5BAE0261A3 /* Dematerialize.swift */; }; - 0DDD788C87AB949A7BD8BD05557375D0 /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2879FC02B20D7B09076FB0399EB95961 /* BehaviorSubject.swift */; }; - 1033EBD7E32CA94C268353207D634329 /* ObservableType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 269E2D254449F06B4427ABB8959C4384 /* ObservableType+Extensions.swift */; }; - 10A763FDB7A7746154D1342AAFFEFAD2 /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = 853B1DEAC65B508D52AFCDBE17F443A7 /* Deferred.swift */; }; - 10E13DD6377EA6AE22AA9F62042C4551 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EB4448FE1CEBDAA5ECDE918236531759 /* Alamofire.framework */; }; - 11644D3EE18091D46C65EC0888C01502 /* DispatchQueueConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DEA75B4FD07880DA0BD3BAA4C8C1B6B /* DispatchQueueConfiguration.swift */; }; - 11DFFFA47EB0FC2A1D73E1CEB3EAFE16 /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EE2EAE0E0573E1277A1F494432D3A97 /* RecursiveScheduler.swift */; }; - 129F0B1A4531FC8C4D549D3CFFF758A6 /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = 203B806BED48E16E8E6A01F6FD42D99A /* Window.swift */; }; - 12B43B615CB18E90EDB8274FA49E4FCF /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4118FB943A92CA221F1FF8C2113EE538 /* TakeUntil.swift */; }; - 12CBD1988F665F28F3D80740FF449666 /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */; }; - 132666F268053778C29610AC22867893 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C22EA8C501403D3F67350E95C9B1F6F /* Never.swift */; }; - 1335428664399C31DBC453454DDA723B /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 059DBF7FC714D974D0E8FE47295F9003 /* Buffer.swift */; }; - 14606EBF983BE6C7FE302CF2B20D2177 /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8634A05E1ECEC8181FCC1E88C9CF99BE /* ConcurrentDispatchQueueScheduler.swift */; }; - 148A154D1A0B200063DDB18111CEA34C /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97ED6EBFC1385B7F45250F5C2F5F1AC2 /* ConnectableObservableType.swift */; }; - 148E8EBD2BB122855F96D3EDDDBF20D9 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 595FA08B722A0112ECDC421BEDA32661 /* Sequence.swift */; }; - 15A577EC90B78959B86446B6118C5FA0 /* Pods-SwaggerClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 15FADB26A5DF91EE568A5647C6716E19 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */; }; - 18DD6AFF35888E3ECA9C6E2853DF5428 /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50412DC769ED9F64828FBE62B247E46B /* ScheduledItemType.swift */; }; - 1AADA05760DE21D376B453AB5DA655BA /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95191617864DB139A0C0C832781CCFA2 /* BooleanDisposable.swift */; }; - 1C5F1B9736A008844CF1341220E89DBE /* GroupedObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19FA426826F2F8F726C573ACF0817668 /* GroupedObservable.swift */; }; - 1D4D29A8A4934370F49B03991362EEB5 /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 344023438E0281AD484A1216A2F2721C /* SwiftSupport.swift */; }; - 1DFA14CF1BCF3A4C31265BC914F43D21 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */; }; - 1F4179D3C546FCD0CF2FA9053FA1CC50 /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E9223D32E743F17BB8DF468A29505B6 /* CombineLatest+arity.swift */; }; - 1FC3FD39157C2FFFF3869A1300730086 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 580504178F461251A7570D0DE2C3F50A /* SessionDelegate.swift */; }; - 1FC4C8207BE1EBEA74F6F5FF746DC5C6 /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */; }; - 1FF190CCC3758E19D3388BCA03179D20 /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE89AF9B68664214AC9CCD4C5BF44558 /* AnonymousObserver.swift */; }; - 21194C05C4402A6705F71F42830846BE /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = A197C662760E45CE7A0D1261B431FDFB /* Rx.swift */; }; - 21B74324A15F880F0E9B99BEEC66CC95 /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */; }; - 268FD0EE537DEBE0D9F92DB20C6D6A24 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92D7249D4FDF4529B8F5604A897878A3 /* Sample.swift */; }; - 26A1B2993D2A861B39E7C1AA5E89761C /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */; }; - 26E5D8CA29B483184BB2A73131D6432A /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */; }; - 26FD11F9029E65F115E29023363188E5 /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 20647CB1FC37203D15FA7D63080C9492 /* AnonymousDisposable.swift */; }; - 27D2B6B79C38364E74A55886B9261654 /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99DF44C1F5C22BD3DA5F4F76B96327FB /* SynchronizedOnType.swift */; }; - 297B86622D9CF6E67CD5D4954CE65E7A /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 82541D79BF1E3D4A91CC961E0BBC1FC0 /* CompositeDisposable.swift */; }; - 2A403DCD3CC11486A1FEAA4E0F9DC0A4 /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */; }; - 2CFBC0A036495CCCA95AE01FB09864E9 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = E286E47141F7238BA67134C06C8A3B41 /* AsyncLock.swift */; }; - 2D62F48BDAA56B49FA1DEB8DCA1DA096 /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E49D6CF4C660489250F96B8BB46C98F /* SubscribeOn.swift */; }; - 2EE71B61AC1C9D5D401223757FF9D4C0 /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */; }; - 30BFAF34C5C1A69C4172B7F2A95C6F2B /* RxAtomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 184177FFE14520003E3576223CB74A9F /* RxAtomic.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3209FAC182FC197431320F1591A055A2 /* Disposables.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75EB72DAFB1A6AB83CABF90D5ACA4CEE /* Disposables.swift */; }; - 32251AF8DA33F78531BE04D9AC6704E2 /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C3F47901F3DBFEAA0E0E36FAE700C41 /* ScheduledItem.swift */; }; - 340747EB36CF211B3BEBB2BBA5F40A7C /* Enumerated.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6C1F5DFD70877790B3B7DC3734ADE96 /* Enumerated.swift */; }; - 355D2E6B82C5E6DE5F4B0AD537565330 /* RxAtomic-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B53CBEA40E998EB056F37F72D27CD7E9 /* RxAtomic-dummy.m */; }; - 365DEE089823FAAFFD2140466F5E310E /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4810EBF55051A5DC31D543402ABA077 /* ToArray.swift */; }; - 36FF8853CB34A9297AFAA8F5F7456324 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70A9F683E1A05B6288DD8719F0739108 /* TaskDelegate.swift */; }; - 37F6CB2B0A8F480BD0BE8BA83D8A3C12 /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */; }; - 3903B696EF29B1BEA6E2BC437BCCC436 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */; }; - 3983160DBABC5B4E3483A0BD93A26E28 /* AsyncSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = F74D23F29997DBC2D8D3E877067A6575 /* AsyncSubject.swift */; }; - 39E90DA1F75F5A2A16061C05C0569F9C /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8E1B9393D5148667FDA9BA056A3BC93 /* Using.swift */; }; - 3B2DE3218DDE8E3E25C0A1E078D0FB55 /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = C7646978EDF8E84559E93D30EFE59CF1 /* Repeat.swift */; }; - 3B56CFFDE447D5B50D73ACE610B41F40 /* RxAtomic.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A4396561FA55B095E5EC0AE59830FEA9 /* RxAtomic.framework */; }; - 3B8C404F350199F20BEDC5AE42332B3A /* Debounce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 94B3FC47FE1246D199ED30F899FEAE38 /* Debounce.swift */; }; - 3C81FA3011CE7051D287938B6D977AC8 /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = E35A05D580524329B8465803EEDC83E1 /* Throttle.swift */; }; - 3CF5B12D642E2C90D3D6AB3CDE5A1D6E /* Pods-SwaggerClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */; }; - 3EB221D5C1E0328DD80D8501F9E8E1C4 /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 624138DD4F5061C01B2B15E6DEE6A5B1 /* ScheduledDisposable.swift */; }; - 3EF4703AA1AD7A5ED2A04E23B4C865C6 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = C472BBCF4E7828F9351794304E35DAB5 /* Disposable.swift */; }; - 3F371F9A7A9FB4028B576DDF0DA44FE0 /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */; }; - 3F4043F6109E4CE3F42A2997E79FCC96 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C25D45279653382D5B7C143EE61BD61 /* Platform.Darwin.swift */; }; - 3F600BE5B3003E7635C8C4D4C85767D0 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */; }; - 41A827A40D5743C332D9DE3D8E805862 /* Create.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23207944E9E16FCACB1CA522868778B3 /* Create.swift */; }; - 42099F24E4A52FC4B5D5F557D4E16437 /* First.swift in Sources */ = {isa = PBXBuildFile; fileRef = 509B43E693D48C812F2574A086894CCC /* First.swift */; }; - 43C820720A5BADD5DD1E3AA77D30BDEE /* SwitchIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 48E018DEF19AB592A9B6EE607ED30A4E /* SwitchIfEmpty.swift */; }; - 44E7DA0E238022FDAE9B9F3346F76FB0 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61179CE650778B2A5C39664F0A792B5C /* List.swift */; }; - 454F3F304AF2CC713C7E48416A77D4FA /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = D17862ECB73D530AB2CB1BB84C30B7FB /* Switch.swift */; }; - 463CE8745711D290BEB8A79FA101748A /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9554645C8D016F765E3E070442DCA090 /* Just.swift */; }; - 48CC5ABE93E87E4005DA04F1CA8830FE /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 131CA1CBC6FAAC57269CC30CE2AB0D26 /* TakeLast.swift */; }; - 49611958502E5E00444B8ABF729BEAEB /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = E629D35B39A4F52AB475A7D50109FC01 /* InvocableScheduledItem.swift */; }; - 497826CA0280319C8380AA62436AB76E /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */; }; - 4A68EB7F4046084B7100774BC38E219B /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */; }; - 4A72447A210ADE62A32194373F0D0626 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */; }; - 4A7D05F8C3F86DEDFD7A3A7B43149A21 /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = E23B1106B6F189797A626CB356652BD4 /* AddRef.swift */; }; - 4C91B9CE609BADAA22456D9BB9D0B9DE /* AtomicInt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55063AD99CB05F46E7EB2DEC30F33A51 /* AtomicInt.swift */; }; - 4E1A913EFB404FB11524718FF0298EFE /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 711A7DC644297549EE347B43C7C919C9 /* Alamofire.swift */; }; - 4E8A0DCF997E91EF5EBDC08FDA28F1C7 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */; }; - 4FAB5CC1C5D3E5A1E9743BB3443638E9 /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = E77D2C7C8AEF3CF4649CCFE47F429AFC /* TakeWhile.swift */; }; - 4FFDDB36F217233CD33DFF8331C1154D /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */; }; - 500C8EDA60C07B0F127C7FC385E17D38 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2378947E408CB33F56CD4DF893741BEF /* Notifications.swift */; }; - 501E6D126A7E169369DC587C75FE125A /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3E923EDEA040DBF60D6CEBF40AA3BF72 /* RetryWhen.swift */; }; - 50864920EF02861F51E827E90C2D2B06 /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35E207B501AF34A6ECAD053D8073CC33 /* InvocableType.swift */; }; - 512F26D1DCFE54340A28AAA8C5FABB97 /* Pods-SwaggerClientTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */; }; - 519C1315C8F9116DDE1BB14D78541A97 /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */; }; - 51C4FD39BC09E9F6678D44BEA1D29C87 /* GroupBy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16FCB507A3FA489F663DC7D002325839 /* GroupBy.swift */; }; - 52237C35642089F77DD4D723CEB25737 /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEDDCD78284D4EB9977F3125AD411A /* Response.swift */; }; - 5273CBDA0FCEA86D61B0E3231614A74C /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 768BDC36A0B3580E763F0128E70D1829 /* MainScheduler.swift */; }; - 55437DEE76CF3BAB5464F78B0E35F825 /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDB3743CD667A907E68D4B1C8BA7F8C2 /* Reduce.swift */; }; - 564033501DDBF4D9432C1DFCF828E1E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */; }; - 567DF07E626F41ECA58199149168761D /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = 90F8739B7B5D5F8F000FEC5FDAFD30B3 /* SingleAsync.swift */; }; - 583DA8A0681FED458B72B406CB61EFE1 /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD79BDCFFE2B03FF4DE1424A60893B1D /* Zip+arity.swift */; }; - 58A9719584AFA2D108D9E5C585A79329 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26C36785784D4AC1D25E99C0A048A97C /* Validation.swift */; }; - 5A829A2D5C43A141A3D4310FC124DD7A /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = E598558BB8A967463CCF9C52AB9B68D8 /* Generate.swift */; }; - 5BB9B7CDD8D6CF0FFEB772CB9B5AA862 /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */; }; - 5E0A39C37A88F2BFB6E98E2BCA797E56 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F08EEB12871EA5AFDB544B0D778DED4 /* InfiniteSequence.swift */; }; - 5E177EB6F5B70100A26CF5CD1F7B68D7 /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7518B49375F6BEBC5FFED32DEC4660B2 /* SchedulerServices+Emulation.swift */; }; - 5EE5FED83B90A606A763CF1114D1D6FB /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E5E097E4FB6F674BDBA24E98BEDF0A4 /* ResponseSerialization.swift */; }; - 60D793C9306540438AA07246F4AAC034 /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1887B771AE7974C7BD30EC913AAB1F46 /* Errors.swift */; }; - 616F0481C475C488192EF999DFC00B7C /* Pods-SwaggerClientTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 61F86FFB62D4CB53F5E2E1BB283B9ACA /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */; }; - 6425507E087578FCF271565957E12AC3 /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2AECDE54548F3B4943031609A3A8E2EF /* Take.swift */; }; - 69488575B7E5268240C20D8DA5894BB8 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */; }; - 697E831FE5AEA155D9C5ACE0EDEF1ABD /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA2852020F927816CCDE72C6511D2E4F /* ConcurrentMainScheduler.swift */; }; - 6B4C4B7AB9BD3409A68018C1A61FF2A3 /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E6241ED96E3ACCAE254FAB0D63F1A80 /* SynchronizedUnsubscribeType.swift */; }; - 6BEA14EC335E07C7063CD1383C0C443C /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1FDBDA49809804394F3C90F24F2A0CC /* ServerTrustPolicy.swift */; }; - 6C6782CFB4088EC63E2662F72A7820DF /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */; }; - 6C7E212CD42188A60152C72901A70904 /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = A20D49043407895824639AB379667392 /* DispatchQueue+Extensions.swift */; }; - 6D05D446104142FDC0672848BC893104 /* AsMaybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DEE4E1952A5226EDB3DA63F63148B60 /* AsMaybe.swift */; }; - 6E703FCCE1AA231FB1E822B85B9B742C /* Reactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EE9115ABE1145C4C677B9E280C9832A /* Reactive.swift */; }; - 7068E8A7DDC1424EE8F24BC77E8746F4 /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6EEA2FD394D505A6814010D481538152 /* SessionManager.swift */; }; - 707C8508E41EC1FCBF81FC4FF23437DD /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 038F630DC52C48069A1F8E546BE05C8E /* ObservableType.swift */; }; - 729E034C173EE08DCC5D23FBA99CBF8E /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0CAC2AAADCE458372519A75B5902D3F3 /* RxSwift.framework */; }; - 72D95748C4174CDA6DA0AEC92DDDECBE /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE5F7957B466E1AE0A4FDC0DC040EBC3 /* Merge.swift */; }; - 74136D9CEFC52A2F4459AE5585464825 /* VirtualTimeConverterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C35FA7574B8867FB7DA037AB7C30F82B /* VirtualTimeConverterType.swift */; }; - 750AF8727A1976E1FD14ED48443D7423 /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 666BA9077B17F008A3616E07A5BD7FD9 /* SchedulerType.swift */; }; - 756DFF4FD4A589E117B2143FB406196E /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = FECB278917C7651872C44FB1C0B6E620 /* Category.swift */; }; - 78399BE32C50D8FF064F6298E6C7699E /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = ABD562C4B8846212921BC7D057BB6BE0 /* DistinctUntilChanged.swift */; }; - 78CF3D8B0AC6F1D0154A99610DC8C44F /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */; }; - 796177DE2762F24DAC16A709FD954838 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 647C9A78AC3A206D422DCCE925421541 /* ParameterEncoding.swift */; }; - 798E0471934CCF6DB301C6E02A285A8E /* Timeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 389343EA0AE116BE5BED01846916909C /* Timeout.swift */; }; - 7CF559F5B2A67CD63E0F2CC9122DF2ED /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */; }; - 7EA72ED73B366EED4B19B9647BC7F71A /* Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E9155E212288F3284BA55C2BA5AECE1 /* Single.swift */; }; - 807F1B88BB983EAAF2B2A79A2ACBB876 /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1CD32B133CCF26ABE9A87E985AFF5073 /* CurrentThreadScheduler.swift */; }; - 80E7A60F5AD0C9388766B9790C0BE6C8 /* PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAE416C03B1C99A9468CF0725D1141B4 /* PrimitiveSequence.swift */; }; - 82B33DBB671DF849DB888C065B98D126 /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5D6D06373E5E9E34438E51D9A39CA190 /* Sink.swift */; }; - 850DC16052FC3F94BFD6B6A651670C64 /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = 979D8AD838652BF7D9424E2151C79C74 /* WithLatestFrom.swift */; }; - 85A462CCE879F100AEB4DD342932C4BE /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7893AB4C41FD80660DDF4F3B33879B4 /* DelaySubscription.swift */; }; - 8A92D7F8886E2D18D6AF0FC6F7DCD309 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */; }; - 8ACF66ED822914609BBB80AD02302976 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6895FB2CB932892FC0A63C5A2ED5707 /* Skip.swift */; }; - 8BF2A041107229EC4532CCABF8CA1D06 /* HistoricalSchedulerTimeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = DC67F6C45063E440FD82384FFC8B9ABB /* HistoricalSchedulerTimeConverter.swift */; }; - 8C8F366B05C243DA8281FCBFD152A02B /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = 405921FE252DC3DC1087DA4217236D81 /* Name.swift */; }; - 8CA17309A95A2E22B81E26797B439749 /* ShareReplayScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF0507F26AA2F7F71DA23B7B1064FEBE /* ShareReplayScope.swift */; }; - 8D1E66FE754A575BFFD9E0A4AD2E5ACC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */; }; - 8DF4DA3D7E2FE042B8A2F8182728932A /* PetstoreClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */; }; - 8E3CC4B5F49FF54C63890D88BDAC40B2 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */; }; - 8F60FDD59D80EF31DAD444123956F421 /* DefaultIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBD795757F40658014CE4D2170BC56EF /* DefaultIfEmpty.swift */; }; - 903140E2F3A107686E1FA71330050B1F /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 58E9954FF8B8BEA966C88CF2F422F6DC /* OperationQueueScheduler.swift */; }; - 92126385254415D2CF540551F792E736 /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2F7E604423932C0DBEDB4D0822054D76 /* ObserverType.swift */; }; - 93229D5F864DE1703338611607267D41 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */; }; - 94D9B2D58AAAF42B523342EE937691AC /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98D8CFD3F0776AAA45863EE9A39E8C7F /* PublishSubject.swift */; }; - 95AF062CA1A5BA4AA942E82275CA4F7F /* String+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEFF25499925E3BFAD0124014F092C1D /* String+Rx.swift */; }; - 965DACF3DC02857ECBE66C5CBA3DA5D4 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = B205625D2532E00F088ECF926CF8A092 /* Request.swift */; }; - 9B5973FB04D90CD0DC0271D27F12B8C8 /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */; }; - 9BCB0B3B2A53534CB7DAFD75DAFD5583 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */; }; - 9BF47D0A7224A2A089190E7C24D59819 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3696F7BCAB005C74FC3BCB2114D5C50E /* CombineLatest.swift */; }; - 9C1D6B37A40ED079BD8DE4D2683E9B97 /* PrimitiveSequence+Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19C351980C5D85C30F921072A232E57D /* PrimitiveSequence+Zip+arity.swift */; }; - 9D852C32BFB6BF6429F1EA718BC1830A /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */; }; - 9DCCDE9ECC5D31698A5D3306BD22625A /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = 92BDA682FD29ED3470519B761C6BCBEE /* Platform.Linux.swift */; }; - 9E2D7D98F026CCB495E64C5F12136B75 /* RxAtomic-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 19DBB8C78D4BD529E021E8E99D498688 /* RxAtomic-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9E7C19D0EEA95AA2F8FF547C99F9B4DB /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 085A00CA43A3509F57BF6CED34C6D9E4 /* BinaryDisposable.swift */; }; - 9EF18E4282EFDECF6B34C722D5585ED0 /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4A93121BD06BC69BFC4C9B3F04264CD /* Concat.swift */; }; - A28C1F35FCF54C8070517C55E7AE3F9B /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8417EB1EB14EA99CECC645D5677F1E /* ObserveOn.swift */; }; - A2E9215E3DF26E8544CD20BB693B3FDB /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 893DB6855446CF668CF3AA60A8AD4D2B /* SynchronizedDisposeType.swift */; }; - A41C992FF4912C0636FA07AB2729DF13 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D04B7FD634E28BF38A3C24C8F8C770A /* SkipWhile.swift */; }; - A4A3079C6EBF87A0D8C98307CB3BDB31 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */; }; - A561D4F5A1E2A32DB6178CBB202660B4 /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C27D9343F302A1B99DC2A579510EED3 /* ImmediateSchedulerType.swift */; }; - A5B7352505619D73BBF71EEEC04318E0 /* CombineLatest+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = D3F2F6C7ABD293E38CE490E2AFC2822F /* CombineLatest+Collection.swift */; }; - A5F028B3699E37E40F5F92B3353E025B /* VirtualTimeScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84F997FBAA725D0C39C8E6F5A1657602 /* VirtualTimeScheduler.swift */; }; - A8A6C36F665184C7E099B0F6433D95A7 /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D2440DF1256E6178508CDE576FF05C58 /* RxSwift-dummy.m */; }; - AAFD230DF4044FE213A79DDE4DA23C87 /* RxMutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84B3B20977736165D7000F5156294624 /* RxMutableBox.swift */; }; - AB9DBCF4447B95B6F20FE64DB00D6C04 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */; }; - ABF86C082460A1A7E26AED80A840B466 /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = BECB892EE935A9B666E0EF1449C295B1 /* Lock.swift */; }; - AD6B2AA4E119DCA379B4FED80E545F71 /* HistoricalScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D51034C456421189B947B1C251D8CDF /* HistoricalScheduler.swift */; }; - B015A9988E77A5E1EFD2B248F73F1C0D /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = EBDDAF28A70D5CE1FBE34F18AB303360 /* Deprecated.swift */; }; - B333DB44801FDABCF2511B0DDCF4FB4B /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */; }; - B384033590B446C258AE1B5C72FEE827 /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FD522C3593066E8FBFEA318EE72E57B /* Amb.swift */; }; - B39731701507A597286042B68AC5C4E6 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 53CAD5865C002ED6919244602DE10F0E /* Bag.swift */; }; - B424F524BBBE34E685129945993809A8 /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D706CF6090DAA45F9CC0DCA9BDD778C /* Timeline.swift */; }; - B4A588D10D034D0DDBDCC6345CD36079 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0546BFF49DC081D03AE9A68528BA62F4 /* Timer.swift */; }; - B5A6E3F915F3916242C5538359FD682F /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 99F9BCF8CA1D20373C9E38F922ED13BC /* ElementAt.swift */; }; - B5D65E06919225071F68A38471267787 /* Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = B9FF28D5141A09EC43E5751AFCFF6F5C /* Delay.swift */; }; - B67933873CB386AAB05A93770866D437 /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */; }; - B77705737566AE83ED7E448923D7FA60 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288E9E93B7DCD76C361FD709245E9AF2 /* NetworkReachabilityManager.swift */; }; - B9E60BDF09C1AE82E2C4391A6D79AF57 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACF69EF0FF10DA3A1C1A5EB8232E82D9 /* SubscriptionDisposable.swift */; }; - BA586585C8C3B9DAE832259F504C21C1 /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8BD31C2B49795A4E8219E5769978EFA2 /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BB8BAAC7A1B93A9F89E3819EC4FD32DC /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C5558D116FB2BC6A4BED63C5DB18A8F /* Catch.swift */; }; - BC380E4661D21D0389114975AC1198F5 /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 806122C519E53A3467A591B651CABF99 /* LockOwnerType.swift */; }; - BCFF7A9EA8B501BF545677C98E156592 /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */; }; - BD5D388F9FE7248765A3510CBC06A96C /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */; }; - BE4BA1EDE444A770F834605F4B65348E /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 664DFCC8F8B25AC2C0F124826FDC13DD /* AFError.swift */; }; - BEF08C555FE50292E7A05A42E9F8DA9E /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4CB86939084A7653D7D2872DB15C566 /* ObservableConvertibleType.swift */; }; - BF6634022157EC26D3DC2331D6FB6F78 /* Bag+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = DFBEC495F16B07CA34642DC026B7CA72 /* Bag+Rx.swift */; }; - C283070A42B09AE770C2A040169A1F0B /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A0B8FCFE917E6C71AF5210B83924797 /* Filter.swift */; }; - C3BDB66594E4B4FA48D7EBC19BFBFE02 /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6034F0885F89AFC531550769745DECD8 /* DeprecationWarner.swift */; }; - C57512A065C340D84D21C730FA2DFDF0 /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3BD6C15E036716B7ACD83CF23ED40B0D /* SerialDispatchQueueScheduler.swift */; }; - C79893EA5CCDB7D7D7B8B1B0BDA9EB13 /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CC77AE15F0D8D133134723D87D8A800 /* RefCountDisposable.swift */; }; - C84ED8C643071EC0FABFFE09BA285E54 /* Maybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4737B0E6316A9DD6C7C94D847579EDEA /* Maybe.swift */; }; - C927CB70E4A73F5F1D845A1D0D8512D4 /* AsSingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32F06CB55D217E32118C360DB7422296 /* AsSingle.swift */; }; - C9E85B374CC498B5C6EAFEBA2487ADFD /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AF07A78209C44E970398E68C87F5A80 /* SubjectType.swift */; }; - CA12DE0107A98FB49C87DBB2A145BBD6 /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = E32BC69D1BB4881AFA1EE22349A39941 /* SkipUntil.swift */; }; - CB2FA2F8BD9544C3B4952AA6ED6A9FF4 /* Zip+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 08ACF082BFEB70DAD261BE2F71B5CD64 /* Zip+Collection.swift */; }; - CC31DE8E8743505E9EAC9C3C21822415 /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */; }; - CE672B66B82681C0DF2584A2FB57C99B /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 535B11DEA8AFE06F6E6BDCF34B53BAAF /* SingleAssignmentDisposable.swift */; }; - CE8DEDC385CC807CFB17A8082850327E /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3F3054BB754BEE6F75BBBDF61EA0802 /* Cancelable.swift */; }; - D1DC173B9736996A4A5D6E1E2D7902E8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */; }; - D1EBBAE2435C9C4A914968488C4E18D3 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */; }; - D4AF32A34C0F22C49DFE3BCE5B523BB0 /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C0EB5B01F72A9A45B1BA302716832A /* DisposeBag.swift */; }; - D4C3899574E9D5DF5E5DA52310560BCC /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FBB1A41E4532C7CC2D490550B06FF19 /* Alamofire-dummy.m */; }; - D6A388C40CF2E7741F9A2C745C5552AA /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C596DBBDDBCD371C56BAB928044635E /* Map.swift */; }; - D75852392AED909EB75BF0A6156FA43B /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C1F89D6A94419869454B03267239472 /* RecursiveLock.swift */; }; - D7AEEB1783719CB0BD171B2693869C63 /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */; }; - D8E090B347D7CE998D18319EBFBB3161 /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0123809377F5AEB8CF2EFCEE389FE0DB /* Range.swift */; }; - D9E70B93C4C5E5FF62E5E21C98F23138 /* Completable+AndThen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9EBB016CF66B6C0BB04174E71EAF2638 /* Completable+AndThen.swift */; }; - DBDCA3856DA322E0297F0966F6715892 /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E81119576103DF2C734DA31844EAD07 /* NopDisposable.swift */; }; - DBE6E2E4D205545E7988CFA5057C31D6 /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4D16ACC221A5E32700B52D639F2F8AC5 /* DispatchQueue+Alamofire.swift */; }; - DCD3FB0D8188B4809A0820011A57250D /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F7F5C940BBCAC29EB96D076E339B4A6 /* Do.swift */; }; - DCE5419BF0E3F199B9184269A5178DAA /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66F490B014DB4E82D35F6FF43A180D74 /* Event.swift */; }; - DD6A6160BFD2598E4CF956C6211E453A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */; }; - DE09A8DA331ECA2169C58CD890D3AF30 /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35F5F602EEFB1DFE432441F0BB1FBF8E /* TailRecursiveSink.swift */; }; - DE61CB26C1654A37AEC20DEACA476CE1 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */; }; - DEA86420DF47291F5419127CC2F01506 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = D181D395BCD88FFF4CDF8C79D9029352 /* Multicast.swift */; }; - E2277D048A09EB5F2564C93185571E56 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA9014E4D9949575D32FE4D360BA8228 /* Queue.swift */; }; - EB54421D7F05F23E9188FEE9182C1FE0 /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 058BD56F330E63AFB81EAE4168EAB76D /* ReplaySubject.swift */; }; - EEE40D82638633121EF5C84E0F0D7817 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96D19D94AD216E43916745FC5D1BF980 /* Optional.swift */; }; - EF1461221681BCA12A4147900A704727 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = D502F97561E6B388CF419FFF52567776 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F0E28F3FE7B2A29B5D0954D7CA5EEECA /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */; }; - F1B72C33E5FB22CA170DCC975687894C /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E1A1D9EB066CE8BABA80EDA1A24A2D6 /* Error.swift */; }; - F2B3FD61773363651AC683CEB476A76B /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3504B27DF9870928A2DC3133ECE8F972 /* AnyObserver.swift */; }; - F3647DA72F3DCA2C41FA1D429C261BA4 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4B29F771737024D5D0647D09CAE40AE /* Observable.swift */; }; - F4E9209159CA94A72CA6924365664DDE /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */; }; - F664329866C83D013AF45E78FFFC9B42 /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = BABDB7EECAD68CE6713731AF29AE334E /* Debug.swift */; }; - F7AD193CB01ABC3E84EF0BDB20CD1B31 /* Materialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = AADF426E4B27104D1C0E8E12CB955499 /* Materialize.swift */; }; - F7C02B8AB1876ABEAAE26C07991BF08E /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = C4A0C6506BBE76189174FFF1C0ECCFB4 /* Empty.swift */; }; - F9EA61D484CC15FDDAB0D8C0D26D7949 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50944B5CEDCB1CD89E302F0EC2E91192 /* Result.swift */; }; - FA673EEDB54FD988AC5D47E84E2D7621 /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14ECE86EF7E19B1B7E97C070CC6BF34A /* SerialDisposable.swift */; }; - FB1641B33D3463B2335BB1C9D6C4B14F /* PetstoreClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - FB59FCD21E86D1686AEAA9798D3E58CD /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7898EEC6A565DE133438C48988478954 /* Extensions.swift */; }; - FB9954892A4A9CD17F888A19A29F73B0 /* Completable.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5FDE71DA7D116F7D2A3A903BFCC22DE /* Completable.swift */; }; - FBCCF939E4DF7C4E47E51815ACF2F2FD /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */; }; - FDFFF94B381FD8EBF0C5849314E1BAED /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D207C347E5A099CD149D335308DC227 /* PriorityQueue.swift */; }; - FF598390268227CA1A1C8F7B15393CDB /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */; }; - FF9C7BC64DB23D2CED48197DE67F0335 /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F147B75837013A90F74D3A6C6520459 /* MultipartFormData.swift */; }; + 00B92B3A8271BE0D78B2C346A45054EB /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2C8922E4E1E3C67279458D892BC37AD /* Configuration.swift */; }; + 00CD0D028A7C7FAD19004F30BF905FFA /* Event.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14D946B2CD75D612D3AE3F72880C7FF3 /* Event.swift */; }; + 00EA7C74AF31550D150A68EC1DB4885A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */; }; + 018C6F5369B9ECCE29BA2F43D6C12385 /* DogAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6DFB261890C61E9C5ED205C350432C6 /* DogAllOf.swift */; }; + 01955339496D9F45BD537BEB03B04280 /* Range.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46285A50499BCD564104AE4AD8489A48 /* Range.swift */; }; + 01BBC91167CEED10419EC29FB25A84B4 /* PetAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C12C50651DC7C8FE70BC93359C255DF /* PetAPI.swift */; }; + 024712F363DB19CB17FD9F36B489D43F /* PriorityQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7C8CB70C6C6B09D4BB90057C9BA7EEC2 /* PriorityQueue.swift */; }; + 02D5452095EF961AABF5EC9484D6700F /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 110A71E71814850BBCD440AF198317DF /* Alamofire.framework */; }; + 04BCDBAEB221E44EBC35B35966D5329C /* First.swift in Sources */ = {isa = PBXBuildFile; fileRef = B29AE35CD92E0CB3A64D2E581DAD2CB4 /* First.swift */; }; + 04C06CF0B6C5C73B4CD192D070F21671 /* CompositeDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 410ED99EC03614CF82F7E2CCD4E628AF /* CompositeDisposable.swift */; }; + 04E7491A1A273461D639A352FDF90064 /* SubjectType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5A7024FF197192803FBC9F7CEFD9C87 /* SubjectType.swift */; }; + 059D92B7BBFBEC53E9A3B6E11C5C3B3A /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = D7FBBD15C7EDE32F75E84BF63C4A0093 /* Response.swift */; }; + 068FC2A8666D98716567362F2E0D6845 /* AsyncLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D44154CE37C1B66CDC3D69453887262 /* AsyncLock.swift */; }; + 06F02D2382D5018D765DB0F34C9C276D /* AnonymousDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8ED3568E09862ADC85A6FE650FEC665 /* AnonymousDisposable.swift */; }; + 0A084BBB077AB3863D1500B7E79B3FD4 /* Platform.Darwin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 80EBCAEF4DEEB18B34DC5033FF20ECA8 /* Platform.Darwin.swift */; }; + 0A39AF55285A3A4F7CBABB6D822FA4A3 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = C745F77F676CBAE7E68106481E9DF4B9 /* Alamofire.swift */; }; + 0A426503BF8551A7F24118E4D3133404 /* Multicast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 79A4D30F2478E26FEA80A716FA038512 /* Multicast.swift */; }; + 0AB631DF2E9BC76B8736C9EFF6191C0B /* Pods-SwaggerClientTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0C0D4B80E4F230F6A106A0E94C6A733E /* RecursiveScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = B68A320DEB52A0B2CF5A7DCD714E84D3 /* RecursiveScheduler.swift */; }; + 0C8B09DF05E2E41B7DF054A3514DB945 /* CombineLatest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54212BBF40F065FC93C168C875E2E209 /* CombineLatest.swift */; }; + 0CC204661593617D4DF5240BD993DF4A /* AnyObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AB42A286E75A2848A769570F01DAC24 /* AnyObserver.swift */; }; + 0CF84DB9C3AF68812DF22E3A7B1A5345 /* GroupBy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77CBC56217930F052D637B82D048BA3F /* GroupBy.swift */; }; + 0DC13877F21F72004D7711BF3D7EFA3C /* Cat.swift in Sources */ = {isa = PBXBuildFile; fileRef = D73E4AE40107F9E12D9933657017209A /* Cat.swift */; }; + 0E19118925E2ABE3DFE3392B76937491 /* RxSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2F77FDC4F04FEF422ACDCD587C512559 /* RxSwift-dummy.m */; }; + 0E35C38093091926F74510A897639D32 /* PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B990C87BD5B32BF54E420212C1A52B1 /* PrimitiveSequence.swift */; }; + 0E761CEA33A04DDA594CC7359F820A0B /* CatAllOf.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1C5824ADAF044284DC74D7785926F01 /* CatAllOf.swift */; }; + 10F4BDB750BA6362739BBCFD77AFFC55 /* Disposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC35E81B52795E7CB75A8D1E9687BF16 /* Disposable.swift */; }; + 1316C19AE6BD02B2D67A610EB8124F48 /* SingleAssignmentDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = BDE1B1C73CF83B02289A255C14E108C9 /* SingleAssignmentDisposable.swift */; }; + 14A822B7A6821B022899A68D5003C85D /* ClassModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E271F2E357A3F1A972FF120671638B4 /* ClassModel.swift */; }; + 15CC488D9E6EF29B02174A4B036444F1 /* Queue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 60E9C1BF2A5AAD8532B83D587D4B447A /* Queue.swift */; }; + 1624BFF13E6CFADD39065BAFE15CFE5E /* AdditionalPropertiesNumber.swift in Sources */ = {isa = PBXBuildFile; fileRef = C2ABFCCD850DDE628412E12A3A36BC83 /* AdditionalPropertiesNumber.swift */; }; + 16E27971B029CD86CC9ABFBDAF0B50C3 /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 979ECDDE99CE790DA21FE87298107E6B /* Error.swift */; }; + 17DBE97DF7E4655A51189118813169BA /* Using.swift in Sources */ = {isa = PBXBuildFile; fileRef = 459E274832813076884CA4287E491429 /* Using.swift */; }; + 18F3B3ECDFE24B0D2BB6DFB066A7DD4A /* Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFA2A0B903691A7C2293FD13EACB8E3F /* Window.swift */; }; + 1928C38569D41E9A17B2A7053C2737C5 /* Model200Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = BD2133B0A357172D4E12A35C6488638D /* Model200Response.swift */; }; + 1B854BF767678148C17B436F65FEED5C /* SynchronizedOnType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 757C5919A405D111AADAF18AFDDD9D5A /* SynchronizedOnType.swift */; }; + 1BE47AC4C39BCC2AD678B0D94066C3E7 /* ObserveOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 274B9D4CA658622B79DCE0F5E736A061 /* ObserveOn.swift */; }; + 1D29D2ACADF961F69D32B06FA6A09E28 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39AE2AD9A01457ED8AC57D692A5F40AD /* Notifications.swift */; }; + 1FAE4751B8A1A4906CA23B6D14705DD1 /* ObserverBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB54B43833CB03F1D8749CE7C298D3B5 /* ObserverBase.swift */; }; + 20C9165173E84E273472110B783CEF0F /* HistoricalScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BF070C783A6786C9C92AA917E9AC879 /* HistoricalScheduler.swift */; }; + 21EA0909C5162AC1A2F0BEB44161C091 /* ScheduledItemType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9FBF81FDC5C51FD450958591E8EAF6EA /* ScheduledItemType.swift */; }; + 231FF5CEABDC19D5620EF1D250075969 /* DisposeBag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40D138874AFF1185A99996B4180C5AAB /* DisposeBag.swift */; }; + 23F822E146B3F3C63EF430F9ED1EA5B5 /* FakeClassnameTags123API.swift in Sources */ = {isa = PBXBuildFile; fileRef = DF1DD94A10F409B4316DAC2A019FED34 /* FakeClassnameTags123API.swift */; }; + 247F1D441C3FFE1A86775F95FD5C526D /* Generate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8E5B43302C88640C1A05762A037012A /* Generate.swift */; }; + 26BE990BD12DA8BA3E8C11D9BE7A095D /* SynchronizedDisposeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0AF5386FC035BD7FBDA0B02884DE8324 /* SynchronizedDisposeType.swift */; }; + 2832890547C0F2BC47A5ACB24FE1E556 /* NopDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5F4524003B8CAF5944F3FD37875D795 /* NopDisposable.swift */; }; + 28783CBF85DD482E1793B019CD5E056A /* ObservableType+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B6C60D7E233892084DAC43F60C64C60 /* ObservableType+Extensions.swift */; }; + 28BC7B80549B8F4B21578D07D2D853AC /* TailRecursiveSink.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19A8FEF66E4D85F1B100E0AD77AC60B1 /* TailRecursiveSink.swift */; }; + 2A1C0B23E2CEEE38D4C0133ED988004F /* XmlItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46FC0AD10406C3CE1828C826775E9650 /* XmlItem.swift */; }; + 2C5F3731461E52488C08666B9D752D8E /* WithLatestFrom.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2BC0F91A33991D668BEC3583CF46BAB /* WithLatestFrom.swift */; }; + 2C75624448C07245398F78A8E8F76C6C /* SerialDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF92C4858F759EABBDDB45D32BE8DDC2 /* SerialDispatchQueueScheduler.swift */; }; + 2DE581AFC0E6541F53D79C9CF5BA0252 /* SchedulerServices+Emulation.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9FDC7E72AC896C5D9031E49B0372D06 /* SchedulerServices+Emulation.swift */; }; + 2E2C54FE54D4ED7D30B9CFD7F5CE26ED /* DispatchQueue+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 679C1F8FF956155F71A31E63595C9AB9 /* DispatchQueue+Extensions.swift */; }; + 2F16BB60B2A862F9988A1C1D1DB25326 /* RefCountDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1555637002FBEDE13C94AEA5F61C763B /* RefCountDisposable.swift */; }; + 2F73B36CB2A0C051C5FF6865EC7505A8 /* Observable.swift in Sources */ = {isa = PBXBuildFile; fileRef = DBD0EFE5168A6526DB06F4A6800CF584 /* Observable.swift */; }; + 30769345FEC859A4DA77F0CBBBFF3890 /* AdditionalPropertiesArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D53702B1DFE795F10CD9F02ED7196FB /* AdditionalPropertiesArray.swift */; }; + 32C3F28679808D14D41E5CE764B18D68 /* HistoricalSchedulerTimeConverter.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB9FF8F32D5D6FC16033AF34AC1408FD /* HistoricalSchedulerTimeConverter.swift */; }; + 32FC3AD0AB13B89CE579D458841BB17B /* TakeUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0027A132D8BB718973989368CF5E63CF /* TakeUntil.swift */; }; + 3548E9B5F3D2CB1D6CF60A2E5E5B2A32 /* SingleAsync.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED1332D9E071ED0D532F6ACD2AD1AC38 /* SingleAsync.swift */; }; + 355C18EEC82624A06A6CC93965258E33 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 720601B930B8E6FB3B449B0C3EFB451F /* Request.swift */; }; + 367D7C38C9D75A77C7803E9ACE55F939 /* Order.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87ADA33E38CF943875922CB316D2A29A /* Order.swift */; }; + 37BF531FD8F4EF30E68E9A205BDAB096 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CD8220D45545AC2A21A066A562081FF /* Optional.swift */; }; + 38B3FCCBE586F4016F203082690CEE6E /* Lock.swift in Sources */ = {isa = PBXBuildFile; fileRef = C89F6DBCB4EBE505168C934C00DB909D /* Lock.swift */; }; + 3BD1DAFE1F3E6C9E4EB0F2099B6D6FA2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */; }; + 3CB84F06C826903645D046E00A08E94B /* RxSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0FDDD670EFAE8A21A0BD76C684193FAE /* RxSwift.framework */; }; + 3E0749AF6C51BCF0E4A41CF1D6A76FED /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C008FB60F065D079DB1F0C69B60DDEA /* DispatchQueue+Alamofire.swift */; }; + 3E3FA01E3DC9CFFD4C738E922CDFA23C /* CombineLatest+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = D25BFF9CA1B3C8219A5F2A1C064AA6AA /* CombineLatest+arity.swift */; }; + 3E4C76A301104B55E4A601D4E59AF14E /* TakeLast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57C559BAD8B2B8C949DA1C1837C049C6 /* TakeLast.swift */; }; + 3EAF0605A2B6B9A90A06560FAED89BF9 /* Timer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 98C736C5D0850FA27DB5D0E58640C537 /* Timer.swift */; }; + 400710E3FF438CDC18E6D19C8E64E0D0 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */; }; + 40DC18CC960EEC0EE71E945A73F6D7BC /* ObservableType+PrimitiveSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47A00016C4275D6E28A1DD5AD98AC9AE /* ObservableType+PrimitiveSequence.swift */; }; + 411F93A1F501D9CE8A7BB17463F88BF2 /* Do.swift in Sources */ = {isa = PBXBuildFile; fileRef = 45C4BA95A0FC85CD30E5DD59545AF87F /* Do.swift */; }; + 418B6C450B8DFDF393B4EF9D8F2CE920 /* SpecialModelName.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF174B49C2E16DD172055DB12BC37B2F /* SpecialModelName.swift */; }; + 42403A783F23CEE64D8AF4D9BDB87802 /* ConcurrentMainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D765DC1CA9E827C5C155427A9C020AF8 /* ConcurrentMainScheduler.swift */; }; + 425395ADB55B02A98D0538731936BD79 /* Catch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49E9CEC3564840C6531A01B3402A3A12 /* Catch.swift */; }; + 438765B0F3642DE51D314A21726679AF /* JSONEncodingHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8308F433372AEFC6D557F1856FC9DA01 /* JSONEncodingHelper.swift */; }; + 4481D7A928F997D2717CA342C9CAF3AC /* ConcurrentDispatchQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = D95AD1D226C3858D35BDFD664BBFCC02 /* ConcurrentDispatchQueueScheduler.swift */; }; + 45EF4D7DAC7881BD321F59D769C3ED56 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 291E627729F653AC7E4BAB6FEDE416E3 /* Filter.swift */; }; + 4B3E6EC0A866782A28E4504AC67B4A1A /* StringBooleanMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0757CDB69F181DE86D31F260259CC63B /* StringBooleanMap.swift */; }; + 4CC43360234D5FCB4E5CAA95BAEF47C9 /* MainScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EC9D77DAB6AE650C74E828CE1557C00 /* MainScheduler.swift */; }; + 4CE0D20F55D373232019950D791B50AC /* Zip+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65FF8529B526BB8EC9A7CB5716CEB89F /* Zip+Collection.swift */; }; + 4D491A944EF08F4B8656305C65C71C76 /* Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5076FFA46D2287FC8EC0C217FC4BA0B7 /* Zip+arity.swift */; }; + 4EF745BE3763312A553314237EBB7B3A /* TypeHolderExample.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB709FAE1018A60657705217C88967AC /* TypeHolderExample.swift */; }; + 4FFF28AF1937884226953CC18EFFACCA /* Tag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8688291EDCC3CA07AEFAFFDC3ABBE224 /* Tag.swift */; }; + 51FF11FC8E286A54377E64297EEA7696 /* ObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D048EFF0C58F0BC4BBC956A98937739 /* ObservableType.swift */; }; + 5318E7579B1107A6E6B8A80EAC437FA2 /* SchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33796A172718E1356E0E8337BAE01CD2 /* SchedulerType.swift */; }; + 536174909D73A714232615AB05687E15 /* InfiniteSequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = C308A93504B6AE628F892297A6EDD347 /* InfiniteSequence.swift */; }; + 55952681015C9453540298BF9C091033 /* UserAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 342554F69C1610DDADF3EBAC284CC8F6 /* UserAPI.swift */; }; + 5615DD06EEEA89A9237BB15D2E516B79 /* Disposables.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5FFB8448F56996188428783F8C6C98F /* Disposables.swift */; }; + 5720D4DCF4AA3DDB9D45802B854852A1 /* Sample.swift in Sources */ = {isa = PBXBuildFile; fileRef = 192DC760893AF9295AD26599EF40763D /* Sample.swift */; }; + 584C49BA4DCCCFD50B2FAF41783029C3 /* DispatchQueueConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 321D200CF6D488D976163C6A790DB8AA /* DispatchQueueConfiguration.swift */; }; + 5905B99E94D9ECE5157217BEC60C4FD9 /* JSONEncodableEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0440E1381A0610C4FE76AA2AF1814289 /* JSONEncodableEncoding.swift */; }; + 597234E9E02E21C0F83911110DCA6E74 /* File.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47729A51DD7F47ED910F54FB3FBE5393 /* File.swift */; }; + 59A7BE86B0880261634D8F6F18EEB240 /* ArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97AE2157FA464312716D670ACC5FBA81 /* ArrayOfNumberOnly.swift */; }; + 5A74E080F11D3B73C6E6A2E406E7E648 /* StartWith.swift in Sources */ = {isa = PBXBuildFile; fileRef = 836ADD02498B971DAA473321782A72A0 /* StartWith.swift */; }; + 5B4412836335EB28C03D517FD6F7EB65 /* ReplaySubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEF2F44C17F277967404CE3DA788FD46 /* ReplaySubject.swift */; }; + 5B8FDB00381ED25B1D5F06A29649ADEE /* Client.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77E4025C4EF246541D617C626370FC16 /* Client.swift */; }; + 5B9F60D1EEAA27243456F6F5DE0FA31A /* ReadOnlyFirst.swift in Sources */ = {isa = PBXBuildFile; fileRef = B23D0E4BD36D6E24C66A8DB3F81FE656 /* ReadOnlyFirst.swift */; }; + 5BC3B4927F5E340F661D56FCF2B51D75 /* InvocableScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 305616479EFCF33CB4768627955493AB /* InvocableScheduledItem.swift */; }; + 5E08679A799BC6809B8DE2089F06E621 /* TypeHolderDefault.swift in Sources */ = {isa = PBXBuildFile; fileRef = C692DE62E3C756A61E2E9C829EA0BCE6 /* TypeHolderDefault.swift */; }; + 5E4C98BF473FF5D493E130A785EB73BA /* Category.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7239C4B748D482C26AE3B3EC168AD371 /* Category.swift */; }; + 5FB1BC9A57D01324146B7AE5F03C6370 /* Dematerialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F929FCCF076F0A692EA809B17DD7F31 /* Dematerialize.swift */; }; + 60B6C2A003864AAD3A426448152F67BE /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = B22AF668079FC82298B5D800D6E575BB /* Timeline.swift */; }; + 60F135C1B2E2A3DBF5D91AAFEC889628 /* DefaultIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27F63D218F3E7685156696F53CEAB647 /* DefaultIfEmpty.swift */; }; + 611DDEABDBA112B4ED8A489288C5E3AA /* NumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = ACC20A8939D21B502E71D99F130B013E /* NumberOnly.swift */; }; + 63B9CDC423637A15BD3F8F4B9651B62D /* Zip.swift in Sources */ = {isa = PBXBuildFile; fileRef = E3B9412BBCE6A74BC742A54FD0B8186C /* Zip.swift */; }; + 64E469791F8F79F87724641C4B16AF22 /* StoreAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 387EBB01DADD396614945A01970A8222 /* StoreAPI.swift */; }; + 654F552A8DD4BF67850CAFEDF249D815 /* Skip.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1FC53345CBCE9EF88576C6BDC5D16EE /* Skip.swift */; }; + 69E9DE3AD0F2CA6895BEAFA6691914BB /* AnimalFarm.swift in Sources */ = {isa = PBXBuildFile; fileRef = F3A9349CCCD01B8CD6646B22BD8FAFFD /* AnimalFarm.swift */; }; + 6A3FA5DFDE7C0D52EA3B3E4A62F2969F /* EnumTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A933D6B3F16C58A90BFD589C4B23EE38 /* EnumTest.swift */; }; + 6B1C6B7CA8A53D9502AE9EB84CA3181F /* Empty.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3B003673B45236AA5A51A70A733399D /* Empty.swift */; }; + 6B598CD6C3665D587BD8EDE6202EA593 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */; }; + 6B9765DD631FED6DDDE0393B076895CC /* Debounce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62326983DDFE0858FB48A88B024EAE9D /* Debounce.swift */; }; + 6C7F38FABFBDF77E5B4D6AB137E0A5F4 /* FakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = A6DF985F6F04F63AA4A9AE7866CB8D22 /* FakeAPI.swift */; }; + 6CB554A9CE0D611C158CC5B9DB6873D7 /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = E237960AB17F68A30227D83025D39488 /* List.swift */; }; + 6D1DF0296E23FD6AD4E4676FD690C3BA /* DeprecationWarner.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5D0270A8CD4CA80B74E5EC729FBC1A7 /* DeprecationWarner.swift */; }; + 6DCDEA9935C7542C76178B25A7D873FF /* Completable+AndThen.swift in Sources */ = {isa = PBXBuildFile; fileRef = BC49CD3902CF252FAA732A1DDA1DC1C9 /* Completable+AndThen.swift */; }; + 6E428993840E5F638CFD77582468C982 /* DistinctUntilChanged.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43029CD91769D491E685263C4CB46A97 /* DistinctUntilChanged.swift */; }; + 6EFD003458AE7F689DEA720A2030C261 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95300CC9035C5766B62FE4FB54FA5951 /* ResponseSerialization.swift */; }; + 6F3CA008415A35BA7E271CFBB8311E6F /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B5420BA5CD952DA0D4A8A31E4D69CC2 /* Sequence.swift */; }; + 700D3D95AF9520CB227846DFD943A2DA /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 86A0FB6358543AEAB83BC45DD397D732 /* ParameterEncoding.swift */; }; + 7105E17FDE296BA6B37E8B5E2AAD9058 /* FormatTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E7E635C33CF3DE53B838B378535F65C /* FormatTest.swift */; }; + 72F440B2AB88E31879EE58D8B7D5A05E /* Producer.swift in Sources */ = {isa = PBXBuildFile; fileRef = F2E147BD28F065756948CC15F0E6B68D /* Producer.swift */; }; + 73AB05789A4982944AF68DBD013E3EB7 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8383047D766DF909F58645FCCF42048 /* NetworkReachabilityManager.swift */; }; + 755536BB16D53CBC961B0A8E3FDF7739 /* Timeout.swift in Sources */ = {isa = PBXBuildFile; fileRef = F42B2C25A2A499E0244E107DF28BA640 /* Timeout.swift */; }; + 76079C032826A835D0B13E6D617606C1 /* AdditionalPropertiesString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 417E0C1C7F4C17857E4C0D19275C6973 /* AdditionalPropertiesString.swift */; }; + 772911DA6E33D1CBBC30131B7C8BDBB3 /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2F4CC7E2EF21164D2E203FEAF12D869A /* Alamofire-dummy.m */; }; + 77E8F0EB9FFBE2E3EB0C77095C644606 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 575E60871C2A868C6B6D235B2DE25D83 /* TaskDelegate.swift */; }; + 786342EA1908DF041945B208001AB341 /* SerialDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B63E482462E54A5366DAEA6318FB7E /* SerialDisposable.swift */; }; + 7893293BC4613AE2625D1684ED6888AD /* Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = B50B0F2486C6BB7F3AF76CD685C8B4E1 /* Rx.swift */; }; + 79523FA5D24E7AC22385AE14E18FA1CB /* Map.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FF198528C6AE20A99A5E33F76D0C527 /* Map.swift */; }; + 7B5B94CF82B28AED61861EC39D661BEC /* OuterEnum.swift in Sources */ = {isa = PBXBuildFile; fileRef = A71552570D704D50ABA564EB978406FA /* OuterEnum.swift */; }; + 7BAA9953F0607C50A41C04848C10E156 /* Pet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32DEB152EA23784FF891FB3850E4A1FE /* Pet.swift */; }; + 7C7B2182C3E7D832DF075B3016ED1B05 /* ObserverType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D4584BAE72539FDF3D31787762B39D0 /* ObserverType.swift */; }; + 7D3D0B52CF0C6CD831B149E64FE4AB3E /* DisposeBase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E3B161DE103995FAFA429C1AD3E2875 /* DisposeBase.swift */; }; + 7DC19974867E0956AD13FA28D9038536 /* ImmediateSchedulerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44F10FFC1F6C0F6A0F7C003C038C272B /* ImmediateSchedulerType.swift */; }; + 7E3538A6992A38276764936A9733493D /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD714B38F6C265C97287CD6F713F3398 /* AFError.swift */; }; + 7E79F3A456266FFDA768E0CF14DBC2F1 /* SynchronizedUnsubscribeType.swift in Sources */ = {isa = PBXBuildFile; fileRef = EC22F330006EA5F892970C69FBA9F199 /* SynchronizedUnsubscribeType.swift */; }; + 8012A57CFFC574F745FBA46D335BBA6F /* Pods-SwaggerClientTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */; }; + 81690915FE86ECD7CDE95633E3762009 /* AdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE9C5D5D818389294D9B773DD491B146 /* AdditionalPropertiesClass.swift */; }; + 82D86B9AEF31C560C2A0DB4FC9B979A1 /* HasOnlyReadOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = A403B12907B25FC32930C07AD4DF4600 /* HasOnlyReadOnly.swift */; }; + 83637EFE9CFF36EC1E7A73CCE55884B9 /* PetstoreClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F4546CAE8AC2D5BD71A14E476145C771 /* PetstoreClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8487CC1DE956BDEEAC9CDF413E1A58E4 /* Materialize.swift in Sources */ = {isa = PBXBuildFile; fileRef = C894BEC0DE9A446CBB01A0B7D63DA38A /* Materialize.swift */; }; + 860138DC0F719DA0953C144268F4FDD7 /* EnumArrays.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB2944F75CA2FADBE47B2326252AAB5A /* EnumArrays.swift */; }; + 877B7447EF54C9ED4966D3D1AA9B8D07 /* ArrayTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = F25DE89C483E14ED16E9B0F96850BF3B /* ArrayTest.swift */; }; + 88B8F96E58CD89EC10B74A1F8365F6FD /* Pods-SwaggerClient-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 8A3542104FBA7C2FA7BF8E95AAAE0BE7 /* RetryWhen.swift in Sources */ = {isa = PBXBuildFile; fileRef = E22F3BDA0C336074E5EA13F37C05FF2C /* RetryWhen.swift */; }; + 8BB1ACFFA7880AE54B7300AF440F549D /* PublishSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09F1E9D95E719B94DD98DDDB394278F2 /* PublishSubject.swift */; }; + 8CA88B336020592CDC5F3548A4DFE697 /* ToArray.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33FB85D186079ED93696702AD931FFDA /* ToArray.swift */; }; + 8D2A6A90A6DDAF75EA52D471258545CC /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A56088E87A9AACE94749A936B309080 /* ServerTrustPolicy.swift */; }; + 8DA0C6077B07424B6848BD63049B6777 /* AddRef.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64F819D835354426411C22FB35823EAD /* AddRef.swift */; }; + 8DDD2130C49010F4CCBA6EF665E1288F /* ConnectableObservableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = AB1FE5BDED74EBDC047C5B437A524854 /* ConnectableObservableType.swift */; }; + 8ED35E25E311CF3F12564041A7F8BB2B /* Throttle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DB4CEA0C0A7C4823A04EAD9FBA3961D /* Throttle.swift */; }; + 8FAB1056E36610DF9EE92221941D800D /* AsMaybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6BAA110BD7DD59D40985519BC3BAB2C /* AsMaybe.swift */; }; + 92BEB5554FA6A51ED6995B19BEC8D7ED /* AdditionalPropertiesObject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 427485D09ADF908E73C20C8E8F56313E /* AdditionalPropertiesObject.swift */; }; + 93000BED51CFB0CDB262C897C8C104A7 /* Switch.swift in Sources */ = {isa = PBXBuildFile; fileRef = BAED0C18FF2FC7D97F0E5B2D4FE37F2C /* Switch.swift */; }; + 93D8F9361CA384D802B729C027A29D93 /* DelaySubscription.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13431ED497EC52994DA35A8DD3CB5C3C /* DelaySubscription.swift */; }; + 944A8ACBB625207067C5A154726E140A /* Return.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0568635049F72DE8DD05757186436324 /* Return.swift */; }; + 94C2BDABC69296B090CFC89FD5483D41 /* Bag+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF699627254D1F4E425E37E0306B828B /* Bag+Rx.swift */; }; + 957BB9043F5F5609C348C47C523D6C79 /* Take.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8050204E8821E9A399D7E830591E063B /* Take.swift */; }; + 9587E802C281FA381DF9E97EC426814D /* LockOwnerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = F5CF777F69E934A92F78512092C53052 /* LockOwnerType.swift */; }; + 95A5DD145CB674719312A9CCE333C40A /* BehaviorSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10A297E0A593ED4485BF3BAA9211E812 /* BehaviorSubject.swift */; }; + 96ED1FEACF444FF70C6550E95A572890 /* AsyncSubject.swift in Sources */ = {isa = PBXBuildFile; fileRef = 452FB9512A491F731556BD2F110347ED /* AsyncSubject.swift */; }; + 96F8C88984B492B5D186D6DC6FEF8D0C /* PrimitiveSequence+Zip+arity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C65830349B23D7E262AB27BAB0E8188 /* PrimitiveSequence+Zip+arity.swift */; }; + 97AEDE420913FDB38F1F907BBAAF2E8B /* Deferred.swift in Sources */ = {isa = PBXBuildFile; fileRef = FBF9232381581A50CA2E8FA9517D76EB /* Deferred.swift */; }; + 97BF7A9642F28D14C03458F24C030DB2 /* AlamofireImplementations.swift in Sources */ = {isa = PBXBuildFile; fileRef = C645ED7A39D8B9114C20CAFE2B7FBC2B /* AlamofireImplementations.swift */; }; + 9C66CB81052F764079D0FA68B6E36BEF /* SwitchIfEmpty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97D7A50019AFFCCD39301BD1E594F91C /* SwitchIfEmpty.swift */; }; + 9C894D0C88D763CD86C16DDCE698F9B3 /* SkipWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2EDBEFED12864758CCA6F411205AB2E /* SkipWhile.swift */; }; + 9CD65D0519639A42284304F6A662E10A /* RxMutableBox.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CEA210E8205F311B1A19569BCDDEF63 /* RxMutableBox.swift */; }; + 9D443C8AF196B744F2340AD3DCE6CE0A /* Errors.swift in Sources */ = {isa = PBXBuildFile; fileRef = F73E2FE9C0296B7647E36FDAB1A48E6E /* Errors.swift */; }; + 9E28E0EB779608B1E70DD6319247E826 /* FileSchemaTestClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9ECAC6F788B1B30D9157D0A0ADC1148B /* FileSchemaTestClass.swift */; }; + 9F9CF99BD0C63948B4413396FD8DBA54 /* RecursiveLock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55000F129FE5A09A0B51661892DB1F4E /* RecursiveLock.swift */; }; + A06C5095E2319DD4B8B8047539769999 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = D406BAD811EAD0952929B093F56F2BF2 /* MixedPropertiesAndAdditionalPropertiesClass.swift */; }; + A1A4F6F86BDF18C228F08311EBD03E84 /* GroupedObservable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0FA93D91962228BFC4F2058578D7A9EB /* GroupedObservable.swift */; }; + A1EC41966B261DCE460BCDE5124A1DBE /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 378449150E818606AADBD6FB5A562D0D /* SessionDelegate.swift */; }; + A26702A2CFB5B831F7FB80FFA29BEEEC /* InvocableType.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB834FF7C5DF4A05EB6179428E1A2D30 /* InvocableType.swift */; }; + A5E492F7194809622E130CC6569F46E2 /* SubscribeOn.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70180A07F00266A41D515742CBA72B74 /* SubscribeOn.swift */; }; + A9A00DE2FF9E8E7E0C750F495837D99E /* Cancelable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A8B9F6DB3E903DC9635F9DA16D90A0C /* Cancelable.swift */; }; + AA56769D8733D3F3E7976742D5ABA998 /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51BEBD9500775258E10801B2D4636130 /* Validation.swift */; }; + AA6D3CED1566D71B0E39A1CDE3B32864 /* Enumerated.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAFD9A5AE325CD48442A611EFD103D57 /* Enumerated.swift */; }; + AAA1712D2763B6D2CF0011403EBE512D /* Amb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F4E8DC898B4C8D35F09B107CE705172 /* Amb.swift */; }; + AB6D07352A2E898824B49759CCA162EC /* AdditionalPropertiesAnyType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7628A653BCE0CE4F0CA24E4699FF04E5 /* AdditionalPropertiesAnyType.swift */; }; + AEA829AB1A8AF2AD077A808AED6B178A /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D335B34B9871B74E10984781CC371CBA /* MultipartFormData.swift */; }; + AEB4C18DF052DCB1A0FF1EA600194A2E /* Dog.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88BE3C1FFB1B8A373D68AFE8E2CE9E5B /* Dog.swift */; }; + B01F02AFF4BD60048220EE91C369DA72 /* Bag.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9289A1C05392D4FF88A897B4FDF77958 /* Bag.swift */; }; + B2F61D4C66E7E9BF795A768F9A52F889 /* ElementAt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6F10D694F6B9493FDA575E60FE695722 /* ElementAt.swift */; }; + B312CFC44488357265F713C8EF63291C /* TakeWhile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E67D2FEF499445214AF84B7B9C9B33E /* TakeWhile.swift */; }; + B385CD158B4DB49B50E46C688B9F0AED /* AtomicInt.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C7E8D8382CCB07D68866B995A900D74 /* AtomicInt.swift */; }; + B38FF962610DEFB271EA1FCA95E3B37A /* SkipUntil.swift in Sources */ = {isa = PBXBuildFile; fileRef = 25B4A2E0DAA89840BB58C5D472574F66 /* SkipUntil.swift */; }; + B39356F857F84E608624AB4BA381F5B9 /* APIs.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55A64F269657828EFCFE8BFEBEC769FC /* APIs.swift */; }; + B6F6E4CC26451E91B59FAE0F6841DC1F /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AE110F03859CEB598ADBC6AF0026E6C6 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + B7A2C80AE512BA32546E4BB9213F70CC /* Buffer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 49A9E858642895322172FF16226C86AC /* Buffer.swift */; }; + B7CC8FC752B3A986B9DFC4A0F09BB316 /* ScheduledItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE0D448C7D74BFFB8604285DD7047EED /* ScheduledItem.swift */; }; + B822D1C05E59F8303723EA7F59C78F40 /* Single.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA9CEE837EF5EE1215788BEBC3959479 /* Single.swift */; }; + B8407A12CCFF56CC0C1C34C1B8A9F8D9 /* OuterComposite.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75E2A26619203BE094E23132BE4F9C6D /* OuterComposite.swift */; }; + B9EF5A80D032538680EFE75929C28D6D /* ObservableConvertibleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE64C63DA4FB40ACE396982AAB244DC0 /* ObservableConvertibleType.swift */; }; + BA2E85147C4CE9D6AA9EC39DBE99A6C0 /* Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28350F99E9985C0EFD64D72D74A3BB5B /* Models.swift */; }; + BA8C86B1D885FFA4850EC5F3528669E9 /* SwiftSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = D10F2A3D1BBD10CA8594739DB19CDC07 /* SwiftSupport.swift */; }; + BB7E003CB2D82BDBBBE3A9E1AA1C1682 /* CombineLatest+Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B49FF45429D57DA0487C5BD90AA6398 /* CombineLatest+Collection.swift */; }; + BDEA420ADE6E58BFDB87E1339C6EF292 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */; }; + BF15B41D6CCCFAF4DCA617D0431D4781 /* Platform.Linux.swift in Sources */ = {isa = PBXBuildFile; fileRef = 27B1CB7693D74DF7AB61FB3A0064A532 /* Platform.Linux.swift */; }; + C0A9C53855321304AFBE800FC3BB8864 /* MapTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40FA27876F7533BCDAAEB14AED6CC511 /* MapTest.swift */; }; + C1942DA08443E26FE1CD7BF2A972B27C /* String+Rx.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2788B53C02374D910EFFBCF48BFF0B1D /* String+Rx.swift */; }; + C2C0AE3588986E52B3965206EC540324 /* Delay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CFB12945932D18A9721B6AF2D8D871E /* Delay.swift */; }; + C3F9BB06A12A0F61CDC2511CDDE62B09 /* AnotherFakeAPI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89D4EF25430724C9CA591320E91F6ADE /* AnotherFakeAPI.swift */; }; + C54FB31D5C9750E9722B2EBB3C05754F /* AsSingle.swift in Sources */ = {isa = PBXBuildFile; fileRef = C638F1FAA7FFA890ACB0BAD594BAA07B /* AsSingle.swift */; }; + C8371B319EBEF3DFDBA5C573AB46EB4C /* Animal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2E62E4A381F97286B84952D8ABA59681 /* Animal.swift */; }; + C88589E390360E93817DA97CBF5DCBA4 /* Completable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0ACE6B378AD271E3ECC20C3EB267F4D8 /* Completable.swift */; }; + C939859F6DB0464712141486E944F42C /* Maybe.swift in Sources */ = {isa = PBXBuildFile; fileRef = A14370E500BCD2443559DB70F2786EB6 /* Maybe.swift */; }; + C99C068899D064944E605570D38E85F2 /* Reduce.swift in Sources */ = {isa = PBXBuildFile; fileRef = 060AAA21729D90B11F6FD9102F628758 /* Reduce.swift */; }; + CAB19EE096FBEAAE1FDB28F56B8B4F78 /* Merge.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF4EA9F3121FB3144A5648BBC0A8004D /* Merge.swift */; }; + CAFFB7A58F51661BC7DD5284276EC1ED /* VirtualTimeScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6DA209283C4EBF0544FF63C7D1BCC40D /* VirtualTimeScheduler.swift */; }; + CB69E0C638A7C58B5FC9073B793273AD /* AnonymousObserver.swift in Sources */ = {isa = PBXBuildFile; fileRef = B3DC61667E570A41266B09E2160DAF2D /* AnonymousObserver.swift */; }; + D0847A960A008DA8608CBCF219A8A2A7 /* VirtualTimeConverterType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 745314207D827581C481CE38F4AEB7A3 /* VirtualTimeConverterType.swift */; }; + D0E317E6FC43BC7D4F07C17B584D8EFD /* Repeat.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2EAED007F778FE48F4D3EB2B398B0AFB /* Repeat.swift */; }; + D128DB98CB0B97380BDEC326306D0FFC /* Concat.swift in Sources */ = {isa = PBXBuildFile; fileRef = C71AEC0AF13D31F11719E203832081AF /* Concat.swift */; }; + D399C483EEF039C293A7B84B82BE2B49 /* ArrayOfArrayOfNumberOnly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59A65FEE7BCD66D95A4A236D44082214 /* ArrayOfArrayOfNumberOnly.swift */; }; + D3FA0AA634AAEA99AB3FABC36BB4958C /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 02C7203E47628DD3832410EEA16A1D8B /* SessionManager.swift */; }; + D706A86E37DD6D833CA7A079A3E15B7E /* Sink.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE70B57B6CF22A99EBDA453C12741148 /* Sink.swift */; }; + D9D43BA204D86056FDBFCC92F87C7EAB /* ShareReplayScope.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA01D2A2DB1E31168FFF75C6F9DAD5C5 /* ShareReplayScope.swift */; }; + DB2950EE1B19C535EBD1E572494F55E5 /* PetstoreClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C3FFE137AD3E253AC3CC98BDB629E1CC /* PetstoreClient-dummy.m */; }; + DB94F9F67A94D6A5CBAA286F44ED10ED /* Name.swift in Sources */ = {isa = PBXBuildFile; fileRef = FEFFBEEA8F7216DF65BD978A823BEDA2 /* Name.swift */; }; + DC551676E7C8D267368063D532D092B2 /* Never.swift in Sources */ = {isa = PBXBuildFile; fileRef = 498E9106F2911C5C575288660EF2C14A /* Never.swift */; }; + DCAC99A86576E188AC0079FE5607C541 /* CodableHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35FACC9017B95B9A2C4A6F43E6168BE3 /* CodableHelper.swift */; }; + DED9A421CFF78F29A27F00A43A5478D1 /* Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 892F30771518EB494D89A92413C04E85 /* Extensions.swift */; }; + DFAA7C26B25E676D63DD5FD0D74ABB30 /* ApiResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0755658D38EA295B964DD3D2AE6130E8 /* ApiResponse.swift */; }; + E16F11503BA04EC3B205DBF20BD33DE1 /* Just.swift in Sources */ = {isa = PBXBuildFile; fileRef = D95243E9789D171D24B3CCEF4A306E79 /* Just.swift */; }; + E2A989FE2A8C7E19B78150061B1F404E /* EnumClass.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1259C7EE8FBB3A324ED66A0FBE292D2 /* EnumClass.swift */; }; + E38FB4D007348119E958AED58DDD44B4 /* OperationQueueScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9ABCE94A0D10DF97FC367C061436E5F /* OperationQueueScheduler.swift */; }; + E403F1184BAC06680AF116EE8EDB7BEF /* Reactive.swift in Sources */ = {isa = PBXBuildFile; fileRef = 240EE4633A0C295594350E7EC54BA3DF /* Reactive.swift */; }; + E4962E9CD3D8EA651C84498D271EC753 /* Pods-SwaggerClient-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */; }; + E4F4D8D1953813B37BD79C66BE55B132 /* BooleanDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 28DE248049BE51CEA8ED1544F9D7FE9E /* BooleanDisposable.swift */; }; + E4F50B1433000199FD611EEBCF3B6BB0 /* User.swift in Sources */ = {isa = PBXBuildFile; fileRef = B374449845CA94813BACD80BE4751992 /* User.swift */; }; + E6CAA0D168E81EF9679A5388F4BC95D8 /* BinaryDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C42EB9688F37F35C9110C57A8075DC4 /* BinaryDisposable.swift */; }; + E7AC1A5D6FA609B69AFDE50FC01127F2 /* SubscriptionDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4218AB53A6385BB02D95ED58A63B6AB /* SubscriptionDisposable.swift */; }; + E8BF5D98F29555477C6236F1890DF767 /* APIHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE55486083AAFB05A421910D689676CD /* APIHelper.swift */; }; + EB0DD8CEA1A69867A30267439C970440 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = E708A153C22A9339B8145278E89E64D8 /* Result.swift */; }; + EE1917B8030B1B81478973483D704AAE /* Debug.swift in Sources */ = {isa = PBXBuildFile; fileRef = BE02647BBDB83E0D48469A56FBF37C88 /* Debug.swift */; }; + EE2E9AE7C6CDF0C9D9E77E6EB2800E40 /* AdditionalPropertiesBoolean.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9A9D6B8A244BC24B1DFF8AE87F94F792 /* AdditionalPropertiesBoolean.swift */; }; + EE5BB9D47B59D64E282A3FCB17CD6132 /* Deprecated.swift in Sources */ = {isa = PBXBuildFile; fileRef = B498E7AFBD0589628B31BD16154B20FF /* Deprecated.swift */; }; + EF7CEEFEE64CCFE8E050F33E8E6716EB /* Scan.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8942B778DC2EC96252BBB267B62D566B /* Scan.swift */; }; + F2179ACF4366D4B4E62CD5C99FA1A679 /* Capitalization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39F74B8F482952B4F0D1ECBE5D900E09 /* Capitalization.swift */; }; + F33B53F266660974D851A82B03B2907E /* Create.swift in Sources */ = {isa = PBXBuildFile; fileRef = 32615BCCDB0302A683583113699C168B /* Create.swift */; }; + F3B7AF12D1FD688C8942217F918E2917 /* RxSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B22542F5E9A061C9F6214D75923635D /* RxSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F77A046367A53931C9B4424F17D83BB0 /* AdditionalPropertiesInteger.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB268230F2A96F71335E107E497BC32C /* AdditionalPropertiesInteger.swift */; }; + F7D0A45619BD381EC7FDEF8F41057C4A /* ScheduledDisposable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 717C1608162B27019EBC04A33444BAEE /* ScheduledDisposable.swift */; }; + FCFED59A764898B95991A177DDEB362E /* CurrentThreadScheduler.swift in Sources */ = {isa = PBXBuildFile; fileRef = B18AB9B87BF0A071727872B64CC84137 /* CurrentThreadScheduler.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 0C234B5373994E3A59E9A6E0E10985AB /* PBXContainerItemProxy */ = { + 116DEBAFC9022016EADCAFC9F9BC1542 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 1902D1CE68FBA32C8D8799E8609C5B5E; - remoteInfo = RxAtomic; + remoteGlobalIDString = BA1FAA79F9B74485F4D7279FD41A7D1D; + remoteInfo = RxSwift; }; - 0E40A0F4233C9761AD11068C46A16B45 /* PBXContainerItemProxy */ = { + 2A8AF3B6391C5FF251470E3091B2B1D2 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = E76458C58C9140B6A16D60547E68E80C; + remoteGlobalIDString = 3383968E74B5371B20BB519B170DC7FD; remoteInfo = Alamofire; }; - 181BA691D9DA07C0E3F416403003CE38 /* PBXContainerItemProxy */ = { + AEA2781CDC8DB413C920DD9F7F78F124 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 14DFB61ABDA25614AC7428629254E83A; - remoteInfo = RxSwift; + remoteGlobalIDString = 3383968E74B5371B20BB519B170DC7FD; + remoteInfo = Alamofire; }; - 222FC736AA6760B5789C54600C969D6F /* PBXContainerItemProxy */ = { + B36C681A6EB35CB2430BAB3BAF9AB886 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 14DFB61ABDA25614AC7428629254E83A; - remoteInfo = RxSwift; - }; - 2903646353C4EF4485CA497B0D5F6ADC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 351340BF0149C3286C23FB1440131F5C; + remoteGlobalIDString = 49CDD5ADAF3DA23F4C622CC2F9A75659; remoteInfo = PetstoreClient; }; - 605FA182C02A164022F0425A632A3899 /* PBXContainerItemProxy */ = { + ED09ABD99E0D387BFD78CCCE937FA689 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 1902D1CE68FBA32C8D8799E8609C5B5E; - remoteInfo = RxAtomic; + remoteGlobalIDString = BA1FAA79F9B74485F4D7279FD41A7D1D; + remoteInfo = RxSwift; }; - 6820589C863D447314A430256098049E /* PBXContainerItemProxy */ = { + FA1A8E2F3FE2899A723889F94EACA0E5 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = E4C8288BEB610EA811E671631ECCC086; + remoteGlobalIDString = 1BAC3F8145EDD03FE8EDB0EACEAE3522; remoteInfo = "Pods-SwaggerClient"; }; - BC022E926E74D1D6467C75FB68496E87 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 1902D1CE68FBA32C8D8799E8609C5B5E; - remoteInfo = RxAtomic; - }; - F7705A33B8BB595394C94DDA91844D05 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = E76458C58C9140B6A16D60547E68E80C; - remoteInfo = Alamofire; - }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0075000FF9024228C130ADDA9B81114E /* PetstoreClient-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-prefix.pch"; sourceTree = ""; }; - 0123809377F5AEB8CF2EFCEE389FE0DB /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Range.swift; sourceTree = ""; }; - 038C260EF494562321681443F1203BD0 /* RxAtomic-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxAtomic-prefix.pch"; sourceTree = ""; }; - 038F630DC52C48069A1F8E546BE05C8E /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; - 04605CEDAF236CB0AFA904971654F957 /* ObservableType+PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+PrimitiveSequence.swift"; path = "RxSwift/Traits/ObservableType+PrimitiveSequence.swift"; sourceTree = ""; }; - 0546BFF49DC081D03AE9A68528BA62F4 /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Timer.swift; sourceTree = ""; }; - 058BD56F330E63AFB81EAE4168EAB76D /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; - 059DBF7FC714D974D0E8FE47295F9003 /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Buffer.swift; sourceTree = ""; }; - 085A00CA43A3509F57BF6CED34C6D9E4 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; - 08ACF082BFEB70DAD261BE2F71B5CD64 /* Zip+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+Collection.swift"; path = "RxSwift/Observables/Zip+Collection.swift"; sourceTree = ""; }; - 08BDFE9C9E9365771FF2D47928E3E79A /* Pods-SwaggerClient-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-acknowledgements.plist"; sourceTree = ""; }; - 0AD61F8554C909A3AFA66AD9ECCB5F23 /* Pods-SwaggerClient-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-frameworks.sh"; sourceTree = ""; }; - 0AF07A78209C44E970398E68C87F5A80 /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; - 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; }; - 0CAC2AAADCE458372519A75B5902D3F3 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 131CA1CBC6FAAC57269CC30CE2AB0D26 /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/TakeLast.swift; sourceTree = ""; }; - 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; }; - 14ECE86EF7E19B1B7E97C070CC6BF34A /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; - 16FCB507A3FA489F663DC7D002325839 /* GroupBy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupBy.swift; path = RxSwift/Observables/GroupBy.swift; sourceTree = ""; }; - 17C72882D5F578CFBC52EE6EED3D871B /* RxAtomic.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxAtomic.framework; path = RxAtomic.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 184177FFE14520003E3576223CB74A9F /* RxAtomic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RxAtomic.h; path = RxAtomic/include/RxAtomic.h; sourceTree = ""; }; - 1887B771AE7974C7BD30EC913AAB1F46 /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = RxSwift/Errors.swift; sourceTree = ""; }; - 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; }; - 19C351980C5D85C30F921072A232E57D /* PrimitiveSequence+Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PrimitiveSequence+Zip+arity.swift"; path = "RxSwift/Traits/PrimitiveSequence+Zip+arity.swift"; sourceTree = ""; }; - 19DBB8C78D4BD529E021E8E99D498688 /* RxAtomic-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxAtomic-umbrella.h"; sourceTree = ""; }; - 19FA426826F2F8F726C573ACF0817668 /* GroupedObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupedObservable.swift; path = RxSwift/GroupedObservable.swift; sourceTree = ""; }; - 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.debug.xcconfig"; sourceTree = ""; }; - 1C3F47901F3DBFEAA0E0E36FAE700C41 /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/Internal/ScheduledItem.swift; sourceTree = ""; }; - 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = PetstoreClient/Classes/OpenAPIs/Configuration.swift; sourceTree = ""; }; - 1CD32B133CCF26ABE9A87E985AFF5073 /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; - 1DEA75B4FD07880DA0BD3BAA4C8C1B6B /* DispatchQueueConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueConfiguration.swift; path = RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift; sourceTree = ""; }; - 1E1A1D9EB066CE8BABA80EDA1A24A2D6 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Observables/Error.swift; sourceTree = ""; }; - 1E81119576103DF2C734DA31844EAD07 /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; - 1FD522C3593066E8FBFEA318EE72E57B /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Amb.swift; sourceTree = ""; }; - 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; }; - 203B806BED48E16E8E6A01F6FD42D99A /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Window.swift; sourceTree = ""; }; - 20647CB1FC37203D15FA7D63080C9492 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; - 23207944E9E16FCACB1CA522868778B3 /* Create.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Create.swift; path = RxSwift/Observables/Create.swift; sourceTree = ""; }; - 2378947E408CB33F56CD4DF893741BEF /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; - 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; }; - 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; }; - 269E2D254449F06B4427ABB8959C4384 /* ObservableType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+Extensions.swift"; path = "RxSwift/ObservableType+Extensions.swift"; sourceTree = ""; }; - 26C36785784D4AC1D25E99C0A048A97C /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; - 2879FC02B20D7B09076FB0399EB95961 /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; - 288E9E93B7DCD76C361FD709245E9AF2 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; - 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; }; - 2AECDE54548F3B4943031609A3A8E2EF /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Take.swift; sourceTree = ""; }; - 2BB1D491A4C824A6BFA9C0C35E36BD85 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 2C1F89D6A94419869454B03267239472 /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; - 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AlamofireImplementations.swift; path = PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift; sourceTree = ""; }; - 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CodableHelper.swift; path = PetstoreClient/Classes/OpenAPIs/CodableHelper.swift; sourceTree = ""; }; - 2CC77AE15F0D8D133134723D87D8A800 /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; - 2E9223D32E743F17BB8DF468A29505B6 /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/CombineLatest+arity.swift"; sourceTree = ""; }; - 2F7E604423932C0DBEDB4D0822054D76 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; - 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClient-umbrella.h"; sourceTree = ""; }; - 32F06CB55D217E32118C360DB7422296 /* AsSingle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsSingle.swift; path = RxSwift/Observables/AsSingle.swift; sourceTree = ""; }; - 344023438E0281AD484A1216A2F2721C /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = RxSwift/SwiftSupport/SwiftSupport.swift; sourceTree = ""; }; - 34F426BAC76F5AB75C76CED6AED8CEDD /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; - 3504B27DF9870928A2DC3133ECE8F972 /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; - 35E207B501AF34A6ECAD053D8073CC33 /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/Internal/InvocableType.swift; sourceTree = ""; }; - 35F5F602EEFB1DFE432441F0BB1FBF8E /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; - 3696F7BCAB005C74FC3BCB2114D5C50E /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/CombineLatest.swift; sourceTree = ""; }; - 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodingHelper.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift; sourceTree = ""; }; - 389343EA0AE116BE5BED01846916909C /* Timeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeout.swift; path = RxSwift/Observables/Timeout.swift; sourceTree = ""; }; - 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; }; - 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; }; - 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; }; - 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; }; - 3BD6C15E036716B7ACD83CF23ED40B0D /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; - 3C596DBBDDBCD371C56BAB928044635E /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Map.swift; sourceTree = ""; }; - 3DEE4E1952A5226EDB3DA63F63148B60 /* AsMaybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsMaybe.swift; path = RxSwift/Observables/AsMaybe.swift; sourceTree = ""; }; - 3E49D6CF4C660489250F96B8BB46C98F /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/SubscribeOn.swift; sourceTree = ""; }; - 3E923EDEA040DBF60D6CEBF40AA3BF72 /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/RetryWhen.swift; sourceTree = ""; }; - 405921FE252DC3DC1087DA4217236D81 /* Name.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; }; - 4118FB943A92CA221F1FF8C2113EE538 /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/TakeUntil.swift; sourceTree = ""; }; - 419496CDDD7E7536CBEA02BAEE2C7C21 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; }; - 4737B0E6316A9DD6C7C94D847579EDEA /* Maybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Maybe.swift; path = RxSwift/Traits/Maybe.swift; sourceTree = ""; }; - 48E018DEF19AB592A9B6EE607ED30A4E /* SwitchIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwitchIfEmpty.swift; path = RxSwift/Observables/SwitchIfEmpty.swift; sourceTree = ""; }; - 4980B0C26643D79E5C823FFD03DB22C0 /* RxAtomic.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxAtomic.modulemap; sourceTree = ""; }; - 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; }; - 4D16ACC221A5E32700B52D639F2F8AC5 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; - 4DD24A13C40FA74505FB3929F63A4396 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 4EB7BF4F57FA381E9DA7A1AA9B04857D /* PetstoreClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PetstoreClient.modulemap; sourceTree = ""; }; - 4F7F5C940BBCAC29EB96D076E339B4A6 /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Do.swift; sourceTree = ""; }; - 501C268D3DC431E81C876F4F7EE389C6 /* PetstoreClient.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; path = PetstoreClient.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 50412DC769ED9F64828FBE62B247E46B /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/Internal/ScheduledItemType.swift; sourceTree = ""; }; - 50944B5CEDCB1CD89E302F0EC2E91192 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; - 509B43E693D48C812F2574A086894CCC /* First.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = First.swift; path = RxSwift/Observables/First.swift; sourceTree = ""; }; - 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 535B11DEA8AFE06F6E6BDCF34B53BAAF /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; - 53CAD5865C002ED6919244602DE10F0E /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; - 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIHelper.swift; path = PetstoreClient/Classes/OpenAPIs/APIHelper.swift; sourceTree = ""; }; - 55063AD99CB05F46E7EB2DEC30F33A51 /* AtomicInt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AtomicInt.swift; path = Platform/AtomicInt.swift; sourceTree = ""; }; - 580504178F461251A7570D0DE2C3F50A /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; - 58E9954FF8B8BEA966C88CF2F422F6DC /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; - 595FA08B722A0112ECDC421BEDA32661 /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Sequence.swift; sourceTree = ""; }; - 5D6D06373E5E9E34438E51D9A39CA190 /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Sink.swift; sourceTree = ""; }; - 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; }; - 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; }; - 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; }; - 6034F0885F89AFC531550769745DECD8 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; - 610D8B3C90ECA3666B79BB8AC3918598 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; - 61179CE650778B2A5C39664F0A792B5C /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; }; - 624138DD4F5061C01B2B15E6DEE6A5B1 /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; - 628ACCA352429B0E67A556C3EAE3D6BF /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 6306133179CC6DE689021E70C558607F /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxSwift.framework; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 647C9A78AC3A206D422DCCE925421541 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; - 65AEDDCD78284D4EB9977F3125AD411A /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; - 664DFCC8F8B25AC2C0F124826FDC13DD /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; - 666BA9077B17F008A3616E07A5BD7FD9 /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; - 66F490B014DB4E82D35F6FF43A180D74 /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; - 6D04B7FD634E28BF38A3C24C8F8C770A /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/SkipWhile.swift; sourceTree = ""; }; - 6D3B32015A29ED69432301FF0A3A8D01 /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; - 6D706CF6090DAA45F9CC0DCA9BDD778C /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; - 6EEA2FD394D505A6814010D481538152 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; - 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; }; - 70A9F683E1A05B6288DD8719F0739108 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; - 711A7DC644297549EE347B43C7C919C9 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; - 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClientTests-dummy.m"; sourceTree = ""; }; - 7518B49375F6BEBC5FFED32DEC4660B2 /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; - 75EB72DAFB1A6AB83CABF90D5ACA4CEE /* Disposables.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposables.swift; path = RxSwift/Disposables/Disposables.swift; sourceTree = ""; }; - 76645699475D3AB6EB5242AC4D0CEFAE /* Pods-SwaggerClient-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClient-acknowledgements.markdown"; sourceTree = ""; }; - 768BDC36A0B3580E763F0128E70D1829 /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; - 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PetstoreClient-dummy.m"; sourceTree = ""; }; - 77A2D5DF22D9BF3FFAAA3B7DD3F3C0D7 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; - 7898EEC6A565DE133438C48988478954 /* Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Extensions.swift; path = PetstoreClient/Classes/OpenAPIs/Extensions.swift; sourceTree = ""; }; - 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; }; - 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; }; - 7C22EA8C501403D3F67350E95C9B1F6F /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Never.swift; sourceTree = ""; }; - 7C25D45279653382D5B7C143EE61BD61 /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; - 7C27D9343F302A1B99DC2A579510EED3 /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; - 7C8417EB1EB14EA99CECC645D5677F1E /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/ObserveOn.swift; sourceTree = ""; }; - 7E6241ED96E3ACCAE254FAB0D63F1A80 /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; - 7E9155E212288F3284BA55C2BA5AECE1 /* Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Single.swift; path = RxSwift/Traits/Single.swift; sourceTree = ""; }; - 7F08EEB12871EA5AFDB544B0D778DED4 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; - 7FBB1A41E4532C7CC2D490550B06FF19 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; - 80056B2FADCC6463FB6BFF5BAE0261A3 /* Dematerialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dematerialize.swift; path = RxSwift/Observables/Dematerialize.swift; sourceTree = ""; }; - 806122C519E53A3467A591B651CABF99 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; - 814471C0F27B39D751143F0CD53670BD /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 82541D79BF1E3D4A91CC961E0BBC1FC0 /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; - 84B3B20977736165D7000F5156294624 /* RxMutableBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMutableBox.swift; path = RxSwift/RxMutableBox.swift; sourceTree = ""; }; - 84F997FBAA725D0C39C8E6F5A1657602 /* VirtualTimeScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeScheduler.swift; path = RxSwift/Schedulers/VirtualTimeScheduler.swift; sourceTree = ""; }; - 853B1DEAC65B508D52AFCDBE17F443A7 /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Deferred.swift; sourceTree = ""; }; - 8634A05E1ECEC8181FCC1E88C9CF99BE /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; - 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; }; - 893DB6855446CF668CF3AA60A8AD4D2B /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; - 8BD31C2B49795A4E8219E5769978EFA2 /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; - 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; }; - 8C5558D116FB2BC6A4BED63C5DB18A8F /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Catch.swift; sourceTree = ""; }; - 8E5E097E4FB6F674BDBA24E98BEDF0A4 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; - 8EE9115ABE1145C4C677B9E280C9832A /* Reactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reactive.swift; path = RxSwift/Reactive.swift; sourceTree = ""; }; - 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; }; - 90B48B645BDF3791D23C1848534FAA41 /* RxAtomic.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxAtomic.xcconfig; sourceTree = ""; }; - 90F8739B7B5D5F8F000FEC5FDAFD30B3 /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/SingleAsync.swift; sourceTree = ""; }; - 92BDA682FD29ED3470519B761C6BCBEE /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; - 92D7249D4FDF4529B8F5604A897878A3 /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Sample.swift; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 94B3FC47FE1246D199ED30F899FEAE38 /* Debounce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debounce.swift; path = RxSwift/Observables/Debounce.swift; sourceTree = ""; }; - 95191617864DB139A0C0C832781CCFA2 /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; - 9554645C8D016F765E3E070442DCA090 /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Just.swift; sourceTree = ""; }; - 96D19D94AD216E43916745FC5D1BF980 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RxSwift/Observables/Optional.swift; sourceTree = ""; }; - 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-umbrella.h"; sourceTree = ""; }; - 979D8AD838652BF7D9424E2151C79C74 /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/WithLatestFrom.swift; sourceTree = ""; }; - 97ED6EBFC1385B7F45250F5C2F5F1AC2 /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; - 983B7F0069F6EA0BD1F79B633452A7FB /* Pods_SwaggerClientTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClientTests.framework; path = "Pods-SwaggerClientTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 98D8CFD3F0776AAA45863EE9A39E8C7F /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; - 99DF44C1F5C22BD3DA5F4F76B96327FB /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; - 99F9BCF8CA1D20373C9E38F922ED13BC /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/ElementAt.swift; sourceTree = ""; }; - 9A0B8FCFE917E6C71AF5210B83924797 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Filter.swift; sourceTree = ""; }; - 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; }; - 9B3A3E4A7CB12148CAB2026BEC41959F /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; - 9D08EC9B39FEBA43A5B55DAF97AAEBE9 /* Pods-SwaggerClientTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClientTests.modulemap"; sourceTree = ""; }; - 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; }; - 9D207C347E5A099CD149D335308DC227 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; - 9D51034C456421189B947B1C251D8CDF /* HistoricalScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalScheduler.swift; path = RxSwift/Schedulers/HistoricalScheduler.swift; sourceTree = ""; }; - 9D780FDAD16A03CC25F4D6F3317B9423 /* Pods-SwaggerClientTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-acknowledgements.plist"; sourceTree = ""; }; - 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; }; - 9EBB016CF66B6C0BB04174E71EAF2638 /* Completable+AndThen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Completable+AndThen.swift"; path = "RxSwift/Traits/Completable+AndThen.swift"; sourceTree = ""; }; - 9EE2EAE0E0573E1277A1F494432D3A97 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; - 9F147B75837013A90F74D3A6C6520459 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; - A197C662760E45CE7A0D1261B431FDFB /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; - A20D49043407895824639AB379667392 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; - A4396561FA55B095E5EC0AE59830FEA9 /* RxAtomic.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxAtomic.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A4810EBF55051A5DC31D543402ABA077 /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/ToArray.swift; sourceTree = ""; }; - A8E1B9393D5148667FDA9BA056A3BC93 /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Using.swift; sourceTree = ""; }; - A96A149BEF2050A37CD9A96E57AF2FE2 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; - A9BE9E4EC3C181F7F793F96B3BE8F86C /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PetstoreClient.framework; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - AA2852020F927816CCDE72C6511D2E4F /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; - AADF426E4B27104D1C0E8E12CB955499 /* Materialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Materialize.swift; path = RxSwift/Observables/Materialize.swift; sourceTree = ""; }; - AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; }; - ABD562C4B8846212921BC7D057BB6BE0 /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/DistinctUntilChanged.swift; sourceTree = ""; }; - ACF69EF0FF10DA3A1C1A5EB8232E82D9 /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; - AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.debug.xcconfig"; sourceTree = ""; }; - AE89AF9B68664214AC9CCD4C5BF44558 /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; - AEFF25499925E3BFAD0124014F092C1D /* String+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Rx.swift"; path = "RxSwift/Extensions/String+Rx.swift"; sourceTree = ""; }; - B205625D2532E00F088ECF926CF8A092 /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; - B3F3054BB754BEE6F75BBBDF61EA0802 /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; - B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIs.swift; path = PetstoreClient/Classes/OpenAPIs/APIs.swift; sourceTree = ""; }; - B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PetstoreClient.xcconfig; sourceTree = ""; }; - B53CBEA40E998EB056F37F72D27CD7E9 /* RxAtomic-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxAtomic-dummy.m"; sourceTree = ""; }; - B5FDE71DA7D116F7D2A3A903BFCC22DE /* Completable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Completable.swift; path = RxSwift/Traits/Completable.swift; sourceTree = ""; }; - B70A72E268366835E7762937B2D551B9 /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Scan.swift; sourceTree = ""; }; - B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodableEncoding.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift; sourceTree = ""; }; - B9FF28D5141A09EC43E5751AFCFF6F5C /* Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delay.swift; path = RxSwift/Observables/Delay.swift; sourceTree = ""; }; - BABDB7EECAD68CE6713731AF29AE334E /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Debug.swift; sourceTree = ""; }; - BBF526890A2DCF73707BD12E37C773FE /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Producer.swift; sourceTree = ""; }; - BE5F7957B466E1AE0A4FDC0DC040EBC3 /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Merge.swift; sourceTree = ""; }; - BECB892EE935A9B666E0EF1449C295B1 /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; - C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; }; - C35FA7574B8867FB7DA037AB7C30F82B /* VirtualTimeConverterType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeConverterType.swift; path = RxSwift/Schedulers/VirtualTimeConverterType.swift; sourceTree = ""; }; - C472BBCF4E7828F9351794304E35DAB5 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; - C4A0C6506BBE76189174FFF1C0ECCFB4 /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Empty.swift; sourceTree = ""; }; - C59929454AF9BAB3E825AB4632A4963B /* Pods_SwaggerClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClient.framework; path = "Pods-SwaggerClient.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; }; - C7646978EDF8E84559E93D30EFE59CF1 /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Repeat.swift; sourceTree = ""; }; - C78EABFE61E6B1A811A930550037EC14 /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; - CAE416C03B1C99A9468CF0725D1141B4 /* PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrimitiveSequence.swift; path = RxSwift/Traits/PrimitiveSequence.swift; sourceTree = ""; }; - CAF6F32F117197F6F08B477687F09728 /* Pods-SwaggerClientTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClientTests-frameworks.sh"; sourceTree = ""; }; - CD79BDCFFE2B03FF4DE1424A60893B1D /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Zip+arity.swift"; sourceTree = ""; }; - CDDF69070AD2DA47959FDA346CBEF596 /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/StartWith.swift; sourceTree = ""; }; - CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClientTests-umbrella.h"; sourceTree = ""; }; - CFA4F581E074596AB5C3DAF3D9C39F17 /* Pods-SwaggerClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClient.modulemap"; sourceTree = ""; }; - D0C0EB5B01F72A9A45B1BA302716832A /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; - D17862ECB73D530AB2CB1BB84C30B7FB /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Switch.swift; sourceTree = ""; }; - D181D395BCD88FFF4CDF8C79D9029352 /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Multicast.swift; sourceTree = ""; }; - D1903E9147683D5A20200EB371B1F05A /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - D2440DF1256E6178508CDE576FF05C58 /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; - D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; }; - D3E976E4111B5963B6A10C1115A2B7F3 /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxSwift.modulemap; sourceTree = ""; }; - D3F2F6C7ABD293E38CE490E2AFC2822F /* CombineLatest+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+Collection.swift"; path = "RxSwift/Observables/CombineLatest+Collection.swift"; sourceTree = ""; }; - D47B812D78D0AE64D85D16A96840F8C4 /* Pods-SwaggerClientTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClientTests-acknowledgements.markdown"; sourceTree = ""; }; - D4B29F771737024D5D0647D09CAE40AE /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; - D4CB86939084A7653D7D2872DB15C566 /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; - D502F97561E6B388CF419FFF52567776 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; - D6C1F5DFD70877790B3B7DC3734ADE96 /* Enumerated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Enumerated.swift; path = RxSwift/Observables/Enumerated.swift; sourceTree = ""; }; - D7893AB4C41FD80660DDF4F3B33879B4 /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/DelaySubscription.swift; sourceTree = ""; }; - D7F3D755E1226679E9F9D292231A71F1 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; }; - DA9014E4D9949575D32FE4D360BA8228 /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; - DC67F6C45063E440FD82384FFC8B9ABB /* HistoricalSchedulerTimeConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalSchedulerTimeConverter.swift; path = RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift; sourceTree = ""; }; - DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; }; - DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; }; - DFBEC495F16B07CA34642DC026B7CA72 /* Bag+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Bag+Rx.swift"; path = "RxSwift/Extensions/Bag+Rx.swift"; sourceTree = ""; }; - E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; }; - E1FDBDA49809804394F3C90F24F2A0CC /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; - E23B1106B6F189797A626CB356652BD4 /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/AddRef.swift; sourceTree = ""; }; - E286E47141F7238BA67134C06C8A3B41 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; - E32BC69D1BB4881AFA1EE22349A39941 /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/SkipUntil.swift; sourceTree = ""; }; - E35A05D580524329B8465803EEDC83E1 /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Throttle.swift; sourceTree = ""; }; - E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; }; - E598558BB8A967463CCF9C52AB9B68D8 /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Generate.swift; sourceTree = ""; }; - E5A46D45023C6CBF06AA36844D59C59E /* User.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; - E629D35B39A4F52AB475A7D50109FC01 /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/Internal/InvocableScheduledItem.swift; sourceTree = ""; }; - E77D2C7C8AEF3CF4649CCFE47F429AFC /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/TakeWhile.swift; sourceTree = ""; }; - E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; }; - E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; }; - EB4448FE1CEBDAA5ECDE918236531759 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - EBD795757F40658014CE4D2170BC56EF /* DefaultIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultIfEmpty.swift; path = RxSwift/Observables/DefaultIfEmpty.swift; sourceTree = ""; }; - EBDDAF28A70D5CE1FBE34F18AB303360 /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxSwift/Deprecated.swift; sourceTree = ""; }; - F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.release.xcconfig"; sourceTree = ""; }; - F3E1116FA9F9F3AFD9332B7236F6E711 /* Pods-SwaggerClientTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClientTests-resources.sh"; sourceTree = ""; }; - F4A93121BD06BC69BFC4C9B3F04264CD /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Concat.swift; sourceTree = ""; }; - F4BB3B2146310CA18C30F145BFF15BD9 /* Pods-SwaggerClient-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-resources.sh"; sourceTree = ""; }; - F6895FB2CB932892FC0A63C5A2ED5707 /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Skip.swift; sourceTree = ""; }; - F74D23F29997DBC2D8D3E877067A6575 /* AsyncSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncSubject.swift; path = RxSwift/Subjects/AsyncSubject.swift; sourceTree = ""; }; - F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClient-dummy.m"; sourceTree = ""; }; - F91A5F83D79D90843B8E0DF27F74DC94 /* RxAtomic.c */ = {isa = PBXFileReference; includeInIndex = 1; name = RxAtomic.c; path = RxAtomic/RxAtomic.c; sourceTree = ""; }; - FD06CCCAF7E011CE929AA102BE4ADD5B /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Zip.swift; sourceTree = ""; }; - FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; }; - FDB3743CD667A907E68D4B1C8BA7F8C2 /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Reduce.swift; sourceTree = ""; }; - FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.release.xcconfig"; sourceTree = ""; }; - FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Models.swift; path = PetstoreClient/Classes/OpenAPIs/Models.swift; sourceTree = ""; }; - FECB278917C7651872C44FB1C0B6E620 /* Category.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; }; - FF0507F26AA2F7F71DA23B7B1064FEBE /* ShareReplayScope.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplayScope.swift; path = RxSwift/Observables/ShareReplayScope.swift; sourceTree = ""; }; - FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; }; + 0027A132D8BB718973989368CF5E63CF /* TakeUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeUntil.swift; path = RxSwift/Observables/TakeUntil.swift; sourceTree = ""; }; + 02322A6B0543DADA4A6CB13A420ADA46 /* Capitalization.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Capitalization.md; path = docs/Capitalization.md; sourceTree = ""; }; + 02C7203E47628DD3832410EEA16A1D8B /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; + 0440E1381A0610C4FE76AA2AF1814289 /* JSONEncodableEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodableEncoding.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift; sourceTree = ""; }; + 0568635049F72DE8DD05757186436324 /* Return.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Return.swift; sourceTree = ""; }; + 060AAA21729D90B11F6FD9102F628758 /* Reduce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reduce.swift; path = RxSwift/Observables/Reduce.swift; sourceTree = ""; }; + 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.release.xcconfig"; sourceTree = ""; }; + 0723F133C41FD08232F74124D0E3FC2E /* RxSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-prefix.pch"; sourceTree = ""; }; + 0755658D38EA295B964DD3D2AE6130E8 /* ApiResponse.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ApiResponse.swift; sourceTree = ""; }; + 0757CDB69F181DE86D31F260259CC63B /* StringBooleanMap.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StringBooleanMap.swift; sourceTree = ""; }; + 09F1E9D95E719B94DD98DDDB394278F2 /* PublishSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PublishSubject.swift; path = RxSwift/Subjects/PublishSubject.swift; sourceTree = ""; }; + 0AB84B97D3A773262405DAE614E8AAC8 /* ArrayOfNumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayOfNumberOnly.md; path = docs/ArrayOfNumberOnly.md; sourceTree = ""; }; + 0ACE6B378AD271E3ECC20C3EB267F4D8 /* Completable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Completable.swift; path = RxSwift/Traits/Completable.swift; sourceTree = ""; }; + 0AF5386FC035BD7FBDA0B02884DE8324 /* SynchronizedDisposeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedDisposeType.swift; path = RxSwift/Concurrency/SynchronizedDisposeType.swift; sourceTree = ""; }; + 0B2EDA68E233F400804C89253BBFB2E5 /* TypeHolderExample.md */ = {isa = PBXFileReference; includeInIndex = 1; name = TypeHolderExample.md; path = docs/TypeHolderExample.md; sourceTree = ""; }; + 0D180F35B94BC88CF6D264D1CDF42624 /* MapTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = MapTest.md; path = docs/MapTest.md; sourceTree = ""; }; + 0D4584BAE72539FDF3D31787762B39D0 /* ObserverType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverType.swift; path = RxSwift/ObserverType.swift; sourceTree = ""; }; + 0F39AA54BB1773329C8151B721ED0D09 /* Pods_SwaggerClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClient.framework; path = "Pods-SwaggerClient.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 0FA93D91962228BFC4F2058578D7A9EB /* GroupedObservable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupedObservable.swift; path = RxSwift/GroupedObservable.swift; sourceTree = ""; }; + 0FDDD670EFAE8A21A0BD76C684193FAE /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 10A297E0A593ED4485BF3BAA9211E812 /* BehaviorSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BehaviorSubject.swift; path = RxSwift/Subjects/BehaviorSubject.swift; sourceTree = ""; }; + 110A71E71814850BBCD440AF198317DF /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 13431ED497EC52994DA35A8DD3CB5C3C /* DelaySubscription.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DelaySubscription.swift; path = RxSwift/Observables/DelaySubscription.swift; sourceTree = ""; }; + 14AAB621715B4F0218EABE72CE972494 /* PetstoreClient.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = PetstoreClient.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 14D946B2CD75D612D3AE3F72880C7FF3 /* Event.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Event.swift; path = RxSwift/Event.swift; sourceTree = ""; }; + 1555637002FBEDE13C94AEA5F61C763B /* RefCountDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RefCountDisposable.swift; path = RxSwift/Disposables/RefCountDisposable.swift; sourceTree = ""; }; + 192DC760893AF9295AD26599EF40763D /* Sample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sample.swift; path = RxSwift/Observables/Sample.swift; sourceTree = ""; }; + 19A8FEF66E4D85F1B100E0AD77AC60B1 /* TailRecursiveSink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TailRecursiveSink.swift; path = RxSwift/Observers/TailRecursiveSink.swift; sourceTree = ""; }; + 19B33AA036CD6E46A97113343C8904A0 /* FormatTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FormatTest.md; path = docs/FormatTest.md; sourceTree = ""; }; + 1AA4FF009847666EB74179EA6C75DE4D /* FakeAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FakeAPI.md; path = docs/FakeAPI.md; sourceTree = ""; }; + 240EE4633A0C295594350E7EC54BA3DF /* Reactive.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Reactive.swift; path = RxSwift/Reactive.swift; sourceTree = ""; }; + 25B4A2E0DAA89840BB58C5D472574F66 /* SkipUntil.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipUntil.swift; path = RxSwift/Observables/SkipUntil.swift; sourceTree = ""; }; + 2740D21DE2F99C963ACDC4261609EE50 /* NumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = NumberOnly.md; path = docs/NumberOnly.md; sourceTree = ""; }; + 274B9D4CA658622B79DCE0F5E736A061 /* ObserveOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserveOn.swift; path = RxSwift/Observables/ObserveOn.swift; sourceTree = ""; }; + 2788B53C02374D910EFFBCF48BFF0B1D /* String+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+Rx.swift"; path = "RxSwift/Extensions/String+Rx.swift"; sourceTree = ""; }; + 27B1CB7693D74DF7AB61FB3A0064A532 /* Platform.Linux.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Linux.swift; path = Platform/Platform.Linux.swift; sourceTree = ""; }; + 27F63D218F3E7685156696F53CEAB647 /* DefaultIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DefaultIfEmpty.swift; path = RxSwift/Observables/DefaultIfEmpty.swift; sourceTree = ""; }; + 28350F99E9985C0EFD64D72D74A3BB5B /* Models.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Models.swift; path = PetstoreClient/Classes/OpenAPIs/Models.swift; sourceTree = ""; }; + 2895E1635E3A30E234670ED9283C23EA /* MixedPropertiesAndAdditionalPropertiesClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = MixedPropertiesAndAdditionalPropertiesClass.md; path = docs/MixedPropertiesAndAdditionalPropertiesClass.md; sourceTree = ""; }; + 28DB89F2024F2DDD08AE89C3006D009E /* PetstoreClient.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PetstoreClient.xcconfig; sourceTree = ""; }; + 28DE248049BE51CEA8ED1544F9D7FE9E /* BooleanDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BooleanDisposable.swift; path = RxSwift/Disposables/BooleanDisposable.swift; sourceTree = ""; }; + 291E627729F653AC7E4BAB6FEDE416E3 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = RxSwift/Observables/Filter.swift; sourceTree = ""; }; + 2AE97CCDC8C4D014282DFBAE17CD786F /* ArrayTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayTest.md; path = docs/ArrayTest.md; sourceTree = ""; }; + 2B2AAC902CD2815AAAFD57064F19AB84 /* PetstoreClient-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-prefix.pch"; sourceTree = ""; }; + 2BF070C783A6786C9C92AA917E9AC879 /* HistoricalScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalScheduler.swift; path = RxSwift/Schedulers/HistoricalScheduler.swift; sourceTree = ""; }; + 2C7E8D8382CCB07D68866B995A900D74 /* AtomicInt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AtomicInt.swift; path = Platform/AtomicInt.swift; sourceTree = ""; }; + 2CD8220D45545AC2A21A066A562081FF /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RxSwift/Observables/Optional.swift; sourceTree = ""; }; + 2CEA210E8205F311B1A19569BCDDEF63 /* RxMutableBox.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RxMutableBox.swift; path = RxSwift/RxMutableBox.swift; sourceTree = ""; }; + 2E62E4A381F97286B84952D8ABA59681 /* Animal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Animal.swift; sourceTree = ""; }; + 2EAED007F778FE48F4D3EB2B398B0AFB /* Repeat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Repeat.swift; path = RxSwift/Observables/Repeat.swift; sourceTree = ""; }; + 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClient-umbrella.h"; sourceTree = ""; }; + 2F4CC7E2EF21164D2E203FEAF12D869A /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; + 2F77FDC4F04FEF422ACDCD587C512559 /* RxSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RxSwift-dummy.m"; sourceTree = ""; }; + 305616479EFCF33CB4768627955493AB /* InvocableScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableScheduledItem.swift; path = RxSwift/Schedulers/Internal/InvocableScheduledItem.swift; sourceTree = ""; }; + 31ED5C3525921534592BF796A9C159CF /* Pods-SwaggerClientTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-acknowledgements.plist"; sourceTree = ""; }; + 321D200CF6D488D976163C6A790DB8AA /* DispatchQueueConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DispatchQueueConfiguration.swift; path = RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift; sourceTree = ""; }; + 32615BCCDB0302A683583113699C168B /* Create.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Create.swift; path = RxSwift/Observables/Create.swift; sourceTree = ""; }; + 32DEB152EA23784FF891FB3850E4A1FE /* Pet.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Pet.swift; sourceTree = ""; }; + 33796A172718E1356E0E8337BAE01CD2 /* SchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SchedulerType.swift; path = RxSwift/SchedulerType.swift; sourceTree = ""; }; + 33FB85D186079ED93696702AD931FFDA /* ToArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ToArray.swift; path = RxSwift/Observables/ToArray.swift; sourceTree = ""; }; + 342554F69C1610DDADF3EBAC284CC8F6 /* UserAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAPI.swift; sourceTree = ""; }; + 353DE1A4F630D656323F08E7DBB62F93 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; + 35FACC9017B95B9A2C4A6F43E6168BE3 /* CodableHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CodableHelper.swift; path = PetstoreClient/Classes/OpenAPIs/CodableHelper.swift; sourceTree = ""; }; + 378449150E818606AADBD6FB5A562D0D /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; + 387EBB01DADD396614945A01970A8222 /* StoreAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = StoreAPI.swift; sourceTree = ""; }; + 39AE2AD9A01457ED8AC57D692A5F40AD /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; + 39F74B8F482952B4F0D1ECBE5D900E09 /* Capitalization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Capitalization.swift; sourceTree = ""; }; + 3C12C50651DC7C8FE70BC93359C255DF /* PetAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PetAPI.swift; sourceTree = ""; }; + 3D608B4966D9E19DF62468677C823AC5 /* Tag.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Tag.md; path = docs/Tag.md; sourceTree = ""; }; + 40D138874AFF1185A99996B4180C5AAB /* DisposeBag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBag.swift; path = RxSwift/Disposables/DisposeBag.swift; sourceTree = ""; }; + 40FA27876F7533BCDAAEB14AED6CC511 /* MapTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MapTest.swift; sourceTree = ""; }; + 410ED99EC03614CF82F7E2CCD4E628AF /* CompositeDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CompositeDisposable.swift; path = RxSwift/Disposables/CompositeDisposable.swift; sourceTree = ""; }; + 417E0C1C7F4C17857E4C0D19275C6973 /* AdditionalPropertiesString.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesString.swift; sourceTree = ""; }; + 427485D09ADF908E73C20C8E8F56313E /* AdditionalPropertiesObject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesObject.swift; sourceTree = ""; }; + 43029CD91769D491E685263C4CB46A97 /* DistinctUntilChanged.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DistinctUntilChanged.swift; path = RxSwift/Observables/DistinctUntilChanged.swift; sourceTree = ""; }; + 44F10FFC1F6C0F6A0F7C003C038C272B /* ImmediateSchedulerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImmediateSchedulerType.swift; path = RxSwift/ImmediateSchedulerType.swift; sourceTree = ""; }; + 452FB9512A491F731556BD2F110347ED /* AsyncSubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncSubject.swift; path = RxSwift/Subjects/AsyncSubject.swift; sourceTree = ""; }; + 459E274832813076884CA4287E491429 /* Using.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Using.swift; path = RxSwift/Observables/Using.swift; sourceTree = ""; }; + 45C4BA95A0FC85CD30E5DD59545AF87F /* Do.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Do.swift; path = RxSwift/Observables/Do.swift; sourceTree = ""; }; + 46285A50499BCD564104AE4AD8489A48 /* Range.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Range.swift; path = RxSwift/Observables/Range.swift; sourceTree = ""; }; + 46FC0AD10406C3CE1828C826775E9650 /* XmlItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = XmlItem.swift; sourceTree = ""; }; + 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClient-dummy.m"; sourceTree = ""; }; + 47214E2FA3F755CB7B808800197ECE59 /* UserAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = UserAPI.md; path = docs/UserAPI.md; sourceTree = ""; }; + 47729A51DD7F47ED910F54FB3FBE5393 /* File.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = File.swift; sourceTree = ""; }; + 47A00016C4275D6E28A1DD5AD98AC9AE /* ObservableType+PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+PrimitiveSequence.swift"; path = "RxSwift/Traits/ObservableType+PrimitiveSequence.swift"; sourceTree = ""; }; + 498E9106F2911C5C575288660EF2C14A /* Never.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Never.swift; path = RxSwift/Observables/Never.swift; sourceTree = ""; }; + 49A9E858642895322172FF16226C86AC /* Buffer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Buffer.swift; path = RxSwift/Observables/Buffer.swift; sourceTree = ""; }; + 49E9CEC3564840C6531A01B3402A3A12 /* Catch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catch.swift; path = RxSwift/Observables/Catch.swift; sourceTree = ""; }; + 4A4CFDCD285AB04B85A4EF0446C859E4 /* EnumClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumClass.md; path = docs/EnumClass.md; sourceTree = ""; }; + 4B22542F5E9A061C9F6214D75923635D /* RxSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RxSwift-umbrella.h"; sourceTree = ""; }; + 4B5420BA5CD952DA0D4A8A31E4D69CC2 /* Sequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sequence.swift; path = RxSwift/Observables/Sequence.swift; sourceTree = ""; }; + 4C008FB60F065D079DB1F0C69B60DDEA /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; + 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwaggerClientTests-dummy.m"; sourceTree = ""; }; + 4C42EB9688F37F35C9110C57A8075DC4 /* BinaryDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BinaryDisposable.swift; path = RxSwift/Disposables/BinaryDisposable.swift; sourceTree = ""; }; + 4DC5DC2F9BCEFA797895B33C16D2B17E /* Pods-SwaggerClient-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-Info.plist"; sourceTree = ""; }; + 4F8AC481F02DAF666B64D9A62FA7109F /* AnotherFakeAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AnotherFakeAPI.md; path = docs/AnotherFakeAPI.md; sourceTree = ""; }; + 4FB24B4936663207D1E346C5B6B9EAD4 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; + 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwaggerClientTests-umbrella.h"; sourceTree = ""; }; + 5076FFA46D2287FC8EC0C217FC4BA0B7 /* Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+arity.swift"; path = "RxSwift/Observables/Zip+arity.swift"; sourceTree = ""; }; + 5164EAF5A81C9C991085A3D5BA3A7627 /* FakeClassnameTags123API.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FakeClassnameTags123API.md; path = docs/FakeClassnameTags123API.md; sourceTree = ""; }; + 51BEBD9500775258E10801B2D4636130 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; + 54212BBF40F065FC93C168C875E2E209 /* CombineLatest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CombineLatest.swift; path = RxSwift/Observables/CombineLatest.swift; sourceTree = ""; }; + 55000F129FE5A09A0B51661892DB1F4E /* RecursiveLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveLock.swift; path = Platform/RecursiveLock.swift; sourceTree = ""; }; + 55A64F269657828EFCFE8BFEBEC769FC /* APIs.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIs.swift; path = PetstoreClient/Classes/OpenAPIs/APIs.swift; sourceTree = ""; }; + 55B63E482462E54A5366DAEA6318FB7E /* SerialDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDisposable.swift; path = RxSwift/Disposables/SerialDisposable.swift; sourceTree = ""; }; + 55D378FA7C24F905373016C59B3BE2C4 /* ArrayOfArrayOfNumberOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ArrayOfArrayOfNumberOnly.md; path = docs/ArrayOfArrayOfNumberOnly.md; sourceTree = ""; }; + 56430A53624DF50D17D8AB350D129613 /* Name.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Name.md; path = docs/Name.md; sourceTree = ""; }; + 575E60871C2A868C6B6D235B2DE25D83 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; + 57C559BAD8B2B8C949DA1C1837C049C6 /* TakeLast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeLast.swift; path = RxSwift/Observables/TakeLast.swift; sourceTree = ""; }; + 59A65FEE7BCD66D95A4A236D44082214 /* ArrayOfArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfArrayOfNumberOnly.swift; sourceTree = ""; }; + 5A4C226AA31A4DF5F6CE9579AE514B34 /* ClassModel.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ClassModel.md; path = docs/ClassModel.md; sourceTree = ""; }; + 5A8B9F6DB3E903DC9635F9DA16D90A0C /* Cancelable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Cancelable.swift; path = RxSwift/Cancelable.swift; sourceTree = ""; }; + 5B6C60D7E233892084DAC43F60C64C60 /* ObservableType+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ObservableType+Extensions.swift"; path = "RxSwift/ObservableType+Extensions.swift"; sourceTree = ""; }; + 5EBFB4694957EBED5253C544C3917DBC /* Category.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Category.md; path = docs/Category.md; sourceTree = ""; }; + 5FF198528C6AE20A99A5E33F76D0C527 /* Map.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Map.swift; path = RxSwift/Observables/Map.swift; sourceTree = ""; }; + 608A407DE2A47612643C9271D707558C /* EnumTest.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumTest.md; path = docs/EnumTest.md; sourceTree = ""; }; + 60E9C1BF2A5AAD8532B83D587D4B447A /* Queue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Queue.swift; path = Platform/DataStructures/Queue.swift; sourceTree = ""; }; + 618C90E6044C36C76F3590183ED38CB2 /* Pods-SwaggerClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClient.modulemap"; sourceTree = ""; }; + 62326983DDFE0858FB48A88B024EAE9D /* Debounce.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debounce.swift; path = RxSwift/Observables/Debounce.swift; sourceTree = ""; }; + 64F819D835354426411C22FB35823EAD /* AddRef.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AddRef.swift; path = RxSwift/Observables/AddRef.swift; sourceTree = ""; }; + 65FF8529B526BB8EC9A7CB5716CEB89F /* Zip+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Zip+Collection.swift"; path = "RxSwift/Observables/Zip+Collection.swift"; sourceTree = ""; }; + 679C1F8FF956155F71A31E63595C9AB9 /* DispatchQueue+Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Extensions.swift"; path = "Platform/DispatchQueue+Extensions.swift"; sourceTree = ""; }; + 6DA209283C4EBF0544FF63C7D1BCC40D /* VirtualTimeScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeScheduler.swift; path = RxSwift/Schedulers/VirtualTimeScheduler.swift; sourceTree = ""; }; + 6DB4CEA0C0A7C4823A04EAD9FBA3961D /* Throttle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Throttle.swift; path = RxSwift/Observables/Throttle.swift; sourceTree = ""; }; + 6E67D2FEF499445214AF84B7B9C9B33E /* TakeWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TakeWhile.swift; path = RxSwift/Observables/TakeWhile.swift; sourceTree = ""; }; + 6EDF3214C286AFD4841B3551A037B0A9 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 6F10D694F6B9493FDA575E60FE695722 /* ElementAt.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ElementAt.swift; path = RxSwift/Observables/ElementAt.swift; sourceTree = ""; }; + 6F9F8165FD8B1C4B07F06F5DCDDDE89A /* Pods_SwaggerClientTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwaggerClientTests.framework; path = "Pods-SwaggerClientTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 70180A07F00266A41D515742CBA72B74 /* SubscribeOn.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscribeOn.swift; path = RxSwift/Observables/SubscribeOn.swift; sourceTree = ""; }; + 717C1608162B27019EBC04A33444BAEE /* ScheduledDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledDisposable.swift; path = RxSwift/Disposables/ScheduledDisposable.swift; sourceTree = ""; }; + 720601B930B8E6FB3B449B0C3EFB451F /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; + 7239C4B748D482C26AE3B3EC168AD371 /* Category.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Category.swift; sourceTree = ""; }; + 745314207D827581C481CE38F4AEB7A3 /* VirtualTimeConverterType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = VirtualTimeConverterType.swift; path = RxSwift/Schedulers/VirtualTimeConverterType.swift; sourceTree = ""; }; + 757C5919A405D111AADAF18AFDDD9D5A /* SynchronizedOnType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedOnType.swift; path = RxSwift/Concurrency/SynchronizedOnType.swift; sourceTree = ""; }; + 758C5C2D6382B0F77807EFFC06E82BC4 /* OuterEnum.md */ = {isa = PBXFileReference; includeInIndex = 1; name = OuterEnum.md; path = docs/OuterEnum.md; sourceTree = ""; }; + 75E2A26619203BE094E23132BE4F9C6D /* OuterComposite.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterComposite.swift; sourceTree = ""; }; + 7628A653BCE0CE4F0CA24E4699FF04E5 /* AdditionalPropertiesAnyType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesAnyType.swift; sourceTree = ""; }; + 77CBC56217930F052D637B82D048BA3F /* GroupBy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = GroupBy.swift; path = RxSwift/Observables/GroupBy.swift; sourceTree = ""; }; + 77E4025C4EF246541D617C626370FC16 /* Client.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Client.swift; sourceTree = ""; }; + 799B734D0D692695C613949A6115718D /* Dog.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Dog.md; path = docs/Dog.md; sourceTree = ""; }; + 79A4D30F2478E26FEA80A716FA038512 /* Multicast.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Multicast.swift; path = RxSwift/Observables/Multicast.swift; sourceTree = ""; }; + 7AB42A286E75A2848A769570F01DAC24 /* AnyObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyObserver.swift; path = RxSwift/AnyObserver.swift; sourceTree = ""; }; + 7B49FF45429D57DA0487C5BD90AA6398 /* CombineLatest+Collection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+Collection.swift"; path = "RxSwift/Observables/CombineLatest+Collection.swift"; sourceTree = ""; }; + 7B990C87BD5B32BF54E420212C1A52B1 /* PrimitiveSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PrimitiveSequence.swift; path = RxSwift/Traits/PrimitiveSequence.swift; sourceTree = ""; }; + 7C8CB70C6C6B09D4BB90057C9BA7EEC2 /* PriorityQueue.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PriorityQueue.swift; path = Platform/DataStructures/PriorityQueue.swift; sourceTree = ""; }; + 7D2AE1A0BBE6459478A73D38848B588E /* AdditionalPropertiesClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AdditionalPropertiesClass.md; path = docs/AdditionalPropertiesClass.md; sourceTree = ""; }; + 7D6449B4CFED6A13D7216B47179E7E4A /* OuterComposite.md */ = {isa = PBXFileReference; includeInIndex = 1; name = OuterComposite.md; path = docs/OuterComposite.md; sourceTree = ""; }; + 7EC9D77DAB6AE650C74E828CE1557C00 /* MainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MainScheduler.swift; path = RxSwift/Schedulers/MainScheduler.swift; sourceTree = ""; }; + 7F4E8DC898B4C8D35F09B107CE705172 /* Amb.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Amb.swift; path = RxSwift/Observables/Amb.swift; sourceTree = ""; }; + 8050204E8821E9A399D7E830591E063B /* Take.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Take.swift; path = RxSwift/Observables/Take.swift; sourceTree = ""; }; + 80EBCAEF4DEEB18B34DC5033FF20ECA8 /* Platform.Darwin.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Platform.Darwin.swift; path = Platform/Platform.Darwin.swift; sourceTree = ""; }; + 81629AD2DFFED981E047483057BE1362 /* ReadOnlyFirst.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ReadOnlyFirst.md; path = docs/ReadOnlyFirst.md; sourceTree = ""; }; + 8308F433372AEFC6D557F1856FC9DA01 /* JSONEncodingHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = JSONEncodingHelper.swift; path = PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift; sourceTree = ""; }; + 836ADD02498B971DAA473321782A72A0 /* StartWith.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = StartWith.swift; path = RxSwift/Observables/StartWith.swift; sourceTree = ""; }; + 857C9FC7F70D66015A686E5E392AB04F /* HasOnlyReadOnly.md */ = {isa = PBXFileReference; includeInIndex = 1; name = HasOnlyReadOnly.md; path = docs/HasOnlyReadOnly.md; sourceTree = ""; }; + 8688291EDCC3CA07AEFAFFDC3ABBE224 /* Tag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Tag.swift; sourceTree = ""; }; + 86A0FB6358543AEAB83BC45DD397D732 /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 87ADA33E38CF943875922CB316D2A29A /* Order.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Order.swift; sourceTree = ""; }; + 88BE3C1FFB1B8A373D68AFE8E2CE9E5B /* Dog.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Dog.swift; sourceTree = ""; }; + 892F30771518EB494D89A92413C04E85 /* Extensions.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Extensions.swift; path = PetstoreClient/Classes/OpenAPIs/Extensions.swift; sourceTree = ""; }; + 8942B778DC2EC96252BBB267B62D566B /* Scan.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Scan.swift; path = RxSwift/Observables/Scan.swift; sourceTree = ""; }; + 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.debug.xcconfig"; sourceTree = ""; }; + 89D4EF25430724C9CA591320E91F6ADE /* AnotherFakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnotherFakeAPI.swift; sourceTree = ""; }; + 8C65830349B23D7E262AB27BAB0E8188 /* PrimitiveSequence+Zip+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "PrimitiveSequence+Zip+arity.swift"; path = "RxSwift/Traits/PrimitiveSequence+Zip+arity.swift"; sourceTree = ""; }; + 8CF5B2C124751B1983FA287330A81E51 /* TypeHolderDefault.md */ = {isa = PBXFileReference; includeInIndex = 1; name = TypeHolderDefault.md; path = docs/TypeHolderDefault.md; sourceTree = ""; }; + 8CFB12945932D18A9721B6AF2D8D871E /* Delay.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Delay.swift; path = RxSwift/Observables/Delay.swift; sourceTree = ""; }; + 8D048EFF0C58F0BC4BBC956A98937739 /* ObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableType.swift; path = RxSwift/ObservableType.swift; sourceTree = ""; }; + 8D44154CE37C1B66CDC3D69453887262 /* AsyncLock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsyncLock.swift; path = RxSwift/Concurrency/AsyncLock.swift; sourceTree = ""; }; + 8E271F2E357A3F1A972FF120671638B4 /* ClassModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ClassModel.swift; sourceTree = ""; }; + 8E309FED474011CFC561423B6D04ED9D /* Cat.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Cat.md; path = docs/Cat.md; sourceTree = ""; }; + 8E3B161DE103995FAFA429C1AD3E2875 /* DisposeBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DisposeBase.swift; path = RxSwift/Disposables/DisposeBase.swift; sourceTree = ""; }; + 8E7E635C33CF3DE53B838B378535F65C /* FormatTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FormatTest.swift; sourceTree = ""; }; + 901441DA8E39EF973EBE8D69C2CDADE7 /* Pods-SwaggerClientTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClientTests-Info.plist"; sourceTree = ""; }; + 90A6677EB26AA075208F098879E425DD /* List.md */ = {isa = PBXFileReference; includeInIndex = 1; name = List.md; path = docs/List.md; sourceTree = ""; }; + 9289A1C05392D4FF88A897B4FDF77958 /* Bag.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Bag.swift; path = Platform/DataStructures/Bag.swift; sourceTree = ""; }; + 928B725115295804C613BD7C865C8201 /* PetstoreClient.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PetstoreClient.modulemap; sourceTree = ""; }; + 9448B03916DFC494CD68A614565A98B8 /* Pods-SwaggerClient-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwaggerClient-frameworks.sh"; sourceTree = ""; }; + 95300CC9035C5766B62FE4FB54FA5951 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; + 96FB30FE91CE11061D85EA6BDBE094E3 /* Pods-SwaggerClient-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwaggerClient-acknowledgements.plist"; sourceTree = ""; }; + 979ECDDE99CE790DA21FE87298107E6B /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RxSwift/Observables/Error.swift; sourceTree = ""; }; + 97AE2157FA464312716D670ACC5FBA81 /* ArrayOfNumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayOfNumberOnly.swift; sourceTree = ""; }; + 97CEA1BED002ABF0D6E5E078FB3F5895 /* ApiResponse.md */ = {isa = PBXFileReference; includeInIndex = 1; name = ApiResponse.md; path = docs/ApiResponse.md; sourceTree = ""; }; + 97D7A50019AFFCCD39301BD1E594F91C /* SwitchIfEmpty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwitchIfEmpty.swift; path = RxSwift/Observables/SwitchIfEmpty.swift; sourceTree = ""; }; + 98C736C5D0850FA27DB5D0E58640C537 /* Timer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timer.swift; path = RxSwift/Observables/Timer.swift; sourceTree = ""; }; + 9A56088E87A9AACE94749A936B309080 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; + 9A9D6B8A244BC24B1DFF8AE87F94F792 /* AdditionalPropertiesBoolean.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesBoolean.swift; sourceTree = ""; }; + 9D53702B1DFE795F10CD9F02ED7196FB /* AdditionalPropertiesArray.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesArray.swift; sourceTree = ""; }; + 9D597D60E3BD5AEA174D24F7409820EB /* RxSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RxSwift.modulemap; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9ECAC6F788B1B30D9157D0A0ADC1148B /* FileSchemaTestClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FileSchemaTestClass.swift; sourceTree = ""; }; + 9F929FCCF076F0A692EA809B17DD7F31 /* Dematerialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Dematerialize.swift; path = RxSwift/Observables/Dematerialize.swift; sourceTree = ""; }; + 9FBF81FDC5C51FD450958591E8EAF6EA /* ScheduledItemType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItemType.swift; path = RxSwift/Schedulers/Internal/ScheduledItemType.swift; sourceTree = ""; }; + A0F3842CFF62B5C53CBFA83436673969 /* PetAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = PetAPI.md; path = docs/PetAPI.md; sourceTree = ""; }; + A14370E500BCD2443559DB70F2786EB6 /* Maybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Maybe.swift; path = RxSwift/Traits/Maybe.swift; sourceTree = ""; }; + A1ADB924FB5616647988483D4A2F8229 /* PetstoreClient-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "PetstoreClient-Info.plist"; sourceTree = ""; }; + A1C5824ADAF044284DC74D7785926F01 /* CatAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CatAllOf.swift; sourceTree = ""; }; + A2062FC5CF8950D95726336DA1F1F52C /* DogAllOf.md */ = {isa = PBXFileReference; includeInIndex = 1; name = DogAllOf.md; path = docs/DogAllOf.md; sourceTree = ""; }; + A2C8922E4E1E3C67279458D892BC37AD /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = PetstoreClient/Classes/OpenAPIs/Configuration.swift; sourceTree = ""; }; + A2EDBEFED12864758CCA6F411205AB2E /* SkipWhile.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SkipWhile.swift; path = RxSwift/Observables/SkipWhile.swift; sourceTree = ""; }; + A403B12907B25FC32930C07AD4DF4600 /* HasOnlyReadOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HasOnlyReadOnly.swift; sourceTree = ""; }; + A4218AB53A6385BB02D95ED58A63B6AB /* SubscriptionDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubscriptionDisposable.swift; path = RxSwift/Disposables/SubscriptionDisposable.swift; sourceTree = ""; }; + A5F4524003B8CAF5944F3FD37875D795 /* NopDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NopDisposable.swift; path = RxSwift/Disposables/NopDisposable.swift; sourceTree = ""; }; + A6DF985F6F04F63AA4A9AE7866CB8D22 /* FakeAPI.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeAPI.swift; sourceTree = ""; }; + A71552570D704D50ABA564EB978406FA /* OuterEnum.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = OuterEnum.swift; sourceTree = ""; }; + A8383047D766DF909F58645FCCF42048 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; + A933D6B3F16C58A90BFD589C4B23EE38 /* EnumTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumTest.swift; sourceTree = ""; }; + AA9CEE837EF5EE1215788BEBC3959479 /* Single.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Single.swift; path = RxSwift/Traits/Single.swift; sourceTree = ""; }; + AB1FE5BDED74EBDC047C5B437A524854 /* ConnectableObservableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConnectableObservableType.swift; path = RxSwift/ConnectableObservableType.swift; sourceTree = ""; }; + AB9FF8F32D5D6FC16033AF34AC1408FD /* HistoricalSchedulerTimeConverter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = HistoricalSchedulerTimeConverter.swift; path = RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift; sourceTree = ""; }; + ACC20A8939D21B502E71D99F130B013E /* NumberOnly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NumberOnly.swift; sourceTree = ""; }; + AE110F03859CEB598ADBC6AF0026E6C6 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; + AE55486083AAFB05A421910D689676CD /* APIHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = APIHelper.swift; path = PetstoreClient/Classes/OpenAPIs/APIHelper.swift; sourceTree = ""; }; + AE9C5D5D818389294D9B773DD491B146 /* AdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesClass.swift; sourceTree = ""; }; + AEF2F44C17F277967404CE3DA788FD46 /* ReplaySubject.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ReplaySubject.swift; path = RxSwift/Subjects/ReplaySubject.swift; sourceTree = ""; }; + AF5C3CBAA31C59F82C8DE03C448B79D8 /* Order.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Order.md; path = docs/Order.md; sourceTree = ""; }; + B048D2348C3086D80D00537EC372C755 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + B18AB9B87BF0A071727872B64CC84137 /* CurrentThreadScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CurrentThreadScheduler.swift; path = RxSwift/Schedulers/CurrentThreadScheduler.swift; sourceTree = ""; }; + B22AF668079FC82298B5D800D6E575BB /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; + B23D0E4BD36D6E24C66A8DB3F81FE656 /* ReadOnlyFirst.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ReadOnlyFirst.swift; sourceTree = ""; }; + B29AE35CD92E0CB3A64D2E581DAD2CB4 /* First.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = First.swift; path = RxSwift/Observables/First.swift; sourceTree = ""; }; + B2BC0F91A33991D668BEC3583CF46BAB /* WithLatestFrom.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = WithLatestFrom.swift; path = RxSwift/Observables/WithLatestFrom.swift; sourceTree = ""; }; + B374449845CA94813BACD80BE4751992 /* User.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = User.swift; sourceTree = ""; }; + B3B003673B45236AA5A51A70A733399D /* Empty.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Empty.swift; path = RxSwift/Observables/Empty.swift; sourceTree = ""; }; + B3DC61667E570A41266B09E2160DAF2D /* AnonymousObserver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousObserver.swift; path = RxSwift/Observers/AnonymousObserver.swift; sourceTree = ""; }; + B498E7AFBD0589628B31BD16154B20FF /* Deprecated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecated.swift; path = RxSwift/Deprecated.swift; sourceTree = ""; }; + B50B0F2486C6BB7F3AF76CD685C8B4E1 /* Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Rx.swift; path = RxSwift/Rx.swift; sourceTree = ""; }; + B52D5D8ED9723274361CA73BDC3875A0 /* FileSchemaTestClass.md */ = {isa = PBXFileReference; includeInIndex = 1; name = FileSchemaTestClass.md; path = docs/FileSchemaTestClass.md; sourceTree = ""; }; + B5A26ADF8B68902A509D1A52E825E595 /* Pet.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Pet.md; path = docs/Pet.md; sourceTree = ""; }; + B5D0270A8CD4CA80B74E5EC729FBC1A7 /* DeprecationWarner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = DeprecationWarner.swift; path = Platform/DeprecationWarner.swift; sourceTree = ""; }; + B68A320DEB52A0B2CF5A7DCD714E84D3 /* RecursiveScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RecursiveScheduler.swift; path = RxSwift/Schedulers/RecursiveScheduler.swift; sourceTree = ""; }; + B6DFB261890C61E9C5ED205C350432C6 /* DogAllOf.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DogAllOf.swift; sourceTree = ""; }; + B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClient.release.xcconfig"; sourceTree = ""; }; + BAED0C18FF2FC7D97F0E5B2D4FE37F2C /* Switch.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Switch.swift; path = RxSwift/Observables/Switch.swift; sourceTree = ""; }; + BB2944F75CA2FADBE47B2326252AAB5A /* EnumArrays.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumArrays.swift; sourceTree = ""; }; + BC49CD3902CF252FAA732A1DDA1DC1C9 /* Completable+AndThen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Completable+AndThen.swift"; path = "RxSwift/Traits/Completable+AndThen.swift"; sourceTree = ""; }; + BD2133B0A357172D4E12A35C6488638D /* Model200Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Model200Response.swift; sourceTree = ""; }; + BDE1B1C73CF83B02289A255C14E108C9 /* SingleAssignmentDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAssignmentDisposable.swift; path = RxSwift/Disposables/SingleAssignmentDisposable.swift; sourceTree = ""; }; + BE02647BBDB83E0D48469A56FBF37C88 /* Debug.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Debug.swift; path = RxSwift/Observables/Debug.swift; sourceTree = ""; }; + BE1E7C2852E09D117ECDA841F0A5CE03 /* RxSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RxSwift.framework; path = RxSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BE6232D0F85A4EF002139921CBA82C3F /* RxSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RxSwift.xcconfig; sourceTree = ""; }; + BE64C63DA4FB40ACE396982AAB244DC0 /* ObservableConvertibleType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObservableConvertibleType.swift; path = RxSwift/ObservableConvertibleType.swift; sourceTree = ""; }; + BE70B57B6CF22A99EBDA453C12741148 /* Sink.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sink.swift; path = RxSwift/Observables/Sink.swift; sourceTree = ""; }; + BF174B49C2E16DD172055DB12BC37B2F /* SpecialModelName.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SpecialModelName.swift; sourceTree = ""; }; + C2ABFCCD850DDE628412E12A3A36BC83 /* AdditionalPropertiesNumber.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesNumber.swift; sourceTree = ""; }; + C308A93504B6AE628F892297A6EDD347 /* InfiniteSequence.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InfiniteSequence.swift; path = Platform/DataStructures/InfiniteSequence.swift; sourceTree = ""; }; + C3633BEF1B1742609980D8C0500E4519 /* Client.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Client.md; path = docs/Client.md; sourceTree = ""; }; + C3FFE137AD3E253AC3CC98BDB629E1CC /* PetstoreClient-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PetstoreClient-dummy.m"; sourceTree = ""; }; + C54917ABF2432A86A6CCB0EABE76F916 /* Animal.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Animal.md; path = docs/Animal.md; sourceTree = ""; }; + C5A7024FF197192803FBC9F7CEFD9C87 /* SubjectType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SubjectType.swift; path = RxSwift/Subjects/SubjectType.swift; sourceTree = ""; }; + C5FFB8448F56996188428783F8C6C98F /* Disposables.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposables.swift; path = RxSwift/Disposables/Disposables.swift; sourceTree = ""; }; + C638F1FAA7FFA890ACB0BAD594BAA07B /* AsSingle.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsSingle.swift; path = RxSwift/Observables/AsSingle.swift; sourceTree = ""; }; + C645ED7A39D8B9114C20CAFE2B7FBC2B /* AlamofireImplementations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AlamofireImplementations.swift; path = PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift; sourceTree = ""; }; + C692DE62E3C756A61E2E9C829EA0BCE6 /* TypeHolderDefault.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = TypeHolderDefault.swift; sourceTree = ""; }; + C71AEC0AF13D31F11719E203832081AF /* Concat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Concat.swift; path = RxSwift/Observables/Concat.swift; sourceTree = ""; }; + C745F77F676CBAE7E68106481E9DF4B9 /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; + C894BEC0DE9A446CBB01A0B7D63DA38A /* Materialize.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Materialize.swift; path = RxSwift/Observables/Materialize.swift; sourceTree = ""; }; + C89F6DBCB4EBE505168C934C00DB909D /* Lock.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Lock.swift; path = RxSwift/Concurrency/Lock.swift; sourceTree = ""; }; + CB268230F2A96F71335E107E497BC32C /* AdditionalPropertiesInteger.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AdditionalPropertiesInteger.swift; sourceTree = ""; }; + CB834FF7C5DF4A05EB6179428E1A2D30 /* InvocableType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = InvocableType.swift; path = RxSwift/Schedulers/Internal/InvocableType.swift; sourceTree = ""; }; + CD714B38F6C265C97287CD6F713F3398 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; + CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwaggerClientTests.debug.xcconfig"; sourceTree = ""; }; + CF92C4858F759EABBDDB45D32BE8DDC2 /* SerialDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SerialDispatchQueueScheduler.swift; path = RxSwift/Schedulers/SerialDispatchQueueScheduler.swift; sourceTree = ""; }; + D01ADEDF5E44D58ACB8ED1AED7BF7615 /* Pods-SwaggerClientTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClientTests-acknowledgements.markdown"; sourceTree = ""; }; + D10F2A3D1BBD10CA8594739DB19CDC07 /* SwiftSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftSupport.swift; path = RxSwift/SwiftSupport/SwiftSupport.swift; sourceTree = ""; }; + D1A6BA19B108998DF7350B40C83BFC47 /* Pods-SwaggerClientTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-SwaggerClientTests.modulemap"; sourceTree = ""; }; + D1E589B3714F15E207FD32CD6EC52305 /* RxSwift-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "RxSwift-Info.plist"; sourceTree = ""; }; + D25BFF9CA1B3C8219A5F2A1C064AA6AA /* CombineLatest+arity.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "CombineLatest+arity.swift"; path = "RxSwift/Observables/CombineLatest+arity.swift"; sourceTree = ""; }; + D335B34B9871B74E10984781CC371CBA /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; + D406BAD811EAD0952929B093F56F2BF2 /* MixedPropertiesAndAdditionalPropertiesClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MixedPropertiesAndAdditionalPropertiesClass.swift; sourceTree = ""; }; + D46742F1F99243487DCC614C75C1413C /* Pods-SwaggerClient-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwaggerClient-acknowledgements.markdown"; sourceTree = ""; }; + D49FDF34DAD7FA627C657B59EEF5348A /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; + D69932FBD99A6AC9733077CD793DE95E /* PetstoreClient.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PetstoreClient.framework; path = PetstoreClient.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D73E4AE40107F9E12D9933657017209A /* Cat.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Cat.swift; sourceTree = ""; }; + D765DC1CA9E827C5C155427A9C020AF8 /* ConcurrentMainScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentMainScheduler.swift; path = RxSwift/Schedulers/ConcurrentMainScheduler.swift; sourceTree = ""; }; + D7FBBD15C7EDE32F75E84BF63C4A0093 /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + D8ED3568E09862ADC85A6FE650FEC665 /* AnonymousDisposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnonymousDisposable.swift; path = RxSwift/Disposables/AnonymousDisposable.swift; sourceTree = ""; }; + D95243E9789D171D24B3CCEF4A306E79 /* Just.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Just.swift; path = RxSwift/Observables/Just.swift; sourceTree = ""; }; + D95AD1D226C3858D35BDFD664BBFCC02 /* ConcurrentDispatchQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ConcurrentDispatchQueueScheduler.swift; path = RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift; sourceTree = ""; }; + D98CA687BDA7E1DE6C6D098CFD6AE1C7 /* StoreAPI.md */ = {isa = PBXFileReference; includeInIndex = 1; name = StoreAPI.md; path = docs/StoreAPI.md; sourceTree = ""; }; + DBD0EFE5168A6526DB06F4A6800CF584 /* Observable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Observable.swift; path = RxSwift/Observable.swift; sourceTree = ""; }; + DCD118360416984364D92CA81D410FC2 /* Model200Response.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Model200Response.md; path = docs/Model200Response.md; sourceTree = ""; }; + DDC303FBE481D915EC0B8ADDAE1623CB /* CatAllOf.md */ = {isa = PBXFileReference; includeInIndex = 1; name = CatAllOf.md; path = docs/CatAllOf.md; sourceTree = ""; }; + DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + DF1DD94A10F409B4316DAC2A019FED34 /* FakeClassnameTags123API.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = FakeClassnameTags123API.swift; sourceTree = ""; }; + E1259C7EE8FBB3A324ED66A0FBE292D2 /* EnumClass.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EnumClass.swift; sourceTree = ""; }; + E22F3BDA0C336074E5EA13F37C05FF2C /* RetryWhen.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RetryWhen.swift; path = RxSwift/Observables/RetryWhen.swift; sourceTree = ""; }; + E237960AB17F68A30227D83025D39488 /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = List.swift; sourceTree = ""; }; + E3B9412BBCE6A74BC742A54FD0B8186C /* Zip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Zip.swift; path = RxSwift/Observables/Zip.swift; sourceTree = ""; }; + E57A9C76D05E7DF25E045C8C83CF7B8C /* File.md */ = {isa = PBXFileReference; includeInIndex = 1; name = File.md; path = docs/File.md; sourceTree = ""; }; + E708A153C22A9339B8145278E89E64D8 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; + E7AE50AD71DB17321FA5240F1B1D2E70 /* AnimalFarm.md */ = {isa = PBXFileReference; includeInIndex = 1; name = AnimalFarm.md; path = docs/AnimalFarm.md; sourceTree = ""; }; + E9ABCE94A0D10DF97FC367C061436E5F /* OperationQueueScheduler.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = OperationQueueScheduler.swift; path = RxSwift/Schedulers/OperationQueueScheduler.swift; sourceTree = ""; }; + EA01D2A2DB1E31168FFF75C6F9DAD5C5 /* ShareReplayScope.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ShareReplayScope.swift; path = RxSwift/Observables/ShareReplayScope.swift; sourceTree = ""; }; + EAFD9A5AE325CD48442A611EFD103D57 /* Enumerated.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Enumerated.swift; path = RxSwift/Observables/Enumerated.swift; sourceTree = ""; }; + EC22F330006EA5F892970C69FBA9F199 /* SynchronizedUnsubscribeType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SynchronizedUnsubscribeType.swift; path = RxSwift/Concurrency/SynchronizedUnsubscribeType.swift; sourceTree = ""; }; + ED1332D9E071ED0D532F6ACD2AD1AC38 /* SingleAsync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SingleAsync.swift; path = RxSwift/Observables/SingleAsync.swift; sourceTree = ""; }; + EDB38B126A5C5BA3195B41CDA7E3F6A3 /* EnumArrays.md */ = {isa = PBXFileReference; includeInIndex = 1; name = EnumArrays.md; path = docs/EnumArrays.md; sourceTree = ""; }; + EFA2A0B903691A7C2293FD13EACB8E3F /* Window.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Window.swift; path = RxSwift/Observables/Window.swift; sourceTree = ""; }; + F1577EF84ADE20D7F04CD82D5BAA684B /* User.md */ = {isa = PBXFileReference; includeInIndex = 1; name = User.md; path = docs/User.md; sourceTree = ""; }; + F1FC53345CBCE9EF88576C6BDC5D16EE /* Skip.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skip.swift; path = RxSwift/Observables/Skip.swift; sourceTree = ""; }; + F25DE89C483E14ED16E9B0F96850BF3B /* ArrayTest.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ArrayTest.swift; sourceTree = ""; }; + F2E147BD28F065756948CC15F0E6B68D /* Producer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Producer.swift; path = RxSwift/Observables/Producer.swift; sourceTree = ""; }; + F3A9349CCCD01B8CD6646B22BD8FAFFD /* AnimalFarm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AnimalFarm.swift; sourceTree = ""; }; + F42B2C25A2A499E0244E107DF28BA640 /* Timeout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeout.swift; path = RxSwift/Observables/Timeout.swift; sourceTree = ""; }; + F4546CAE8AC2D5BD71A14E476145C771 /* PetstoreClient-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PetstoreClient-umbrella.h"; sourceTree = ""; }; + F53E66F85590280D11F64545A178CC13 /* StringBooleanMap.md */ = {isa = PBXFileReference; includeInIndex = 1; name = StringBooleanMap.md; path = docs/StringBooleanMap.md; sourceTree = ""; }; + F5CF777F69E934A92F78512092C53052 /* LockOwnerType.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LockOwnerType.swift; path = RxSwift/Concurrency/LockOwnerType.swift; sourceTree = ""; }; + F6BAA110BD7DD59D40985519BC3BAB2C /* AsMaybe.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AsMaybe.swift; path = RxSwift/Observables/AsMaybe.swift; sourceTree = ""; }; + F73E2FE9C0296B7647E36FDAB1A48E6E /* Errors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Errors.swift; path = RxSwift/Errors.swift; sourceTree = ""; }; + F8D5778A0684580BB744D394024BB4A6 /* Return.md */ = {isa = PBXFileReference; includeInIndex = 1; name = Return.md; path = docs/Return.md; sourceTree = ""; }; + F8E5B43302C88640C1A05762A037012A /* Generate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = RxSwift/Observables/Generate.swift; sourceTree = ""; }; + F9FDC7E72AC896C5D9031E49B0372D06 /* SchedulerServices+Emulation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "SchedulerServices+Emulation.swift"; path = "RxSwift/Schedulers/SchedulerServices+Emulation.swift"; sourceTree = ""; }; + FB54B43833CB03F1D8749CE7C298D3B5 /* ObserverBase.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObserverBase.swift; path = RxSwift/Observers/ObserverBase.swift; sourceTree = ""; }; + FB709FAE1018A60657705217C88967AC /* TypeHolderExample.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = TypeHolderExample.swift; sourceTree = ""; }; + FBF9232381581A50CA2E8FA9517D76EB /* Deferred.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deferred.swift; path = RxSwift/Observables/Deferred.swift; sourceTree = ""; }; + FC35E81B52795E7CB75A8D1E9687BF16 /* Disposable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Disposable.swift; path = RxSwift/Disposable.swift; sourceTree = ""; }; + FC82F67A5B34D020108D89B64C3BD691 /* SpecialModelName.md */ = {isa = PBXFileReference; includeInIndex = 1; name = SpecialModelName.md; path = docs/SpecialModelName.md; sourceTree = ""; }; + FD2207283F6AAB87403F6CC48462589C /* Alamofire-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Alamofire-Info.plist"; sourceTree = ""; }; + FE0D448C7D74BFFB8604285DD7047EED /* ScheduledItem.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScheduledItem.swift; path = RxSwift/Schedulers/Internal/ScheduledItem.swift; sourceTree = ""; }; + FEFFBEEA8F7216DF65BD978A823BEDA2 /* Name.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = Name.swift; sourceTree = ""; }; + FF4EA9F3121FB3144A5648BBC0A8004D /* Merge.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Merge.swift; path = RxSwift/Observables/Merge.swift; sourceTree = ""; }; + FF699627254D1F4E425E37E0306B828B /* Bag+Rx.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Bag+Rx.swift"; path = "RxSwift/Extensions/Bag+Rx.swift"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 0CE1EF2BDAF56F78B7042C06A900B1E7 /* Frameworks */ = { + 9C5D10FD5C4D12FBA9AF8DE73A0476D4 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 10E13DD6377EA6AE22AA9F62042C4551 /* Alamofire.framework in Frameworks */, - 0608CF373888968B4435E7F69B66029C /* Foundation.framework in Frameworks */, - 3B56CFFDE447D5B50D73ACE610B41F40 /* RxAtomic.framework in Frameworks */, - 729E034C173EE08DCC5D23FBA99CBF8E /* RxSwift.framework in Frameworks */, + 400710E3FF438CDC18E6D19C8E64E0D0 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 2D18A19C87FF7AA8403C88BE0EF69BD0 /* Frameworks */ = { + BFF25BADA4BDAAF2C33C2AB4B7CC18DF /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D1DC173B9736996A4A5D6E1E2D7902E8 /* Foundation.framework in Frameworks */, + 02D5452095EF961AABF5EC9484D6700F /* Alamofire.framework in Frameworks */, + BDEA420ADE6E58BFDB87E1339C6EF292 /* Foundation.framework in Frameworks */, + 3CB84F06C826903645D046E00A08E94B /* RxSwift.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5B9729099AD7DCDA0F1992A091EA200D /* Frameworks */ = { + D4EC17B7E6732812B49C04E19E9C0EF3 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 063E2A92EA8D52DF1DE2B29A80271858 /* Foundation.framework in Frameworks */, + 6B598CD6C3665D587BD8EDE6202EA593 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 6E8AF668A2161F7D6F680F721DB65D2D /* Frameworks */ = { + E44363F6A0C4B876C2CE0C89617F4A74 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 8D1E66FE754A575BFFD9E0A4AD2E5ACC /* Foundation.framework in Frameworks */, + 00EA7C74AF31550D150A68EC1DB4885A /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - B530B2CF62733E7B5C136E5E75A66E9C /* Frameworks */ = { + F1626ADC3A7EC435D2722B3173355D36 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 564033501DDBF4D9432C1DFCF828E1E4 /* Foundation.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - B652A281A622E08B1880C01533EFC6BF /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - DD6A6160BFD2598E4CF956C6211E453A /* Foundation.framework in Frameworks */, - 051AF78B3F15564896626F1D12AB1122 /* RxAtomic.framework in Frameworks */, + 3BD1DAFE1F3E6C9E4EB0F2099B6D6FA2 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 0A77CD901D4C20ABDDC29323D948B813 /* Support Files */ = { + 0EFA4421D8D59E9E4A8C8A50F313B3C5 /* Support Files */ = { isa = PBXGroup; children = ( - 610D8B3C90ECA3666B79BB8AC3918598 /* Alamofire.modulemap */, - A96A149BEF2050A37CD9A96E57AF2FE2 /* Alamofire.xcconfig */, - 7FBB1A41E4532C7CC2D490550B06FF19 /* Alamofire-dummy.m */, - 77A2D5DF22D9BF3FFAAA3B7DD3F3C0D7 /* Alamofire-prefix.pch */, - D502F97561E6B388CF419FFF52567776 /* Alamofire-umbrella.h */, - 628ACCA352429B0E67A556C3EAE3D6BF /* Info.plist */, - ); - name = "Support Files"; - path = "../Target Support Files/Alamofire"; - sourceTree = ""; - }; - 158FC80F4FB85F98568F2BB120712505 /* Support Files */ = { - isa = PBXGroup; - children = ( - 4DD24A13C40FA74505FB3929F63A4396 /* Info.plist */, - 4980B0C26643D79E5C823FFD03DB22C0 /* RxAtomic.modulemap */, - 90B48B645BDF3791D23C1848534FAA41 /* RxAtomic.xcconfig */, - B53CBEA40E998EB056F37F72D27CD7E9 /* RxAtomic-dummy.m */, - 038C260EF494562321681443F1203BD0 /* RxAtomic-prefix.pch */, - 19DBB8C78D4BD529E021E8E99D498688 /* RxAtomic-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/RxAtomic"; - sourceTree = ""; - }; - 1FFA4AFD35DACDDB13209BEA81BAE0C8 /* Support Files */ = { - isa = PBXGroup; - children = ( - D7F3D755E1226679E9F9D292231A71F1 /* Info.plist */, - D3E976E4111B5963B6A10C1115A2B7F3 /* RxSwift.modulemap */, - 9B3A3E4A7CB12148CAB2026BEC41959F /* RxSwift.xcconfig */, - D2440DF1256E6178508CDE576FF05C58 /* RxSwift-dummy.m */, - 6D3B32015A29ED69432301FF0A3A8D01 /* RxSwift-prefix.pch */, - 8BD31C2B49795A4E8219E5769978EFA2 /* RxSwift-umbrella.h */, + 9D597D60E3BD5AEA174D24F7409820EB /* RxSwift.modulemap */, + BE6232D0F85A4EF002139921CBA82C3F /* RxSwift.xcconfig */, + 2F77FDC4F04FEF422ACDCD587C512559 /* RxSwift-dummy.m */, + D1E589B3714F15E207FD32CD6EC52305 /* RxSwift-Info.plist */, + 0723F133C41FD08232F74124D0E3FC2E /* RxSwift-prefix.pch */, + 4B22542F5E9A061C9F6214D75923635D /* RxSwift-umbrella.h */, ); name = "Support Files"; path = "../Target Support Files/RxSwift"; sourceTree = ""; }; - 432AB5D86D6A833FDFD921A08871A5BC /* Products */ = { + 1C8221FE0071BDA2D0C5DE07B7736E88 /* Development Pods */ = { isa = PBXGroup; children = ( - D1903E9147683D5A20200EB371B1F05A /* Alamofire.framework */, - A9BE9E4EC3C181F7F793F96B3BE8F86C /* PetstoreClient.framework */, - C59929454AF9BAB3E825AB4632A4963B /* Pods_SwaggerClient.framework */, - 983B7F0069F6EA0BD1F79B633452A7FB /* Pods_SwaggerClientTests.framework */, - 17C72882D5F578CFBC52EE6EED3D871B /* RxAtomic.framework */, - 6306133179CC6DE689021E70C558607F /* RxSwift.framework */, + ADB072EBDA2441CFD03AE3EE4E9CFE92 /* PetstoreClient */, ); - name = Products; + name = "Development Pods"; sourceTree = ""; }; - 5C8105888BE3C1C25138B00D1D7F9F6E /* iOS */ = { + 262AD758FCFC71C597EE703E744E279A /* Alamofire */ = { isa = PBXGroup; children = ( - 512DD6F8508A61C24E29B60F0AA5F7A2 /* Foundation.framework */, - ); - name = iOS; - sourceTree = ""; - }; - 606EAF5FBC9930BD9D22CDECD222A32A /* APIs */ = { - isa = PBXGroup; - children = ( - 1FF33FE500328600F30A0008C612F377 /* AnotherFakeAPI.swift */, - 42AA25A3EEB248D295081E15036472FA /* FakeAPI.swift */, - 9D0A663A60EBEDC85D7204FF294D7A8E /* FakeClassnameTags123API.swift */, - 7A4D6098BB7067FA34B381F4446DDB10 /* PetAPI.swift */, - 8FB2BB634F7165B7E02CB903C153DD5F /* StoreAPI.swift */, - 9A6821DE25768EABE3B84E13AA2767AA /* UserAPI.swift */, - ); - name = APIs; - path = PetstoreClient/Classes/OpenAPIs/APIs; - sourceTree = ""; - }; - 6D4B4C422937D815279D2A96BCCE2815 /* Support Files */ = { - isa = PBXGroup; - children = ( - 2BB1D491A4C824A6BFA9C0C35E36BD85 /* Info.plist */, - 4EB7BF4F57FA381E9DA7A1AA9B04857D /* PetstoreClient.modulemap */, - B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */, - 776D2DC046923CE3DDE934FF73659587 /* PetstoreClient-dummy.m */, - 0075000FF9024228C130ADDA9B81114E /* PetstoreClient-prefix.pch */, - 974697BA63D3232B3CBCF781253D6FD8 /* PetstoreClient-umbrella.h */, - ); - name = "Support Files"; - path = "SwaggerClientTests/Pods/Target Support Files/PetstoreClient"; - sourceTree = ""; - }; - 7DB346D0F39D3F0E887471402A8071AB = { - isa = PBXGroup; - children = ( - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, - EC52080E65FE34CBDE5F694B08BA9836 /* Development Pods */, - AAF1CDDF9A03AF6A4072F7FD13925C9E /* Frameworks */, - 9E5062191E39F04AC698A7E08694E05E /* Pods */, - 432AB5D86D6A833FDFD921A08871A5BC /* Products */, - C1A60D10CED0E61146591438999C7502 /* Targets Support Files */, - ); - sourceTree = ""; - }; - 894E625B654BBE2FB6E8E88AA51D3E5A /* PetstoreClient */ = { - isa = PBXGroup; - children = ( - 2C2002E2C081EDBF95460841AEE40A1F /* AlamofireImplementations.swift */, - 53DCDFCEE59497257D4D8E5C61AC1BF6 /* APIHelper.swift */, - B40D76A0512402285DC5FCF2795D7926 /* APIs.swift */, - 2C7066E86827634F5A961005F5CDA325 /* CodableHelper.swift */, - 1C4B75FFB3C6B26ACDD73938BF18310B /* Configuration.swift */, - 7898EEC6A565DE133438C48988478954 /* Extensions.swift */, - B7304FCBBF3A1E3E5A44C2B06C880606 /* JSONEncodableEncoding.swift */, - 37E06E455867386B3481EDF14972006E /* JSONEncodingHelper.swift */, - FEB048F7684923FC8C99614FB91CDE30 /* Models.swift */, - 606EAF5FBC9930BD9D22CDECD222A32A /* APIs */, - A3225C42DC72DA2FDCC24B1154D893D9 /* Models */, - 8B703AC5760FFB3F3A475448C3FD2DD8 /* Pod */, - 6D4B4C422937D815279D2A96BCCE2815 /* Support Files */, - ); - name = PetstoreClient; - path = ../..; - sourceTree = ""; - }; - 8B703AC5760FFB3F3A475448C3FD2DD8 /* Pod */ = { - isa = PBXGroup; - children = ( - 501C268D3DC431E81C876F4F7EE389C6 /* PetstoreClient.podspec */, - ); - name = Pod; - sourceTree = ""; - }; - 9E5062191E39F04AC698A7E08694E05E /* Pods */ = { - isa = PBXGroup; - children = ( - C6EA2869C5163B86B3DA6DD08CB2600B /* Alamofire */, - B49C0ABECA17500E5C342D9479785A29 /* RxAtomic */, - A9CD94451B5DB5CA108C01B1CE827AE5 /* RxSwift */, - ); - name = Pods; - sourceTree = ""; - }; - A3225C42DC72DA2FDCC24B1154D893D9 /* Models */ = { - isa = PBXGroup; - children = ( - 399E6B8FE158024592ED8B770864696C /* AdditionalPropertiesClass.swift */, - 6FF19147CE4412D2804D578DF81FA6E6 /* Animal.swift */, - FDAB71F06CE94B9B9AD9438DAC00B6D2 /* AnimalFarm.swift */, - FF5D23F22EEE2FBFA826151A4E186DE3 /* ApiResponse.swift */, - E41E52FC18B43257D6D924850398E9AE /* ArrayOfArrayOfNumberOnly.swift */, - 246C4149EB1F7D2CF07D83FD3B4A7683 /* ArrayOfNumberOnly.swift */, - 5EE661EFEC3A229F1219958C4244153F /* ArrayTest.swift */, - 8C249F0D3A4AFFFC155DEC2FBB68F0CC /* Capitalization.swift */, - DE0EE75A3806EB2BA0C9EEF687CE2B93 /* Cat.swift */, - FECB278917C7651872C44FB1C0B6E620 /* Category.swift */, - DEA70EA7732BDFFE905C353D9709B2AD /* ClassModel.swift */, - 0B30B9F0FA3EB01FFACD8AF1A5E3C02A /* Client.swift */, - D822C4C7D3E161B2623D9538CFB3993E /* Dog.swift */, - 18B675845795AE8F97C41BFE1B734DF3 /* EnumArrays.swift */, - 392B0EBFD414446E3C9A271B38B72DA0 /* EnumClass.swift */, - AAFFDA41414FACE0139A3B1F22FB6717 /* EnumTest.swift */, - 39CFCEF99F7C460D0F08FDCCF1457477 /* File.swift */, - 9DE2FEBAD4A5F085054978914D2BAD7F /* FileSchemaTestClass.swift */, - C6E49082BB281EDC5D7B6E76772E87CF /* FormatTest.swift */, - 7A9361010C64B5A1F7A9DF65338A4060 /* HasOnlyReadOnly.swift */, - 61179CE650778B2A5C39664F0A792B5C /* List.swift */, - 3A917A61915DC34D93F7CA22E9FEEAB8 /* MapTest.swift */, - 5F66D63E8AA66846EDB3A12966E6951E /* MixedPropertiesAndAdditionalPropertiesClass.swift */, - E1D16F98B0546986ED64CD76F6678480 /* Model200Response.swift */, - 405921FE252DC3DC1087DA4217236D81 /* Name.swift */, - E81223B1EAA15A1063FABA2C1F83FD46 /* NumberOnly.swift */, - 23810842569AE35D0E94BB511DF8A4FC /* Order.swift */, - E7FFC55F1307BC98855D3D546660D4F2 /* OuterComposite.swift */, - 88B5354642428AF26C69F2155FEBFA4B /* OuterEnum.swift */, - C030C0F6BD877478B1CA4BC8BFBAD057 /* Pet.swift */, - D2DDAE4995DB14893EA47ED21E6742BA /* ReadOnlyFirst.swift */, - 5D9E3149DFEE7783ACEC1596236B2268 /* Return.swift */, - 14B3C282191A88FADAB9CC2C684F72AA /* SpecialModelName.swift */, - 2990DE0BC65EFC8D04E0FE470B40D295 /* StringBooleanMap.swift */, - 49A545F954B2A10B0D26618084D1FF73 /* Tag.swift */, - E5A46D45023C6CBF06AA36844D59C59E /* User.swift */, - ); - name = Models; - path = PetstoreClient/Classes/OpenAPIs/Models; - sourceTree = ""; - }; - A9CD94451B5DB5CA108C01B1CE827AE5 /* RxSwift */ = { - isa = PBXGroup; - children = ( - E23B1106B6F189797A626CB356652BD4 /* AddRef.swift */, - 1FD522C3593066E8FBFEA318EE72E57B /* Amb.swift */, - 20647CB1FC37203D15FA7D63080C9492 /* AnonymousDisposable.swift */, - AE89AF9B68664214AC9CCD4C5BF44558 /* AnonymousObserver.swift */, - 3504B27DF9870928A2DC3133ECE8F972 /* AnyObserver.swift */, - 3DEE4E1952A5226EDB3DA63F63148B60 /* AsMaybe.swift */, - 32F06CB55D217E32118C360DB7422296 /* AsSingle.swift */, - E286E47141F7238BA67134C06C8A3B41 /* AsyncLock.swift */, - F74D23F29997DBC2D8D3E877067A6575 /* AsyncSubject.swift */, - 55063AD99CB05F46E7EB2DEC30F33A51 /* AtomicInt.swift */, - 53CAD5865C002ED6919244602DE10F0E /* Bag.swift */, - DFBEC495F16B07CA34642DC026B7CA72 /* Bag+Rx.swift */, - 2879FC02B20D7B09076FB0399EB95961 /* BehaviorSubject.swift */, - 085A00CA43A3509F57BF6CED34C6D9E4 /* BinaryDisposable.swift */, - 95191617864DB139A0C0C832781CCFA2 /* BooleanDisposable.swift */, - 059DBF7FC714D974D0E8FE47295F9003 /* Buffer.swift */, - B3F3054BB754BEE6F75BBBDF61EA0802 /* Cancelable.swift */, - 8C5558D116FB2BC6A4BED63C5DB18A8F /* Catch.swift */, - 3696F7BCAB005C74FC3BCB2114D5C50E /* CombineLatest.swift */, - 2E9223D32E743F17BB8DF468A29505B6 /* CombineLatest+arity.swift */, - D3F2F6C7ABD293E38CE490E2AFC2822F /* CombineLatest+Collection.swift */, - B5FDE71DA7D116F7D2A3A903BFCC22DE /* Completable.swift */, - 9EBB016CF66B6C0BB04174E71EAF2638 /* Completable+AndThen.swift */, - 82541D79BF1E3D4A91CC961E0BBC1FC0 /* CompositeDisposable.swift */, - F4A93121BD06BC69BFC4C9B3F04264CD /* Concat.swift */, - 8634A05E1ECEC8181FCC1E88C9CF99BE /* ConcurrentDispatchQueueScheduler.swift */, - AA2852020F927816CCDE72C6511D2E4F /* ConcurrentMainScheduler.swift */, - 97ED6EBFC1385B7F45250F5C2F5F1AC2 /* ConnectableObservableType.swift */, - 23207944E9E16FCACB1CA522868778B3 /* Create.swift */, - 1CD32B133CCF26ABE9A87E985AFF5073 /* CurrentThreadScheduler.swift */, - 94B3FC47FE1246D199ED30F899FEAE38 /* Debounce.swift */, - BABDB7EECAD68CE6713731AF29AE334E /* Debug.swift */, - EBD795757F40658014CE4D2170BC56EF /* DefaultIfEmpty.swift */, - 853B1DEAC65B508D52AFCDBE17F443A7 /* Deferred.swift */, - B9FF28D5141A09EC43E5751AFCFF6F5C /* Delay.swift */, - D7893AB4C41FD80660DDF4F3B33879B4 /* DelaySubscription.swift */, - 80056B2FADCC6463FB6BFF5BAE0261A3 /* Dematerialize.swift */, - EBDDAF28A70D5CE1FBE34F18AB303360 /* Deprecated.swift */, - 6034F0885F89AFC531550769745DECD8 /* DeprecationWarner.swift */, - A20D49043407895824639AB379667392 /* DispatchQueue+Extensions.swift */, - 1DEA75B4FD07880DA0BD3BAA4C8C1B6B /* DispatchQueueConfiguration.swift */, - C472BBCF4E7828F9351794304E35DAB5 /* Disposable.swift */, - 75EB72DAFB1A6AB83CABF90D5ACA4CEE /* Disposables.swift */, - D0C0EB5B01F72A9A45B1BA302716832A /* DisposeBag.swift */, - C78EABFE61E6B1A811A930550037EC14 /* DisposeBase.swift */, - ABD562C4B8846212921BC7D057BB6BE0 /* DistinctUntilChanged.swift */, - 4F7F5C940BBCAC29EB96D076E339B4A6 /* Do.swift */, - 99F9BCF8CA1D20373C9E38F922ED13BC /* ElementAt.swift */, - C4A0C6506BBE76189174FFF1C0ECCFB4 /* Empty.swift */, - D6C1F5DFD70877790B3B7DC3734ADE96 /* Enumerated.swift */, - 1E1A1D9EB066CE8BABA80EDA1A24A2D6 /* Error.swift */, - 1887B771AE7974C7BD30EC913AAB1F46 /* Errors.swift */, - 66F490B014DB4E82D35F6FF43A180D74 /* Event.swift */, - 9A0B8FCFE917E6C71AF5210B83924797 /* Filter.swift */, - 509B43E693D48C812F2574A086894CCC /* First.swift */, - E598558BB8A967463CCF9C52AB9B68D8 /* Generate.swift */, - 16FCB507A3FA489F663DC7D002325839 /* GroupBy.swift */, - 19FA426826F2F8F726C573ACF0817668 /* GroupedObservable.swift */, - 9D51034C456421189B947B1C251D8CDF /* HistoricalScheduler.swift */, - DC67F6C45063E440FD82384FFC8B9ABB /* HistoricalSchedulerTimeConverter.swift */, - 7C27D9343F302A1B99DC2A579510EED3 /* ImmediateSchedulerType.swift */, - 7F08EEB12871EA5AFDB544B0D778DED4 /* InfiniteSequence.swift */, - E629D35B39A4F52AB475A7D50109FC01 /* InvocableScheduledItem.swift */, - 35E207B501AF34A6ECAD053D8073CC33 /* InvocableType.swift */, - 9554645C8D016F765E3E070442DCA090 /* Just.swift */, - BECB892EE935A9B666E0EF1449C295B1 /* Lock.swift */, - 806122C519E53A3467A591B651CABF99 /* LockOwnerType.swift */, - 768BDC36A0B3580E763F0128E70D1829 /* MainScheduler.swift */, - 3C596DBBDDBCD371C56BAB928044635E /* Map.swift */, - AADF426E4B27104D1C0E8E12CB955499 /* Materialize.swift */, - 4737B0E6316A9DD6C7C94D847579EDEA /* Maybe.swift */, - BE5F7957B466E1AE0A4FDC0DC040EBC3 /* Merge.swift */, - D181D395BCD88FFF4CDF8C79D9029352 /* Multicast.swift */, - 7C22EA8C501403D3F67350E95C9B1F6F /* Never.swift */, - 1E81119576103DF2C734DA31844EAD07 /* NopDisposable.swift */, - D4B29F771737024D5D0647D09CAE40AE /* Observable.swift */, - D4CB86939084A7653D7D2872DB15C566 /* ObservableConvertibleType.swift */, - 038F630DC52C48069A1F8E546BE05C8E /* ObservableType.swift */, - 269E2D254449F06B4427ABB8959C4384 /* ObservableType+Extensions.swift */, - 04605CEDAF236CB0AFA904971654F957 /* ObservableType+PrimitiveSequence.swift */, - 7C8417EB1EB14EA99CECC645D5677F1E /* ObserveOn.swift */, - 34F426BAC76F5AB75C76CED6AED8CEDD /* ObserverBase.swift */, - 2F7E604423932C0DBEDB4D0822054D76 /* ObserverType.swift */, - 58E9954FF8B8BEA966C88CF2F422F6DC /* OperationQueueScheduler.swift */, - 96D19D94AD216E43916745FC5D1BF980 /* Optional.swift */, - 7C25D45279653382D5B7C143EE61BD61 /* Platform.Darwin.swift */, - 92BDA682FD29ED3470519B761C6BCBEE /* Platform.Linux.swift */, - CAE416C03B1C99A9468CF0725D1141B4 /* PrimitiveSequence.swift */, - 19C351980C5D85C30F921072A232E57D /* PrimitiveSequence+Zip+arity.swift */, - 9D207C347E5A099CD149D335308DC227 /* PriorityQueue.swift */, - BBF526890A2DCF73707BD12E37C773FE /* Producer.swift */, - 98D8CFD3F0776AAA45863EE9A39E8C7F /* PublishSubject.swift */, - DA9014E4D9949575D32FE4D360BA8228 /* Queue.swift */, - 0123809377F5AEB8CF2EFCEE389FE0DB /* Range.swift */, - 8EE9115ABE1145C4C677B9E280C9832A /* Reactive.swift */, - 2C1F89D6A94419869454B03267239472 /* RecursiveLock.swift */, - 9EE2EAE0E0573E1277A1F494432D3A97 /* RecursiveScheduler.swift */, - FDB3743CD667A907E68D4B1C8BA7F8C2 /* Reduce.swift */, - 2CC77AE15F0D8D133134723D87D8A800 /* RefCountDisposable.swift */, - C7646978EDF8E84559E93D30EFE59CF1 /* Repeat.swift */, - 058BD56F330E63AFB81EAE4168EAB76D /* ReplaySubject.swift */, - 3E923EDEA040DBF60D6CEBF40AA3BF72 /* RetryWhen.swift */, - A197C662760E45CE7A0D1261B431FDFB /* Rx.swift */, - 84B3B20977736165D7000F5156294624 /* RxMutableBox.swift */, - 92D7249D4FDF4529B8F5604A897878A3 /* Sample.swift */, - B70A72E268366835E7762937B2D551B9 /* Scan.swift */, - 624138DD4F5061C01B2B15E6DEE6A5B1 /* ScheduledDisposable.swift */, - 1C3F47901F3DBFEAA0E0E36FAE700C41 /* ScheduledItem.swift */, - 50412DC769ED9F64828FBE62B247E46B /* ScheduledItemType.swift */, - 7518B49375F6BEBC5FFED32DEC4660B2 /* SchedulerServices+Emulation.swift */, - 666BA9077B17F008A3616E07A5BD7FD9 /* SchedulerType.swift */, - 595FA08B722A0112ECDC421BEDA32661 /* Sequence.swift */, - 3BD6C15E036716B7ACD83CF23ED40B0D /* SerialDispatchQueueScheduler.swift */, - 14ECE86EF7E19B1B7E97C070CC6BF34A /* SerialDisposable.swift */, - FF0507F26AA2F7F71DA23B7B1064FEBE /* ShareReplayScope.swift */, - 7E9155E212288F3284BA55C2BA5AECE1 /* Single.swift */, - 535B11DEA8AFE06F6E6BDCF34B53BAAF /* SingleAssignmentDisposable.swift */, - 90F8739B7B5D5F8F000FEC5FDAFD30B3 /* SingleAsync.swift */, - 5D6D06373E5E9E34438E51D9A39CA190 /* Sink.swift */, - F6895FB2CB932892FC0A63C5A2ED5707 /* Skip.swift */, - E32BC69D1BB4881AFA1EE22349A39941 /* SkipUntil.swift */, - 6D04B7FD634E28BF38A3C24C8F8C770A /* SkipWhile.swift */, - CDDF69070AD2DA47959FDA346CBEF596 /* StartWith.swift */, - AEFF25499925E3BFAD0124014F092C1D /* String+Rx.swift */, - 0AF07A78209C44E970398E68C87F5A80 /* SubjectType.swift */, - 3E49D6CF4C660489250F96B8BB46C98F /* SubscribeOn.swift */, - ACF69EF0FF10DA3A1C1A5EB8232E82D9 /* SubscriptionDisposable.swift */, - 344023438E0281AD484A1216A2F2721C /* SwiftSupport.swift */, - D17862ECB73D530AB2CB1BB84C30B7FB /* Switch.swift */, - 48E018DEF19AB592A9B6EE607ED30A4E /* SwitchIfEmpty.swift */, - 893DB6855446CF668CF3AA60A8AD4D2B /* SynchronizedDisposeType.swift */, - 99DF44C1F5C22BD3DA5F4F76B96327FB /* SynchronizedOnType.swift */, - 7E6241ED96E3ACCAE254FAB0D63F1A80 /* SynchronizedUnsubscribeType.swift */, - 35F5F602EEFB1DFE432441F0BB1FBF8E /* TailRecursiveSink.swift */, - 2AECDE54548F3B4943031609A3A8E2EF /* Take.swift */, - 131CA1CBC6FAAC57269CC30CE2AB0D26 /* TakeLast.swift */, - 4118FB943A92CA221F1FF8C2113EE538 /* TakeUntil.swift */, - E77D2C7C8AEF3CF4649CCFE47F429AFC /* TakeWhile.swift */, - E35A05D580524329B8465803EEDC83E1 /* Throttle.swift */, - 389343EA0AE116BE5BED01846916909C /* Timeout.swift */, - 0546BFF49DC081D03AE9A68528BA62F4 /* Timer.swift */, - A4810EBF55051A5DC31D543402ABA077 /* ToArray.swift */, - A8E1B9393D5148667FDA9BA056A3BC93 /* Using.swift */, - C35FA7574B8867FB7DA037AB7C30F82B /* VirtualTimeConverterType.swift */, - 84F997FBAA725D0C39C8E6F5A1657602 /* VirtualTimeScheduler.swift */, - 203B806BED48E16E8E6A01F6FD42D99A /* Window.swift */, - 979D8AD838652BF7D9424E2151C79C74 /* WithLatestFrom.swift */, - FD06CCCAF7E011CE929AA102BE4ADD5B /* Zip.swift */, - CD79BDCFFE2B03FF4DE1424A60893B1D /* Zip+arity.swift */, - 08ACF082BFEB70DAD261BE2F71B5CD64 /* Zip+Collection.swift */, - 1FFA4AFD35DACDDB13209BEA81BAE0C8 /* Support Files */, - ); - name = RxSwift; - path = RxSwift; - sourceTree = ""; - }; - AAF1CDDF9A03AF6A4072F7FD13925C9E /* Frameworks */ = { - isa = PBXGroup; - children = ( - EB4448FE1CEBDAA5ECDE918236531759 /* Alamofire.framework */, - A4396561FA55B095E5EC0AE59830FEA9 /* RxAtomic.framework */, - 0CAC2AAADCE458372519A75B5902D3F3 /* RxSwift.framework */, - 5C8105888BE3C1C25138B00D1D7F9F6E /* iOS */, - ); - name = Frameworks; - sourceTree = ""; - }; - B49C0ABECA17500E5C342D9479785A29 /* RxAtomic */ = { - isa = PBXGroup; - children = ( - F91A5F83D79D90843B8E0DF27F74DC94 /* RxAtomic.c */, - 184177FFE14520003E3576223CB74A9F /* RxAtomic.h */, - 158FC80F4FB85F98568F2BB120712505 /* Support Files */, - ); - name = RxAtomic; - path = RxAtomic; - sourceTree = ""; - }; - C1A60D10CED0E61146591438999C7502 /* Targets Support Files */ = { - isa = PBXGroup; - children = ( - DE503BFFEBBF78BDC743C8A6A50DFF47 /* Pods-SwaggerClient */, - E9EDF70990CC7A4463ED5FC2E3719BD0 /* Pods-SwaggerClientTests */, - ); - name = "Targets Support Files"; - sourceTree = ""; - }; - C6EA2869C5163B86B3DA6DD08CB2600B /* Alamofire */ = { - isa = PBXGroup; - children = ( - 664DFCC8F8B25AC2C0F124826FDC13DD /* AFError.swift */, - 711A7DC644297549EE347B43C7C919C9 /* Alamofire.swift */, - 4D16ACC221A5E32700B52D639F2F8AC5 /* DispatchQueue+Alamofire.swift */, - 9F147B75837013A90F74D3A6C6520459 /* MultipartFormData.swift */, - 288E9E93B7DCD76C361FD709245E9AF2 /* NetworkReachabilityManager.swift */, - 2378947E408CB33F56CD4DF893741BEF /* Notifications.swift */, - 647C9A78AC3A206D422DCCE925421541 /* ParameterEncoding.swift */, - B205625D2532E00F088ECF926CF8A092 /* Request.swift */, - 65AEDDCD78284D4EB9977F3125AD411A /* Response.swift */, - 8E5E097E4FB6F674BDBA24E98BEDF0A4 /* ResponseSerialization.swift */, - 50944B5CEDCB1CD89E302F0EC2E91192 /* Result.swift */, - E1FDBDA49809804394F3C90F24F2A0CC /* ServerTrustPolicy.swift */, - 580504178F461251A7570D0DE2C3F50A /* SessionDelegate.swift */, - 6EEA2FD394D505A6814010D481538152 /* SessionManager.swift */, - 70A9F683E1A05B6288DD8719F0739108 /* TaskDelegate.swift */, - 6D706CF6090DAA45F9CC0DCA9BDD778C /* Timeline.swift */, - 26C36785784D4AC1D25E99C0A048A97C /* Validation.swift */, - 0A77CD901D4C20ABDDC29323D948B813 /* Support Files */, + CD714B38F6C265C97287CD6F713F3398 /* AFError.swift */, + C745F77F676CBAE7E68106481E9DF4B9 /* Alamofire.swift */, + 4C008FB60F065D079DB1F0C69B60DDEA /* DispatchQueue+Alamofire.swift */, + D335B34B9871B74E10984781CC371CBA /* MultipartFormData.swift */, + A8383047D766DF909F58645FCCF42048 /* NetworkReachabilityManager.swift */, + 39AE2AD9A01457ED8AC57D692A5F40AD /* Notifications.swift */, + 86A0FB6358543AEAB83BC45DD397D732 /* ParameterEncoding.swift */, + 720601B930B8E6FB3B449B0C3EFB451F /* Request.swift */, + D7FBBD15C7EDE32F75E84BF63C4A0093 /* Response.swift */, + 95300CC9035C5766B62FE4FB54FA5951 /* ResponseSerialization.swift */, + E708A153C22A9339B8145278E89E64D8 /* Result.swift */, + 9A56088E87A9AACE94749A936B309080 /* ServerTrustPolicy.swift */, + 378449150E818606AADBD6FB5A562D0D /* SessionDelegate.swift */, + 02C7203E47628DD3832410EEA16A1D8B /* SessionManager.swift */, + 575E60871C2A868C6B6D235B2DE25D83 /* TaskDelegate.swift */, + B22AF668079FC82298B5D800D6E575BB /* Timeline.swift */, + 51BEBD9500775258E10801B2D4636130 /* Validation.swift */, + 8342B3C0D5B5B78B6FF2EB9EBABDF316 /* Support Files */, ); name = Alamofire; path = Alamofire; sourceTree = ""; }; - DE503BFFEBBF78BDC743C8A6A50DFF47 /* Pods-SwaggerClient */ = { + 27EB02841E0D43820F14F4377DE3547E /* Targets Support Files */ = { isa = PBXGroup; children = ( - 814471C0F27B39D751143F0CD53670BD /* Info.plist */, - CFA4F581E074596AB5C3DAF3D9C39F17 /* Pods-SwaggerClient.modulemap */, - 76645699475D3AB6EB5242AC4D0CEFAE /* Pods-SwaggerClient-acknowledgements.markdown */, - 08BDFE9C9E9365771FF2D47928E3E79A /* Pods-SwaggerClient-acknowledgements.plist */, - F8FCC3BC0A0823C3FF68C4E1EF67B2FD /* Pods-SwaggerClient-dummy.m */, - 0AD61F8554C909A3AFA66AD9ECCB5F23 /* Pods-SwaggerClient-frameworks.sh */, - F4BB3B2146310CA18C30F145BFF15BD9 /* Pods-SwaggerClient-resources.sh */, - 32432BEBC9EDBC5E269C9AA0E570F464 /* Pods-SwaggerClient-umbrella.h */, - AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */, - F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */, + 8244AEBEFB4AC3530215FA5CBA26673B /* Pods-SwaggerClient */, + 86B1F48A58BFA2FA26CD584937FBEED1 /* Pods-SwaggerClientTests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + 2F357899B70BCB34F071EB6F4C420F2E /* Support Files */ = { + isa = PBXGroup; + children = ( + 928B725115295804C613BD7C865C8201 /* PetstoreClient.modulemap */, + 28DB89F2024F2DDD08AE89C3006D009E /* PetstoreClient.xcconfig */, + C3FFE137AD3E253AC3CC98BDB629E1CC /* PetstoreClient-dummy.m */, + A1ADB924FB5616647988483D4A2F8229 /* PetstoreClient-Info.plist */, + 2B2AAC902CD2815AAAFD57064F19AB84 /* PetstoreClient-prefix.pch */, + F4546CAE8AC2D5BD71A14E476145C771 /* PetstoreClient-umbrella.h */, + ); + name = "Support Files"; + path = "SwaggerClientTests/Pods/Target Support Files/PetstoreClient"; + sourceTree = ""; + }; + 6C5DB4246A4C5DB39B520841339F1173 /* Pods */ = { + isa = PBXGroup; + children = ( + 262AD758FCFC71C597EE703E744E279A /* Alamofire */, + D5E8828356ABA3B9CC63A755C69FA492 /* RxSwift */, + ); + name = Pods; + sourceTree = ""; + }; + 752761252CF779269D588A7735D3E8BD /* Products */ = { + isa = PBXGroup; + children = ( + 6EDF3214C286AFD4841B3551A037B0A9 /* Alamofire.framework */, + D69932FBD99A6AC9733077CD793DE95E /* PetstoreClient.framework */, + 0F39AA54BB1773329C8151B721ED0D09 /* Pods_SwaggerClient.framework */, + 6F9F8165FD8B1C4B07F06F5DCDDDE89A /* Pods_SwaggerClientTests.framework */, + BE1E7C2852E09D117ECDA841F0A5CE03 /* RxSwift.framework */, + ); + name = Products; + sourceTree = ""; + }; + 76FC95CAFD3F67C42393B89FE11C631E /* Models */ = { + isa = PBXGroup; + children = ( + 7628A653BCE0CE4F0CA24E4699FF04E5 /* AdditionalPropertiesAnyType.swift */, + 9D53702B1DFE795F10CD9F02ED7196FB /* AdditionalPropertiesArray.swift */, + 9A9D6B8A244BC24B1DFF8AE87F94F792 /* AdditionalPropertiesBoolean.swift */, + AE9C5D5D818389294D9B773DD491B146 /* AdditionalPropertiesClass.swift */, + CB268230F2A96F71335E107E497BC32C /* AdditionalPropertiesInteger.swift */, + C2ABFCCD850DDE628412E12A3A36BC83 /* AdditionalPropertiesNumber.swift */, + 427485D09ADF908E73C20C8E8F56313E /* AdditionalPropertiesObject.swift */, + 417E0C1C7F4C17857E4C0D19275C6973 /* AdditionalPropertiesString.swift */, + 2E62E4A381F97286B84952D8ABA59681 /* Animal.swift */, + F3A9349CCCD01B8CD6646B22BD8FAFFD /* AnimalFarm.swift */, + 0755658D38EA295B964DD3D2AE6130E8 /* ApiResponse.swift */, + 59A65FEE7BCD66D95A4A236D44082214 /* ArrayOfArrayOfNumberOnly.swift */, + 97AE2157FA464312716D670ACC5FBA81 /* ArrayOfNumberOnly.swift */, + F25DE89C483E14ED16E9B0F96850BF3B /* ArrayTest.swift */, + 39F74B8F482952B4F0D1ECBE5D900E09 /* Capitalization.swift */, + D73E4AE40107F9E12D9933657017209A /* Cat.swift */, + A1C5824ADAF044284DC74D7785926F01 /* CatAllOf.swift */, + 7239C4B748D482C26AE3B3EC168AD371 /* Category.swift */, + 8E271F2E357A3F1A972FF120671638B4 /* ClassModel.swift */, + 77E4025C4EF246541D617C626370FC16 /* Client.swift */, + 88BE3C1FFB1B8A373D68AFE8E2CE9E5B /* Dog.swift */, + B6DFB261890C61E9C5ED205C350432C6 /* DogAllOf.swift */, + BB2944F75CA2FADBE47B2326252AAB5A /* EnumArrays.swift */, + E1259C7EE8FBB3A324ED66A0FBE292D2 /* EnumClass.swift */, + A933D6B3F16C58A90BFD589C4B23EE38 /* EnumTest.swift */, + 47729A51DD7F47ED910F54FB3FBE5393 /* File.swift */, + 9ECAC6F788B1B30D9157D0A0ADC1148B /* FileSchemaTestClass.swift */, + 8E7E635C33CF3DE53B838B378535F65C /* FormatTest.swift */, + A403B12907B25FC32930C07AD4DF4600 /* HasOnlyReadOnly.swift */, + E237960AB17F68A30227D83025D39488 /* List.swift */, + 40FA27876F7533BCDAAEB14AED6CC511 /* MapTest.swift */, + D406BAD811EAD0952929B093F56F2BF2 /* MixedPropertiesAndAdditionalPropertiesClass.swift */, + BD2133B0A357172D4E12A35C6488638D /* Model200Response.swift */, + FEFFBEEA8F7216DF65BD978A823BEDA2 /* Name.swift */, + ACC20A8939D21B502E71D99F130B013E /* NumberOnly.swift */, + 87ADA33E38CF943875922CB316D2A29A /* Order.swift */, + 75E2A26619203BE094E23132BE4F9C6D /* OuterComposite.swift */, + A71552570D704D50ABA564EB978406FA /* OuterEnum.swift */, + 32DEB152EA23784FF891FB3850E4A1FE /* Pet.swift */, + B23D0E4BD36D6E24C66A8DB3F81FE656 /* ReadOnlyFirst.swift */, + 0568635049F72DE8DD05757186436324 /* Return.swift */, + BF174B49C2E16DD172055DB12BC37B2F /* SpecialModelName.swift */, + 0757CDB69F181DE86D31F260259CC63B /* StringBooleanMap.swift */, + 8688291EDCC3CA07AEFAFFDC3ABBE224 /* Tag.swift */, + C692DE62E3C756A61E2E9C829EA0BCE6 /* TypeHolderDefault.swift */, + FB709FAE1018A60657705217C88967AC /* TypeHolderExample.swift */, + B374449845CA94813BACD80BE4751992 /* User.swift */, + 46FC0AD10406C3CE1828C826775E9650 /* XmlItem.swift */, + ); + name = Models; + path = PetstoreClient/Classes/OpenAPIs/Models; + sourceTree = ""; + }; + 8244AEBEFB4AC3530215FA5CBA26673B /* Pods-SwaggerClient */ = { + isa = PBXGroup; + children = ( + 618C90E6044C36C76F3590183ED38CB2 /* Pods-SwaggerClient.modulemap */, + D46742F1F99243487DCC614C75C1413C /* Pods-SwaggerClient-acknowledgements.markdown */, + 96FB30FE91CE11061D85EA6BDBE094E3 /* Pods-SwaggerClient-acknowledgements.plist */, + 471C1EEE2C56B756E004285EACEE72E2 /* Pods-SwaggerClient-dummy.m */, + 9448B03916DFC494CD68A614565A98B8 /* Pods-SwaggerClient-frameworks.sh */, + 4DC5DC2F9BCEFA797895B33C16D2B17E /* Pods-SwaggerClient-Info.plist */, + 2ED73BB76003B470F3B646AD3A5750D4 /* Pods-SwaggerClient-umbrella.h */, + 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */, + B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */, ); name = "Pods-SwaggerClient"; path = "Target Support Files/Pods-SwaggerClient"; sourceTree = ""; }; - E9EDF70990CC7A4463ED5FC2E3719BD0 /* Pods-SwaggerClientTests */ = { + 8342B3C0D5B5B78B6FF2EB9EBABDF316 /* Support Files */ = { isa = PBXGroup; children = ( - 419496CDDD7E7536CBEA02BAEE2C7C21 /* Info.plist */, - 9D08EC9B39FEBA43A5B55DAF97AAEBE9 /* Pods-SwaggerClientTests.modulemap */, - D47B812D78D0AE64D85D16A96840F8C4 /* Pods-SwaggerClientTests-acknowledgements.markdown */, - 9D780FDAD16A03CC25F4D6F3317B9423 /* Pods-SwaggerClientTests-acknowledgements.plist */, - 721957E37E3EE5DB5F8DBF20A032B42A /* Pods-SwaggerClientTests-dummy.m */, - CAF6F32F117197F6F08B477687F09728 /* Pods-SwaggerClientTests-frameworks.sh */, - F3E1116FA9F9F3AFD9332B7236F6E711 /* Pods-SwaggerClientTests-resources.sh */, - CF1ECC5499BE9BF36F0AE0CE47ABB673 /* Pods-SwaggerClientTests-umbrella.h */, - 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */, - FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */, + 353DE1A4F630D656323F08E7DBB62F93 /* Alamofire.modulemap */, + 4FB24B4936663207D1E346C5B6B9EAD4 /* Alamofire.xcconfig */, + 2F4CC7E2EF21164D2E203FEAF12D869A /* Alamofire-dummy.m */, + FD2207283F6AAB87403F6CC48462589C /* Alamofire-Info.plist */, + D49FDF34DAD7FA627C657B59EEF5348A /* Alamofire-prefix.pch */, + AE110F03859CEB598ADBC6AF0026E6C6 /* Alamofire-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/Alamofire"; + sourceTree = ""; + }; + 86B1F48A58BFA2FA26CD584937FBEED1 /* Pods-SwaggerClientTests */ = { + isa = PBXGroup; + children = ( + D1A6BA19B108998DF7350B40C83BFC47 /* Pods-SwaggerClientTests.modulemap */, + D01ADEDF5E44D58ACB8ED1AED7BF7615 /* Pods-SwaggerClientTests-acknowledgements.markdown */, + 31ED5C3525921534592BF796A9C159CF /* Pods-SwaggerClientTests-acknowledgements.plist */, + 4C2B15F359D7B06184AED746FB653F10 /* Pods-SwaggerClientTests-dummy.m */, + 901441DA8E39EF973EBE8D69C2CDADE7 /* Pods-SwaggerClientTests-Info.plist */, + 4FCA64AB7A1C3014939EFADD6F937DB1 /* Pods-SwaggerClientTests-umbrella.h */, + CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */, + 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */, ); name = "Pods-SwaggerClientTests"; path = "Target Support Files/Pods-SwaggerClientTests"; sourceTree = ""; }; - EC52080E65FE34CBDE5F694B08BA9836 /* Development Pods */ = { + 87C875AAE46C42F388F84017D9C9F70E /* Frameworks */ = { isa = PBXGroup; children = ( - 894E625B654BBE2FB6E8E88AA51D3E5A /* PetstoreClient */, + 110A71E71814850BBCD440AF198317DF /* Alamofire.framework */, + 0FDDD670EFAE8A21A0BD76C684193FAE /* RxSwift.framework */, + EA9AC0BC3CFB1D7F35089B6086FA77D8 /* iOS */, ); - name = "Development Pods"; + name = Frameworks; + sourceTree = ""; + }; + ADB072EBDA2441CFD03AE3EE4E9CFE92 /* PetstoreClient */ = { + isa = PBXGroup; + children = ( + C645ED7A39D8B9114C20CAFE2B7FBC2B /* AlamofireImplementations.swift */, + AE55486083AAFB05A421910D689676CD /* APIHelper.swift */, + 55A64F269657828EFCFE8BFEBEC769FC /* APIs.swift */, + 35FACC9017B95B9A2C4A6F43E6168BE3 /* CodableHelper.swift */, + A2C8922E4E1E3C67279458D892BC37AD /* Configuration.swift */, + 892F30771518EB494D89A92413C04E85 /* Extensions.swift */, + 0440E1381A0610C4FE76AA2AF1814289 /* JSONEncodableEncoding.swift */, + 8308F433372AEFC6D557F1856FC9DA01 /* JSONEncodingHelper.swift */, + 28350F99E9985C0EFD64D72D74A3BB5B /* Models.swift */, + B0F1355E884BA38BE356E5B3F34C7552 /* APIs */, + 76FC95CAFD3F67C42393B89FE11C631E /* Models */, + E43B365D3A2A9F7299C0632875837341 /* Pod */, + 2F357899B70BCB34F071EB6F4C420F2E /* Support Files */, + ); + name = PetstoreClient; + path = ../..; + sourceTree = ""; + }; + B0F1355E884BA38BE356E5B3F34C7552 /* APIs */ = { + isa = PBXGroup; + children = ( + 89D4EF25430724C9CA591320E91F6ADE /* AnotherFakeAPI.swift */, + A6DF985F6F04F63AA4A9AE7866CB8D22 /* FakeAPI.swift */, + DF1DD94A10F409B4316DAC2A019FED34 /* FakeClassnameTags123API.swift */, + 3C12C50651DC7C8FE70BC93359C255DF /* PetAPI.swift */, + 387EBB01DADD396614945A01970A8222 /* StoreAPI.swift */, + 342554F69C1610DDADF3EBAC284CC8F6 /* UserAPI.swift */, + ); + name = APIs; + path = PetstoreClient/Classes/OpenAPIs/APIs; + sourceTree = ""; + }; + CF1408CF629C7361332E53B88F7BD30C = { + isa = PBXGroup; + children = ( + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + 1C8221FE0071BDA2D0C5DE07B7736E88 /* Development Pods */, + 87C875AAE46C42F388F84017D9C9F70E /* Frameworks */, + 6C5DB4246A4C5DB39B520841339F1173 /* Pods */, + 752761252CF779269D588A7735D3E8BD /* Products */, + 27EB02841E0D43820F14F4377DE3547E /* Targets Support Files */, + ); + sourceTree = ""; + }; + D5E8828356ABA3B9CC63A755C69FA492 /* RxSwift */ = { + isa = PBXGroup; + children = ( + 64F819D835354426411C22FB35823EAD /* AddRef.swift */, + 7F4E8DC898B4C8D35F09B107CE705172 /* Amb.swift */, + D8ED3568E09862ADC85A6FE650FEC665 /* AnonymousDisposable.swift */, + B3DC61667E570A41266B09E2160DAF2D /* AnonymousObserver.swift */, + 7AB42A286E75A2848A769570F01DAC24 /* AnyObserver.swift */, + F6BAA110BD7DD59D40985519BC3BAB2C /* AsMaybe.swift */, + C638F1FAA7FFA890ACB0BAD594BAA07B /* AsSingle.swift */, + 8D44154CE37C1B66CDC3D69453887262 /* AsyncLock.swift */, + 452FB9512A491F731556BD2F110347ED /* AsyncSubject.swift */, + 2C7E8D8382CCB07D68866B995A900D74 /* AtomicInt.swift */, + 9289A1C05392D4FF88A897B4FDF77958 /* Bag.swift */, + FF699627254D1F4E425E37E0306B828B /* Bag+Rx.swift */, + 10A297E0A593ED4485BF3BAA9211E812 /* BehaviorSubject.swift */, + 4C42EB9688F37F35C9110C57A8075DC4 /* BinaryDisposable.swift */, + 28DE248049BE51CEA8ED1544F9D7FE9E /* BooleanDisposable.swift */, + 49A9E858642895322172FF16226C86AC /* Buffer.swift */, + 5A8B9F6DB3E903DC9635F9DA16D90A0C /* Cancelable.swift */, + 49E9CEC3564840C6531A01B3402A3A12 /* Catch.swift */, + 54212BBF40F065FC93C168C875E2E209 /* CombineLatest.swift */, + D25BFF9CA1B3C8219A5F2A1C064AA6AA /* CombineLatest+arity.swift */, + 7B49FF45429D57DA0487C5BD90AA6398 /* CombineLatest+Collection.swift */, + 0ACE6B378AD271E3ECC20C3EB267F4D8 /* Completable.swift */, + BC49CD3902CF252FAA732A1DDA1DC1C9 /* Completable+AndThen.swift */, + 410ED99EC03614CF82F7E2CCD4E628AF /* CompositeDisposable.swift */, + C71AEC0AF13D31F11719E203832081AF /* Concat.swift */, + D95AD1D226C3858D35BDFD664BBFCC02 /* ConcurrentDispatchQueueScheduler.swift */, + D765DC1CA9E827C5C155427A9C020AF8 /* ConcurrentMainScheduler.swift */, + AB1FE5BDED74EBDC047C5B437A524854 /* ConnectableObservableType.swift */, + 32615BCCDB0302A683583113699C168B /* Create.swift */, + B18AB9B87BF0A071727872B64CC84137 /* CurrentThreadScheduler.swift */, + 62326983DDFE0858FB48A88B024EAE9D /* Debounce.swift */, + BE02647BBDB83E0D48469A56FBF37C88 /* Debug.swift */, + 27F63D218F3E7685156696F53CEAB647 /* DefaultIfEmpty.swift */, + FBF9232381581A50CA2E8FA9517D76EB /* Deferred.swift */, + 8CFB12945932D18A9721B6AF2D8D871E /* Delay.swift */, + 13431ED497EC52994DA35A8DD3CB5C3C /* DelaySubscription.swift */, + 9F929FCCF076F0A692EA809B17DD7F31 /* Dematerialize.swift */, + B498E7AFBD0589628B31BD16154B20FF /* Deprecated.swift */, + B5D0270A8CD4CA80B74E5EC729FBC1A7 /* DeprecationWarner.swift */, + 679C1F8FF956155F71A31E63595C9AB9 /* DispatchQueue+Extensions.swift */, + 321D200CF6D488D976163C6A790DB8AA /* DispatchQueueConfiguration.swift */, + FC35E81B52795E7CB75A8D1E9687BF16 /* Disposable.swift */, + C5FFB8448F56996188428783F8C6C98F /* Disposables.swift */, + 40D138874AFF1185A99996B4180C5AAB /* DisposeBag.swift */, + 8E3B161DE103995FAFA429C1AD3E2875 /* DisposeBase.swift */, + 43029CD91769D491E685263C4CB46A97 /* DistinctUntilChanged.swift */, + 45C4BA95A0FC85CD30E5DD59545AF87F /* Do.swift */, + 6F10D694F6B9493FDA575E60FE695722 /* ElementAt.swift */, + B3B003673B45236AA5A51A70A733399D /* Empty.swift */, + EAFD9A5AE325CD48442A611EFD103D57 /* Enumerated.swift */, + 979ECDDE99CE790DA21FE87298107E6B /* Error.swift */, + F73E2FE9C0296B7647E36FDAB1A48E6E /* Errors.swift */, + 14D946B2CD75D612D3AE3F72880C7FF3 /* Event.swift */, + 291E627729F653AC7E4BAB6FEDE416E3 /* Filter.swift */, + B29AE35CD92E0CB3A64D2E581DAD2CB4 /* First.swift */, + F8E5B43302C88640C1A05762A037012A /* Generate.swift */, + 77CBC56217930F052D637B82D048BA3F /* GroupBy.swift */, + 0FA93D91962228BFC4F2058578D7A9EB /* GroupedObservable.swift */, + 2BF070C783A6786C9C92AA917E9AC879 /* HistoricalScheduler.swift */, + AB9FF8F32D5D6FC16033AF34AC1408FD /* HistoricalSchedulerTimeConverter.swift */, + 44F10FFC1F6C0F6A0F7C003C038C272B /* ImmediateSchedulerType.swift */, + C308A93504B6AE628F892297A6EDD347 /* InfiniteSequence.swift */, + 305616479EFCF33CB4768627955493AB /* InvocableScheduledItem.swift */, + CB834FF7C5DF4A05EB6179428E1A2D30 /* InvocableType.swift */, + D95243E9789D171D24B3CCEF4A306E79 /* Just.swift */, + C89F6DBCB4EBE505168C934C00DB909D /* Lock.swift */, + F5CF777F69E934A92F78512092C53052 /* LockOwnerType.swift */, + 7EC9D77DAB6AE650C74E828CE1557C00 /* MainScheduler.swift */, + 5FF198528C6AE20A99A5E33F76D0C527 /* Map.swift */, + C894BEC0DE9A446CBB01A0B7D63DA38A /* Materialize.swift */, + A14370E500BCD2443559DB70F2786EB6 /* Maybe.swift */, + FF4EA9F3121FB3144A5648BBC0A8004D /* Merge.swift */, + 79A4D30F2478E26FEA80A716FA038512 /* Multicast.swift */, + 498E9106F2911C5C575288660EF2C14A /* Never.swift */, + A5F4524003B8CAF5944F3FD37875D795 /* NopDisposable.swift */, + DBD0EFE5168A6526DB06F4A6800CF584 /* Observable.swift */, + BE64C63DA4FB40ACE396982AAB244DC0 /* ObservableConvertibleType.swift */, + 8D048EFF0C58F0BC4BBC956A98937739 /* ObservableType.swift */, + 5B6C60D7E233892084DAC43F60C64C60 /* ObservableType+Extensions.swift */, + 47A00016C4275D6E28A1DD5AD98AC9AE /* ObservableType+PrimitiveSequence.swift */, + 274B9D4CA658622B79DCE0F5E736A061 /* ObserveOn.swift */, + FB54B43833CB03F1D8749CE7C298D3B5 /* ObserverBase.swift */, + 0D4584BAE72539FDF3D31787762B39D0 /* ObserverType.swift */, + E9ABCE94A0D10DF97FC367C061436E5F /* OperationQueueScheduler.swift */, + 2CD8220D45545AC2A21A066A562081FF /* Optional.swift */, + 80EBCAEF4DEEB18B34DC5033FF20ECA8 /* Platform.Darwin.swift */, + 27B1CB7693D74DF7AB61FB3A0064A532 /* Platform.Linux.swift */, + 7B990C87BD5B32BF54E420212C1A52B1 /* PrimitiveSequence.swift */, + 8C65830349B23D7E262AB27BAB0E8188 /* PrimitiveSequence+Zip+arity.swift */, + 7C8CB70C6C6B09D4BB90057C9BA7EEC2 /* PriorityQueue.swift */, + F2E147BD28F065756948CC15F0E6B68D /* Producer.swift */, + 09F1E9D95E719B94DD98DDDB394278F2 /* PublishSubject.swift */, + 60E9C1BF2A5AAD8532B83D587D4B447A /* Queue.swift */, + 46285A50499BCD564104AE4AD8489A48 /* Range.swift */, + 240EE4633A0C295594350E7EC54BA3DF /* Reactive.swift */, + 55000F129FE5A09A0B51661892DB1F4E /* RecursiveLock.swift */, + B68A320DEB52A0B2CF5A7DCD714E84D3 /* RecursiveScheduler.swift */, + 060AAA21729D90B11F6FD9102F628758 /* Reduce.swift */, + 1555637002FBEDE13C94AEA5F61C763B /* RefCountDisposable.swift */, + 2EAED007F778FE48F4D3EB2B398B0AFB /* Repeat.swift */, + AEF2F44C17F277967404CE3DA788FD46 /* ReplaySubject.swift */, + E22F3BDA0C336074E5EA13F37C05FF2C /* RetryWhen.swift */, + B50B0F2486C6BB7F3AF76CD685C8B4E1 /* Rx.swift */, + 2CEA210E8205F311B1A19569BCDDEF63 /* RxMutableBox.swift */, + 192DC760893AF9295AD26599EF40763D /* Sample.swift */, + 8942B778DC2EC96252BBB267B62D566B /* Scan.swift */, + 717C1608162B27019EBC04A33444BAEE /* ScheduledDisposable.swift */, + FE0D448C7D74BFFB8604285DD7047EED /* ScheduledItem.swift */, + 9FBF81FDC5C51FD450958591E8EAF6EA /* ScheduledItemType.swift */, + F9FDC7E72AC896C5D9031E49B0372D06 /* SchedulerServices+Emulation.swift */, + 33796A172718E1356E0E8337BAE01CD2 /* SchedulerType.swift */, + 4B5420BA5CD952DA0D4A8A31E4D69CC2 /* Sequence.swift */, + CF92C4858F759EABBDDB45D32BE8DDC2 /* SerialDispatchQueueScheduler.swift */, + 55B63E482462E54A5366DAEA6318FB7E /* SerialDisposable.swift */, + EA01D2A2DB1E31168FFF75C6F9DAD5C5 /* ShareReplayScope.swift */, + AA9CEE837EF5EE1215788BEBC3959479 /* Single.swift */, + BDE1B1C73CF83B02289A255C14E108C9 /* SingleAssignmentDisposable.swift */, + ED1332D9E071ED0D532F6ACD2AD1AC38 /* SingleAsync.swift */, + BE70B57B6CF22A99EBDA453C12741148 /* Sink.swift */, + F1FC53345CBCE9EF88576C6BDC5D16EE /* Skip.swift */, + 25B4A2E0DAA89840BB58C5D472574F66 /* SkipUntil.swift */, + A2EDBEFED12864758CCA6F411205AB2E /* SkipWhile.swift */, + 836ADD02498B971DAA473321782A72A0 /* StartWith.swift */, + 2788B53C02374D910EFFBCF48BFF0B1D /* String+Rx.swift */, + C5A7024FF197192803FBC9F7CEFD9C87 /* SubjectType.swift */, + 70180A07F00266A41D515742CBA72B74 /* SubscribeOn.swift */, + A4218AB53A6385BB02D95ED58A63B6AB /* SubscriptionDisposable.swift */, + D10F2A3D1BBD10CA8594739DB19CDC07 /* SwiftSupport.swift */, + BAED0C18FF2FC7D97F0E5B2D4FE37F2C /* Switch.swift */, + 97D7A50019AFFCCD39301BD1E594F91C /* SwitchIfEmpty.swift */, + 0AF5386FC035BD7FBDA0B02884DE8324 /* SynchronizedDisposeType.swift */, + 757C5919A405D111AADAF18AFDDD9D5A /* SynchronizedOnType.swift */, + EC22F330006EA5F892970C69FBA9F199 /* SynchronizedUnsubscribeType.swift */, + 19A8FEF66E4D85F1B100E0AD77AC60B1 /* TailRecursiveSink.swift */, + 8050204E8821E9A399D7E830591E063B /* Take.swift */, + 57C559BAD8B2B8C949DA1C1837C049C6 /* TakeLast.swift */, + 0027A132D8BB718973989368CF5E63CF /* TakeUntil.swift */, + 6E67D2FEF499445214AF84B7B9C9B33E /* TakeWhile.swift */, + 6DB4CEA0C0A7C4823A04EAD9FBA3961D /* Throttle.swift */, + F42B2C25A2A499E0244E107DF28BA640 /* Timeout.swift */, + 98C736C5D0850FA27DB5D0E58640C537 /* Timer.swift */, + 33FB85D186079ED93696702AD931FFDA /* ToArray.swift */, + 459E274832813076884CA4287E491429 /* Using.swift */, + 745314207D827581C481CE38F4AEB7A3 /* VirtualTimeConverterType.swift */, + 6DA209283C4EBF0544FF63C7D1BCC40D /* VirtualTimeScheduler.swift */, + EFA2A0B903691A7C2293FD13EACB8E3F /* Window.swift */, + B2BC0F91A33991D668BEC3583CF46BAB /* WithLatestFrom.swift */, + E3B9412BBCE6A74BC742A54FD0B8186C /* Zip.swift */, + 5076FFA46D2287FC8EC0C217FC4BA0B7 /* Zip+arity.swift */, + 65FF8529B526BB8EC9A7CB5716CEB89F /* Zip+Collection.swift */, + 0EFA4421D8D59E9E4A8C8A50F313B3C5 /* Support Files */, + ); + name = RxSwift; + path = RxSwift; + sourceTree = ""; + }; + E43B365D3A2A9F7299C0632875837341 /* Pod */ = { + isa = PBXGroup; + children = ( + 7D2AE1A0BBE6459478A73D38848B588E /* AdditionalPropertiesClass.md */, + C54917ABF2432A86A6CCB0EABE76F916 /* Animal.md */, + E7AE50AD71DB17321FA5240F1B1D2E70 /* AnimalFarm.md */, + 4F8AC481F02DAF666B64D9A62FA7109F /* AnotherFakeAPI.md */, + 97CEA1BED002ABF0D6E5E078FB3F5895 /* ApiResponse.md */, + 55D378FA7C24F905373016C59B3BE2C4 /* ArrayOfArrayOfNumberOnly.md */, + 0AB84B97D3A773262405DAE614E8AAC8 /* ArrayOfNumberOnly.md */, + 2AE97CCDC8C4D014282DFBAE17CD786F /* ArrayTest.md */, + 02322A6B0543DADA4A6CB13A420ADA46 /* Capitalization.md */, + 8E309FED474011CFC561423B6D04ED9D /* Cat.md */, + DDC303FBE481D915EC0B8ADDAE1623CB /* CatAllOf.md */, + 5EBFB4694957EBED5253C544C3917DBC /* Category.md */, + 5A4C226AA31A4DF5F6CE9579AE514B34 /* ClassModel.md */, + C3633BEF1B1742609980D8C0500E4519 /* Client.md */, + 799B734D0D692695C613949A6115718D /* Dog.md */, + A2062FC5CF8950D95726336DA1F1F52C /* DogAllOf.md */, + EDB38B126A5C5BA3195B41CDA7E3F6A3 /* EnumArrays.md */, + 4A4CFDCD285AB04B85A4EF0446C859E4 /* EnumClass.md */, + 608A407DE2A47612643C9271D707558C /* EnumTest.md */, + 1AA4FF009847666EB74179EA6C75DE4D /* FakeAPI.md */, + 5164EAF5A81C9C991085A3D5BA3A7627 /* FakeClassnameTags123API.md */, + E57A9C76D05E7DF25E045C8C83CF7B8C /* File.md */, + B52D5D8ED9723274361CA73BDC3875A0 /* FileSchemaTestClass.md */, + 19B33AA036CD6E46A97113343C8904A0 /* FormatTest.md */, + 857C9FC7F70D66015A686E5E392AB04F /* HasOnlyReadOnly.md */, + 90A6677EB26AA075208F098879E425DD /* List.md */, + 0D180F35B94BC88CF6D264D1CDF42624 /* MapTest.md */, + 2895E1635E3A30E234670ED9283C23EA /* MixedPropertiesAndAdditionalPropertiesClass.md */, + DCD118360416984364D92CA81D410FC2 /* Model200Response.md */, + 56430A53624DF50D17D8AB350D129613 /* Name.md */, + 2740D21DE2F99C963ACDC4261609EE50 /* NumberOnly.md */, + AF5C3CBAA31C59F82C8DE03C448B79D8 /* Order.md */, + 7D6449B4CFED6A13D7216B47179E7E4A /* OuterComposite.md */, + 758C5C2D6382B0F77807EFFC06E82BC4 /* OuterEnum.md */, + B5A26ADF8B68902A509D1A52E825E595 /* Pet.md */, + A0F3842CFF62B5C53CBFA83436673969 /* PetAPI.md */, + 14AAB621715B4F0218EABE72CE972494 /* PetstoreClient.podspec */, + B048D2348C3086D80D00537EC372C755 /* README.md */, + 81629AD2DFFED981E047483057BE1362 /* ReadOnlyFirst.md */, + F8D5778A0684580BB744D394024BB4A6 /* Return.md */, + FC82F67A5B34D020108D89B64C3BD691 /* SpecialModelName.md */, + D98CA687BDA7E1DE6C6D098CFD6AE1C7 /* StoreAPI.md */, + F53E66F85590280D11F64545A178CC13 /* StringBooleanMap.md */, + 3D608B4966D9E19DF62468677C823AC5 /* Tag.md */, + 8CF5B2C124751B1983FA287330A81E51 /* TypeHolderDefault.md */, + 0B2EDA68E233F400804C89253BBFB2E5 /* TypeHolderExample.md */, + F1577EF84ADE20D7F04CD82D5BAA684B /* User.md */, + 47214E2FA3F755CB7B808800197ECE59 /* UserAPI.md */, + ); + name = Pod; + sourceTree = ""; + }; + EA9AC0BC3CFB1D7F35089B6086FA77D8 /* iOS */ = { + isa = PBXGroup; + children = ( + DEF099C2A3C48A1F639FAE8CCB3D0CD3 /* Foundation.framework */, + ); + name = iOS; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 732D4E1722AFCFCEE4E651A873559D3B /* Headers */ = { + 23D70D9651451F43E7E8CC1A87B4B7E9 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 616F0481C475C488192EF999DFC00B7C /* Pods-SwaggerClientTests-umbrella.h in Headers */, + B6F6E4CC26451E91B59FAE0F6841DC1F /* Alamofire-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - A4ECCFB6718C50779A3FF4E0CB81E6E8 /* Headers */ = { + 26BF2B8B411556E53F9A1BF5BFBAB884 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 15A577EC90B78959B86446B6118C5FA0 /* Pods-SwaggerClient-umbrella.h in Headers */, + F3B7AF12D1FD688C8942217F918E2917 /* RxSwift-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - A6A607506FEAAC7C41268D3E5CF4E5FE /* Headers */ = { + 92694CC9CEC645ADF5EE0527F066151E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - EF1461221681BCA12A4147900A704727 /* Alamofire-umbrella.h in Headers */, + 83637EFE9CFF36EC1E7A73CCE55884B9 /* PetstoreClient-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B05454064C5D43AE24514125CFD39D7F /* Headers */ = { + A75A99D2E090C9BAAFA7D32A6536D24E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - BA586585C8C3B9DAE832259F504C21C1 /* RxSwift-umbrella.h in Headers */, + 0AB631DF2E9BC76B8736C9EFF6191C0B /* Pods-SwaggerClientTests-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - B28D7840773D45DCA6C551F0D6AABE96 /* Headers */ = { + D540D2F0FD93DE96146EC1B1DCF9577A /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 9E2D7D98F026CCB495E64C5F12136B75 /* RxAtomic-umbrella.h in Headers */, - 30BFAF34C5C1A69C4172B7F2A95C6F2B /* RxAtomic.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - D29017F8E100B2A53D1F8A5D79592B7C /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - FB1641B33D3463B2335BB1C9D6C4B14F /* PetstoreClient-umbrella.h in Headers */, + 88B8F96E58CD89EC10B74A1F8365F6FD /* Pods-SwaggerClient-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 14DFB61ABDA25614AC7428629254E83A /* RxSwift */ = { + 1BAC3F8145EDD03FE8EDB0EACEAE3522 /* Pods-SwaggerClient */ = { isa = PBXNativeTarget; - buildConfigurationList = ADAF7919989331C2B58E796ABE9FC08F /* Build configuration list for PBXNativeTarget "RxSwift" */; + buildConfigurationList = 9F0E63448933894561DF123D81422A1C /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */; buildPhases = ( - B05454064C5D43AE24514125CFD39D7F /* Headers */, - 4F29546669584872866A765CA091F327 /* Sources */, - B652A281A622E08B1880C01533EFC6BF /* Frameworks */, - 629D06BE6279A4C482AAA4C0AE95A3B3 /* Resources */, + D540D2F0FD93DE96146EC1B1DCF9577A /* Headers */, + D061CB8EF4036877AF78BF62F72CC9FE /* Sources */, + 9C5D10FD5C4D12FBA9AF8DE73A0476D4 /* Frameworks */, + 63F1A864D8FE7083A584B7AB1807C954 /* Resources */, ); buildRules = ( ); dependencies = ( - DB1DAD1F90017091E188FB351318FC8B /* PBXTargetDependency */, - ); - name = RxSwift; - productName = RxSwift; - productReference = 6306133179CC6DE689021E70C558607F /* RxSwift.framework */; - productType = "com.apple.product-type.framework"; - }; - 1902D1CE68FBA32C8D8799E8609C5B5E /* RxAtomic */ = { - isa = PBXNativeTarget; - buildConfigurationList = 76B13691DB32711A6B8BBD77E07FDA57 /* Build configuration list for PBXNativeTarget "RxAtomic" */; - buildPhases = ( - B28D7840773D45DCA6C551F0D6AABE96 /* Headers */, - FBD675025BC8BF2A1B139103D378CA6C /* Sources */, - B530B2CF62733E7B5C136E5E75A66E9C /* Frameworks */, - F39E851E80E47256F598EF94BCB0C00B /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = RxAtomic; - productName = RxAtomic; - productReference = 17C72882D5F578CFBC52EE6EED3D871B /* RxAtomic.framework */; - productType = "com.apple.product-type.framework"; - }; - 351340BF0149C3286C23FB1440131F5C /* PetstoreClient */ = { - isa = PBXNativeTarget; - buildConfigurationList = 3FD527BEA374E1B650791BCDB0CD8FD8 /* Build configuration list for PBXNativeTarget "PetstoreClient" */; - buildPhases = ( - D29017F8E100B2A53D1F8A5D79592B7C /* Headers */, - 309C905ADDFD5333122D5FCC352D103A /* Sources */, - 0CE1EF2BDAF56F78B7042C06A900B1E7 /* Frameworks */, - 91D5F5CAD53DE383F92E9655B1F74A07 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 7C37DAC780454385E5000BF223461451 /* PBXTargetDependency */, - AC95E71BEDCF3FC61908AA214F069C17 /* PBXTargetDependency */, - AC220FD15D6B95E1927179E2D8737ABE /* PBXTargetDependency */, - ); - name = PetstoreClient; - productName = PetstoreClient; - productReference = A9BE9E4EC3C181F7F793F96B3BE8F86C /* PetstoreClient.framework */; - productType = "com.apple.product-type.framework"; - }; - E4C8288BEB610EA811E671631ECCC086 /* Pods-SwaggerClient */ = { - isa = PBXNativeTarget; - buildConfigurationList = 6FE34D1A5B9BD52C4D88190720B78140 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */; - buildPhases = ( - A4ECCFB6718C50779A3FF4E0CB81E6E8 /* Headers */, - F650A0DFE3193A38423DCF6830EBD130 /* Sources */, - 2D18A19C87FF7AA8403C88BE0EF69BD0 /* Frameworks */, - B9265C9A0F8F90D819ED546ECFEA7134 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - C1555E6D62E44516F65C5D984CE0B68B /* PBXTargetDependency */, - 86CE87A7D2B5BEDFFCF7F03AE14AD292 /* PBXTargetDependency */, - A6BB9DADD9366875BB30DFCC4A9030D1 /* PBXTargetDependency */, - 6789DA4DC26EE950D2E7E747E18BCFEC /* PBXTargetDependency */, + 5FF9BADF7EA9C29AF5D5BC7FE75A1966 /* PBXTargetDependency */, + 8F62547FFEE7B2E6D4745289BBC9CD98 /* PBXTargetDependency */, + B61EF3C7B9BF27A4D773281BD10FF5E4 /* PBXTargetDependency */, ); name = "Pods-SwaggerClient"; productName = "Pods-SwaggerClient"; - productReference = C59929454AF9BAB3E825AB4632A4963B /* Pods_SwaggerClient.framework */; + productReference = 0F39AA54BB1773329C8151B721ED0D09 /* Pods_SwaggerClient.framework */; productType = "com.apple.product-type.framework"; }; - E76458C58C9140B6A16D60547E68E80C /* Alamofire */ = { + 3383968E74B5371B20BB519B170DC7FD /* Alamofire */ = { isa = PBXNativeTarget; - buildConfigurationList = 427F0F003A1AD80AE00155AFCDEFAC20 /* Build configuration list for PBXNativeTarget "Alamofire" */; + buildConfigurationList = E87124444A44B7DB55208E7FEC21D331 /* Build configuration list for PBXNativeTarget "Alamofire" */; buildPhases = ( - A6A607506FEAAC7C41268D3E5CF4E5FE /* Headers */, - CC399CEC576B42C962CEB290481CAF95 /* Sources */, - 6E8AF668A2161F7D6F680F721DB65D2D /* Frameworks */, - 3DDB7E21141D7764AE4658D5B6AFF8C6 /* Resources */, + 23D70D9651451F43E7E8CC1A87B4B7E9 /* Headers */, + A1C8B029F600160149A2404C342F6E50 /* Sources */, + F1626ADC3A7EC435D2722B3173355D36 /* Frameworks */, + 28FF73341543B6F0A7DF3C20CFFEA0AA /* Resources */, ); buildRules = ( ); @@ -1248,96 +1228,126 @@ ); name = Alamofire; productName = Alamofire; - productReference = D1903E9147683D5A20200EB371B1F05A /* Alamofire.framework */; + productReference = 6EDF3214C286AFD4841B3551A037B0A9 /* Alamofire.framework */; productType = "com.apple.product-type.framework"; }; - EAA283A8FDA10ED3D749965B3062AB9B /* Pods-SwaggerClientTests */ = { + 49CDD5ADAF3DA23F4C622CC2F9A75659 /* PetstoreClient */ = { isa = PBXNativeTarget; - buildConfigurationList = 7DFD16CAA839D5E2607A2D7700691018 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */; + buildConfigurationList = 3679C7724191A63BC55F80144E8C3E8E /* Build configuration list for PBXNativeTarget "PetstoreClient" */; buildPhases = ( - 732D4E1722AFCFCEE4E651A873559D3B /* Headers */, - 896221CF7DC63DEEB3A5276BB19738DD /* Sources */, - 5B9729099AD7DCDA0F1992A091EA200D /* Frameworks */, - F2A072A007D209224870DA88C7DCEAE9 /* Resources */, + 92694CC9CEC645ADF5EE0527F066151E /* Headers */, + 8FB1A5B10FCFF638132C8B476224E639 /* Sources */, + BFF25BADA4BDAAF2C33C2AB4B7CC18DF /* Frameworks */, + BF5CB098891092F4E60775D327FED8B3 /* Resources */, ); buildRules = ( ); dependencies = ( - 36BB78CD83103E2E3589612B670D7F8B /* PBXTargetDependency */, + 5D88AFB25CB03E9E800597DEEA2B2C26 /* PBXTargetDependency */, + C909BEA4C8ECA46A453E4E4B0D1CE3F7 /* PBXTargetDependency */, + ); + name = PetstoreClient; + productName = PetstoreClient; + productReference = D69932FBD99A6AC9733077CD793DE95E /* PetstoreClient.framework */; + productType = "com.apple.product-type.framework"; + }; + 7ECA32D1B18128C394D8D35F346BEEC7 /* Pods-SwaggerClientTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 8F09E039867007D3576FEED9032526A8 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */; + buildPhases = ( + A75A99D2E090C9BAAFA7D32A6536D24E /* Headers */, + F7D9DB86AE0913CC2B294C55BFD934AD /* Sources */, + D4EC17B7E6732812B49C04E19E9C0EF3 /* Frameworks */, + C2801E627F662CD786BE9F42773CBECF /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + C18A6DC0C9B8408542F3D944BB6D67F4 /* PBXTargetDependency */, ); name = "Pods-SwaggerClientTests"; productName = "Pods-SwaggerClientTests"; - productReference = 983B7F0069F6EA0BD1F79B633452A7FB /* Pods_SwaggerClientTests.framework */; + productReference = 6F9F8165FD8B1C4B07F06F5DCDDDE89A /* Pods_SwaggerClientTests.framework */; + productType = "com.apple.product-type.framework"; + }; + BA1FAA79F9B74485F4D7279FD41A7D1D /* RxSwift */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1CD3A89A87C87A3CE977265194B2F077 /* Build configuration list for PBXNativeTarget "RxSwift" */; + buildPhases = ( + 26BF2B8B411556E53F9A1BF5BFBAB884 /* Headers */, + F004E8F6BFA59A596E38AAEEA755BE2A /* Sources */, + E44363F6A0C4B876C2CE0C89617F4A74 /* Frameworks */, + DB5BDC9BAA86FDCA59A1DBF43CC5BE57 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = RxSwift; + productName = RxSwift; + productReference = BE1E7C2852E09D117ECDA841F0A5CE03 /* RxSwift.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0930; LastUpgradeCheck = 0930; }; - buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( en, ); - mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = 432AB5D86D6A833FDFD921A08871A5BC /* Products */; + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = 752761252CF779269D588A7735D3E8BD /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - E76458C58C9140B6A16D60547E68E80C /* Alamofire */, - 351340BF0149C3286C23FB1440131F5C /* PetstoreClient */, - E4C8288BEB610EA811E671631ECCC086 /* Pods-SwaggerClient */, - EAA283A8FDA10ED3D749965B3062AB9B /* Pods-SwaggerClientTests */, - 1902D1CE68FBA32C8D8799E8609C5B5E /* RxAtomic */, - 14DFB61ABDA25614AC7428629254E83A /* RxSwift */, + 3383968E74B5371B20BB519B170DC7FD /* Alamofire */, + 49CDD5ADAF3DA23F4C622CC2F9A75659 /* PetstoreClient */, + 1BAC3F8145EDD03FE8EDB0EACEAE3522 /* Pods-SwaggerClient */, + 7ECA32D1B18128C394D8D35F346BEEC7 /* Pods-SwaggerClientTests */, + BA1FAA79F9B74485F4D7279FD41A7D1D /* RxSwift */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 3DDB7E21141D7764AE4658D5B6AFF8C6 /* Resources */ = { + 28FF73341543B6F0A7DF3C20CFFEA0AA /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 629D06BE6279A4C482AAA4C0AE95A3B3 /* Resources */ = { + 63F1A864D8FE7083A584B7AB1807C954 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 91D5F5CAD53DE383F92E9655B1F74A07 /* Resources */ = { + BF5CB098891092F4E60775D327FED8B3 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - B9265C9A0F8F90D819ED546ECFEA7134 /* Resources */ = { + C2801E627F662CD786BE9F42773CBECF /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - F2A072A007D209224870DA88C7DCEAE9 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - F39E851E80E47256F598EF94BCB0C00B /* Resources */ = { + DB5BDC9BAA86FDCA59A1DBF43CC5BE57 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( @@ -1347,336 +1357,446 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 309C905ADDFD5333122D5FCC352D103A /* Sources */ = { + 8FB1A5B10FCFF638132C8B476224E639 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 9D852C32BFB6BF6429F1EA718BC1830A /* AdditionalPropertiesClass.swift in Sources */, - F0E28F3FE7B2A29B5D0954D7CA5EEECA /* AlamofireImplementations.swift in Sources */, - 6C6782CFB4088EC63E2662F72A7820DF /* Animal.swift in Sources */, - FBCCF939E4DF7C4E47E51815ACF2F2FD /* AnimalFarm.swift in Sources */, - 4A68EB7F4046084B7100774BC38E219B /* AnotherFakeAPI.swift in Sources */, - 1DFA14CF1BCF3A4C31265BC914F43D21 /* APIHelper.swift in Sources */, - FF598390268227CA1A1C8F7B15393CDB /* ApiResponse.swift in Sources */, - 37F6CB2B0A8F480BD0BE8BA83D8A3C12 /* APIs.swift in Sources */, - 21B74324A15F880F0E9B99BEEC66CC95 /* ArrayOfArrayOfNumberOnly.swift in Sources */, - 4A72447A210ADE62A32194373F0D0626 /* ArrayOfNumberOnly.swift in Sources */, - DE61CB26C1654A37AEC20DEACA476CE1 /* ArrayTest.swift in Sources */, - 8E3CC4B5F49FF54C63890D88BDAC40B2 /* Capitalization.swift in Sources */, - B67933873CB386AAB05A93770866D437 /* Cat.swift in Sources */, - 756DFF4FD4A589E117B2143FB406196E /* Category.swift in Sources */, - 7CF559F5B2A67CD63E0F2CC9122DF2ED /* ClassModel.swift in Sources */, - 2A403DCD3CC11486A1FEAA4E0F9DC0A4 /* Client.swift in Sources */, - 5BB9B7CDD8D6CF0FFEB772CB9B5AA862 /* CodableHelper.swift in Sources */, - 93229D5F864DE1703338611607267D41 /* Configuration.swift in Sources */, - D7AEEB1783719CB0BD171B2693869C63 /* Dog.swift in Sources */, - 12CBD1988F665F28F3D80740FF449666 /* EnumArrays.swift in Sources */, - CC31DE8E8743505E9EAC9C3C21822415 /* EnumClass.swift in Sources */, - 61F86FFB62D4CB53F5E2E1BB283B9ACA /* EnumTest.swift in Sources */, - FB59FCD21E86D1686AEAA9798D3E58CD /* Extensions.swift in Sources */, - 039EC6F1278A169BA4ECB24D190CF3A1 /* FakeAPI.swift in Sources */, - AB9DBCF4447B95B6F20FE64DB00D6C04 /* FakeClassnameTags123API.swift in Sources */, - 4FFDDB36F217233CD33DFF8331C1154D /* File.swift in Sources */, - BD5D388F9FE7248765A3510CBC06A96C /* FileSchemaTestClass.swift in Sources */, - 519C1315C8F9116DDE1BB14D78541A97 /* FormatTest.swift in Sources */, - 69488575B7E5268240C20D8DA5894BB8 /* HasOnlyReadOnly.swift in Sources */, - 3F600BE5B3003E7635C8C4D4C85767D0 /* JSONEncodableEncoding.swift in Sources */, - 26E5D8CA29B483184BB2A73131D6432A /* JSONEncodingHelper.swift in Sources */, - 44E7DA0E238022FDAE9B9F3346F76FB0 /* List.swift in Sources */, - 15FADB26A5DF91EE568A5647C6716E19 /* MapTest.swift in Sources */, - 9BCB0B3B2A53534CB7DAFD75DAFD5583 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */, - 497826CA0280319C8380AA62436AB76E /* Model200Response.swift in Sources */, - 4E8A0DCF997E91EF5EBDC08FDA28F1C7 /* Models.swift in Sources */, - 8C8F366B05C243DA8281FCBFD152A02B /* Name.swift in Sources */, - 2EE71B61AC1C9D5D401223757FF9D4C0 /* NumberOnly.swift in Sources */, - BCFF7A9EA8B501BF545677C98E156592 /* Order.swift in Sources */, - 78CF3D8B0AC6F1D0154A99610DC8C44F /* OuterComposite.swift in Sources */, - 26A1B2993D2A861B39E7C1AA5E89761C /* OuterEnum.swift in Sources */, - A4A3079C6EBF87A0D8C98307CB3BDB31 /* Pet.swift in Sources */, - F4E9209159CA94A72CA6924365664DDE /* PetAPI.swift in Sources */, - 8DF4DA3D7E2FE042B8A2F8182728932A /* PetstoreClient-dummy.m in Sources */, - 1FC4C8207BE1EBEA74F6F5FF746DC5C6 /* ReadOnlyFirst.swift in Sources */, - 3F371F9A7A9FB4028B576DDF0DA44FE0 /* Return.swift in Sources */, - D1EBBAE2435C9C4A914968488C4E18D3 /* SpecialModelName.swift in Sources */, - 8A92D7F8886E2D18D6AF0FC6F7DCD309 /* StoreAPI.swift in Sources */, - 9B5973FB04D90CD0DC0271D27F12B8C8 /* StringBooleanMap.swift in Sources */, - B333DB44801FDABCF2511B0DDCF4FB4B /* Tag.swift in Sources */, - 0AF6C284BCEF370CEEA0B32ABA03BD6E /* User.swift in Sources */, - 3903B696EF29B1BEA6E2BC437BCCC436 /* UserAPI.swift in Sources */, + AB6D07352A2E898824B49759CCA162EC /* AdditionalPropertiesAnyType.swift in Sources */, + 30769345FEC859A4DA77F0CBBBFF3890 /* AdditionalPropertiesArray.swift in Sources */, + EE2E9AE7C6CDF0C9D9E77E6EB2800E40 /* AdditionalPropertiesBoolean.swift in Sources */, + 81690915FE86ECD7CDE95633E3762009 /* AdditionalPropertiesClass.swift in Sources */, + F77A046367A53931C9B4424F17D83BB0 /* AdditionalPropertiesInteger.swift in Sources */, + 1624BFF13E6CFADD39065BAFE15CFE5E /* AdditionalPropertiesNumber.swift in Sources */, + 92BEB5554FA6A51ED6995B19BEC8D7ED /* AdditionalPropertiesObject.swift in Sources */, + 76079C032826A835D0B13E6D617606C1 /* AdditionalPropertiesString.swift in Sources */, + 97BF7A9642F28D14C03458F24C030DB2 /* AlamofireImplementations.swift in Sources */, + C8371B319EBEF3DFDBA5C573AB46EB4C /* Animal.swift in Sources */, + 69E9DE3AD0F2CA6895BEAFA6691914BB /* AnimalFarm.swift in Sources */, + C3F9BB06A12A0F61CDC2511CDDE62B09 /* AnotherFakeAPI.swift in Sources */, + E8BF5D98F29555477C6236F1890DF767 /* APIHelper.swift in Sources */, + DFAA7C26B25E676D63DD5FD0D74ABB30 /* ApiResponse.swift in Sources */, + B39356F857F84E608624AB4BA381F5B9 /* APIs.swift in Sources */, + D399C483EEF039C293A7B84B82BE2B49 /* ArrayOfArrayOfNumberOnly.swift in Sources */, + 59A7BE86B0880261634D8F6F18EEB240 /* ArrayOfNumberOnly.swift in Sources */, + 877B7447EF54C9ED4966D3D1AA9B8D07 /* ArrayTest.swift in Sources */, + F2179ACF4366D4B4E62CD5C99FA1A679 /* Capitalization.swift in Sources */, + 0DC13877F21F72004D7711BF3D7EFA3C /* Cat.swift in Sources */, + 0E761CEA33A04DDA594CC7359F820A0B /* CatAllOf.swift in Sources */, + 5E4C98BF473FF5D493E130A785EB73BA /* Category.swift in Sources */, + 14A822B7A6821B022899A68D5003C85D /* ClassModel.swift in Sources */, + 5B8FDB00381ED25B1D5F06A29649ADEE /* Client.swift in Sources */, + DCAC99A86576E188AC0079FE5607C541 /* CodableHelper.swift in Sources */, + 00B92B3A8271BE0D78B2C346A45054EB /* Configuration.swift in Sources */, + AEB4C18DF052DCB1A0FF1EA600194A2E /* Dog.swift in Sources */, + 018C6F5369B9ECCE29BA2F43D6C12385 /* DogAllOf.swift in Sources */, + 860138DC0F719DA0953C144268F4FDD7 /* EnumArrays.swift in Sources */, + E2A989FE2A8C7E19B78150061B1F404E /* EnumClass.swift in Sources */, + 6A3FA5DFDE7C0D52EA3B3E4A62F2969F /* EnumTest.swift in Sources */, + DED9A421CFF78F29A27F00A43A5478D1 /* Extensions.swift in Sources */, + 6C7F38FABFBDF77E5B4D6AB137E0A5F4 /* FakeAPI.swift in Sources */, + 23F822E146B3F3C63EF430F9ED1EA5B5 /* FakeClassnameTags123API.swift in Sources */, + 597234E9E02E21C0F83911110DCA6E74 /* File.swift in Sources */, + 9E28E0EB779608B1E70DD6319247E826 /* FileSchemaTestClass.swift in Sources */, + 7105E17FDE296BA6B37E8B5E2AAD9058 /* FormatTest.swift in Sources */, + 82D86B9AEF31C560C2A0DB4FC9B979A1 /* HasOnlyReadOnly.swift in Sources */, + 5905B99E94D9ECE5157217BEC60C4FD9 /* JSONEncodableEncoding.swift in Sources */, + 438765B0F3642DE51D314A21726679AF /* JSONEncodingHelper.swift in Sources */, + 6CB554A9CE0D611C158CC5B9DB6873D7 /* List.swift in Sources */, + C0A9C53855321304AFBE800FC3BB8864 /* MapTest.swift in Sources */, + A06C5095E2319DD4B8B8047539769999 /* MixedPropertiesAndAdditionalPropertiesClass.swift in Sources */, + 1928C38569D41E9A17B2A7053C2737C5 /* Model200Response.swift in Sources */, + BA2E85147C4CE9D6AA9EC39DBE99A6C0 /* Models.swift in Sources */, + DB94F9F67A94D6A5CBAA286F44ED10ED /* Name.swift in Sources */, + 611DDEABDBA112B4ED8A489288C5E3AA /* NumberOnly.swift in Sources */, + 367D7C38C9D75A77C7803E9ACE55F939 /* Order.swift in Sources */, + B8407A12CCFF56CC0C1C34C1B8A9F8D9 /* OuterComposite.swift in Sources */, + 7B5B94CF82B28AED61861EC39D661BEC /* OuterEnum.swift in Sources */, + 7BAA9953F0607C50A41C04848C10E156 /* Pet.swift in Sources */, + 01BBC91167CEED10419EC29FB25A84B4 /* PetAPI.swift in Sources */, + DB2950EE1B19C535EBD1E572494F55E5 /* PetstoreClient-dummy.m in Sources */, + 5B9F60D1EEAA27243456F6F5DE0FA31A /* ReadOnlyFirst.swift in Sources */, + 944A8ACBB625207067C5A154726E140A /* Return.swift in Sources */, + 418B6C450B8DFDF393B4EF9D8F2CE920 /* SpecialModelName.swift in Sources */, + 64E469791F8F79F87724641C4B16AF22 /* StoreAPI.swift in Sources */, + 4B3E6EC0A866782A28E4504AC67B4A1A /* StringBooleanMap.swift in Sources */, + 4FFF28AF1937884226953CC18EFFACCA /* Tag.swift in Sources */, + 5E08679A799BC6809B8DE2089F06E621 /* TypeHolderDefault.swift in Sources */, + 4EF745BE3763312A553314237EBB7B3A /* TypeHolderExample.swift in Sources */, + E4F50B1433000199FD611EEBCF3B6BB0 /* User.swift in Sources */, + 55952681015C9453540298BF9C091033 /* UserAPI.swift in Sources */, + 2A1C0B23E2CEEE38D4C0133ED988004F /* XmlItem.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 4F29546669584872866A765CA091F327 /* Sources */ = { + A1C8B029F600160149A2404C342F6E50 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4A7D05F8C3F86DEDFD7A3A7B43149A21 /* AddRef.swift in Sources */, - B384033590B446C258AE1B5C72FEE827 /* Amb.swift in Sources */, - 26FD11F9029E65F115E29023363188E5 /* AnonymousDisposable.swift in Sources */, - 1FF190CCC3758E19D3388BCA03179D20 /* AnonymousObserver.swift in Sources */, - F2B3FD61773363651AC683CEB476A76B /* AnyObserver.swift in Sources */, - 6D05D446104142FDC0672848BC893104 /* AsMaybe.swift in Sources */, - C927CB70E4A73F5F1D845A1D0D8512D4 /* AsSingle.swift in Sources */, - 2CFBC0A036495CCCA95AE01FB09864E9 /* AsyncLock.swift in Sources */, - 3983160DBABC5B4E3483A0BD93A26E28 /* AsyncSubject.swift in Sources */, - 4C91B9CE609BADAA22456D9BB9D0B9DE /* AtomicInt.swift in Sources */, - BF6634022157EC26D3DC2331D6FB6F78 /* Bag+Rx.swift in Sources */, - B39731701507A597286042B68AC5C4E6 /* Bag.swift in Sources */, - 0DDD788C87AB949A7BD8BD05557375D0 /* BehaviorSubject.swift in Sources */, - 9E7C19D0EEA95AA2F8FF547C99F9B4DB /* BinaryDisposable.swift in Sources */, - 1AADA05760DE21D376B453AB5DA655BA /* BooleanDisposable.swift in Sources */, - 1335428664399C31DBC453454DDA723B /* Buffer.swift in Sources */, - CE8DEDC385CC807CFB17A8082850327E /* Cancelable.swift in Sources */, - BB8BAAC7A1B93A9F89E3819EC4FD32DC /* Catch.swift in Sources */, - 1F4179D3C546FCD0CF2FA9053FA1CC50 /* CombineLatest+arity.swift in Sources */, - A5B7352505619D73BBF71EEEC04318E0 /* CombineLatest+Collection.swift in Sources */, - 9BF47D0A7224A2A089190E7C24D59819 /* CombineLatest.swift in Sources */, - D9E70B93C4C5E5FF62E5E21C98F23138 /* Completable+AndThen.swift in Sources */, - FB9954892A4A9CD17F888A19A29F73B0 /* Completable.swift in Sources */, - 297B86622D9CF6E67CD5D4954CE65E7A /* CompositeDisposable.swift in Sources */, - 9EF18E4282EFDECF6B34C722D5585ED0 /* Concat.swift in Sources */, - 14606EBF983BE6C7FE302CF2B20D2177 /* ConcurrentDispatchQueueScheduler.swift in Sources */, - 697E831FE5AEA155D9C5ACE0EDEF1ABD /* ConcurrentMainScheduler.swift in Sources */, - 148A154D1A0B200063DDB18111CEA34C /* ConnectableObservableType.swift in Sources */, - 41A827A40D5743C332D9DE3D8E805862 /* Create.swift in Sources */, - 807F1B88BB983EAAF2B2A79A2ACBB876 /* CurrentThreadScheduler.swift in Sources */, - 3B8C404F350199F20BEDC5AE42332B3A /* Debounce.swift in Sources */, - F664329866C83D013AF45E78FFFC9B42 /* Debug.swift in Sources */, - 8F60FDD59D80EF31DAD444123956F421 /* DefaultIfEmpty.swift in Sources */, - 10A763FDB7A7746154D1342AAFFEFAD2 /* Deferred.swift in Sources */, - B5D65E06919225071F68A38471267787 /* Delay.swift in Sources */, - 85A462CCE879F100AEB4DD342932C4BE /* DelaySubscription.swift in Sources */, - 0DD4712404180F6AA44D95A8F011DA4D /* Dematerialize.swift in Sources */, - B015A9988E77A5E1EFD2B248F73F1C0D /* Deprecated.swift in Sources */, - C3BDB66594E4B4FA48D7EBC19BFBFE02 /* DeprecationWarner.swift in Sources */, - 6C7E212CD42188A60152C72901A70904 /* DispatchQueue+Extensions.swift in Sources */, - 11644D3EE18091D46C65EC0888C01502 /* DispatchQueueConfiguration.swift in Sources */, - 3EF4703AA1AD7A5ED2A04E23B4C865C6 /* Disposable.swift in Sources */, - 3209FAC182FC197431320F1591A055A2 /* Disposables.swift in Sources */, - D4AF32A34C0F22C49DFE3BCE5B523BB0 /* DisposeBag.swift in Sources */, - 0D6A6CB14BC8B2B782C7B866689F68A7 /* DisposeBase.swift in Sources */, - 78399BE32C50D8FF064F6298E6C7699E /* DistinctUntilChanged.swift in Sources */, - DCD3FB0D8188B4809A0820011A57250D /* Do.swift in Sources */, - B5A6E3F915F3916242C5538359FD682F /* ElementAt.swift in Sources */, - F7C02B8AB1876ABEAAE26C07991BF08E /* Empty.swift in Sources */, - 340747EB36CF211B3BEBB2BBA5F40A7C /* Enumerated.swift in Sources */, - F1B72C33E5FB22CA170DCC975687894C /* Error.swift in Sources */, - 60D793C9306540438AA07246F4AAC034 /* Errors.swift in Sources */, - DCE5419BF0E3F199B9184269A5178DAA /* Event.swift in Sources */, - C283070A42B09AE770C2A040169A1F0B /* Filter.swift in Sources */, - 42099F24E4A52FC4B5D5F557D4E16437 /* First.swift in Sources */, - 5A829A2D5C43A141A3D4310FC124DD7A /* Generate.swift in Sources */, - 51C4FD39BC09E9F6678D44BEA1D29C87 /* GroupBy.swift in Sources */, - 1C5F1B9736A008844CF1341220E89DBE /* GroupedObservable.swift in Sources */, - AD6B2AA4E119DCA379B4FED80E545F71 /* HistoricalScheduler.swift in Sources */, - 8BF2A041107229EC4532CCABF8CA1D06 /* HistoricalSchedulerTimeConverter.swift in Sources */, - A561D4F5A1E2A32DB6178CBB202660B4 /* ImmediateSchedulerType.swift in Sources */, - 5E0A39C37A88F2BFB6E98E2BCA797E56 /* InfiniteSequence.swift in Sources */, - 49611958502E5E00444B8ABF729BEAEB /* InvocableScheduledItem.swift in Sources */, - 50864920EF02861F51E827E90C2D2B06 /* InvocableType.swift in Sources */, - 463CE8745711D290BEB8A79FA101748A /* Just.swift in Sources */, - ABF86C082460A1A7E26AED80A840B466 /* Lock.swift in Sources */, - BC380E4661D21D0389114975AC1198F5 /* LockOwnerType.swift in Sources */, - 5273CBDA0FCEA86D61B0E3231614A74C /* MainScheduler.swift in Sources */, - D6A388C40CF2E7741F9A2C745C5552AA /* Map.swift in Sources */, - F7AD193CB01ABC3E84EF0BDB20CD1B31 /* Materialize.swift in Sources */, - C84ED8C643071EC0FABFFE09BA285E54 /* Maybe.swift in Sources */, - 72D95748C4174CDA6DA0AEC92DDDECBE /* Merge.swift in Sources */, - DEA86420DF47291F5419127CC2F01506 /* Multicast.swift in Sources */, - 132666F268053778C29610AC22867893 /* Never.swift in Sources */, - DBDCA3856DA322E0297F0966F6715892 /* NopDisposable.swift in Sources */, - F3647DA72F3DCA2C41FA1D429C261BA4 /* Observable.swift in Sources */, - BEF08C555FE50292E7A05A42E9F8DA9E /* ObservableConvertibleType.swift in Sources */, - 1033EBD7E32CA94C268353207D634329 /* ObservableType+Extensions.swift in Sources */, - 030CBF901383D6AF32FD4DE0F355DB68 /* ObservableType+PrimitiveSequence.swift in Sources */, - 707C8508E41EC1FCBF81FC4FF23437DD /* ObservableType.swift in Sources */, - A28C1F35FCF54C8070517C55E7AE3F9B /* ObserveOn.swift in Sources */, - 013DB2850F82193F90FEADC118F88952 /* ObserverBase.swift in Sources */, - 92126385254415D2CF540551F792E736 /* ObserverType.swift in Sources */, - 903140E2F3A107686E1FA71330050B1F /* OperationQueueScheduler.swift in Sources */, - EEE40D82638633121EF5C84E0F0D7817 /* Optional.swift in Sources */, - 3F4043F6109E4CE3F42A2997E79FCC96 /* Platform.Darwin.swift in Sources */, - 9DCCDE9ECC5D31698A5D3306BD22625A /* Platform.Linux.swift in Sources */, - 9C1D6B37A40ED079BD8DE4D2683E9B97 /* PrimitiveSequence+Zip+arity.swift in Sources */, - 80E7A60F5AD0C9388766B9790C0BE6C8 /* PrimitiveSequence.swift in Sources */, - FDFFF94B381FD8EBF0C5849314E1BAED /* PriorityQueue.swift in Sources */, - 0146B75CE3524B51126D537A62B1C9ED /* Producer.swift in Sources */, - 94D9B2D58AAAF42B523342EE937691AC /* PublishSubject.swift in Sources */, - E2277D048A09EB5F2564C93185571E56 /* Queue.swift in Sources */, - D8E090B347D7CE998D18319EBFBB3161 /* Range.swift in Sources */, - 6E703FCCE1AA231FB1E822B85B9B742C /* Reactive.swift in Sources */, - D75852392AED909EB75BF0A6156FA43B /* RecursiveLock.swift in Sources */, - 11DFFFA47EB0FC2A1D73E1CEB3EAFE16 /* RecursiveScheduler.swift in Sources */, - 55437DEE76CF3BAB5464F78B0E35F825 /* Reduce.swift in Sources */, - C79893EA5CCDB7D7D7B8B1B0BDA9EB13 /* RefCountDisposable.swift in Sources */, - 3B2DE3218DDE8E3E25C0A1E078D0FB55 /* Repeat.swift in Sources */, - EB54421D7F05F23E9188FEE9182C1FE0 /* ReplaySubject.swift in Sources */, - 501E6D126A7E169369DC587C75FE125A /* RetryWhen.swift in Sources */, - 21194C05C4402A6705F71F42830846BE /* Rx.swift in Sources */, - AAFD230DF4044FE213A79DDE4DA23C87 /* RxMutableBox.swift in Sources */, - A8A6C36F665184C7E099B0F6433D95A7 /* RxSwift-dummy.m in Sources */, - 268FD0EE537DEBE0D9F92DB20C6D6A24 /* Sample.swift in Sources */, - 09622457315D763AFE075B3B4FF52B1F /* Scan.swift in Sources */, - 3EB221D5C1E0328DD80D8501F9E8E1C4 /* ScheduledDisposable.swift in Sources */, - 32251AF8DA33F78531BE04D9AC6704E2 /* ScheduledItem.swift in Sources */, - 18DD6AFF35888E3ECA9C6E2853DF5428 /* ScheduledItemType.swift in Sources */, - 5E177EB6F5B70100A26CF5CD1F7B68D7 /* SchedulerServices+Emulation.swift in Sources */, - 750AF8727A1976E1FD14ED48443D7423 /* SchedulerType.swift in Sources */, - 148E8EBD2BB122855F96D3EDDDBF20D9 /* Sequence.swift in Sources */, - C57512A065C340D84D21C730FA2DFDF0 /* SerialDispatchQueueScheduler.swift in Sources */, - FA673EEDB54FD988AC5D47E84E2D7621 /* SerialDisposable.swift in Sources */, - 8CA17309A95A2E22B81E26797B439749 /* ShareReplayScope.swift in Sources */, - 7EA72ED73B366EED4B19B9647BC7F71A /* Single.swift in Sources */, - CE672B66B82681C0DF2584A2FB57C99B /* SingleAssignmentDisposable.swift in Sources */, - 567DF07E626F41ECA58199149168761D /* SingleAsync.swift in Sources */, - 82B33DBB671DF849DB888C065B98D126 /* Sink.swift in Sources */, - 8ACF66ED822914609BBB80AD02302976 /* Skip.swift in Sources */, - CA12DE0107A98FB49C87DBB2A145BBD6 /* SkipUntil.swift in Sources */, - A41C992FF4912C0636FA07AB2729DF13 /* SkipWhile.swift in Sources */, - 0BF450E11E04B522316037A2BEF4C650 /* StartWith.swift in Sources */, - 95AF062CA1A5BA4AA942E82275CA4F7F /* String+Rx.swift in Sources */, - C9E85B374CC498B5C6EAFEBA2487ADFD /* SubjectType.swift in Sources */, - 2D62F48BDAA56B49FA1DEB8DCA1DA096 /* SubscribeOn.swift in Sources */, - B9E60BDF09C1AE82E2C4391A6D79AF57 /* SubscriptionDisposable.swift in Sources */, - 1D4D29A8A4934370F49B03991362EEB5 /* SwiftSupport.swift in Sources */, - 454F3F304AF2CC713C7E48416A77D4FA /* Switch.swift in Sources */, - 43C820720A5BADD5DD1E3AA77D30BDEE /* SwitchIfEmpty.swift in Sources */, - A2E9215E3DF26E8544CD20BB693B3FDB /* SynchronizedDisposeType.swift in Sources */, - 27D2B6B79C38364E74A55886B9261654 /* SynchronizedOnType.swift in Sources */, - 6B4C4B7AB9BD3409A68018C1A61FF2A3 /* SynchronizedUnsubscribeType.swift in Sources */, - DE09A8DA331ECA2169C58CD890D3AF30 /* TailRecursiveSink.swift in Sources */, - 6425507E087578FCF271565957E12AC3 /* Take.swift in Sources */, - 48CC5ABE93E87E4005DA04F1CA8830FE /* TakeLast.swift in Sources */, - 12B43B615CB18E90EDB8274FA49E4FCF /* TakeUntil.swift in Sources */, - 4FAB5CC1C5D3E5A1E9743BB3443638E9 /* TakeWhile.swift in Sources */, - 3C81FA3011CE7051D287938B6D977AC8 /* Throttle.swift in Sources */, - 798E0471934CCF6DB301C6E02A285A8E /* Timeout.swift in Sources */, - B4A588D10D034D0DDBDCC6345CD36079 /* Timer.swift in Sources */, - 365DEE089823FAAFFD2140466F5E310E /* ToArray.swift in Sources */, - 39E90DA1F75F5A2A16061C05C0569F9C /* Using.swift in Sources */, - 74136D9CEFC52A2F4459AE5585464825 /* VirtualTimeConverterType.swift in Sources */, - A5F028B3699E37E40F5F92B3353E025B /* VirtualTimeScheduler.swift in Sources */, - 129F0B1A4531FC8C4D549D3CFFF758A6 /* Window.swift in Sources */, - 850DC16052FC3F94BFD6B6A651670C64 /* WithLatestFrom.swift in Sources */, - 583DA8A0681FED458B72B406CB61EFE1 /* Zip+arity.swift in Sources */, - CB2FA2F8BD9544C3B4952AA6ED6A9FF4 /* Zip+Collection.swift in Sources */, - 0283D712F6B9A4B8C9F6276C9306148B /* Zip.swift in Sources */, + 7E3538A6992A38276764936A9733493D /* AFError.swift in Sources */, + 772911DA6E33D1CBBC30131B7C8BDBB3 /* Alamofire-dummy.m in Sources */, + 0A39AF55285A3A4F7CBABB6D822FA4A3 /* Alamofire.swift in Sources */, + 3E0749AF6C51BCF0E4A41CF1D6A76FED /* DispatchQueue+Alamofire.swift in Sources */, + AEA829AB1A8AF2AD077A808AED6B178A /* MultipartFormData.swift in Sources */, + 73AB05789A4982944AF68DBD013E3EB7 /* NetworkReachabilityManager.swift in Sources */, + 1D29D2ACADF961F69D32B06FA6A09E28 /* Notifications.swift in Sources */, + 700D3D95AF9520CB227846DFD943A2DA /* ParameterEncoding.swift in Sources */, + 355C18EEC82624A06A6CC93965258E33 /* Request.swift in Sources */, + 059D92B7BBFBEC53E9A3B6E11C5C3B3A /* Response.swift in Sources */, + 6EFD003458AE7F689DEA720A2030C261 /* ResponseSerialization.swift in Sources */, + EB0DD8CEA1A69867A30267439C970440 /* Result.swift in Sources */, + 8D2A6A90A6DDAF75EA52D471258545CC /* ServerTrustPolicy.swift in Sources */, + A1EC41966B261DCE460BCDE5124A1DBE /* SessionDelegate.swift in Sources */, + D3FA0AA634AAEA99AB3FABC36BB4958C /* SessionManager.swift in Sources */, + 77E8F0EB9FFBE2E3EB0C77095C644606 /* TaskDelegate.swift in Sources */, + 60B6C2A003864AAD3A426448152F67BE /* Timeline.swift in Sources */, + AA56769D8733D3F3E7976742D5ABA998 /* Validation.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 896221CF7DC63DEEB3A5276BB19738DD /* Sources */ = { + D061CB8EF4036877AF78BF62F72CC9FE /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 512F26D1DCFE54340A28AAA8C5FABB97 /* Pods-SwaggerClientTests-dummy.m in Sources */, + E4962E9CD3D8EA651C84498D271EC753 /* Pods-SwaggerClient-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CC399CEC576B42C962CEB290481CAF95 /* Sources */ = { + F004E8F6BFA59A596E38AAEEA755BE2A /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - BE4BA1EDE444A770F834605F4B65348E /* AFError.swift in Sources */, - D4C3899574E9D5DF5E5DA52310560BCC /* Alamofire-dummy.m in Sources */, - 4E1A913EFB404FB11524718FF0298EFE /* Alamofire.swift in Sources */, - DBE6E2E4D205545E7988CFA5057C31D6 /* DispatchQueue+Alamofire.swift in Sources */, - FF9C7BC64DB23D2CED48197DE67F0335 /* MultipartFormData.swift in Sources */, - B77705737566AE83ED7E448923D7FA60 /* NetworkReachabilityManager.swift in Sources */, - 500C8EDA60C07B0F127C7FC385E17D38 /* Notifications.swift in Sources */, - 796177DE2762F24DAC16A709FD954838 /* ParameterEncoding.swift in Sources */, - 965DACF3DC02857ECBE66C5CBA3DA5D4 /* Request.swift in Sources */, - 52237C35642089F77DD4D723CEB25737 /* Response.swift in Sources */, - 5EE5FED83B90A606A763CF1114D1D6FB /* ResponseSerialization.swift in Sources */, - F9EA61D484CC15FDDAB0D8C0D26D7949 /* Result.swift in Sources */, - 6BEA14EC335E07C7063CD1383C0C443C /* ServerTrustPolicy.swift in Sources */, - 1FC3FD39157C2FFFF3869A1300730086 /* SessionDelegate.swift in Sources */, - 7068E8A7DDC1424EE8F24BC77E8746F4 /* SessionManager.swift in Sources */, - 36FF8853CB34A9297AFAA8F5F7456324 /* TaskDelegate.swift in Sources */, - B424F524BBBE34E685129945993809A8 /* Timeline.swift in Sources */, - 58A9719584AFA2D108D9E5C585A79329 /* Validation.swift in Sources */, + 8DA0C6077B07424B6848BD63049B6777 /* AddRef.swift in Sources */, + AAA1712D2763B6D2CF0011403EBE512D /* Amb.swift in Sources */, + 06F02D2382D5018D765DB0F34C9C276D /* AnonymousDisposable.swift in Sources */, + CB69E0C638A7C58B5FC9073B793273AD /* AnonymousObserver.swift in Sources */, + 0CC204661593617D4DF5240BD993DF4A /* AnyObserver.swift in Sources */, + 8FAB1056E36610DF9EE92221941D800D /* AsMaybe.swift in Sources */, + C54FB31D5C9750E9722B2EBB3C05754F /* AsSingle.swift in Sources */, + 068FC2A8666D98716567362F2E0D6845 /* AsyncLock.swift in Sources */, + 96ED1FEACF444FF70C6550E95A572890 /* AsyncSubject.swift in Sources */, + B385CD158B4DB49B50E46C688B9F0AED /* AtomicInt.swift in Sources */, + 94C2BDABC69296B090CFC89FD5483D41 /* Bag+Rx.swift in Sources */, + B01F02AFF4BD60048220EE91C369DA72 /* Bag.swift in Sources */, + 95A5DD145CB674719312A9CCE333C40A /* BehaviorSubject.swift in Sources */, + E6CAA0D168E81EF9679A5388F4BC95D8 /* BinaryDisposable.swift in Sources */, + E4F4D8D1953813B37BD79C66BE55B132 /* BooleanDisposable.swift in Sources */, + B7A2C80AE512BA32546E4BB9213F70CC /* Buffer.swift in Sources */, + A9A00DE2FF9E8E7E0C750F495837D99E /* Cancelable.swift in Sources */, + 425395ADB55B02A98D0538731936BD79 /* Catch.swift in Sources */, + 3E3FA01E3DC9CFFD4C738E922CDFA23C /* CombineLatest+arity.swift in Sources */, + BB7E003CB2D82BDBBBE3A9E1AA1C1682 /* CombineLatest+Collection.swift in Sources */, + 0C8B09DF05E2E41B7DF054A3514DB945 /* CombineLatest.swift in Sources */, + 6DCDEA9935C7542C76178B25A7D873FF /* Completable+AndThen.swift in Sources */, + C88589E390360E93817DA97CBF5DCBA4 /* Completable.swift in Sources */, + 04C06CF0B6C5C73B4CD192D070F21671 /* CompositeDisposable.swift in Sources */, + D128DB98CB0B97380BDEC326306D0FFC /* Concat.swift in Sources */, + 4481D7A928F997D2717CA342C9CAF3AC /* ConcurrentDispatchQueueScheduler.swift in Sources */, + 42403A783F23CEE64D8AF4D9BDB87802 /* ConcurrentMainScheduler.swift in Sources */, + 8DDD2130C49010F4CCBA6EF665E1288F /* ConnectableObservableType.swift in Sources */, + F33B53F266660974D851A82B03B2907E /* Create.swift in Sources */, + FCFED59A764898B95991A177DDEB362E /* CurrentThreadScheduler.swift in Sources */, + 6B9765DD631FED6DDDE0393B076895CC /* Debounce.swift in Sources */, + EE1917B8030B1B81478973483D704AAE /* Debug.swift in Sources */, + 60F135C1B2E2A3DBF5D91AAFEC889628 /* DefaultIfEmpty.swift in Sources */, + 97AEDE420913FDB38F1F907BBAAF2E8B /* Deferred.swift in Sources */, + C2C0AE3588986E52B3965206EC540324 /* Delay.swift in Sources */, + 93D8F9361CA384D802B729C027A29D93 /* DelaySubscription.swift in Sources */, + 5FB1BC9A57D01324146B7AE5F03C6370 /* Dematerialize.swift in Sources */, + EE5BB9D47B59D64E282A3FCB17CD6132 /* Deprecated.swift in Sources */, + 6D1DF0296E23FD6AD4E4676FD690C3BA /* DeprecationWarner.swift in Sources */, + 2E2C54FE54D4ED7D30B9CFD7F5CE26ED /* DispatchQueue+Extensions.swift in Sources */, + 584C49BA4DCCCFD50B2FAF41783029C3 /* DispatchQueueConfiguration.swift in Sources */, + 10F4BDB750BA6362739BBCFD77AFFC55 /* Disposable.swift in Sources */, + 5615DD06EEEA89A9237BB15D2E516B79 /* Disposables.swift in Sources */, + 231FF5CEABDC19D5620EF1D250075969 /* DisposeBag.swift in Sources */, + 7D3D0B52CF0C6CD831B149E64FE4AB3E /* DisposeBase.swift in Sources */, + 6E428993840E5F638CFD77582468C982 /* DistinctUntilChanged.swift in Sources */, + 411F93A1F501D9CE8A7BB17463F88BF2 /* Do.swift in Sources */, + B2F61D4C66E7E9BF795A768F9A52F889 /* ElementAt.swift in Sources */, + 6B1C6B7CA8A53D9502AE9EB84CA3181F /* Empty.swift in Sources */, + AA6D3CED1566D71B0E39A1CDE3B32864 /* Enumerated.swift in Sources */, + 16E27971B029CD86CC9ABFBDAF0B50C3 /* Error.swift in Sources */, + 9D443C8AF196B744F2340AD3DCE6CE0A /* Errors.swift in Sources */, + 00CD0D028A7C7FAD19004F30BF905FFA /* Event.swift in Sources */, + 45EF4D7DAC7881BD321F59D769C3ED56 /* Filter.swift in Sources */, + 04BCDBAEB221E44EBC35B35966D5329C /* First.swift in Sources */, + 247F1D441C3FFE1A86775F95FD5C526D /* Generate.swift in Sources */, + 0CF84DB9C3AF68812DF22E3A7B1A5345 /* GroupBy.swift in Sources */, + A1A4F6F86BDF18C228F08311EBD03E84 /* GroupedObservable.swift in Sources */, + 20C9165173E84E273472110B783CEF0F /* HistoricalScheduler.swift in Sources */, + 32C3F28679808D14D41E5CE764B18D68 /* HistoricalSchedulerTimeConverter.swift in Sources */, + 7DC19974867E0956AD13FA28D9038536 /* ImmediateSchedulerType.swift in Sources */, + 536174909D73A714232615AB05687E15 /* InfiniteSequence.swift in Sources */, + 5BC3B4927F5E340F661D56FCF2B51D75 /* InvocableScheduledItem.swift in Sources */, + A26702A2CFB5B831F7FB80FFA29BEEEC /* InvocableType.swift in Sources */, + E16F11503BA04EC3B205DBF20BD33DE1 /* Just.swift in Sources */, + 38B3FCCBE586F4016F203082690CEE6E /* Lock.swift in Sources */, + 9587E802C281FA381DF9E97EC426814D /* LockOwnerType.swift in Sources */, + 4CC43360234D5FCB4E5CAA95BAEF47C9 /* MainScheduler.swift in Sources */, + 79523FA5D24E7AC22385AE14E18FA1CB /* Map.swift in Sources */, + 8487CC1DE956BDEEAC9CDF413E1A58E4 /* Materialize.swift in Sources */, + C939859F6DB0464712141486E944F42C /* Maybe.swift in Sources */, + CAB19EE096FBEAAE1FDB28F56B8B4F78 /* Merge.swift in Sources */, + 0A426503BF8551A7F24118E4D3133404 /* Multicast.swift in Sources */, + DC551676E7C8D267368063D532D092B2 /* Never.swift in Sources */, + 2832890547C0F2BC47A5ACB24FE1E556 /* NopDisposable.swift in Sources */, + 2F73B36CB2A0C051C5FF6865EC7505A8 /* Observable.swift in Sources */, + B9EF5A80D032538680EFE75929C28D6D /* ObservableConvertibleType.swift in Sources */, + 28783CBF85DD482E1793B019CD5E056A /* ObservableType+Extensions.swift in Sources */, + 40DC18CC960EEC0EE71E945A73F6D7BC /* ObservableType+PrimitiveSequence.swift in Sources */, + 51FF11FC8E286A54377E64297EEA7696 /* ObservableType.swift in Sources */, + 1BE47AC4C39BCC2AD678B0D94066C3E7 /* ObserveOn.swift in Sources */, + 1FAE4751B8A1A4906CA23B6D14705DD1 /* ObserverBase.swift in Sources */, + 7C7B2182C3E7D832DF075B3016ED1B05 /* ObserverType.swift in Sources */, + E38FB4D007348119E958AED58DDD44B4 /* OperationQueueScheduler.swift in Sources */, + 37BF531FD8F4EF30E68E9A205BDAB096 /* Optional.swift in Sources */, + 0A084BBB077AB3863D1500B7E79B3FD4 /* Platform.Darwin.swift in Sources */, + BF15B41D6CCCFAF4DCA617D0431D4781 /* Platform.Linux.swift in Sources */, + 96F8C88984B492B5D186D6DC6FEF8D0C /* PrimitiveSequence+Zip+arity.swift in Sources */, + 0E35C38093091926F74510A897639D32 /* PrimitiveSequence.swift in Sources */, + 024712F363DB19CB17FD9F36B489D43F /* PriorityQueue.swift in Sources */, + 72F440B2AB88E31879EE58D8B7D5A05E /* Producer.swift in Sources */, + 8BB1ACFFA7880AE54B7300AF440F549D /* PublishSubject.swift in Sources */, + 15CC488D9E6EF29B02174A4B036444F1 /* Queue.swift in Sources */, + 01955339496D9F45BD537BEB03B04280 /* Range.swift in Sources */, + E403F1184BAC06680AF116EE8EDB7BEF /* Reactive.swift in Sources */, + 9F9CF99BD0C63948B4413396FD8DBA54 /* RecursiveLock.swift in Sources */, + 0C0D4B80E4F230F6A106A0E94C6A733E /* RecursiveScheduler.swift in Sources */, + C99C068899D064944E605570D38E85F2 /* Reduce.swift in Sources */, + 2F16BB60B2A862F9988A1C1D1DB25326 /* RefCountDisposable.swift in Sources */, + D0E317E6FC43BC7D4F07C17B584D8EFD /* Repeat.swift in Sources */, + 5B4412836335EB28C03D517FD6F7EB65 /* ReplaySubject.swift in Sources */, + 8A3542104FBA7C2FA7BF8E95AAAE0BE7 /* RetryWhen.swift in Sources */, + 7893293BC4613AE2625D1684ED6888AD /* Rx.swift in Sources */, + 9CD65D0519639A42284304F6A662E10A /* RxMutableBox.swift in Sources */, + 0E19118925E2ABE3DFE3392B76937491 /* RxSwift-dummy.m in Sources */, + 5720D4DCF4AA3DDB9D45802B854852A1 /* Sample.swift in Sources */, + EF7CEEFEE64CCFE8E050F33E8E6716EB /* Scan.swift in Sources */, + F7D0A45619BD381EC7FDEF8F41057C4A /* ScheduledDisposable.swift in Sources */, + B7CC8FC752B3A986B9DFC4A0F09BB316 /* ScheduledItem.swift in Sources */, + 21EA0909C5162AC1A2F0BEB44161C091 /* ScheduledItemType.swift in Sources */, + 2DE581AFC0E6541F53D79C9CF5BA0252 /* SchedulerServices+Emulation.swift in Sources */, + 5318E7579B1107A6E6B8A80EAC437FA2 /* SchedulerType.swift in Sources */, + 6F3CA008415A35BA7E271CFBB8311E6F /* Sequence.swift in Sources */, + 2C75624448C07245398F78A8E8F76C6C /* SerialDispatchQueueScheduler.swift in Sources */, + 786342EA1908DF041945B208001AB341 /* SerialDisposable.swift in Sources */, + D9D43BA204D86056FDBFCC92F87C7EAB /* ShareReplayScope.swift in Sources */, + B822D1C05E59F8303723EA7F59C78F40 /* Single.swift in Sources */, + 1316C19AE6BD02B2D67A610EB8124F48 /* SingleAssignmentDisposable.swift in Sources */, + 3548E9B5F3D2CB1D6CF60A2E5E5B2A32 /* SingleAsync.swift in Sources */, + D706A86E37DD6D833CA7A079A3E15B7E /* Sink.swift in Sources */, + 654F552A8DD4BF67850CAFEDF249D815 /* Skip.swift in Sources */, + B38FF962610DEFB271EA1FCA95E3B37A /* SkipUntil.swift in Sources */, + 9C894D0C88D763CD86C16DDCE698F9B3 /* SkipWhile.swift in Sources */, + 5A74E080F11D3B73C6E6A2E406E7E648 /* StartWith.swift in Sources */, + C1942DA08443E26FE1CD7BF2A972B27C /* String+Rx.swift in Sources */, + 04E7491A1A273461D639A352FDF90064 /* SubjectType.swift in Sources */, + A5E492F7194809622E130CC6569F46E2 /* SubscribeOn.swift in Sources */, + E7AC1A5D6FA609B69AFDE50FC01127F2 /* SubscriptionDisposable.swift in Sources */, + BA8C86B1D885FFA4850EC5F3528669E9 /* SwiftSupport.swift in Sources */, + 93000BED51CFB0CDB262C897C8C104A7 /* Switch.swift in Sources */, + 9C66CB81052F764079D0FA68B6E36BEF /* SwitchIfEmpty.swift in Sources */, + 26BE990BD12DA8BA3E8C11D9BE7A095D /* SynchronizedDisposeType.swift in Sources */, + 1B854BF767678148C17B436F65FEED5C /* SynchronizedOnType.swift in Sources */, + 7E79F3A456266FFDA768E0CF14DBC2F1 /* SynchronizedUnsubscribeType.swift in Sources */, + 28BC7B80549B8F4B21578D07D2D853AC /* TailRecursiveSink.swift in Sources */, + 957BB9043F5F5609C348C47C523D6C79 /* Take.swift in Sources */, + 3E4C76A301104B55E4A601D4E59AF14E /* TakeLast.swift in Sources */, + 32FC3AD0AB13B89CE579D458841BB17B /* TakeUntil.swift in Sources */, + B312CFC44488357265F713C8EF63291C /* TakeWhile.swift in Sources */, + 8ED35E25E311CF3F12564041A7F8BB2B /* Throttle.swift in Sources */, + 755536BB16D53CBC961B0A8E3FDF7739 /* Timeout.swift in Sources */, + 3EAF0605A2B6B9A90A06560FAED89BF9 /* Timer.swift in Sources */, + 8CA88B336020592CDC5F3548A4DFE697 /* ToArray.swift in Sources */, + 17DBE97DF7E4655A51189118813169BA /* Using.swift in Sources */, + D0847A960A008DA8608CBCF219A8A2A7 /* VirtualTimeConverterType.swift in Sources */, + CAFFB7A58F51661BC7DD5284276EC1ED /* VirtualTimeScheduler.swift in Sources */, + 18F3B3ECDFE24B0D2BB6DFB066A7DD4A /* Window.swift in Sources */, + 2C5F3731461E52488C08666B9D752D8E /* WithLatestFrom.swift in Sources */, + 4D491A944EF08F4B8656305C65C71C76 /* Zip+arity.swift in Sources */, + 4CE0D20F55D373232019950D791B50AC /* Zip+Collection.swift in Sources */, + 63B9CDC423637A15BD3F8F4B9651B62D /* Zip.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - F650A0DFE3193A38423DCF6830EBD130 /* Sources */ = { + F7D9DB86AE0913CC2B294C55BFD934AD /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3CF5B12D642E2C90D3D6AB3CDE5A1D6E /* Pods-SwaggerClient-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - FBD675025BC8BF2A1B139103D378CA6C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 355D2E6B82C5E6DE5F4B0AD537565330 /* RxAtomic-dummy.m in Sources */, - 0484D620BC8C2AD729AAE2CC692338E3 /* RxAtomic.c in Sources */, + 8012A57CFFC574F745FBA46D335BBA6F /* Pods-SwaggerClientTests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 36BB78CD83103E2E3589612B670D7F8B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = "Pods-SwaggerClient"; - target = E4C8288BEB610EA811E671631ECCC086 /* Pods-SwaggerClient */; - targetProxy = 6820589C863D447314A430256098049E /* PBXContainerItemProxy */; - }; - 6789DA4DC26EE950D2E7E747E18BCFEC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RxSwift; - target = 14DFB61ABDA25614AC7428629254E83A /* RxSwift */; - targetProxy = 222FC736AA6760B5789C54600C969D6F /* PBXContainerItemProxy */; - }; - 7C37DAC780454385E5000BF223461451 /* PBXTargetDependency */ = { + 5D88AFB25CB03E9E800597DEEA2B2C26 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; - target = E76458C58C9140B6A16D60547E68E80C /* Alamofire */; - targetProxy = F7705A33B8BB595394C94DDA91844D05 /* PBXContainerItemProxy */; + target = 3383968E74B5371B20BB519B170DC7FD /* Alamofire */; + targetProxy = AEA2781CDC8DB413C920DD9F7F78F124 /* PBXContainerItemProxy */; }; - 86CE87A7D2B5BEDFFCF7F03AE14AD292 /* PBXTargetDependency */ = { + 5FF9BADF7EA9C29AF5D5BC7FE75A1966 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Alamofire; + target = 3383968E74B5371B20BB519B170DC7FD /* Alamofire */; + targetProxy = 2A8AF3B6391C5FF251470E3091B2B1D2 /* PBXContainerItemProxy */; + }; + 8F62547FFEE7B2E6D4745289BBC9CD98 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = PetstoreClient; - target = 351340BF0149C3286C23FB1440131F5C /* PetstoreClient */; - targetProxy = 2903646353C4EF4485CA497B0D5F6ADC /* PBXContainerItemProxy */; + target = 49CDD5ADAF3DA23F4C622CC2F9A75659 /* PetstoreClient */; + targetProxy = B36C681A6EB35CB2430BAB3BAF9AB886 /* PBXContainerItemProxy */; }; - A6BB9DADD9366875BB30DFCC4A9030D1 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RxAtomic; - target = 1902D1CE68FBA32C8D8799E8609C5B5E /* RxAtomic */; - targetProxy = 605FA182C02A164022F0425A632A3899 /* PBXContainerItemProxy */; - }; - AC220FD15D6B95E1927179E2D8737ABE /* PBXTargetDependency */ = { + B61EF3C7B9BF27A4D773281BD10FF5E4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = RxSwift; - target = 14DFB61ABDA25614AC7428629254E83A /* RxSwift */; - targetProxy = 181BA691D9DA07C0E3F416403003CE38 /* PBXContainerItemProxy */; + target = BA1FAA79F9B74485F4D7279FD41A7D1D /* RxSwift */; + targetProxy = ED09ABD99E0D387BFD78CCCE937FA689 /* PBXContainerItemProxy */; }; - AC95E71BEDCF3FC61908AA214F069C17 /* PBXTargetDependency */ = { + C18A6DC0C9B8408542F3D944BB6D67F4 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = RxAtomic; - target = 1902D1CE68FBA32C8D8799E8609C5B5E /* RxAtomic */; - targetProxy = 0C234B5373994E3A59E9A6E0E10985AB /* PBXContainerItemProxy */; + name = "Pods-SwaggerClient"; + target = 1BAC3F8145EDD03FE8EDB0EACEAE3522 /* Pods-SwaggerClient */; + targetProxy = FA1A8E2F3FE2899A723889F94EACA0E5 /* PBXContainerItemProxy */; }; - C1555E6D62E44516F65C5D984CE0B68B /* PBXTargetDependency */ = { + C909BEA4C8ECA46A453E4E4B0D1CE3F7 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = Alamofire; - target = E76458C58C9140B6A16D60547E68E80C /* Alamofire */; - targetProxy = 0E40A0F4233C9761AD11068C46A16B45 /* PBXContainerItemProxy */; - }; - DB1DAD1F90017091E188FB351318FC8B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = RxAtomic; - target = 1902D1CE68FBA32C8D8799E8609C5B5E /* RxAtomic */; - targetProxy = BC022E926E74D1D6467C75FB68496E87 /* PBXContainerItemProxy */; + name = RxSwift; + target = BA1FAA79F9B74485F4D7279FD41A7D1D /* RxSwift */; + targetProxy = 116DEBAFC9022016EADCAFC9F9BC1542 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 0043AE927C3E7A6A6C4B12BE9E314216 /* Release */ = { + 175DE0F32DFB9352D8BDE2242D146278 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = F388A1ADD212030D9542E86628F22BD6 /* Pods-SwaggerClient.release.xcconfig */; + baseConfigurationReference = 28DB89F2024F2DDD08AE89C3006D009E /* PetstoreClient.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/PetstoreClient/PetstoreClient-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; + PRODUCT_MODULE_NAME = PetstoreClient; + PRODUCT_NAME = PetstoreClient; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 2B15A656975AD6239E491D34DB89E598 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BE6232D0F85A4EF002139921CBA82C3F /* RxSwift.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxSwift/RxSwift-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; + PRODUCT_MODULE_NAME = RxSwift; + PRODUCT_NAME = RxSwift; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 3B00EA6E3BEB8B678C1C0FBE7D10EBB4 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = BE6232D0F85A4EF002139921CBA82C3F /* RxSwift.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RxSwift/RxSwift-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; + PRODUCT_MODULE_NAME = RxSwift; + PRODUCT_NAME = RxSwift; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 41268AF552E2DC6A5873C87C81174F7D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 4FB24B4936663207D1E346C5B6B9EAD4 /* Alamofire.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.1; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 6FB7A8200113F8B35642AF088882257D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 89C039CC9F68E1DE11B36488154891AC /* Pods-SwaggerClient.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CODE_SIGN_IDENTITY = ""; @@ -1688,7 +1808,105 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 72215A7E736410410139FC6A3FCEAAEC /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = CD7450FA98C71F5F12227D9EE29EF6FF /* Pods-SwaggerClientTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + A345BCBDE6C296957161A3E85A47A280 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 4FB24B4936663207D1E346C5B6B9EAD4 /* Alamofire.xcconfig */; + buildSettings = { + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Alamofire-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.1; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + A65A298AF5D17903189605681170DC09 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B8AE4746D376A853C4ABE57A194FD450 /* Pods-SwaggerClient.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.3; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1708,104 +1926,7 @@ }; name = Release; }; - 05BA5315A858DECF3CFE39BBB1592356 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1ACCB3378E1513AEAADC85C4036257E4 /* Pods-SwaggerClientTests.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 1EAFDB7DE59A16060DF36FC40DC2E750 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A96A149BEF2050A37CD9A96E57AF2FE2 /* Alamofire.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_MODULE_NAME = Alamofire; - PRODUCT_NAME = Alamofire; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 3A97A30AD22F3F0ED62BD32A51C530C0 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PetstoreClient/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/PetstoreClient/PetstoreClient.modulemap"; - PRODUCT_MODULE_NAME = PetstoreClient; - PRODUCT_NAME = PetstoreClient; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 50646285DD9FD95AF390BDA3FB1948EA /* Debug */ = { + AB4D69770D8ACE3A05E80BB3502666F6 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -1837,8 +1958,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -1871,7 +1990,41 @@ }; name = Debug; }; - 58DCB2BA7C34E84C00C38CEF18A96D11 /* Release */ = { + E0CA0082E44CE578414DCAED684E16A2 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 06F700708FB1FE830160940D2740EC68 /* Pods-SwaggerClientTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + F232B5ECA11A71BFA199A229B323F454 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -1903,8 +2056,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; @@ -1933,41 +2084,9 @@ }; name = Release; }; - 6076997D534588D07B9C1B1B323EF999 /* Release */ = { + FA4585C83A71BBB23D144F31704C9C56 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9B3A3E4A7CB12148CAB2026BEC41959F /* RxSwift.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxSwift/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; - PRODUCT_MODULE_NAME = RxSwift; - PRODUCT_NAME = RxSwift; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 7C99284BFB164E1BC479CF3C336FD072 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B4C5C74CD00CFB8204601915777CDAD8 /* PetstoreClient.xcconfig */; + baseConfigurationReference = 28DB89F2024F2DDD08AE89C3006D009E /* PetstoreClient.xcconfig */; buildSettings = { CODE_SIGN_IDENTITY = ""; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -1979,7 +2098,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_PREFIX_HEADER = "Target Support Files/PetstoreClient/PetstoreClient-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PetstoreClient/Info.plist"; + INFOPLIST_FILE = "Target Support Files/PetstoreClient/PetstoreClient-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -1991,270 +2110,70 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 8D1A76DCD4BB50EF0A50E3E1AF55E09E /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 90B48B645BDF3791D23C1848534FAA41 /* RxAtomic.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxAtomic/RxAtomic-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxAtomic/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxAtomic/RxAtomic.modulemap"; - PRODUCT_MODULE_NAME = RxAtomic; - PRODUCT_NAME = RxAtomic; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - BF40C45D527467C3DC0BEABE2E2471C9 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = FDBB687EF1CAF131DB3DDD99AAE54AB6 /* Pods-SwaggerClientTests.release.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClientTests/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Release; }; - CB319D268B958318323DE1F967B3142E /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9B3A3E4A7CB12148CAB2026BEC41959F /* RxSwift.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxSwift/RxSwift-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxSwift/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxSwift/RxSwift.modulemap"; - PRODUCT_MODULE_NAME = RxSwift; - PRODUCT_NAME = RxSwift; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - F67E9C643A39F31BBB34CE20D7DB5505 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 90B48B645BDF3791D23C1848534FAA41 /* RxAtomic.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RxAtomic/RxAtomic-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RxAtomic/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RxAtomic/RxAtomic.modulemap"; - PRODUCT_MODULE_NAME = RxAtomic; - PRODUCT_NAME = RxAtomic; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - F8B02B0D8F9ED668EC1C6F4C41C6D550 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = AE8315D9D127E9BAC2C7256DB40D1D6D /* Pods-SwaggerClient.debug.xcconfig */; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-SwaggerClient/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - F9711F223F590669E94B504F3CC44301 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = A96A149BEF2050A37CD9A96E57AF2FE2 /* Alamofire.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_MODULE_NAME = Alamofire; - PRODUCT_NAME = Alamofire; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 1CD3A89A87C87A3CE977265194B2F077 /* Build configuration list for PBXNativeTarget "RxSwift" */ = { isa = XCConfigurationList; buildConfigurations = ( - 50646285DD9FD95AF390BDA3FB1948EA /* Debug */, - 58DCB2BA7C34E84C00C38CEF18A96D11 /* Release */, + 2B15A656975AD6239E491D34DB89E598 /* Debug */, + 3B00EA6E3BEB8B678C1C0FBE7D10EBB4 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3FD527BEA374E1B650791BCDB0CD8FD8 /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = { + 3679C7724191A63BC55F80144E8C3E8E /* Build configuration list for PBXNativeTarget "PetstoreClient" */ = { isa = XCConfigurationList; buildConfigurations = ( - 7C99284BFB164E1BC479CF3C336FD072 /* Debug */, - 3A97A30AD22F3F0ED62BD32A51C530C0 /* Release */, + 175DE0F32DFB9352D8BDE2242D146278 /* Debug */, + FA4585C83A71BBB23D144F31704C9C56 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 427F0F003A1AD80AE00155AFCDEFAC20 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - F9711F223F590669E94B504F3CC44301 /* Debug */, - 1EAFDB7DE59A16060DF36FC40DC2E750 /* Release */, + AB4D69770D8ACE3A05E80BB3502666F6 /* Debug */, + F232B5ECA11A71BFA199A229B323F454 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 6FE34D1A5B9BD52C4D88190720B78140 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */ = { + 8F09E039867007D3576FEED9032526A8 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - F8B02B0D8F9ED668EC1C6F4C41C6D550 /* Debug */, - 0043AE927C3E7A6A6C4B12BE9E314216 /* Release */, + 72215A7E736410410139FC6A3FCEAAEC /* Debug */, + E0CA0082E44CE578414DCAED684E16A2 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 76B13691DB32711A6B8BBD77E07FDA57 /* Build configuration list for PBXNativeTarget "RxAtomic" */ = { + 9F0E63448933894561DF123D81422A1C /* Build configuration list for PBXNativeTarget "Pods-SwaggerClient" */ = { isa = XCConfigurationList; buildConfigurations = ( - 8D1A76DCD4BB50EF0A50E3E1AF55E09E /* Debug */, - F67E9C643A39F31BBB34CE20D7DB5505 /* Release */, + 6FB7A8200113F8B35642AF088882257D /* Debug */, + A65A298AF5D17903189605681170DC09 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 7DFD16CAA839D5E2607A2D7700691018 /* Build configuration list for PBXNativeTarget "Pods-SwaggerClientTests" */ = { + E87124444A44B7DB55208E7FEC21D331 /* Build configuration list for PBXNativeTarget "Alamofire" */ = { isa = XCConfigurationList; buildConfigurations = ( - 05BA5315A858DECF3CFE39BBB1592356 /* Debug */, - BF40C45D527467C3DC0BEABE2E2471C9 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - ADAF7919989331C2B58E796ABE9FC08F /* Build configuration list for PBXNativeTarget "RxSwift" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - CB319D268B958318323DE1F967B3142E /* Debug */, - 6076997D534588D07B9C1B1B323EF999 /* Release */, + 41268AF552E2DC6A5873C87C81174F7D /* Debug */, + A345BCBDE6C296957161A3E85A47A280 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/LICENSE.md b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/LICENSE.md deleted file mode 100644 index d6765d9c9b..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/LICENSE.md +++ /dev/null @@ -1,9 +0,0 @@ -**The MIT License** -**Copyright © 2015 Krunoslav Zaher** -**All rights reserved.** - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/README.md b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/README.md deleted file mode 100644 index 03270a0ae8..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/README.md +++ /dev/null @@ -1,217 +0,0 @@ -Miss Electric Eel 2016 RxSwift: ReactiveX for Swift -====================================== - -[![Travis CI](https://travis-ci.org/ReactiveX/RxSwift.svg?branch=master)](https://travis-ci.org/ReactiveX/RxSwift) ![platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20macOS%20%7C%20tvOS%20%7C%20watchOS%20%7C%20Linux-333333.svg) ![pod](https://img.shields.io/cocoapods/v/RxSwift.svg) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Swift Package Manager compatible](https://img.shields.io/badge/Swift%20Package%20Manager-compatible-brightgreen.svg)](https://github.com/apple/swift-package-manager) - -* RxSwift 3.x / Swift 3.x can be found in [**rxswift-3.0** branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0). - -Rx is a [generic abstraction of computation](https://youtu.be/looJcaeboBY) expressed through `Observable` interface. - -This is a Swift version of [Rx](https://github.com/Reactive-Extensions/Rx.NET). - -It tries to port as many concepts from the original version as possible, but some concepts were adapted for more pleasant and performant integration with iOS/macOS environment. - -Cross platform documentation can be found on [ReactiveX.io](http://reactivex.io/). - -Like the original Rx, its intention is to enable easy composition of asynchronous operations and event/data streams. - -KVO observing, async operations and streams are all unified under [abstraction of sequence](Documentation/GettingStarted.md#observables-aka-sequences). This is the reason why Rx is so simple, elegant and powerful. - -## I came here because I want to ... - -###### ... understand - -* [why use rx?](Documentation/Why.md) -* [the basics, getting started with RxSwift](Documentation/GettingStarted.md) -* [traits](Documentation/Traits.md) - what are `Single`, `Completable`, `Maybe`, `Driver`, `ControlProperty`, and `Variable` ... and why do they exist? -* [testing](Documentation/UnitTests.md) -* [tips and common errors](Documentation/Tips.md) -* [debugging](Documentation/GettingStarted.md#debugging) -* [the math behind Rx](Documentation/MathBehindRx.md) -* [what are hot and cold observable sequences?](Documentation/HotAndColdObservables.md) - -###### ... install - -* Integrate RxSwift/RxCocoa with my app. [Installation Guide](#installation) - -###### ... hack around - -* with the example app. [Running Example App](Documentation/ExampleApp.md) -* with operators in playgrounds. [Playgrounds](Documentation/Playgrounds.md) - -###### ... interact - -* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[![Slack channel](http://rxswift-slack.herokuapp.com/badge.svg)](http://slack.rxswift.org) [Join Slack Channel](http://slack.rxswift.org) -* Report a problem using the library. [Open an Issue With Bug Template](.github/ISSUE_TEMPLATE.md) -* Request a new feature. [Open an Issue With Feature Request Template](Documentation/NewFeatureRequestTemplate.md) -* Help out [Check out contribution guide](CONTRIBUTING.md) - -###### ... compare - -* [with other libraries](Documentation/ComparisonWithOtherLibraries.md). - - -###### ... find compatible - -* libraries from [RxSwiftCommunity](https://github.com/RxSwiftCommunity). -* [Pods using RxSwift](https://cocoapods.org/?q=uses%3Arxswift). - -###### ... see the broader vision - -* Does this exist for Android? [RxJava](https://github.com/ReactiveX/RxJava) -* Where is all of this going, what is the future, what about reactive architectures, how do you design entire apps this way? [Cycle.js](https://github.com/cyclejs/cycle-core) - this is javascript, but [RxJS](https://github.com/Reactive-Extensions/RxJS) is javascript version of Rx. - -## Usage - - - - - - - - - - - - - - - - - - - -
Here's an exampleIn Action
Define search for GitHub repositories ...
-let searchResults = searchBar.rx.text.orEmpty
-    .throttle(0.3, scheduler: MainScheduler.instance)
-    .distinctUntilChanged()
-    .flatMapLatest { query -> Observable<[Repository]> in
-        if query.isEmpty {
-            return .just([])
-        }
-        return searchGitHub(query)
-            .catchErrorJustReturn([])
-    }
-    .observeOn(MainScheduler.instance)
... then bind the results to your tableview
-searchResults
-    .bind(to: tableView.rx.items(cellIdentifier: "Cell")) {
-        (index, repository: Repository, cell) in
-        cell.textLabel?.text = repository.name
-        cell.detailTextLabel?.text = repository.url
-    }
-    .disposed(by: disposeBag)
- - -## Requirements - -* Xcode 9.0 -* Swift 4.0 -* Swift 3.x ([use `rxswift-3.0` branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0) instead) -* Swift 2.3 ([use `rxswift-2.0` branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-2.0) instead) - -## Installation - -Rx doesn't contain any external dependencies. - -These are currently the supported options: - -### Manual - -Open Rx.xcworkspace, choose `RxExample` and hit run. This method will build everything and run the sample app - -### [CocoaPods](https://guides.cocoapods.org/using/using-cocoapods.html) - -**Tested with `pod --version`: `1.3.1`** - -```ruby -# Podfile -use_frameworks! - -target 'YOUR_TARGET_NAME' do - pod 'RxSwift', '~> 4.0' - pod 'RxCocoa', '~> 4.0' -end - -# RxTest and RxBlocking make the most sense in the context of unit/integration tests -target 'YOUR_TESTING_TARGET' do - pod 'RxBlocking', '~> 4.0' - pod 'RxTest', '~> 4.0' -end -``` - -Replace `YOUR_TARGET_NAME` and then, in the `Podfile` directory, type: - -```bash -$ pod install -``` - -### [Carthage](https://github.com/Carthage/Carthage) - -**Tested with `carthage version`: `0.26.2`** - -Add this to `Cartfile` - -``` -github "ReactiveX/RxSwift" ~> 4.0 -``` - -```bash -$ carthage update -``` - -### [Swift Package Manager](https://github.com/apple/swift-package-manager) - -**Tested with `swift build --version`: `Swift 4.0.0-dev (swiftpm-13126)`** - -Create a `Package.swift` file. - -```swift -// swift-tools-version:4.0 - -import PackageDescription - -let package = Package( - name: "RxTestProject", - dependencies: [ - .package(url: "https://github.com/ReactiveX/RxSwift.git", "4.0.0" ..< "5.0.0") - ], - targets: [ - .target(name: "RxTestProject", dependencies: ["RxSwift", "RxCocoa"]) - ] -) -``` - -```bash -$ swift build -``` - -To build or test a module with RxTest dependency, set `TEST=1`. ([RxSwift >= 3.4.2](https://github.com/ReactiveX/RxSwift/releases/tag/3.4.2)) - -```bash -$ TEST=1 swift test -``` - -### Manually using git submodules - -* Add RxSwift as a submodule - -```bash -$ git submodule add git@github.com:ReactiveX/RxSwift.git -``` - -* Drag `Rx.xcodeproj` into Project Navigator -* Go to `Project > Targets > Build Phases > Link Binary With Libraries`, click `+` and select `RxSwift-[Platform]` and `RxCocoa-[Platform]` targets - - -## References - -* [http://reactivex.io/](http://reactivex.io/) -* [Reactive Extensions GitHub (GitHub)](https://github.com/Reactive-Extensions) -* [RxSwift RayWenderlich.com Book](https://store.raywenderlich.com/products/rxswift-reactive-programming-with-swift) -* [Boxue.io RxSwift Online Course](https://boxueio.com/series/rxswift-101) (Chinese 🇨🇳) -* [Erik Meijer (Wikipedia)](http://en.wikipedia.org/wiki/Erik_Meijer_%28computer_scientist%29) -* [Expert to Expert: Brian Beckman and Erik Meijer - Inside the .NET Reactive Framework (Rx) (video)](https://youtu.be/looJcaeboBY) -* [Reactive Programming Overview (Jafar Husain from Netflix)](https://www.youtube.com/watch?v=dwP1TNXE6fc) -* [Subject/Observer is Dual to Iterator (paper)](http://csl.stanford.edu/~christos/pldi2010.fit/meijer.duality.pdf) -* [Rx standard sequence operators visualized (visualization tool)](http://rxmarbles.com/) -* [Haskell](https://www.haskell.org/) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/RxAtomic/RxAtomic.c b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/RxAtomic/RxAtomic.c deleted file mode 100644 index 5ec86f5a05..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/RxAtomic/RxAtomic.c +++ /dev/null @@ -1,7 +0,0 @@ -// -// RxAtomic.c -// RxAtomic -// -// Created by Krunoslav Zaher on 10/28/18. -// Copyright © 2018 Krunoslav Zaher. All rights reserved. -// diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/RxAtomic/include/RxAtomic.h b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/RxAtomic/include/RxAtomic.h deleted file mode 100644 index cd182cec01..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxAtomic/RxAtomic/include/RxAtomic.h +++ /dev/null @@ -1,48 +0,0 @@ -// -// RxAtomic.h -// RxAtomic -// -// Created by Krunoslav Zaher on 10/28/18. -// Copyright © 2018 Krunoslav Zaher. All rights reserved. -// - -#ifndef RxAtomic_h -#define RxAtomic_h - -#include - -#define SWIFT_NAME(_name) __attribute__((swift_name(#_name))) - -#define Atomic(swift_type, llvm_type) \ - typedef struct { volatile atomic_##llvm_type atom; } Atomic##swift_type;\ - static __inline__ __attribute__((__always_inline__)) SWIFT_NAME(Atomic##swift_type.initialize(self:_:)) \ - void Atomic##swift_type##_Initialize(Atomic##swift_type * _Nonnull self, llvm_type value) { \ - atomic_init(&self->atom, value);\ - }\ - \ - static __inline__ __attribute__((__always_inline__)) SWIFT_NAME(Atomic##swift_type.load(self:)) \ - llvm_type Atomic##swift_type##_Load(Atomic##swift_type * _Nonnull self) { \ - return atomic_load(&self->atom);\ - }\ - \ - static __inline__ __attribute__((__always_inline__)) SWIFT_NAME(Atomic##swift_type.fetchOr(self:_:)) \ - llvm_type Atomic##swift_type##_FetchOr(Atomic##swift_type * _Nonnull self, llvm_type mask) { \ - return atomic_fetch_or(&self->atom, mask);\ - }\ - \ - static __inline__ __attribute__((__always_inline__)) SWIFT_NAME(Atomic##swift_type.add(self:_:)) \ - llvm_type Atomic##swift_type##_Add(Atomic##swift_type * _Nonnull self, llvm_type value) { \ - return atomic_fetch_add(&self->atom, value);\ - }\ - \ - static __inline__ __attribute__((__always_inline__)) SWIFT_NAME(Atomic##swift_type.sub(self:_:)) \ - llvm_type Atomic##swift_type##_Sub(Atomic##swift_type * _Nonnull self, llvm_type value) { \ - return atomic_fetch_sub(&self->atom, value);\ - }\ - \ - -Atomic(Int, int) - -#undef SWIFT_NAME - -#endif /* RxAtomic_h */ diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift index 2f405c8a0e..d8d958078f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/AtomicInt.swift @@ -6,27 +6,66 @@ // Copyright © 2018 Krunoslav Zaher. All rights reserved. // -import RxAtomic +import class Foundation.NSLock -typealias AtomicInt = RxAtomic.AtomicInt - -extension AtomicInt { - init(_ initialValue: Int32) { - self.init() - self.initialize(initialValue) - } - - @discardableResult - mutating func increment() -> Int32 { - return self.add(1) - } - - @discardableResult - mutating func decrement() -> Int32 { - return self.sub(1) - } - - mutating func isFlagSet(_ mask: Int32) -> Bool { - return (self.load() & mask) != 0 +final class AtomicInt: NSLock { + fileprivate var value: Int32 + public init(_ value: Int32 = 0) { + self.value = value } } + +@discardableResult +@inline(__always) +func add(_ this: AtomicInt, _ value: Int32) -> Int32 { + this.lock() + let oldValue = this.value + this.value += value + this.unlock() + return oldValue +} + +@discardableResult +@inline(__always) +func sub(_ this: AtomicInt, _ value: Int32) -> Int32 { + this.lock() + let oldValue = this.value + this.value -= value + this.unlock() + return oldValue +} + +@discardableResult +@inline(__always) +func fetchOr(_ this: AtomicInt, _ mask: Int32) -> Int32 { + this.lock() + let oldValue = this.value + this.value |= mask + this.unlock() + return oldValue +} + +@inline(__always) +func load(_ this: AtomicInt) -> Int32 { + this.lock() + let oldValue = this.value + this.unlock() + return oldValue +} + +@discardableResult +@inline(__always) +func increment(_ this: AtomicInt) -> Int32 { + return add(this, 1) +} + +@discardableResult +@inline(__always) +func decrement(_ this: AtomicInt) -> Int32 { + return sub(this, 1) +} + +@inline(__always) +func isFlagSet(_ this: AtomicInt, _ mask: Int32) -> Bool { + return (load(this) & mask) != 0 +} diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift index 6b92b4011d..4ad0a2bc18 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Bag.swift @@ -32,9 +32,9 @@ It is suitable for storing small number of elements. struct Bag : CustomDebugStringConvertible { /// Type of identifier for inserted elements. typealias KeyType = BagKey - + typealias Entry = (key: BagKey, value: T) - + fileprivate var _nextKey: BagKey = BagKey(rawValue: 0) // data @@ -54,7 +54,7 @@ struct Bag : CustomDebugStringConvertible { /// Creates new empty `Bag`. init() { } - + /** Inserts `value` into bag. @@ -83,18 +83,18 @@ struct Bag : CustomDebugStringConvertible { _pairs.append((key: key, value: element)) return key } - + _dictionary = [key: element] - + return key } - + /// - returns: Number of elements in bag. var count: Int { let dictionaryCount: Int = _dictionary?.count ?? 0 return (_value0 != nil ? 1 : 0) + _pairs.count + dictionaryCount } - + /// Removes all elements from bag and clears capacity. mutating func removeAll() { _key0 = nil @@ -103,7 +103,7 @@ struct Bag : CustomDebugStringConvertible { _pairs.removeAll(keepingCapacity: false) _dictionary?.removeAll(keepingCapacity: false) } - + /** Removes element with a specific `key` from bag. @@ -122,12 +122,10 @@ struct Bag : CustomDebugStringConvertible { return existingObject } - for i in 0 ..< _pairs.count { - if _pairs[i].key == key { - let value = _pairs[i].value - _pairs.remove(at: i) - return value - } + for i in 0 ..< _pairs.count where _pairs[i].key == key { + let value = _pairs[i].value + _pairs.remove(at: i) + return value } return nil @@ -136,7 +134,7 @@ struct Bag : CustomDebugStringConvertible { extension Bag { /// A textual representation of `self`, suitable for debugging. - var debugDescription: String { + var debugDescription : String { return "\(self.count) elements in Bag" } } @@ -173,9 +171,15 @@ extension Bag { } extension BagKey: Hashable { + #if swift(>=4.2) + func hash(into hasher: inout Hasher) { + hasher.combine(rawValue) + } + #else var hashValue: Int { return rawValue.hashValue } + #endif } func ==(lhs: BagKey, rhs: BagKey) -> Bool { diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift index a46e74827c..5a573a0de1 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/InfiniteSequence.swift @@ -10,13 +10,13 @@ struct InfiniteSequence : Sequence { typealias Element = E typealias Iterator = AnyIterator - + private let _repeatedValue: E - + init(repeatedValue: E) { _repeatedValue = repeatedValue } - + func makeIterator() -> Iterator { let repeatedValue = _repeatedValue return AnyIterator { diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift index 7d174fd7be..f7cb99c8b0 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/PriorityQueue.swift @@ -52,11 +52,7 @@ struct PriorityQueue { private mutating func removeAt(_ index: Int) { let removingLast = index == _elements.count - 1 if !removingLast { - #if swift(>=3.2) _elements.swapAt(index, _elements.count - 1) - #else - swap(&_elements[index], &_elements[_elements.count - 1]) - #endif } _ = _elements.popLast() @@ -76,11 +72,7 @@ struct PriorityQueue { while unbalancedIndex > 0 { let parentIndex = (unbalancedIndex - 1) / 2 guard _hasHigherPriority(_elements[unbalancedIndex], _elements[parentIndex]) else { break } - #if swift(>=3.2) _elements.swapAt(unbalancedIndex, parentIndex) - #else - swap(&_elements[unbalancedIndex], &_elements[parentIndex]) - #endif unbalancedIndex = parentIndex } } @@ -105,18 +97,14 @@ struct PriorityQueue { } guard highestPriorityIndex != unbalancedIndex else { break } - - #if swift(>=3.2) _elements.swapAt(highestPriorityIndex, unbalancedIndex) - #else - swap(&_elements[highestPriorityIndex], &_elements[unbalancedIndex]) - #endif + unbalancedIndex = highestPriorityIndex } } } -extension PriorityQueue: CustomDebugStringConvertible { +extension PriorityQueue : CustomDebugStringConvertible { var debugDescription: String { return _elements.debugDescription } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift index b9b3ae2e8b..d05726c7b9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DataStructures/Queue.swift @@ -19,7 +19,7 @@ struct Queue: Sequence { typealias Generator = AnyIterator private let _resizeFactor = 2 - + private var _storage: ContiguousArray private var _count = 0 private var _pushNextIndex = 0 @@ -35,50 +35,50 @@ struct Queue: Sequence { _storage = ContiguousArray(repeating: nil, count: capacity) } - + private var dequeueIndex: Int { let index = _pushNextIndex - count return index < 0 ? index + _storage.count : index } - + /// - returns: Is queue empty. var isEmpty: Bool { return count == 0 } - + /// - returns: Number of elements inside queue. var count: Int { return _count } - + /// - returns: Element in front of a list of elements to `dequeue`. func peek() -> T { precondition(count > 0) - + return _storage[dequeueIndex]! } - + mutating private func resizeTo(_ size: Int) { var newStorage = ContiguousArray(repeating: nil, count: size) - + let count = _count - + let dequeueIndex = self.dequeueIndex let spaceToEndOfQueue = _storage.count - dequeueIndex - + // first batch is from dequeue index to end of array let countElementsInFirstBatch = Swift.min(count, spaceToEndOfQueue) // second batch is wrapped from start of array to end of queue let numberOfElementsInSecondBatch = count - countElementsInFirstBatch - + newStorage[0 ..< countElementsInFirstBatch] = _storage[dequeueIndex ..< (dequeueIndex + countElementsInFirstBatch)] newStorage[countElementsInFirstBatch ..< (countElementsInFirstBatch + numberOfElementsInSecondBatch)] = _storage[0 ..< numberOfElementsInSecondBatch] - + _count = count _pushNextIndex = count _storage = newStorage } - + /// Enqueues `element`. /// /// - parameter element: Element to enqueue. @@ -86,19 +86,19 @@ struct Queue: Sequence { if count == _storage.count { resizeTo(Swift.max(_storage.count, 1) * _resizeFactor) } - + _storage[_pushNextIndex] = element _pushNextIndex += 1 _count += 1 - + if _pushNextIndex >= _storage.count { _pushNextIndex -= _storage.count } } - + private mutating func dequeueElementOnly() -> T { precondition(count > 0) - + let index = dequeueIndex defer { @@ -126,7 +126,7 @@ struct Queue: Sequence { return dequeueElementOnly() } - + /// - returns: Generator of contained elements. func makeIterator() -> AnyIterator { var i = dequeueIndex diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift index d2ede7fb48..863636b7b7 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/DeprecationWarner.swift @@ -12,23 +12,23 @@ import Foundation class DeprecationWarner { private static var warned = Set() private static var _lock = NSRecursiveLock() - + static func warnIfNeeded(_ kind: Kind) { _lock.lock(); defer { _lock.unlock() } guard !warned.contains(kind) else { return } - + warned.insert(kind) print("ℹ️ [DEPRECATED] \(kind.message)") } } - + extension DeprecationWarner { enum Kind { case variable case globalTestFunctionNext case globalTestFunctionError case globalTestFunctionCompleted - + var message: String { switch self { case .variable: return "`Variable` is planned for future deprecation. Please consider `BehaviorRelay` as a replacement. Read more at: https://git.io/vNqvx" @@ -40,3 +40,4 @@ import Foundation } } #endif + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift index f75007f442..6dc36add7b 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Darwin.swift @@ -19,7 +19,8 @@ if let newValue = value { threadDictionary[key] = newValue - } else { + } + else { threadDictionary[key] = nil } } @@ -27,7 +28,7 @@ static func getThreadLocalStorageValueForKey(_ key: NSCopying) -> T? { let currentThread = Thread.current let threadDictionary = currentThread.threadDictionary - + return threadDictionary[key] as? T } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift index 125fe8863f..570f8f00fa 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/Platform/Platform.Linux.swift @@ -18,7 +18,8 @@ if let newValue = value { threadDictionary[key] = newValue - } else { + } + else { threadDictionary[key] = nil } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/README.md b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/README.md index 03270a0ae8..17c8a9523e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/README.md +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/README.md @@ -1,7 +1,7 @@ -Miss Electric Eel 2016 RxSwift: ReactiveX for Swift +Miss Electric Eel 2016 RxSwift: ReactiveX for Swift ====================================== -[![Travis CI](https://travis-ci.org/ReactiveX/RxSwift.svg?branch=master)](https://travis-ci.org/ReactiveX/RxSwift) ![platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20macOS%20%7C%20tvOS%20%7C%20watchOS%20%7C%20Linux-333333.svg) ![pod](https://img.shields.io/cocoapods/v/RxSwift.svg) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Swift Package Manager compatible](https://img.shields.io/badge/Swift%20Package%20Manager-compatible-brightgreen.svg)](https://github.com/apple/swift-package-manager) +[![Travis CI](https://travis-ci.org/ReactiveX/RxSwift.svg?branch=master)](https://travis-ci.org/ReactiveX/RxSwift) ![platforms](https://img.shields.io/badge/platforms-iOS%20%7C%20macOS%20%7C%20tvOS%20%7C%20watchOS%20%7C%20Linux-333333.svg) [![pod](https://img.shields.io/cocoapods/v/RxSwift.svg)](https://cocoapods.org/pods/RxSwift) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Swift Package Manager compatible](https://img.shields.io/badge/Swift%20Package%20Manager-compatible-brightgreen.svg)](https://github.com/apple/swift-package-manager) * RxSwift 3.x / Swift 3.x can be found in [**rxswift-3.0** branch](https://github.com/ReactiveX/RxSwift/tree/rxswift-3.0). @@ -23,7 +23,7 @@ KVO observing, async operations and streams are all unified under [abstraction o * [why use rx?](Documentation/Why.md) * [the basics, getting started with RxSwift](Documentation/GettingStarted.md) -* [traits](Documentation/Traits.md) - what are `Single`, `Completable`, `Maybe`, `Driver`, `ControlProperty`, and `Variable` ... and why do they exist? +* [traits](Documentation/Traits.md) - what are `Single`, `Completable`, `Maybe`, `Driver`, and `ControlProperty` ... and why do they exist? * [testing](Documentation/UnitTests.md) * [tips and common errors](Documentation/Tips.md) * [debugging](Documentation/GettingStarted.md#debugging) @@ -41,7 +41,7 @@ KVO observing, async operations and streams are all unified under [abstraction o ###### ... interact -* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[![Slack channel](http://rxswift-slack.herokuapp.com/badge.svg)](http://slack.rxswift.org) [Join Slack Channel](http://slack.rxswift.org) +* All of this is great, but it would be nice to talk with other people using RxSwift and exchange experiences.
[Join Slack Channel](http://slack.rxswift.org) * Report a problem using the library. [Open an Issue With Bug Template](.github/ISSUE_TEMPLATE.md) * Request a new feature. [Open an Issue With Feature Request Template](Documentation/NewFeatureRequestTemplate.md) * Help out [Check out contribution guide](CONTRIBUTING.md) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift index 4516036439..85a5efa8fd 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/AnyObserver.swift @@ -12,7 +12,7 @@ public struct AnyObserver : ObserverType { /// The type of elements in sequence that observer can observe. public typealias E = Element - + /// Anonymous event handler type. public typealias EventHandler = (Event) -> Void @@ -24,14 +24,14 @@ public struct AnyObserver : ObserverType { public init(eventHandler: @escaping EventHandler) { self.observer = eventHandler } - + /// Construct an instance whose `on(event)` calls `observer.on(event)` /// /// - parameter observer: Observer that receives sequence events. - public init(_ observer: O) where O.E == Element { + public init(_ observer: O) where O.E == Element { self.observer = observer.on } - + /// Send `event` to this observer. /// /// - parameter event: Event instance. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift index 341807c18c..1fa7a67726 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Cancelable.swift @@ -7,7 +7,7 @@ // /// Represents disposable resource with state tracking. -public protocol Cancelable: Disposable { +public protocol Cancelable : Disposable { /// Was resource disposed. var isDisposed: Bool { get } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift index 7d040e7bf1..80332dbc4f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/AsyncLock.swift @@ -17,11 +17,13 @@ and pending work. That means that enqueued work could possibly be executed later on a different thread. */ final class AsyncLock - : Disposable, Lock, SynchronizedDisposeType { + : Disposable + , Lock + , SynchronizedDisposeType { typealias Action = () -> Void - + var _lock = SpinLock() - + private var _queue: Queue = Queue(capacity: 0) private var _isExecuting: Bool = false @@ -29,69 +31,72 @@ final class AsyncLock // lock { func lock() { - _lock.lock() + self._lock.lock() } func unlock() { - _lock.unlock() + self._lock.unlock() } // } private func enqueue(_ action: I) -> I? { - _lock.lock(); defer { _lock.unlock() } // { - if _hasFaulted { + self._lock.lock(); defer { self._lock.unlock() } // { + if self._hasFaulted { return nil } - if _isExecuting { - _queue.enqueue(action) + if self._isExecuting { + self._queue.enqueue(action) return nil } - _isExecuting = true + self._isExecuting = true return action // } } private func dequeue() -> I? { - _lock.lock(); defer { _lock.unlock() } // { - if !_queue.isEmpty { - return _queue.dequeue() - } else { - _isExecuting = false + self._lock.lock(); defer { self._lock.unlock() } // { + if !self._queue.isEmpty { + return self._queue.dequeue() + } + else { + self._isExecuting = false return nil } // } } func invoke(_ action: I) { - let firstEnqueuedAction = enqueue(action) - + let firstEnqueuedAction = self.enqueue(action) + if let firstEnqueuedAction = firstEnqueuedAction { firstEnqueuedAction.invoke() - } else { + } + else { // action is enqueued, it's somebody else's concern now return } - + while true { - let nextAction = dequeue() + let nextAction = self.dequeue() if let nextAction = nextAction { nextAction.invoke() - } else { + } + else { return } } } - + func dispose() { - synchronizedDispose() + self.synchronizedDispose() } func _synchronized_dispose() { - _queue = Queue(capacity: 0) - _hasFaulted = true + self._queue = Queue(capacity: 0) + self._hasFaulted = true } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift index 6f9ff8e4e4..b26f5b7501 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/Lock.swift @@ -14,22 +14,22 @@ protocol Lock { // https://lists.swift.org/pipermail/swift-dev/Week-of-Mon-20151214/000321.html typealias SpinLock = RecursiveLock -extension RecursiveLock: Lock { +extension RecursiveLock : Lock { @inline(__always) final func performLocked(_ action: () -> Void) { - lock(); defer { unlock() } + self.lock(); defer { self.unlock() } action() } @inline(__always) final func calculateLocked(_ action: () -> T) -> T { - lock(); defer { unlock() } + self.lock(); defer { self.unlock() } return action() } @inline(__always) final func calculateLockedOrFail(_ action: () throws -> T) throws -> T { - lock(); defer { unlock() } + self.lock(); defer { self.unlock() } let result = try action() return result } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift index 0f6efdff4a..ed6b28a780 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/LockOwnerType.swift @@ -6,16 +6,16 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol LockOwnerType: class, Lock { +protocol LockOwnerType : class, Lock { var _lock: RecursiveLock { get } } extension LockOwnerType { func lock() { - _lock.lock() + self._lock.lock() } func unlock() { - _lock.unlock() + self._lock.unlock() } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift index ba729399b5..0490a69ba8 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedDisposeType.swift @@ -6,13 +6,13 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol SynchronizedDisposeType: class, Disposable, Lock { +protocol SynchronizedDisposeType : class, Disposable, Lock { func _synchronized_dispose() } extension SynchronizedDisposeType { func synchronizedDispose() { - lock(); defer { unlock() } - _synchronized_dispose() + self.lock(); defer { self.unlock() } + self._synchronized_dispose() } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift index d7923769e2..33aa84fc51 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedOnType.swift @@ -6,13 +6,13 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol SynchronizedOnType: class, ObserverType, Lock { +protocol SynchronizedOnType : class, ObserverType, Lock { func _synchronized_on(_ event: Event) } extension SynchronizedOnType { func synchronizedOn(_ event: Event) { - lock(); defer { unlock() } - _synchronized_on(event) + self.lock(); defer { self.unlock() } + self._synchronized_on(event) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift index 29897d4bdb..bb1aa7e47d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Concurrency/SynchronizedUnsubscribeType.swift @@ -6,7 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol SynchronizedUnsubscribeType: class { +protocol SynchronizedUnsubscribeType : class { associatedtype DisposeKey func synchronizedUnsubscribe(_ disposeKey: DisposeKey) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift index 239455a0f9..52bf93c568 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ConnectableObservableType.swift @@ -9,7 +9,7 @@ /** Represents an observable sequence wrapper that can be connected and disconnected from its underlying observable sequence. */ -public protocol ConnectableObservableType: ObservableType { +public protocol ConnectableObservableType : ObservableType { /** Connects the observable wrapper to its source. All subscribed observers will receive values from the underlying observable sequence as long as the connection is established. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift index 2ec47b3109..cb410906ec 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Deprecated.swift @@ -48,9 +48,10 @@ extension ObservableType { @available(*, deprecated, message: "Please use enumerated().map()") public func mapWithIndex(_ selector: @escaping (E, Int) throws -> R) -> Observable { - return enumerated().map { try selector($0.element, $0.index) } + return self.enumerated().map { try selector($0.element, $0.index) } } + /** Projects each element of an observable sequence to an observable sequence by incorporating the element's index and merges the resulting observable sequences into one observable sequence. @@ -63,7 +64,7 @@ extension ObservableType { @available(*, deprecated, message: "Please use enumerated().flatMap()") public func flatMapWithIndex(_ selector: @escaping (E, Int) throws -> O) -> Observable { - return enumerated().flatMap { try selector($0.element, $0.index) } + return self.enumerated().flatMap { try selector($0.element, $0.index) } } /** @@ -78,9 +79,10 @@ extension ObservableType { */ @available(*, deprecated, message: "Please use enumerated().skipWhile().map()") public func skipWhileWithIndex(_ predicate: @escaping (E, Int) throws -> Bool) -> Observable { - return enumerated().skipWhile { try predicate($0.element, $0.index) }.map { $0.element } + return self.enumerated().skipWhile { try predicate($0.element, $0.index) }.map { $0.element } } + /** Returns elements from an observable sequence as long as a specified condition is true. @@ -94,7 +96,7 @@ extension ObservableType { */ @available(*, deprecated, message: "Please use enumerated().takeWhile().map()") public func takeWhileWithIndex(_ predicate: @escaping (E, Int) throws -> Bool) -> Observable { - return enumerated().takeWhile { try predicate($0.element, $0.index) }.map { $0.element } + return self.enumerated().takeWhile { try predicate($0.element, $0.index) }.map { $0.element } } } @@ -107,10 +109,11 @@ extension Disposable { /// - parameter bag: `DisposeBag` to add `self` to. @available(*, deprecated, message: "use disposed(by:) instead", renamed: "disposed(by:)") public func addDisposableTo(_ bag: DisposeBag) { - disposed(by: bag) + self.disposed(by: bag) } } + extension ObservableType { /** @@ -125,10 +128,11 @@ extension ObservableType { @available(*, deprecated, message: "use share(replay: 1) instead", renamed: "share(replay:)") public func shareReplayLatestWhileConnected() -> Observable { - return share(replay: 1, scope: .whileConnected) + return self.share(replay: 1, scope: .whileConnected) } } + extension ObservableType { /** @@ -185,19 +189,19 @@ public final class Variable { /// Even if the newly set value is same as the old value, observers are still notified for change. public var value: E { get { - _lock.lock(); defer { _lock.unlock() } - return _value + self._lock.lock(); defer { self._lock.unlock() } + return self._value } set(newValue) { #if DEBUG - _synchronizationTracker.register(synchronizationErrorMessage: .variable) - defer { _synchronizationTracker.unregister() } + self._synchronizationTracker.register(synchronizationErrorMessage: .variable) + defer { self._synchronizationTracker.unregister() } #endif - _lock.lock() - _value = newValue - _lock.unlock() + self._lock.lock() + self._value = newValue + self._lock.unlock() - _subject.on(.next(newValue)) + self._subject.on(.next(newValue)) } } @@ -209,16 +213,16 @@ public final class Variable { DeprecationWarner.warnIfNeeded(.variable) #endif - _value = value - _subject = BehaviorSubject(value: value) + self._value = value + self._subject = BehaviorSubject(value: value) } /// - returns: Canonical interface for push style sequence public func asObservable() -> Observable { - return _subject + return self._subject } deinit { - _subject.on(.completed) + self._subject.on(.completed) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift index 73a8db7927..6fbd635550 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/AnonymousDisposable.swift @@ -9,28 +9,28 @@ /// Represents an Action-based disposable. /// /// When dispose method is called, disposal action will be dereferenced. -fileprivate final class AnonymousDisposable: DisposeBase, Cancelable { +fileprivate final class AnonymousDisposable : DisposeBase, Cancelable { public typealias DisposeAction = () -> Void - private var _isDisposed = AtomicInt(0) + private let _isDisposed = AtomicInt(0) private var _disposeAction: DisposeAction? /// - returns: Was resource disposed. public var isDisposed: Bool { - return _isDisposed.isFlagSet(1) + return isFlagSet(self._isDisposed, 1) } /// Constructs a new disposable with the given action used for disposal. /// /// - parameter disposeAction: Disposal action which will be run upon calling `dispose`. fileprivate init(_ disposeAction: @escaping DisposeAction) { - _disposeAction = disposeAction + self._disposeAction = disposeAction super.init() } // Non-deprecated version of the constructor, used by `Disposables.create(with:)` fileprivate init(disposeAction: @escaping DisposeAction) { - _disposeAction = disposeAction + self._disposeAction = disposeAction super.init() } @@ -38,11 +38,9 @@ fileprivate final class AnonymousDisposable: DisposeBase, Cancelable { /// /// After invoking disposal action, disposal action will be dereferenced. fileprivate func dispose() { - if _isDisposed.fetchOr(1) == 0 { - assert(_isDisposed.load() == 1) - - if let action = _disposeAction { - _disposeAction = nil + if fetchOr(self._isDisposed, 1) == 0 { + if let action = self._disposeAction { + self._disposeAction = nil action() } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift index ee95e422e9..5693268d2a 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BinaryDisposable.swift @@ -7,9 +7,9 @@ // /// Represents two disposable resources that are disposed together. -private final class BinaryDisposable: DisposeBase, Cancelable { +private final class BinaryDisposable : DisposeBase, Cancelable { - private var _isDisposed = AtomicInt(0) + private let _isDisposed = AtomicInt(0) // state private var _disposable1: Disposable? @@ -17,7 +17,7 @@ private final class BinaryDisposable: DisposeBase, Cancelable { /// - returns: Was resource disposed. var isDisposed: Bool { - return _isDisposed.isFlagSet(1) + return isFlagSet(self._isDisposed, 1) } /// Constructs new binary disposable from two disposables. @@ -25,8 +25,8 @@ private final class BinaryDisposable: DisposeBase, Cancelable { /// - parameter disposable1: First disposable /// - parameter disposable2: Second disposable init(_ disposable1: Disposable, _ disposable2: Disposable) { - _disposable1 = disposable1 - _disposable2 = disposable2 + self._disposable1 = disposable1 + self._disposable2 = disposable2 super.init() } @@ -34,11 +34,11 @@ private final class BinaryDisposable: DisposeBase, Cancelable { /// /// After invoking disposal action, disposal action will be dereferenced. func dispose() { - if _isDisposed.fetchOr(1) == 0 { - _disposable1?.dispose() - _disposable2?.dispose() - _disposable1 = nil - _disposable2 = nil + if fetchOr(self._isDisposed, 1) == 0 { + self._disposable1?.dispose() + self._disposable2?.dispose() + self._disposable1 = nil + self._disposable2 = nil } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift index 0e6a7da9cf..a0f5c2fb86 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/BooleanDisposable.swift @@ -7,27 +7,27 @@ // /// Represents a disposable resource that can be checked for disposal status. -public final class BooleanDisposable: Cancelable { +public final class BooleanDisposable : Cancelable { internal static let BooleanDisposableTrue = BooleanDisposable(isDisposed: true) private var _isDisposed = false - + /// Initializes a new instance of the `BooleanDisposable` class public init() { } - + /// Initializes a new instance of the `BooleanDisposable` class with given value public init(isDisposed: Bool) { self._isDisposed = isDisposed } - + /// - returns: Was resource disposed. public var isDisposed: Bool { - return _isDisposed + return self._isDisposed } - + /// Sets the status to disposed, which can be observer through the `isDisposed` property. public func dispose() { - _isDisposed = true + self._isDisposed = true } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift index 46790ac8f6..ce0da6a7c6 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/CompositeDisposable.swift @@ -7,7 +7,7 @@ // /// Represents a group of disposable resources that are disposed together. -public final class CompositeDisposable: DisposeBase, Cancelable { +public final class CompositeDisposable : DisposeBase, Cancelable { /// Key used to remove disposable from composite disposable public struct DisposeKey { fileprivate let key: BagKey @@ -17,50 +17,50 @@ public final class CompositeDisposable: DisposeBase, Cancelable { } private var _lock = SpinLock() - + // state private var _disposables: Bag? = Bag() public var isDisposed: Bool { - _lock.lock(); defer { _lock.unlock() } - return _disposables == nil + self._lock.lock(); defer { self._lock.unlock() } + return self._disposables == nil } - + public override init() { } - + /// Initializes a new instance of composite disposable with the specified number of disposables. public init(_ disposable1: Disposable, _ disposable2: Disposable) { // This overload is here to make sure we are using optimized version up to 4 arguments. - _ = _disposables!.insert(disposable1) - _ = _disposables!.insert(disposable2) + _ = self._disposables!.insert(disposable1) + _ = self._disposables!.insert(disposable2) } - + /// Initializes a new instance of composite disposable with the specified number of disposables. public init(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable) { // This overload is here to make sure we are using optimized version up to 4 arguments. - _ = _disposables!.insert(disposable1) - _ = _disposables!.insert(disposable2) - _ = _disposables!.insert(disposable3) + _ = self._disposables!.insert(disposable1) + _ = self._disposables!.insert(disposable2) + _ = self._disposables!.insert(disposable3) } - + /// Initializes a new instance of composite disposable with the specified number of disposables. public init(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable, _ disposable4: Disposable, _ disposables: Disposable...) { // This overload is here to make sure we are using optimized version up to 4 arguments. - _ = _disposables!.insert(disposable1) - _ = _disposables!.insert(disposable2) - _ = _disposables!.insert(disposable3) - _ = _disposables!.insert(disposable4) - + _ = self._disposables!.insert(disposable1) + _ = self._disposables!.insert(disposable2) + _ = self._disposables!.insert(disposable3) + _ = self._disposables!.insert(disposable4) + for disposable in disposables { - _ = _disposables!.insert(disposable) + _ = self._disposables!.insert(disposable) } } - + /// Initializes a new instance of composite disposable with the specified number of disposables. public init(disposables: [Disposable]) { for disposable in disposables { - _ = _disposables!.insert(disposable) + _ = self._disposables!.insert(disposable) } } @@ -72,52 +72,52 @@ public final class CompositeDisposable: DisposeBase, Cancelable { disposed `nil` will be returned. */ public func insert(_ disposable: Disposable) -> DisposeKey? { - let key = _insert(disposable) - + let key = self._insert(disposable) + if key == nil { disposable.dispose() } - + return key } - + private func _insert(_ disposable: Disposable) -> DisposeKey? { - _lock.lock(); defer { _lock.unlock() } + self._lock.lock(); defer { self._lock.unlock() } - let bagKey = _disposables?.insert(disposable) + let bagKey = self._disposables?.insert(disposable) return bagKey.map(DisposeKey.init) } - + /// - returns: Gets the number of disposables contained in the `CompositeDisposable`. public var count: Int { - _lock.lock(); defer { _lock.unlock() } - return _disposables?.count ?? 0 + self._lock.lock(); defer { self._lock.unlock() } + return self._disposables?.count ?? 0 } - + /// Removes and disposes the disposable identified by `disposeKey` from the CompositeDisposable. /// /// - parameter disposeKey: Key used to identify disposable to be removed. public func remove(for disposeKey: DisposeKey) { - _remove(for: disposeKey)?.dispose() + self._remove(for: disposeKey)?.dispose() } - + private func _remove(for disposeKey: DisposeKey) -> Disposable? { - _lock.lock(); defer { _lock.unlock() } - return _disposables?.removeKey(disposeKey.key) + self._lock.lock(); defer { self._lock.unlock() } + return self._disposables?.removeKey(disposeKey.key) } - + /// Disposes all disposables in the group and removes them from the group. public func dispose() { - if let disposables = _dispose() { + if let disposables = self._dispose() { disposeAll(in: disposables) } } private func _dispose() -> Bag? { - _lock.lock(); defer { _lock.unlock() } + self._lock.lock(); defer { self._lock.unlock() } - let disposeBag = _disposables - _disposables = nil + let disposeBag = self._disposables + self._disposables = nil return disposeBag } @@ -129,7 +129,7 @@ extension Disposables { public static func create(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable) -> Cancelable { return CompositeDisposable(disposable1, disposable2, disposable3) } - + /// Creates a disposable with the given disposables. public static func create(_ disposable1: Disposable, _ disposable2: Disposable, _ disposable3: Disposable, _ disposables: Disposable ...) -> Cancelable { var disposables = disposables @@ -138,7 +138,7 @@ extension Disposables { disposables.append(disposable3) return CompositeDisposable(disposables: disposables) } - + /// Creates a disposable with the given disposables. public static func create(_ disposables: [Disposable]) -> Cancelable { switch disposables.count { diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift index fbee0bc5b8..8cd6e28c3c 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/Disposables.swift @@ -10,3 +10,4 @@ public struct Disposables { private init() {} } + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift index edb449d467..22e5cb02f9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBag.swift @@ -28,13 +28,13 @@ or create a new one in its place. In case explicit disposal is necessary, there is also `CompositeDisposable`. */ public final class DisposeBag: DisposeBase { - + private var _lock = SpinLock() - + // state fileprivate var _disposables = [Disposable]() fileprivate var _isDisposed = false - + /// Constructs new empty dispose bag. public override init() { super.init() @@ -44,23 +44,23 @@ public final class DisposeBag: DisposeBase { /// /// - parameter disposable: Disposable to add. public func insert(_ disposable: Disposable) { - _insert(disposable)?.dispose() + self._insert(disposable)?.dispose() } - + private func _insert(_ disposable: Disposable) -> Disposable? { - _lock.lock(); defer { _lock.unlock() } - if _isDisposed { + self._lock.lock(); defer { self._lock.unlock() } + if self._isDisposed { return disposable } - _disposables.append(disposable) + self._disposables.append(disposable) return nil } /// This is internal on purpose, take a look at `CompositeDisposable` instead. private func dispose() { - let oldDisposables = _dispose() + let oldDisposables = self._dispose() for disposable in oldDisposables { disposable.dispose() @@ -68,18 +68,18 @@ public final class DisposeBag: DisposeBase { } private func _dispose() -> [Disposable] { - _lock.lock(); defer { _lock.unlock() } - - let disposables = _disposables - - _disposables.removeAll(keepingCapacity: false) - _isDisposed = true + self._lock.lock(); defer { self._lock.unlock() } + let disposables = self._disposables + + self._disposables.removeAll(keepingCapacity: false) + self._isDisposed = true + return disposables } - + deinit { - dispose() + self.dispose() } } @@ -88,27 +88,27 @@ extension DisposeBag { /// Convenience init allows a list of disposables to be gathered for disposal. public convenience init(disposing disposables: Disposable...) { self.init() - _disposables += disposables + self._disposables += disposables } /// Convenience init allows an array of disposables to be gathered for disposal. public convenience init(disposing disposables: [Disposable]) { self.init() - _disposables += disposables + self._disposables += disposables } /// Convenience function allows a list of disposables to be gathered for disposal. public func insert(_ disposables: Disposable...) { - insert(disposables) + self.insert(disposables) } /// Convenience function allows an array of disposables to be gathered for disposal. public func insert(_ disposables: [Disposable]) { - _lock.lock(); defer { _lock.unlock() } - if _isDisposed { + self._lock.lock(); defer { self._lock.unlock() } + if self._isDisposed { disposables.forEach { $0.dispose() } } else { - _disposables += disposables + self._disposables += disposables } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift index 08cd2dd263..0d4b2fb7f9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/DisposeBase.swift @@ -13,7 +13,7 @@ public class DisposeBase { _ = Resources.incrementTotal() #endif } - + deinit { #if TRACE_RESOURCES _ = Resources.decrementTotal() diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift index 24fb5acc61..149f866434 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/NopDisposable.swift @@ -9,14 +9,14 @@ /// Represents a disposable that does nothing on disposal. /// /// Nop = No Operation -private struct NopDisposable: Disposable { - +fileprivate struct NopDisposable : Disposable { + fileprivate static let noOp: Disposable = NopDisposable() - + fileprivate init() { - + } - + /// Does nothing. public func dispose() { } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift index f40fd84ff4..922f20a6db 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/RefCountDisposable.swift @@ -7,7 +7,7 @@ // /// Represents a disposable resource that only disposes its underlying disposable resource when all dependent disposable objects have been disposed. -public final class RefCountDisposable: DisposeBase, Cancelable { +public final class RefCountDisposable : DisposeBase, Cancelable { private var _lock = SpinLock() private var _disposable = nil as Disposable? private var _primaryDisposed = false @@ -15,13 +15,13 @@ public final class RefCountDisposable: DisposeBase, Cancelable { /// - returns: Was resource disposed. public var isDisposed: Bool { - _lock.lock(); defer { _lock.unlock() } - return _disposable == nil + self._lock.lock(); defer { self._lock.unlock() } + return self._disposable == nil } /// Initializes a new instance of the `RefCountDisposable`. public init(disposable: Disposable) { - _disposable = disposable + self._disposable = disposable super.init() } @@ -31,12 +31,11 @@ public final class RefCountDisposable: DisposeBase, Cancelable { When getter is called, a dependent disposable contributing to the reference count that manages the underlying disposable's lifetime is returned. */ public func retain() -> Disposable { - return _lock.calculateLocked { - if let _ = _disposable { - + return self._lock.calculateLocked { + if self._disposable != nil { do { - _ = try incrementChecked(&_count) - } catch (_) { + _ = try incrementChecked(&self._count) + } catch { rxFatalError("RefCountDisposable increment failed") } @@ -49,12 +48,12 @@ public final class RefCountDisposable: DisposeBase, Cancelable { /// Disposes the underlying disposable only when all dependent disposables have been disposed. public func dispose() { - let oldDisposable: Disposable? = _lock.calculateLocked { - if let oldDisposable = _disposable, !_primaryDisposed { - _primaryDisposed = true + let oldDisposable: Disposable? = self._lock.calculateLocked { + if let oldDisposable = self._disposable, !self._primaryDisposed { + self._primaryDisposed = true - if (_count == 0) { - _disposable = nil + if self._count == 0 { + self._disposable = nil return oldDisposable } } @@ -68,20 +67,20 @@ public final class RefCountDisposable: DisposeBase, Cancelable { } fileprivate func release() { - let oldDisposable: Disposable? = _lock.calculateLocked { - if let oldDisposable = _disposable { + let oldDisposable: Disposable? = self._lock.calculateLocked { + if let oldDisposable = self._disposable { do { - _ = try decrementChecked(&_count) - } catch (_) { + _ = try decrementChecked(&self._count) + } catch { rxFatalError("RefCountDisposable decrement on release failed") } - guard _count >= 0 else { + guard self._count >= 0 else { rxFatalError("RefCountDisposable counter is lower than 0") } - if _primaryDisposed && _count == 0 { - _disposable = nil + if self._primaryDisposed && self._count == 0 { + self._disposable = nil return oldDisposable } } @@ -95,18 +94,20 @@ public final class RefCountDisposable: DisposeBase, Cancelable { } } -internal final class RefCountInnerDisposable: DisposeBase, Disposable { +internal final class RefCountInnerDisposable: DisposeBase, Disposable +{ private let _parent: RefCountDisposable - private var _isDisposed = AtomicInt(0) + private let _isDisposed = AtomicInt(0) init(_ parent: RefCountDisposable) { - _parent = parent + self._parent = parent super.init() } - internal func dispose() { - if _isDisposed.fetchOr(1) == 0 { - _parent.release() + internal func dispose() + { + if fetchOr(self._isDisposed, 1) == 0 { + self._parent.release() } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift index fffd5881c3..c834f5be1b 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/ScheduledDisposable.swift @@ -12,17 +12,17 @@ private let disposeScheduledDisposable: (ScheduledDisposable) -> Disposable = { } /// Represents a disposable resource whose disposal invocation will be scheduled on the specified scheduler. -public final class ScheduledDisposable: Cancelable { +public final class ScheduledDisposable : Cancelable { public let scheduler: ImmediateSchedulerType - private var _isDisposed = AtomicInt(0) + private let _isDisposed = AtomicInt(0) // state private var _disposable: Disposable? /// - returns: Was resource disposed. public var isDisposed: Bool { - return _isDisposed.isFlagSet(1) + return isFlagSet(self._isDisposed, 1) } /** @@ -33,18 +33,18 @@ public final class ScheduledDisposable: Cancelable { */ public init(scheduler: ImmediateSchedulerType, disposable: Disposable) { self.scheduler = scheduler - _disposable = disposable + self._disposable = disposable } /// Disposes the wrapped disposable on the provided scheduler. public func dispose() { - _ = scheduler.schedule(self, action: disposeScheduledDisposable) + _ = self.scheduler.schedule(self, action: disposeScheduledDisposable) } func disposeInner() { - if _isDisposed.fetchOr(1) == 0 { - _disposable!.dispose() - _disposable = nil + if fetchOr(self._isDisposed, 1) == 0 { + self._disposable!.dispose() + self._disposable = nil } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift index 0932f568ec..22dce3620b 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SerialDisposable.swift @@ -7,23 +7,23 @@ // /// Represents a disposable resource whose underlying disposable resource can be replaced by another disposable resource, causing automatic disposal of the previous underlying disposable resource. -public final class SerialDisposable: DisposeBase, Cancelable { +public final class SerialDisposable : DisposeBase, Cancelable { private var _lock = SpinLock() - + // state private var _current = nil as Disposable? private var _isDisposed = false - + /// - returns: Was resource disposed. public var isDisposed: Bool { - return _isDisposed + return self._isDisposed } - + /// Initializes a new instance of the `SerialDisposable`. override public init() { super.init() } - + /** Gets or sets the underlying disposable. @@ -33,40 +33,42 @@ public final class SerialDisposable: DisposeBase, Cancelable { */ public var disposable: Disposable { get { - return _lock.calculateLocked { - return _current ?? Disposables.create() + return self._lock.calculateLocked { + return self._current ?? Disposables.create() } } set (newDisposable) { - let disposable: Disposable? = _lock.calculateLocked { - if _isDisposed { + let disposable: Disposable? = self._lock.calculateLocked { + if self._isDisposed { return newDisposable - } else { - let toDispose = _current - _current = newDisposable + } + else { + let toDispose = self._current + self._current = newDisposable return toDispose } } - + if let disposable = disposable { disposable.dispose() } } } - + /// Disposes the underlying disposable as well as all future replacements. public func dispose() { - _dispose()?.dispose() + self._dispose()?.dispose() } private func _dispose() -> Disposable? { - _lock.lock(); defer { _lock.unlock() } - if _isDisposed { + self._lock.lock(); defer { self._lock.unlock() } + if self._isDisposed { return nil - } else { - _isDisposed = true - let current = _current - _current = nil + } + else { + self._isDisposed = true + let current = self._current + self._current = nil return current } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift index 6ff65235df..88d59dbe31 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SingleAssignmentDisposable.swift @@ -11,7 +11,7 @@ Represents a disposable resource which only allows a single assignment of its un If an underlying disposable resource has already been set, future attempts to set the underlying disposable resource will throw an exception. */ -public final class SingleAssignmentDisposable: DisposeBase, Cancelable { +public final class SingleAssignmentDisposable : DisposeBase, Cancelable { fileprivate enum DisposeState: Int32 { case disposed = 1 @@ -19,12 +19,12 @@ public final class SingleAssignmentDisposable: DisposeBase, Cancelable { } // state - private var _state = AtomicInt(0) + private let _state = AtomicInt(0) private var _disposable = nil as Disposable? /// - returns: A value that indicates whether the object is disposed. public var isDisposed: Bool { - return _state.isFlagSet(DisposeState.disposed.rawValue) + return isFlagSet(self._state, DisposeState.disposed.rawValue) } /// Initializes a new instance of the `SingleAssignmentDisposable`. @@ -36,9 +36,9 @@ public final class SingleAssignmentDisposable: DisposeBase, Cancelable { /// /// **Throws exception if the `SingleAssignmentDisposable` has already been assigned to.** public func setDisposable(_ disposable: Disposable) { - _disposable = disposable + self._disposable = disposable - let previousState = _state.fetchOr(DisposeState.disposableSet.rawValue) + let previousState = fetchOr(self._state, DisposeState.disposableSet.rawValue) if (previousState & DisposeState.disposableSet.rawValue) != 0 { rxFatalError("oldState.disposable != nil") @@ -46,24 +46,24 @@ public final class SingleAssignmentDisposable: DisposeBase, Cancelable { if (previousState & DisposeState.disposed.rawValue) != 0 { disposable.dispose() - _disposable = nil + self._disposable = nil } } /// Disposes the underlying disposable. public func dispose() { - let previousState = _state.fetchOr(DisposeState.disposed.rawValue) + let previousState = fetchOr(self._state, DisposeState.disposed.rawValue) if (previousState & DisposeState.disposed.rawValue) != 0 { return } if (previousState & DisposeState.disposableSet.rawValue) != 0 { - guard let disposable = _disposable else { + guard let disposable = self._disposable else { rxFatalError("Disposable not set") } disposable.dispose() - _disposable = nil + self._disposable = nil } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SubscriptionDisposable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SubscriptionDisposable.swift index 3ae138a8b3..430e4c6b55 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SubscriptionDisposable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Disposables/SubscriptionDisposable.swift @@ -11,11 +11,11 @@ struct SubscriptionDisposable : Disposable { private weak var _owner: T? init(owner: T, key: T.DisposeKey) { - _owner = owner - _key = key + self._owner = owner + self._key = key } func dispose() { - _owner?.synchronizedUnsubscribe(_key) + self._owner?.synchronizedUnsubscribe(self._key) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift index 648918e16f..f17b52d882 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Errors.swift @@ -10,7 +10,9 @@ let RxErrorDomain = "RxErrorDomain" let RxCompositeFailures = "RxCompositeFailures" /// Generic Rx error codes. -public enum RxError: Swift.Error, CustomDebugStringConvertible { +public enum RxError + : Swift.Error + , CustomDebugStringConvertible { /// Unknown error occurred. case unknown /// Performing an action on disposed object. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift index 1386ba8a49..9193e3504d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Event.swift @@ -21,7 +21,7 @@ public enum Event { case completed } -extension Event: CustomDebugStringConvertible { +extension Event : CustomDebugStringConvertible { /// Description of event. public var debugDescription: String { switch self { @@ -82,7 +82,8 @@ extension Event { case .completed: return .completed } - } catch let e { + } + catch let e { return .error(e) } } @@ -97,7 +98,7 @@ public protocol EventConvertible { var event: Event { get } } -extension Event: EventConvertible { +extension Event : EventConvertible { /// Event representation of this instance public var event: Event { return self diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift index 0b228b8a3f..fc9b22cd7f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/Bag+Rx.swift @@ -6,6 +6,7 @@ // Copyright © 2016 Krunoslav Zaher. All rights reserved. // + // MARK: forEach @inline(__always) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/String+Rx.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/String+Rx.swift index 42ef636ca6..70d4786cbb 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/String+Rx.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Extensions/String+Rx.swift @@ -9,8 +9,8 @@ extension String { /// This is needed because on Linux Swift doesn't have `rangeOfString(..., options: .BackwardsSearch)` func lastIndexOf(_ character: Character) -> Index? { - var index = endIndex - while index > startIndex { + var index = self.endIndex + while index > self.startIndex { index = self.index(before: index) if self[index] == character { return index diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift index 432f50d23b..c5b0a9d6d1 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/GroupedObservable.swift @@ -26,12 +26,12 @@ public struct GroupedObservable : ObservableType { } /// Subscribes `observer` to receive events for this sequence. - public func subscribe(_ observer: O) -> Disposable where O.E == E { + public func subscribe(_ observer: O) -> Disposable where O.E == E { return self.source.subscribe(observer) } /// Converts `self` to `Observable` sequence. public func asObservable() -> Observable { - return source + return self.source } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift index de9f9ee925..954fbf04b2 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ImmediateSchedulerType.swift @@ -28,9 +28,9 @@ extension ImmediateSchedulerType { */ public func scheduleRecursive(_ state: State, action: @escaping (_ state: State, _ recurse: (State) -> Void) -> Void) -> Disposable { let recursiveScheduler = RecursiveImmediateScheduler(action: action, scheduler: self) - + recursiveScheduler.schedule(state) - + return Disposables.create(with: recursiveScheduler.dispose) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift index 6ba34b1fbe..08caab4376 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observable.swift @@ -12,21 +12,21 @@ public class Observable : ObservableType { /// Type of elements in sequence. public typealias E = Element - + init() { #if TRACE_RESOURCES _ = Resources.incrementTotal() #endif } - + public func subscribe(_ observer: O) -> Disposable where O.E == E { rxAbstractMethod() } - + public func asObservable() -> Observable { return self } - + deinit { #if TRACE_RESOURCES _ = Resources.decrementTotal() @@ -41,3 +41,4 @@ public class Observable : ObservableType { return _map(source: self, transform: transform) } } + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift index 0d07788cbd..362fc58a5a 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType+Extensions.swift @@ -24,7 +24,8 @@ extension ObservableType { } return self.asObservable().subscribe(observer) } - + + /** Subscribes an element handler, an error handler, a completion handler and disposed handler to an observable sequence. @@ -38,33 +39,35 @@ extension ObservableType { public func subscribe(onNext: ((E) -> Void)? = nil, onError: ((Swift.Error) -> Void)? = nil, onCompleted: (() -> Void)? = nil, onDisposed: (() -> Void)? = nil) -> Disposable { let disposable: Disposable - + if let disposed = onDisposed { disposable = Disposables.create(with: disposed) - } else { + } + else { disposable = Disposables.create() } - + #if DEBUG let synchronizationTracker = SynchronizationTracker() #endif - + let callStack = Hooks.recordCallStackOnError ? Hooks.customCaptureSubscriptionCallstack() : [] - + let observer = AnonymousObserver { event in - + #if DEBUG synchronizationTracker.register(synchronizationErrorMessage: .default) defer { synchronizationTracker.unregister() } #endif - + switch event { case .next(let value): onNext?(value) case .error(let error): if let onError = onError { onError(error) - } else { + } + else { Hooks.defaultErrorHandler(callStack, error) } disposable.dispose() @@ -112,7 +115,7 @@ extension Hooks { _defaultErrorHandler = newValue } } - + /// Subscription callstack block to fetch custom callstack information. public static var customCaptureSubscriptionCallstack: CustomCaptureSubscriptionCallstack { get { @@ -125,3 +128,4 @@ extension Hooks { } } } + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift index 5f2a0219ab..e41a36a1ae 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObservableType.swift @@ -7,7 +7,7 @@ // /// Represents a push style sequence. -public protocol ObservableType: ObservableConvertibleType { +public protocol ObservableType : ObservableConvertibleType { /** Subscribes `observer` to receive events for this sequence. @@ -35,7 +35,7 @@ public protocol ObservableType: ObservableConvertibleType { } extension ObservableType { - + /// Default implementation of converting `ObservableType` to `Observable`. public func asObservable() -> Observable { // temporary workaround diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift index 2d107dc49b..a69147c849 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AddRef.swift @@ -8,37 +8,36 @@ final class AddRefSink : Sink, ObserverType { typealias Element = O.E - + override init(observer: O, cancel: Cancelable) { super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next: - forwardOn(event) + self.forwardOn(event) case .completed, .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } } final class AddRef : Producer { - typealias EventHandler = (Event) throws -> Void - + private let _source: Observable private let _refCount: RefCountDisposable - + init(source: Observable, refCount: RefCountDisposable) { - _source = source - _refCount = refCount + self._source = source + self._refCount = refCount } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - let releaseDisposable = _refCount.retain() + let releaseDisposable = self._refCount.retain() let sink = AddRefSink(observer: observer, cancel: cancel) - let subscription = Disposables.create(releaseDisposable, _source.subscribe(sink)) + let subscription = Disposables.create(releaseDisposable, self._source.subscribe(sink)) return (sink: sink, subscription: subscription) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift index 93b49fcfad..b4b9b7ee90 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Amb.swift @@ -35,43 +35,43 @@ extension ObservableType { public func amb (_ right: O2) -> Observable where O2.E == E { - return Amb(left: asObservable(), right: right.asObservable()) + return Amb(left: self.asObservable(), right: right.asObservable()) } } -private enum AmbState { +fileprivate enum AmbState { case neither case left case right } -final private class AmbObserver : ObserverType { +final private class AmbObserver: ObserverType { typealias Element = O.E typealias Parent = AmbSink typealias This = AmbObserver typealias Sink = (This, Event) -> Void - + fileprivate let _parent: Parent fileprivate var _sink: Sink fileprivate var _cancel: Disposable - + init(parent: Parent, cancel: Disposable, sink: @escaping Sink) { #if TRACE_RESOURCES _ = Resources.incrementTotal() #endif - - _parent = parent - _sink = sink - _cancel = cancel + + self._parent = parent + self._sink = sink + self._cancel = cancel } - + func on(_ event: Event) { - _sink(self, event) + self._sink(self, event) if event.isStopEvent { - _cancel.dispose() + self._cancel.dispose() } } - + deinit { #if TRACE_RESOURCES _ = Resources.decrementTotal() @@ -79,27 +79,27 @@ final private class AmbObserver : ObserverType { } } -final private class AmbSink : Sink { +final private class AmbSink: Sink { typealias ElementType = O.E typealias Parent = Amb typealias AmbObserverType = AmbObserver private let _parent: Parent - + private let _lock = RecursiveLock() // state private var _choice = AmbState.neither - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { let subscription1 = SingleAssignmentDisposable() let subscription2 = SingleAssignmentDisposable() let disposeAll = Disposables.create(subscription1, subscription2) - + let forwardEvent = { (o: AmbObserverType, event: Event) -> Void in self.forwardOn(event) if event.isStopEvent { @@ -115,7 +115,7 @@ final private class AmbSink : Sink { o._cancel = disposeAll otherSubscription.dispose() } - + if self._choice == me { self.forwardOn(event) if event.isStopEvent { @@ -124,18 +124,18 @@ final private class AmbSink : Sink { } } } - + let sink1 = AmbObserver(parent: self, cancel: subscription1) { o, e in decide(o, e, .left, subscription2) } - + let sink2 = AmbObserver(parent: self, cancel: subscription1) { o, e in decide(o, e, .right, subscription1) } - - subscription1.setDisposable(_parent._left.subscribe(sink1)) - subscription2.setDisposable(_parent._right.subscribe(sink2)) - + + subscription1.setDisposable(self._parent._left.subscribe(sink1)) + subscription2.setDisposable(self._parent._right.subscribe(sink2)) + return disposeAll } } @@ -143,13 +143,13 @@ final private class AmbSink : Sink { final private class Amb: Producer { fileprivate let _left: Observable fileprivate let _right: Observable - + init(left: Observable, right: Observable) { - _left = left - _right = right + self._left = left + self._right = right } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = AmbSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift index d2c169c426..d9010dd433 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsMaybe.swift @@ -15,21 +15,21 @@ fileprivate final class AsMaybeSink : Sink, ObserverType { func on(_ event: Event) { switch event { case .next: - if _element != nil { - forwardOn(.error(RxError.moreThanOneElement)) - dispose() + if self._element != nil { + self.forwardOn(.error(RxError.moreThanOneElement)) + self.dispose() } - _element = event + self._element = event case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - if let element = _element { - forwardOn(element) + if let element = self._element { + self.forwardOn(element) } - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } @@ -38,12 +38,12 @@ final class AsMaybe: Producer { fileprivate let _source: Observable init(source: Observable) { - _source = source + self._source = source } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = AsMaybeSink(observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift index 61e3e6eb9d..8682f1fb0a 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/AsSingle.swift @@ -15,23 +15,24 @@ fileprivate final class AsSingleSink : Sink, ObserverType { func on(_ event: Event) { switch event { case .next: - if _element != nil { - forwardOn(.error(RxError.moreThanOneElement)) - dispose() + if self._element != nil { + self.forwardOn(.error(RxError.moreThanOneElement)) + self.dispose() } - _element = event + self._element = event case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - if let element = _element { - forwardOn(element) - forwardOn(.completed) - } else { - forwardOn(.error(RxError.noElements)) + if let element = self._element { + self.forwardOn(element) + self.forwardOn(.completed) } - dispose() + else { + self.forwardOn(.error(RxError.noElements)) + } + self.dispose() } } } @@ -40,12 +41,12 @@ final class AsSingle: Producer { fileprivate let _source: Observable init(source: Observable) { - _source = source + self._source = source } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = AsSingleSink(observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift index f270c3807d..db4cf21075 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Buffer.swift @@ -26,21 +26,21 @@ extension ObservableType { } } -final private class BufferTimeCount : Producer<[Element]> { - +final private class BufferTimeCount: Producer<[Element]> { + fileprivate let _timeSpan: RxTimeInterval fileprivate let _count: Int fileprivate let _scheduler: SchedulerType fileprivate let _source: Observable - + init(source: Observable, timeSpan: RxTimeInterval, count: Int, scheduler: SchedulerType) { - _source = source - _timeSpan = timeSpan - _count = count - _scheduler = scheduler + self._source = source + self._timeSpan = timeSpan + self._count = count + self._scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == [Element] { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == [Element] { let sink = BufferTimeCountSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) @@ -48,86 +48,89 @@ final private class BufferTimeCount : Producer<[Element]> { } final private class BufferTimeCountSink - : Sink, LockOwnerType, ObserverType, SynchronizedOnType where O.E == [Element] { + : Sink + , LockOwnerType + , ObserverType + , SynchronizedOnType where O.E == [Element] { typealias Parent = BufferTimeCount typealias E = Element - + private let _parent: Parent - + let _lock = RecursiveLock() - + // state private let _timerD = SerialDisposable() private var _buffer = [Element]() private var _windowID = 0 - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - createTimer(_windowID) + self.createTimer(self._windowID) return Disposables.create(_timerD, _parent._source.subscribe(self)) } - + func startNewWindowAndSendCurrentOne() { - _windowID = _windowID &+ 1 - let windowID = _windowID - - let buffer = _buffer - _buffer = [] - forwardOn(.next(buffer)) - - createTimer(windowID) + self._windowID = self._windowID &+ 1 + let windowID = self._windowID + + let buffer = self._buffer + self._buffer = [] + self.forwardOn(.next(buffer)) + + self.createTimer(windowID) } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next(let element): - _buffer.append(element) - - if _buffer.count == _parent._count { - startNewWindowAndSendCurrentOne() + self._buffer.append(element) + + if self._buffer.count == self._parent._count { + self.startNewWindowAndSendCurrentOne() } - + case .error(let error): - _buffer = [] - forwardOn(.error(error)) - dispose() + self._buffer = [] + self.forwardOn(.error(error)) + self.dispose() case .completed: - forwardOn(.next(_buffer)) - forwardOn(.completed) - dispose() + self.forwardOn(.next(self._buffer)) + self.forwardOn(.completed) + self.dispose() } } - + func createTimer(_ windowID: Int) { - if _timerD.isDisposed { + if self._timerD.isDisposed { return } - - if _windowID != windowID { + + if self._windowID != windowID { return } let nextTimer = SingleAssignmentDisposable() + + self._timerD.disposable = nextTimer - _timerD.disposable = nextTimer - - let disposable = _parent._scheduler.scheduleRelative(windowID, dueTime: _parent._timeSpan) { previousWindowID in + let disposable = self._parent._scheduler.scheduleRelative(windowID, dueTime: self._parent._timeSpan) { previousWindowID in self._lock.performLocked { if previousWindowID != self._windowID { return } - + self.startNewWindowAndSendCurrentOne() } - + return Disposables.create() } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift index 447d9e30ce..1306076757 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Catch.swift @@ -18,7 +18,7 @@ extension ObservableType { */ public func catchError(_ handler: @escaping (Swift.Error) throws -> Observable) -> Observable { - return Catch(source: asObservable(), handler: handler) + return Catch(source: self.asObservable(), handler: handler) } /** @@ -31,9 +31,9 @@ extension ObservableType { */ public func catchErrorJustReturn(_ element: E) -> Observable { - return Catch(source: asObservable(), handler: { _ in Observable.just(element) }) + return Catch(source: self.asObservable(), handler: { _ in Observable.just(element) }) } - + } extension ObservableType { @@ -83,81 +83,82 @@ extension ObservableType { // catch with callback -final private class CatchSinkProxy : ObserverType { +final private class CatchSinkProxy: ObserverType { typealias E = O.E typealias Parent = CatchSink - + private let _parent: Parent - + init(parent: Parent) { - _parent = parent + self._parent = parent } - + func on(_ event: Event) { - _parent.forwardOn(event) - + self._parent.forwardOn(event) + switch event { case .next: break case .error, .completed: - _parent.dispose() + self._parent.dispose() } } } -final private class CatchSink : Sink, ObserverType { +final private class CatchSink: Sink, ObserverType { typealias E = O.E typealias Parent = Catch - + private let _parent: Parent private let _subscription = SerialDisposable() - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { let d1 = SingleAssignmentDisposable() - _subscription.disposable = d1 - d1.setDisposable(_parent._source.subscribe(self)) + self._subscription.disposable = d1 + d1.setDisposable(self._parent._source.subscribe(self)) - return _subscription + return self._subscription } - + func on(_ event: Event) { switch event { case .next: - forwardOn(event) + self.forwardOn(event) case .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .error(let error): do { - let catchSequence = try _parent._handler(error) + let catchSequence = try self._parent._handler(error) let observer = CatchSinkProxy(parent: self) - - _subscription.disposable = catchSequence.subscribe(observer) - } catch let e { - forwardOn(.error(e)) - dispose() + + self._subscription.disposable = catchSequence.subscribe(observer) + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() } } } } -final private class Catch : Producer { +final private class Catch: Producer { typealias Handler = (Swift.Error) throws -> Observable - + fileprivate let _source: Observable fileprivate let _handler: Handler - + init(source: Observable, handler: @escaping Handler) { - _source = source - _handler = handler + self._source = source + self._handler = handler } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = CatchSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() @@ -168,62 +169,65 @@ final private class Catch : Producer { // catch enumerable final private class CatchSequenceSink - : TailRecursiveSink, ObserverType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E { + : TailRecursiveSink + , ObserverType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E { typealias Element = O.E typealias Parent = CatchSequence - + private var _lastError: Swift.Error? - + override init(observer: O, cancel: Cancelable) { super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next: - forwardOn(event) + self.forwardOn(event) case .error(let error): - _lastError = error - schedule(.moveNext) + self._lastError = error + self.schedule(.moveNext) case .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } override func subscribeToNext(_ source: Observable) -> Disposable { return source.subscribe(self) } - + override func done() { - if let lastError = _lastError { - forwardOn(.error(lastError)) - } else { - forwardOn(.completed) + if let lastError = self._lastError { + self.forwardOn(.error(lastError)) } - + else { + self.forwardOn(.completed) + } + self.dispose() } - + override func extract(_ observable: Observable) -> SequenceGenerator? { if let onError = observable as? CatchSequence { return (onError.sources.makeIterator(), nil) - } else { + } + else { return nil } } } -final private class CatchSequence : Producer where S.Iterator.Element: ObservableConvertibleType { +final private class CatchSequence: Producer where S.Iterator.Element: ObservableConvertibleType { typealias Element = S.Iterator.Element.E - + let sources: S - + init(sources: S) { self.sources = sources } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = CatchSequenceSink(observer: observer, cancel: cancel) let subscription = sink.run((self.sources.makeIterator(), nil)) return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift index f063c6439b..b62fa2929a 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+Collection.swift @@ -38,9 +38,9 @@ final private class CombineLatestCollectionTypeSink typealias SourceElement = C.Iterator.Element.E - + let _parent: Parent - + let _lock = RecursiveLock() // state @@ -49,105 +49,107 @@ final private class CombineLatestCollectionTypeSink() - _subscriptions.reserveCapacity(parent._count) - + self._parent = parent + self._values = [SourceElement?](repeating: nil, count: parent._count) + self._isDone = [Bool](repeating: false, count: parent._count) + self._subscriptions = [SingleAssignmentDisposable]() + self._subscriptions.reserveCapacity(parent._count) + for _ in 0 ..< parent._count { - _subscriptions.append(SingleAssignmentDisposable()) + self._subscriptions.append(SingleAssignmentDisposable()) } - + super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event, atIndex: Int) { - _lock.lock(); defer { _lock.unlock() } // { + self._lock.lock(); defer { self._lock.unlock() } // { switch event { case .next(let element): - if _values[atIndex] == nil { - _numberOfValues += 1 + if self._values[atIndex] == nil { + self._numberOfValues += 1 } - - _values[atIndex] = element - - if _numberOfValues < _parent._count { - let numberOfOthersThatAreDone = self._numberOfDone - (_isDone[atIndex] ? 1 : 0) + + self._values[atIndex] = element + + if self._numberOfValues < self._parent._count { + let numberOfOthersThatAreDone = self._numberOfDone - (self._isDone[atIndex] ? 1 : 0) if numberOfOthersThatAreDone == self._parent._count - 1 { - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } return } - + do { - let result = try _parent._resultSelector(_values.map { $0! }) - forwardOn(.next(result)) - } catch let error { - forwardOn(.error(error)) - dispose() + let result = try self._parent._resultSelector(self._values.map { $0! }) + self.forwardOn(.next(result)) } - + catch let error { + self.forwardOn(.error(error)) + self.dispose() + } + case .error(let error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() case .completed: - if _isDone[atIndex] { + if self._isDone[atIndex] { return } - - _isDone[atIndex] = true - _numberOfDone += 1 - - if _numberOfDone == self._parent._count { - forwardOn(.completed) - dispose() - } else { - _subscriptions[atIndex].dispose() + + self._isDone[atIndex] = true + self._numberOfDone += 1 + + if self._numberOfDone == self._parent._count { + self.forwardOn(.completed) + self.dispose() + } + else { + self._subscriptions[atIndex].dispose() } } // } } - + func run() -> Disposable { var j = 0 - for i in _parent._sources { + for i in self._parent._sources { let index = j let source = i.asObservable() let disposable = source.subscribe(AnyObserver { event in self.on(event, atIndex: index) }) - _subscriptions[j].setDisposable(disposable) - + self._subscriptions[j].setDisposable(disposable) + j += 1 } - if _parent._sources.isEmpty { + if self._parent._sources.isEmpty { self.forwardOn(.completed) } - + return Disposables.create(_subscriptions) } } -final private class CombineLatestCollectionType : Producer where C.Iterator.Element: ObservableConvertibleType { +final private class CombineLatestCollectionType: Producer where C.Iterator.Element: ObservableConvertibleType { typealias ResultSelector = ([C.Iterator.Element.E]) throws -> R - + let _sources: C let _resultSelector: ResultSelector let _count: Int init(sources: C, resultSelector: @escaping ResultSelector) { - _sources = sources - _resultSelector = resultSelector - _count = Int(Int64(self._sources.count)) + self._sources = sources + self._resultSelector = resultSelector + self._count = Int(Int64(self._sources.count)) } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { let sink = CombineLatestCollectionTypeSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift index 465a0b578c..7474bdc449 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest+arity.swift @@ -7,6 +7,8 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // + + // 2 extension ObservableType { @@ -56,7 +58,7 @@ final class CombineLatestSink2_ : CombineLatestSink var _latestElement2: E2! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 2, observer: observer, cancel: cancel) } @@ -64,11 +66,11 @@ final class CombineLatestSink2_ : CombineLatestSink let subscription1 = SingleAssignmentDisposable() let subscription2 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) return Disposables.create([ subscription1, @@ -77,7 +79,7 @@ final class CombineLatestSink2_ : CombineLatestSink } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2) } } @@ -90,10 +92,10 @@ final class CombineLatest2 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 + self._source1 = source1 + self._source2 = source2 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -103,6 +105,8 @@ final class CombineLatest2 : Producer { } } + + // 3 extension ObservableType { @@ -153,7 +157,7 @@ final class CombineLatestSink3_ : CombineLatestSink var _latestElement3: E3! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 3, observer: observer, cancel: cancel) } @@ -162,13 +166,13 @@ final class CombineLatestSink3_ : CombineLatestSink let subscription2 = SingleAssignmentDisposable() let subscription3 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - let observer3 = CombineLatestObserver(lock: _lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer3 = CombineLatestObserver(lock: self._lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) - subscription3.setDisposable(_parent._source3.subscribe(observer3)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) + subscription3.setDisposable(self._parent._source3.subscribe(observer3)) return Disposables.create([ subscription1, @@ -178,7 +182,7 @@ final class CombineLatestSink3_ : CombineLatestSink } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2, _latestElement3) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2, self._latestElement3) } } @@ -192,11 +196,11 @@ final class CombineLatest3 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, source3: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 - _source3 = source3 + self._source1 = source1 + self._source2 = source2 + self._source3 = source3 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -206,6 +210,8 @@ final class CombineLatest3 : Producer { } } + + // 4 extension ObservableType { @@ -257,7 +263,7 @@ final class CombineLatestSink4_ : CombineLatest var _latestElement4: E4! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 4, observer: observer, cancel: cancel) } @@ -267,15 +273,15 @@ final class CombineLatestSink4_ : CombineLatest let subscription3 = SingleAssignmentDisposable() let subscription4 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - let observer3 = CombineLatestObserver(lock: _lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) - let observer4 = CombineLatestObserver(lock: _lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer3 = CombineLatestObserver(lock: self._lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) + let observer4 = CombineLatestObserver(lock: self._lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) - subscription3.setDisposable(_parent._source3.subscribe(observer3)) - subscription4.setDisposable(_parent._source4.subscribe(observer4)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) + subscription3.setDisposable(self._parent._source3.subscribe(observer3)) + subscription4.setDisposable(self._parent._source4.subscribe(observer4)) return Disposables.create([ subscription1, @@ -286,7 +292,7 @@ final class CombineLatestSink4_ : CombineLatest } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2, _latestElement3, _latestElement4) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2, self._latestElement3, self._latestElement4) } } @@ -301,12 +307,12 @@ final class CombineLatest4 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, source3: Observable, source4: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 - _source3 = source3 - _source4 = source4 + self._source1 = source1 + self._source2 = source2 + self._source3 = source3 + self._source4 = source4 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -316,6 +322,8 @@ final class CombineLatest4 : Producer { } } + + // 5 extension ObservableType { @@ -368,7 +376,7 @@ final class CombineLatestSink5_ : CombineLa var _latestElement5: E5! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 5, observer: observer, cancel: cancel) } @@ -379,17 +387,17 @@ final class CombineLatestSink5_ : CombineLa let subscription4 = SingleAssignmentDisposable() let subscription5 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - let observer3 = CombineLatestObserver(lock: _lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) - let observer4 = CombineLatestObserver(lock: _lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) - let observer5 = CombineLatestObserver(lock: _lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer3 = CombineLatestObserver(lock: self._lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) + let observer4 = CombineLatestObserver(lock: self._lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) + let observer5 = CombineLatestObserver(lock: self._lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) - subscription3.setDisposable(_parent._source3.subscribe(observer3)) - subscription4.setDisposable(_parent._source4.subscribe(observer4)) - subscription5.setDisposable(_parent._source5.subscribe(observer5)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) + subscription3.setDisposable(self._parent._source3.subscribe(observer3)) + subscription4.setDisposable(self._parent._source4.subscribe(observer4)) + subscription5.setDisposable(self._parent._source5.subscribe(observer5)) return Disposables.create([ subscription1, @@ -401,7 +409,7 @@ final class CombineLatestSink5_ : CombineLa } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2, _latestElement3, _latestElement4, _latestElement5) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2, self._latestElement3, self._latestElement4, self._latestElement5) } } @@ -417,13 +425,13 @@ final class CombineLatest5 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, source3: Observable, source4: Observable, source5: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 - _source3 = source3 - _source4 = source4 - _source5 = source5 + self._source1 = source1 + self._source2 = source2 + self._source3 = source3 + self._source4 = source4 + self._source5 = source5 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -433,6 +441,8 @@ final class CombineLatest5 : Producer { } } + + // 6 extension ObservableType { @@ -486,7 +496,7 @@ final class CombineLatestSink6_ : Combi var _latestElement6: E6! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 6, observer: observer, cancel: cancel) } @@ -498,19 +508,19 @@ final class CombineLatestSink6_ : Combi let subscription5 = SingleAssignmentDisposable() let subscription6 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - let observer3 = CombineLatestObserver(lock: _lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) - let observer4 = CombineLatestObserver(lock: _lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) - let observer5 = CombineLatestObserver(lock: _lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) - let observer6 = CombineLatestObserver(lock: _lock, parent: self, index: 5, setLatestValue: { (e: E6) -> Void in self._latestElement6 = e }, this: subscription6) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer3 = CombineLatestObserver(lock: self._lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) + let observer4 = CombineLatestObserver(lock: self._lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) + let observer5 = CombineLatestObserver(lock: self._lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) + let observer6 = CombineLatestObserver(lock: self._lock, parent: self, index: 5, setLatestValue: { (e: E6) -> Void in self._latestElement6 = e }, this: subscription6) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) - subscription3.setDisposable(_parent._source3.subscribe(observer3)) - subscription4.setDisposable(_parent._source4.subscribe(observer4)) - subscription5.setDisposable(_parent._source5.subscribe(observer5)) - subscription6.setDisposable(_parent._source6.subscribe(observer6)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) + subscription3.setDisposable(self._parent._source3.subscribe(observer3)) + subscription4.setDisposable(self._parent._source4.subscribe(observer4)) + subscription5.setDisposable(self._parent._source5.subscribe(observer5)) + subscription6.setDisposable(self._parent._source6.subscribe(observer6)) return Disposables.create([ subscription1, @@ -523,7 +533,7 @@ final class CombineLatestSink6_ : Combi } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2, _latestElement3, _latestElement4, _latestElement5, _latestElement6) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2, self._latestElement3, self._latestElement4, self._latestElement5, self._latestElement6) } } @@ -540,14 +550,14 @@ final class CombineLatest6 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, source3: Observable, source4: Observable, source5: Observable, source6: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 - _source3 = source3 - _source4 = source4 - _source5 = source5 - _source6 = source6 + self._source1 = source1 + self._source2 = source2 + self._source3 = source3 + self._source4 = source4 + self._source5 = source5 + self._source6 = source6 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -557,6 +567,8 @@ final class CombineLatest6 : Producer { } } + + // 7 extension ObservableType { @@ -611,7 +623,7 @@ final class CombineLatestSink7_ : C var _latestElement7: E7! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 7, observer: observer, cancel: cancel) } @@ -624,21 +636,21 @@ final class CombineLatestSink7_ : C let subscription6 = SingleAssignmentDisposable() let subscription7 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - let observer3 = CombineLatestObserver(lock: _lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) - let observer4 = CombineLatestObserver(lock: _lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) - let observer5 = CombineLatestObserver(lock: _lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) - let observer6 = CombineLatestObserver(lock: _lock, parent: self, index: 5, setLatestValue: { (e: E6) -> Void in self._latestElement6 = e }, this: subscription6) - let observer7 = CombineLatestObserver(lock: _lock, parent: self, index: 6, setLatestValue: { (e: E7) -> Void in self._latestElement7 = e }, this: subscription7) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer3 = CombineLatestObserver(lock: self._lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) + let observer4 = CombineLatestObserver(lock: self._lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) + let observer5 = CombineLatestObserver(lock: self._lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) + let observer6 = CombineLatestObserver(lock: self._lock, parent: self, index: 5, setLatestValue: { (e: E6) -> Void in self._latestElement6 = e }, this: subscription6) + let observer7 = CombineLatestObserver(lock: self._lock, parent: self, index: 6, setLatestValue: { (e: E7) -> Void in self._latestElement7 = e }, this: subscription7) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) - subscription3.setDisposable(_parent._source3.subscribe(observer3)) - subscription4.setDisposable(_parent._source4.subscribe(observer4)) - subscription5.setDisposable(_parent._source5.subscribe(observer5)) - subscription6.setDisposable(_parent._source6.subscribe(observer6)) - subscription7.setDisposable(_parent._source7.subscribe(observer7)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) + subscription3.setDisposable(self._parent._source3.subscribe(observer3)) + subscription4.setDisposable(self._parent._source4.subscribe(observer4)) + subscription5.setDisposable(self._parent._source5.subscribe(observer5)) + subscription6.setDisposable(self._parent._source6.subscribe(observer6)) + subscription7.setDisposable(self._parent._source7.subscribe(observer7)) return Disposables.create([ subscription1, @@ -652,7 +664,7 @@ final class CombineLatestSink7_ : C } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2, _latestElement3, _latestElement4, _latestElement5, _latestElement6, _latestElement7) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2, self._latestElement3, self._latestElement4, self._latestElement5, self._latestElement6, self._latestElement7) } } @@ -670,15 +682,15 @@ final class CombineLatest7 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, source3: Observable, source4: Observable, source5: Observable, source6: Observable, source7: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 - _source3 = source3 - _source4 = source4 - _source5 = source5 - _source6 = source6 - _source7 = source7 + self._source1 = source1 + self._source2 = source2 + self._source3 = source3 + self._source4 = source4 + self._source5 = source5 + self._source6 = source6 + self._source7 = source7 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -688,6 +700,8 @@ final class CombineLatest7 : Producer { } } + + // 8 extension ObservableType { @@ -743,7 +757,7 @@ final class CombineLatestSink8_ var _latestElement8: E8! = nil init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 8, observer: observer, cancel: cancel) } @@ -757,23 +771,23 @@ final class CombineLatestSink8_ let subscription7 = SingleAssignmentDisposable() let subscription8 = SingleAssignmentDisposable() - let observer1 = CombineLatestObserver(lock: _lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) - let observer2 = CombineLatestObserver(lock: _lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) - let observer3 = CombineLatestObserver(lock: _lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) - let observer4 = CombineLatestObserver(lock: _lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) - let observer5 = CombineLatestObserver(lock: _lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) - let observer6 = CombineLatestObserver(lock: _lock, parent: self, index: 5, setLatestValue: { (e: E6) -> Void in self._latestElement6 = e }, this: subscription6) - let observer7 = CombineLatestObserver(lock: _lock, parent: self, index: 6, setLatestValue: { (e: E7) -> Void in self._latestElement7 = e }, this: subscription7) - let observer8 = CombineLatestObserver(lock: _lock, parent: self, index: 7, setLatestValue: { (e: E8) -> Void in self._latestElement8 = e }, this: subscription8) + let observer1 = CombineLatestObserver(lock: self._lock, parent: self, index: 0, setLatestValue: { (e: E1) -> Void in self._latestElement1 = e }, this: subscription1) + let observer2 = CombineLatestObserver(lock: self._lock, parent: self, index: 1, setLatestValue: { (e: E2) -> Void in self._latestElement2 = e }, this: subscription2) + let observer3 = CombineLatestObserver(lock: self._lock, parent: self, index: 2, setLatestValue: { (e: E3) -> Void in self._latestElement3 = e }, this: subscription3) + let observer4 = CombineLatestObserver(lock: self._lock, parent: self, index: 3, setLatestValue: { (e: E4) -> Void in self._latestElement4 = e }, this: subscription4) + let observer5 = CombineLatestObserver(lock: self._lock, parent: self, index: 4, setLatestValue: { (e: E5) -> Void in self._latestElement5 = e }, this: subscription5) + let observer6 = CombineLatestObserver(lock: self._lock, parent: self, index: 5, setLatestValue: { (e: E6) -> Void in self._latestElement6 = e }, this: subscription6) + let observer7 = CombineLatestObserver(lock: self._lock, parent: self, index: 6, setLatestValue: { (e: E7) -> Void in self._latestElement7 = e }, this: subscription7) + let observer8 = CombineLatestObserver(lock: self._lock, parent: self, index: 7, setLatestValue: { (e: E8) -> Void in self._latestElement8 = e }, this: subscription8) - subscription1.setDisposable(_parent._source1.subscribe(observer1)) - subscription2.setDisposable(_parent._source2.subscribe(observer2)) - subscription3.setDisposable(_parent._source3.subscribe(observer3)) - subscription4.setDisposable(_parent._source4.subscribe(observer4)) - subscription5.setDisposable(_parent._source5.subscribe(observer5)) - subscription6.setDisposable(_parent._source6.subscribe(observer6)) - subscription7.setDisposable(_parent._source7.subscribe(observer7)) - subscription8.setDisposable(_parent._source8.subscribe(observer8)) + subscription1.setDisposable(self._parent._source1.subscribe(observer1)) + subscription2.setDisposable(self._parent._source2.subscribe(observer2)) + subscription3.setDisposable(self._parent._source3.subscribe(observer3)) + subscription4.setDisposable(self._parent._source4.subscribe(observer4)) + subscription5.setDisposable(self._parent._source5.subscribe(observer5)) + subscription6.setDisposable(self._parent._source6.subscribe(observer6)) + subscription7.setDisposable(self._parent._source7.subscribe(observer7)) + subscription8.setDisposable(self._parent._source8.subscribe(observer8)) return Disposables.create([ subscription1, @@ -788,7 +802,7 @@ final class CombineLatestSink8_ } override func getResult() throws -> R { - return try _parent._resultSelector(_latestElement1, _latestElement2, _latestElement3, _latestElement4, _latestElement5, _latestElement6, _latestElement7, _latestElement8) + return try self._parent._resultSelector(self._latestElement1, self._latestElement2, self._latestElement3, self._latestElement4, self._latestElement5, self._latestElement6, self._latestElement7, self._latestElement8) } } @@ -807,16 +821,16 @@ final class CombineLatest8 : Producer { let _resultSelector: ResultSelector init(source1: Observable, source2: Observable, source3: Observable, source4: Observable, source5: Observable, source6: Observable, source7: Observable, source8: Observable, resultSelector: @escaping ResultSelector) { - _source1 = source1 - _source2 = source2 - _source3 = source3 - _source4 = source4 - _source5 = source5 - _source6 = source6 - _source7 = source7 - _source8 = source8 + self._source1 = source1 + self._source2 = source2 + self._source3 = source3 + self._source4 = source4 + self._source5 = source5 + self._source6 = source6 + self._source7 = source7 + self._source8 = source8 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -825,3 +839,5 @@ final class CombineLatest8 : Producer { return (sink: sink, subscription: subscription) } } + + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift index 0d846b3d94..dbecf98ab3 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/CombineLatest.swift @@ -6,16 +6,17 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol CombineLatestProtocol: class { +protocol CombineLatestProtocol : class { func next(_ index: Int) func fail(_ error: Swift.Error) func done(_ index: Int) } class CombineLatestSink - : Sink, CombineLatestProtocol { + : Sink + , CombineLatestProtocol { typealias Element = O.E - + let _lock = RecursiveLock() private let _arity: Int @@ -23,105 +24,109 @@ class CombineLatestSink private var _numberOfDone = 0 private var _hasValue: [Bool] private var _isDone: [Bool] - + init(arity: Int, observer: O, cancel: Cancelable) { - _arity = arity - _hasValue = [Bool](repeating: false, count: arity) - _isDone = [Bool](repeating: false, count: arity) - + self._arity = arity + self._hasValue = [Bool](repeating: false, count: arity) + self._isDone = [Bool](repeating: false, count: arity) + super.init(observer: observer, cancel: cancel) } - + func getResult() throws -> Element { rxAbstractMethod() } - + func next(_ index: Int) { - if !_hasValue[index] { - _hasValue[index] = true - _numberOfValues += 1 + if !self._hasValue[index] { + self._hasValue[index] = true + self._numberOfValues += 1 } - if _numberOfValues == _arity { + if self._numberOfValues == self._arity { do { - let result = try getResult() - forwardOn(.next(result)) - } catch let e { - forwardOn(.error(e)) - dispose() + let result = try self.getResult() + self.forwardOn(.next(result)) } - } else { + catch let e { + self.forwardOn(.error(e)) + self.dispose() + } + } + else { var allOthersDone = true - for i in 0 ..< _arity { - if i != index && !_isDone[i] { + for i in 0 ..< self._arity { + if i != index && !self._isDone[i] { allOthersDone = false break } } - + if allOthersDone { - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } - + func fail(_ error: Swift.Error) { - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } - + func done(_ index: Int) { - if _isDone[index] { + if self._isDone[index] { return } - _isDone[index] = true - _numberOfDone += 1 + self._isDone[index] = true + self._numberOfDone += 1 - if _numberOfDone == _arity { - forwardOn(.completed) - dispose() + if self._numberOfDone == self._arity { + self.forwardOn(.completed) + self.dispose() } } } final class CombineLatestObserver - : ObserverType, LockOwnerType, SynchronizedOnType { + : ObserverType + , LockOwnerType + , SynchronizedOnType { typealias Element = ElementType typealias ValueSetter = (Element) -> Void - + private let _parent: CombineLatestProtocol - + let _lock: RecursiveLock private let _index: Int private let _this: Disposable private let _setLatestValue: ValueSetter - + init(lock: RecursiveLock, parent: CombineLatestProtocol, index: Int, setLatestValue: @escaping ValueSetter, this: Disposable) { - _lock = lock - _parent = parent - _index = index - _this = this - _setLatestValue = setLatestValue + self._lock = lock + self._parent = parent + self._index = index + self._this = this + self._setLatestValue = setLatestValue } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next(let value): - _setLatestValue(value) - _parent.next(_index) + self._setLatestValue(value) + self._parent.next(self._index) case .error(let error): - _this.dispose() - _parent.fail(error) + self._this.dispose() + self._parent.fail(error) case .completed: - _this.dispose() - _parent.done(_index) + self._this.dispose() + self._parent.done(self._index) } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift index 24ce36840f..27daf8d4dc 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Concat.swift @@ -77,52 +77,55 @@ extension ObservableType { } final private class ConcatSink - : TailRecursiveSink, ObserverType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E { + : TailRecursiveSink + , ObserverType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E { typealias Element = O.E - + override init(observer: O, cancel: Cancelable) { super.init(observer: observer, cancel: cancel) } - - func on(_ event: Event) { + + func on(_ event: Event){ switch event { case .next: - forwardOn(event) + self.forwardOn(event) case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - schedule(.moveNext) + self.schedule(.moveNext) } } override func subscribeToNext(_ source: Observable) -> Disposable { return source.subscribe(self) } - + override func extract(_ observable: Observable) -> SequenceGenerator? { if let source = observable as? Concat { return (source._sources.makeIterator(), source._count) - } else { + } + else { return nil } } } -final private class Concat : Producer where S.Iterator.Element: ObservableConvertibleType { +final private class Concat: Producer where S.Iterator.Element: ObservableConvertibleType { typealias Element = S.Iterator.Element.E - + fileprivate let _sources: S fileprivate let _count: IntMax? init(sources: S, count: IntMax?) { - _sources = sources - _count = count + self._sources = sources + self._count = count } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = ConcatSink(observer: observer, cancel: cancel) - let subscription = sink.run((_sources.makeIterator(), _count)) + let subscription = sink.run((self._sources.makeIterator(), self._count)) return (sink: sink, subscription: subscription) } } + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift index 5a362145b8..b57a63ab10 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Create.swift @@ -22,12 +22,12 @@ extension ObservableType { } } -final private class AnonymousObservableSink : Sink, ObserverType { +final private class AnonymousObservableSink: Sink, ObserverType { typealias E = O.E typealias Parent = AnonymousObservable // state - private var _isStopped = AtomicInt(0) + private let _isStopped = AtomicInt(0) #if DEBUG fileprivate let _synchronizationTracker = SynchronizationTracker() @@ -39,19 +39,19 @@ final private class AnonymousObservableSink : Sink, Observer func on(_ event: Event) { #if DEBUG - _synchronizationTracker.register(synchronizationErrorMessage: .default) - defer { _synchronizationTracker.unregister() } + self._synchronizationTracker.register(synchronizationErrorMessage: .default) + defer { self._synchronizationTracker.unregister() } #endif switch event { case .next: - if _isStopped.load() == 1 { + if load(self._isStopped) == 1 { return } - forwardOn(event) + self.forwardOn(event) case .error, .completed: - if _isStopped.fetchOr(1) == 0 { - forwardOn(event) - dispose() + if fetchOr(self._isStopped, 1) == 0 { + self.forwardOn(event) + self.dispose() } } } @@ -61,16 +61,16 @@ final private class AnonymousObservableSink : Sink, Observer } } -final private class AnonymousObservable : Producer { +final private class AnonymousObservable: Producer { typealias SubscribeHandler = (AnyObserver) -> Disposable let _subscribeHandler: SubscribeHandler init(_ subscribeHandler: @escaping SubscribeHandler) { - _subscribeHandler = subscribeHandler + self._subscribeHandler = subscribeHandler } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = AnonymousObservableSink(observer: observer, cancel: cancel) let subscription = sink.run(self) return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift index 22931d09d5..0b23cc94b7 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debounce.swift @@ -24,7 +24,10 @@ extension ObservableType { } final private class DebounceSink - : Sink, ObserverType, LockOwnerType, SynchronizedOnType { + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType { typealias Element = O.E typealias ParentType = Debounce @@ -39,71 +42,71 @@ final private class DebounceSink let cancellable = SerialDisposable() init(parent: ParentType, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - let subscription = _parent._source.subscribe(self) + let subscription = self._parent._source.subscribe(self) return Disposables.create(subscription, cancellable) } func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next(let element): - _id = _id &+ 1 - let currentId = _id - _value = element + self._id = self._id &+ 1 + let currentId = self._id + self._value = element - let scheduler = _parent._scheduler - let dueTime = _parent._dueTime + + let scheduler = self._parent._scheduler + let dueTime = self._parent._dueTime let d = SingleAssignmentDisposable() self.cancellable.disposable = d d.setDisposable(scheduler.scheduleRelative(currentId, dueTime: dueTime, action: self.propagate)) case .error: - _value = nil - forwardOn(event) - dispose() + self._value = nil + self.forwardOn(event) + self.dispose() case .completed: - if let value = _value { - _value = nil - forwardOn(.next(value)) + if let value = self._value { + self._value = nil + self.forwardOn(.next(value)) } - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } func propagate(_ currentId: UInt64) -> Disposable { - _lock.lock(); defer { _lock.unlock() } // { - let originalValue = _value + self._lock.lock(); defer { self._lock.unlock() } // { + let originalValue = self._value - if let value = originalValue, _id == currentId { - _value = nil - forwardOn(.next(value)) + if let value = originalValue, self._id == currentId { + self._value = nil + self.forwardOn(.next(value)) } // } return Disposables.create() } } -final private class Debounce : Producer { - +final private class Debounce: Producer { fileprivate let _source: Observable fileprivate let _dueTime: RxTimeInterval fileprivate let _scheduler: SchedulerType init(source: Observable, dueTime: RxTimeInterval, scheduler: SchedulerType) { - _source = source - _dueTime = dueTime - _scheduler = scheduler + self._source = source + self._dueTime = dueTime + self._scheduler = scheduler } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { @@ -111,5 +114,5 @@ final private class Debounce : Producer { let subscription = sink.run() return (sink: sink, subscription: subscription) } - + } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift index 8a1183a631..1a07eb6e45 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Debug.swift @@ -26,76 +26,78 @@ extension ObservableType { } } -private let dateFormat = "yyyy-MM-dd HH:mm:ss.SSS" +fileprivate let dateFormat = "yyyy-MM-dd HH:mm:ss.SSS" -private func logEvent(_ identifier: String, dateFormat: DateFormatter, content: String) { +fileprivate func logEvent(_ identifier: String, dateFormat: DateFormatter, content: String) { print("\(dateFormat.string(from: Date())): \(identifier) -> \(content)") } -final private class DebugSink : Sink, ObserverType where O.E == Source.E { +final private class DebugSink: Sink, ObserverType where O.E == Source.E { typealias Element = O.E typealias Parent = Debug - + private let _parent: Parent private let _timestampFormatter = DateFormatter() - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _timestampFormatter.dateFormat = dateFormat + self._parent = parent + self._timestampFormatter.dateFormat = dateFormat - logEvent(_parent._identifier, dateFormat: _timestampFormatter, content: "subscribed") + logEvent(self._parent._identifier, dateFormat: self._timestampFormatter, content: "subscribed") super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { let maxEventTextLength = 40 let eventText = "\(event)" - let eventNormalized = (eventText.count > maxEventTextLength) && _parent._trimOutput + let eventNormalized = (eventText.count > maxEventTextLength) && self._parent._trimOutput ? String(eventText.prefix(maxEventTextLength / 2)) + "..." + String(eventText.suffix(maxEventTextLength / 2)) : eventText - logEvent(_parent._identifier, dateFormat: _timestampFormatter, content: "Event \(eventNormalized)") + logEvent(self._parent._identifier, dateFormat: self._timestampFormatter, content: "Event \(eventNormalized)") - forwardOn(event) + self.forwardOn(event) if event.isStopEvent { - dispose() + self.dispose() } } - + override func dispose() { if !self.disposed { - logEvent(_parent._identifier, dateFormat: _timestampFormatter, content: "isDisposed") + logEvent(self._parent._identifier, dateFormat: self._timestampFormatter, content: "isDisposed") } super.dispose() } } -final private class Debug : Producer { +final private class Debug: Producer { fileprivate let _identifier: String fileprivate let _trimOutput: Bool fileprivate let _source: Source init(source: Source, identifier: String?, trimOutput: Bool, file: String, line: UInt, function: String) { - _trimOutput = trimOutput + self._trimOutput = trimOutput if let identifier = identifier { - _identifier = identifier - } else { + self._identifier = identifier + } + else { let trimmedFile: String if let lastIndex = file.lastIndexOf("/") { trimmedFile = String(file[file.index(after: lastIndex) ..< file.endIndex]) - } else { + } + else { trimmedFile = file } - _identifier = "\(trimmedFile):\(line) (\(function))" + self._identifier = "\(trimmedFile):\(line) (\(function))" } - _source = source + self._source = source } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Source.E { let sink = DebugSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift index 69d369a1d7..cf0bfed9dc 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DefaultIfEmpty.swift @@ -25,26 +25,26 @@ final private class DefaultIfEmptySink: Sink, ObserverType { typealias E = O.E private let _default: E private var _isEmpty = true - + init(default: E, observer: O, cancel: Cancelable) { - _default = `default` + self._default = `default` super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next: - _isEmpty = false - forwardOn(event) + self._isEmpty = false + self.forwardOn(event) case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - if _isEmpty { - forwardOn(.next(_default)) + if self._isEmpty { + self.forwardOn(.next(self._default)) } - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } @@ -52,15 +52,15 @@ final private class DefaultIfEmptySink: Sink, ObserverType { final private class DefaultIfEmpty: Producer { private let _source: Observable private let _default: SourceType - + init(source: Observable, `default`: SourceType) { - _source = source - _default = `default` + self._source = source + self._default = `default` } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceType { - let sink = DefaultIfEmptySink(default: _default, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let sink = DefaultIfEmptySink(default: self._default, observer: observer, cancel: cancel) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift index df0cbbdcd9..b75fbf9162 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Deferred.swift @@ -21,52 +21,53 @@ extension ObservableType { } } -final private class DeferredSink : Sink, ObserverType where S.E == O.E { +final private class DeferredSink: Sink, ObserverType where S.E == O.E { typealias E = O.E private let _observableFactory: () throws -> S init(observableFactory: @escaping () throws -> S, observer: O, cancel: Cancelable) { - _observableFactory = observableFactory + self._observableFactory = observableFactory super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { do { - let result = try _observableFactory() + let result = try self._observableFactory() return result.subscribe(self) - } catch let e { - forwardOn(.error(e)) - dispose() + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() return Disposables.create() } } - + func on(_ event: Event) { - forwardOn(event) - + self.forwardOn(event) + switch event { case .next: break case .error: - dispose() + self.dispose() case .completed: - dispose() + self.dispose() } } } -final private class Deferred : Producer { +final private class Deferred: Producer { typealias Factory = () throws -> S - - private let _observableFactory: Factory - + + private let _observableFactory : Factory + init(observableFactory: @escaping Factory) { - _observableFactory = observableFactory + self._observableFactory = observableFactory } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E { - let sink = DeferredSink(observableFactory: _observableFactory, observer: observer, cancel: cancel) + let sink = DeferredSink(observableFactory: self._observableFactory, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift index 0b35a626e5..61969d5cfe 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Delay.swift @@ -26,16 +26,17 @@ extension ObservableType { } final private class DelaySink - : Sink, ObserverType { + : Sink + , ObserverType { typealias E = O.E typealias Source = Observable typealias DisposeKey = Bag.KeyType - + private let _lock = RecursiveLock() private let _dueTime: RxTimeInterval private let _scheduler: SchedulerType - + private let _sourceSubscription = SingleAssignmentDisposable() private let _cancelable = SerialDisposable() @@ -48,10 +49,10 @@ final private class DelaySink // state private var _queue = Queue<(eventTime: RxTime, event: Event)>(capacity: 0) private var _disposed = false - + init(observer: O, dueTime: RxTimeInterval, scheduler: SchedulerType, cancel: Cancelable) { - _dueTime = dueTime - _scheduler = scheduler + self._dueTime = dueTime + self._scheduler = scheduler super.init(observer: observer, cancel: cancel) } @@ -62,12 +63,12 @@ final private class DelaySink // Another complication is that scheduler is potentially concurrent so internal queue is used. func drainQueue(state: (), scheduler: AnyRecursiveScheduler<()>) { - _lock.lock() // { - let hasFailed = _errorEvent != nil + self._lock.lock() // { + let hasFailed = self._errorEvent != nil if !hasFailed { - _running = true + self._running = true } - _lock.unlock() // } + self._lock.unlock() // } if hasFailed { return @@ -76,29 +77,31 @@ final private class DelaySink var ranAtLeastOnce = false while true { - _lock.lock() // { - let errorEvent = _errorEvent + self._lock.lock() // { + let errorEvent = self._errorEvent - let eventToForwardImmediately = ranAtLeastOnce ? nil : _queue.dequeue()?.event - let nextEventToScheduleOriginalTime: Date? = ranAtLeastOnce && !_queue.isEmpty ? _queue.peek().eventTime : nil + let eventToForwardImmediately = ranAtLeastOnce ? nil : self._queue.dequeue()?.event + let nextEventToScheduleOriginalTime: Date? = ranAtLeastOnce && !self._queue.isEmpty ? self._queue.peek().eventTime : nil - if let _ = errorEvent { - } else { - if let _ = eventToForwardImmediately { - } else if let _ = nextEventToScheduleOriginalTime { - _running = false - } else { - _running = false - _active = false + if errorEvent == nil { + if eventToForwardImmediately != nil { + } + else if nextEventToScheduleOriginalTime != nil { + self._running = false + } + else { + self._running = false + self._active = false } } - _lock.unlock() // { + self._lock.unlock() // { if let errorEvent = errorEvent { self.forwardOn(errorEvent) self.dispose() return - } else { + } + else { if let eventToForwardImmediately = eventToForwardImmediately { ranAtLeastOnce = true self.forwardOn(eventToForwardImmediately) @@ -106,51 +109,53 @@ final private class DelaySink self.dispose() return } - } else if let nextEventToScheduleOriginalTime = nextEventToScheduleOriginalTime { - let elapsedTime = _scheduler.now.timeIntervalSince(nextEventToScheduleOriginalTime) - let interval = _dueTime - elapsedTime + } + else if let nextEventToScheduleOriginalTime = nextEventToScheduleOriginalTime { + let elapsedTime = self._scheduler.now.timeIntervalSince(nextEventToScheduleOriginalTime) + let interval = self._dueTime - elapsedTime let normalizedInterval = interval < 0.0 ? 0.0 : interval scheduler.schedule((), dueTime: normalizedInterval) return - } else { + } + else { return } } } } - + func on(_ event: Event) { if event.isStopEvent { - _sourceSubscription.dispose() + self._sourceSubscription.dispose() } switch event { case .error: - _lock.lock() // { - let shouldSendImmediately = !_running - _queue = Queue(capacity: 0) - _errorEvent = event - _lock.unlock() // } + self._lock.lock() // { + let shouldSendImmediately = !self._running + self._queue = Queue(capacity: 0) + self._errorEvent = event + self._lock.unlock() // } if shouldSendImmediately { - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } default: - _lock.lock() // { - let shouldSchedule = !_active - _active = true - _queue.enqueue((_scheduler.now, event)) - _lock.unlock() // } + self._lock.lock() // { + let shouldSchedule = !self._active + self._active = true + self._queue.enqueue((self._scheduler.now, event)) + self._lock.unlock() // } if shouldSchedule { - _cancelable.disposable = _scheduler.scheduleRecursive((), dueTime: _dueTime, action: self.drainQueue) + self._cancelable.disposable = self._scheduler.scheduleRecursive((), dueTime: self._dueTime, action: self.drainQueue) } } } - + func run(source: Observable) -> Disposable { - _sourceSubscription.setDisposable(source.subscribe(self)) + self._sourceSubscription.setDisposable(source.subscribe(self)) return Disposables.create(_sourceSubscription, _cancelable) } } @@ -159,16 +164,16 @@ final private class Delay: Producer { private let _source: Observable private let _dueTime: RxTimeInterval private let _scheduler: SchedulerType - + init(source: Observable, dueTime: RxTimeInterval, scheduler: SchedulerType) { - _source = source - _dueTime = dueTime - _scheduler = scheduler + self._source = source + self._dueTime = dueTime + self._scheduler = scheduler } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - let sink = DelaySink(observer: observer, dueTime: _dueTime, scheduler: _scheduler, cancel: cancel) - let subscription = sink.run(source: _source) + let sink = DelaySink(observer: observer, dueTime: self._dueTime, scheduler: self._scheduler, cancel: cancel) + let subscription = sink.run(source: self._source) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift index 253808bc01..16218a701f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DelaySubscription.swift @@ -26,38 +26,30 @@ extension ObservableType { final private class DelaySubscriptionSink : Sink, ObserverType { typealias E = O.E - typealias Parent = DelaySubscription - - private let _parent: Parent - - init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - super.init(observer: observer, cancel: cancel) - } - + func on(_ event: Event) { - forwardOn(event) + self.forwardOn(event) if event.isStopEvent { - dispose() + self.dispose() } } - + } final private class DelaySubscription: Producer { private let _source: Observable private let _dueTime: RxTimeInterval private let _scheduler: SchedulerType - + init(source: Observable, dueTime: RxTimeInterval, scheduler: SchedulerType) { - _source = source - _dueTime = dueTime - _scheduler = scheduler + self._source = source + self._dueTime = dueTime + self._scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - let sink = DelaySubscriptionSink(parent: self, observer: observer, cancel: cancel) - let subscription = _scheduler.scheduleRelative((), dueTime: _dueTime) { _ in + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + let sink = DelaySubscriptionSink(observer: observer, cancel: cancel) + let subscription = self._scheduler.scheduleRelative((), dueTime: self._dueTime) { _ in return self._source.subscribe(sink) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift index 9c5ea9a6c6..e315d17103 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Dematerialize.swift @@ -22,30 +22,30 @@ fileprivate final class DematerializeSink) { switch event { case .next(let element): - forwardOn(element.event) + self.forwardOn(element.event) if element.event.isStopEvent { - dispose() + self.dispose() } case .completed: - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() case .error(let error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } } } final private class Dematerialize: Producer { private let _source: Observable - + init(source: Observable) { - _source = source + self._source = source } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element.ElementType { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element.ElementType { let sink = DematerializeSink(observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift index e1aef7c33e..db0b0ab921 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/DistinctUntilChanged.swift @@ -65,39 +65,40 @@ extension ObservableType { final private class DistinctUntilChangedSink: Sink, ObserverType { typealias E = O.E - + private let _parent: DistinctUntilChanged private var _currentKey: Key? - + init(parent: DistinctUntilChanged, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): do { - let key = try _parent._selector(value) + let key = try self._parent._selector(value) var areEqual = false - if let currentKey = _currentKey { - areEqual = try _parent._comparer(currentKey, key) + if let currentKey = self._currentKey { + areEqual = try self._parent._comparer(currentKey, key) } - + if areEqual { return } - - _currentKey = key - - forwardOn(event) - } catch let error { - forwardOn(.error(error)) - dispose() + + self._currentKey = key + + self.forwardOn(event) + } + catch let error { + self.forwardOn(.error(error)) + self.dispose() } case .error, .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } } @@ -105,20 +106,20 @@ final private class DistinctUntilChangedSink: Sink, Obs final private class DistinctUntilChanged: Producer { typealias KeySelector = (Element) throws -> Key typealias EqualityComparer = (Key, Key) throws -> Bool - + fileprivate let _source: Observable fileprivate let _selector: KeySelector fileprivate let _comparer: EqualityComparer - + init(source: Observable, selector: @escaping KeySelector, comparer: @escaping EqualityComparer) { - _source = source - _selector = selector - _comparer = comparer + self._source = source + self._selector = selector + self._comparer = comparer } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = DistinctUntilChangedSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift index 22ef161a78..d057131941 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Do.swift @@ -35,54 +35,55 @@ extension ObservableType { } } -final private class DoSink : Sink, ObserverType { +final private class DoSink: Sink, ObserverType { typealias Element = O.E typealias EventHandler = (Event) throws -> Void - + private let _eventHandler: EventHandler - + init(eventHandler: @escaping EventHandler, observer: O, cancel: Cancelable) { - _eventHandler = eventHandler + self._eventHandler = eventHandler super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { do { - try _eventHandler(event) - forwardOn(event) + try self._eventHandler(event) + self.forwardOn(event) if event.isStopEvent { - dispose() + self.dispose() } - } catch let error { - forwardOn(.error(error)) - dispose() + } + catch let error { + self.forwardOn(.error(error)) + self.dispose() } } } -final private class Do : Producer { +final private class Do: Producer { typealias EventHandler = (Event) throws -> Void - + fileprivate let _source: Observable fileprivate let _eventHandler: EventHandler fileprivate let _onSubscribe: (() -> Void)? fileprivate let _onSubscribed: (() -> Void)? fileprivate let _onDispose: (() -> Void)? - + init(source: Observable, eventHandler: @escaping EventHandler, onSubscribe: (() -> Void)?, onSubscribed: (() -> Void)?, onDispose: (() -> Void)?) { - _source = source - _eventHandler = eventHandler - _onSubscribe = onSubscribe - _onSubscribed = onSubscribed - _onDispose = onDispose + self._source = source + self._eventHandler = eventHandler + self._onSubscribe = onSubscribe + self._onSubscribed = onSubscribed + self._onDispose = onDispose } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - _onSubscribe?() - let sink = DoSink(eventHandler: _eventHandler, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) - _onSubscribed?() - let onDispose = _onDispose + self._onSubscribe?() + let sink = DoSink(eventHandler: self._eventHandler, observer: observer, cancel: cancel) + let subscription = self._source.subscribe(sink) + self._onSubscribed?() + let onDispose = self._onDispose let allSubscriptions = Disposables.create { subscription.dispose() onDispose?() diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift index a8609a9c68..2279400229 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ElementAt.swift @@ -18,63 +18,62 @@ extension ObservableType { */ public func elementAt(_ index: Int) -> Observable { - return ElementAt(source: asObservable(), index: index, throwOnEmpty: true) + return ElementAt(source: self.asObservable(), index: index, throwOnEmpty: true) } } -final private class ElementAtSink : Sink, ObserverType { +final private class ElementAtSink: Sink, ObserverType { typealias SourceType = O.E typealias Parent = ElementAt - + let _parent: Parent var _i: Int - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _i = parent._index - + self._parent = parent + self._i = parent._index + super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next: - if (_i == 0) { - forwardOn(event) - forwardOn(.completed) + if self._i == 0 { + self.forwardOn(event) + self.forwardOn(.completed) self.dispose() } - + do { - _ = try decrementChecked(&_i) - } catch(let e) { - forwardOn(.error(e)) - dispose() + _ = try decrementChecked(&self._i) + } catch let e { + self.forwardOn(.error(e)) + self.dispose() return } - + case .error(let e): - forwardOn(.error(e)) + self.forwardOn(.error(e)) self.dispose() case .completed: - if (_parent._throwOnEmpty) { - forwardOn(.error(RxError.argumentOutOfRange)) + if self._parent._throwOnEmpty { + self.forwardOn(.error(RxError.argumentOutOfRange)) } else { - forwardOn(.completed) + self.forwardOn(.completed) } - + self.dispose() } } } -final private class ElementAt : Producer { - +final private class ElementAt: Producer { let _source: Observable let _throwOnEmpty: Bool let _index: Int - + init(source: Observable, index: Int, throwOnEmpty: Bool) { if index < 0 { rxFatalError("index can't be negative") @@ -84,10 +83,10 @@ final private class ElementAt : Producer { self._index = index self._throwOnEmpty = throwOnEmpty } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceType { let sink = ElementAtSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift index abaeab1b8b..cf72519126 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Empty.swift @@ -19,7 +19,7 @@ extension ObservableType { } } -final private class EmptyProducer : Producer { +final private class EmptyProducer: Producer { override func subscribe(_ observer: O) -> Disposable where O.E == Element { observer.on(.completed) return Disposables.create() diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift index c86560e51f..fdf326ec62 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Enumerated.swift @@ -24,38 +24,39 @@ extension ObservableType { final private class EnumeratedSink: Sink, ObserverType where O.E == (index: Int, element: Element) { typealias E = Element var index = 0 - + func on(_ event: Event) { switch event { case .next(let value): do { - let nextIndex = try incrementChecked(&index) + let nextIndex = try incrementChecked(&self.index) let next = (index: nextIndex, element: value) - forwardOn(.next(next)) - } catch let e { - forwardOn(.error(e)) - dispose() + self.forwardOn(.next(next)) + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() } case .completed: - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() case .error(let error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } } } -final private class Enumerated : Producer<(index: Int, element: Element)> { +final private class Enumerated: Producer<(index: Int, element: Element)> { private let _source: Observable init(source: Observable) { - _source = source + self._source = source } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == (index: Int, element: Element) { let sink = EnumeratedSink(observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift index 2e7be595f8..026a7cee00 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Error.swift @@ -19,15 +19,15 @@ extension ObservableType { } } -final private class ErrorProducer : Producer { +final private class ErrorProducer: Producer { private let _error: Swift.Error - + init(error: Swift.Error) { - _error = error + self._error = error } - + override func subscribe(_ observer: O) -> Disposable where O.E == Element { - observer.on(.error(_error)) + observer.on(.error(self._error)) return Disposables.create() } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift index 45113c9b72..d77e89022d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Filter.swift @@ -18,7 +18,7 @@ extension ObservableType { */ public func filter(_ predicate: @escaping (E) throws -> Bool) -> Observable { - return Filter(source: asObservable(), predicate: predicate) + return Filter(source: self.asObservable(), predicate: predicate) } } @@ -33,7 +33,7 @@ extension ObservableType { */ public func ignoreElements() -> Completable { - return flatMap { _ in + return self.flatMap { _ in return Observable.empty() } .asCompletable() @@ -43,47 +43,48 @@ extension ObservableType { final private class FilterSink: Sink, ObserverType { typealias Predicate = (Element) throws -> Bool typealias Element = O.E - + private let _predicate: Predicate - + init(predicate: @escaping Predicate, observer: O, cancel: Cancelable) { - _predicate = predicate + self._predicate = predicate super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { - case .next(let value): - do { - let satisfies = try _predicate(value) - if satisfies { - forwardOn(.next(value)) - } - } catch let e { - forwardOn(.error(e)) - dispose() + case .next(let value): + do { + let satisfies = try self._predicate(value) + if satisfies { + self.forwardOn(.next(value)) } - case .completed, .error: - forwardOn(event) - dispose() + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() + } + case .completed, .error: + self.forwardOn(event) + self.dispose() } } } -final private class Filter : Producer { +final private class Filter: Producer { typealias Predicate = (Element) throws -> Bool - + private let _source: Observable private let _predicate: Predicate - + init(source: Observable, predicate: @escaping Predicate) { - _source = source - _predicate = predicate + self._source = source + self._predicate = predicate } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - let sink = FilterSink(predicate: _predicate, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let sink = FilterSink(predicate: self._predicate, observer: observer, cancel: cancel) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift index 2dbdc79597..29ba8dedc4 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/First.swift @@ -13,16 +13,16 @@ fileprivate final class FirstSink : Sink, ObserverT func on(_ event: Event) { switch event { case .next(let value): - forwardOn(.next(value)) - forwardOn(.completed) - dispose() + self.forwardOn(.next(value)) + self.forwardOn(.completed) + self.dispose() case .error(let error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() case .completed: - forwardOn(.next(nil)) - forwardOn(.completed) - dispose() + self.forwardOn(.next(nil)) + self.forwardOn(.completed) + self.dispose() } } } @@ -31,12 +31,12 @@ final class First: Producer { fileprivate let _source: Observable init(source: Observable) { - _source = source + self._source = source } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element? { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element? { let sink = FirstSink(observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift index 4c1d48274e..98635e9748 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Generate.swift @@ -24,36 +24,38 @@ extension ObservableType { } } -final private class GenerateSink : Sink { +final private class GenerateSink: Sink { typealias Parent = Generate - + private let _parent: Parent - + private var _state: S - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _state = parent._initialState + self._parent = parent + self._state = parent._initialState super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - return _parent._scheduler.scheduleRecursive(true) { (isFirst, recurse) -> Void in + return self._parent._scheduler.scheduleRecursive(true) { isFirst, recurse -> Void in do { if !isFirst { self._state = try self._parent._iterate(self._state) } - + if try self._parent._condition(self._state) { let result = try self._parent._resultSelector(self._state) self.forwardOn(.next(result)) - + recurse(false) - } else { + } + else { self.forwardOn(.completed) self.dispose() } - } catch let error { + } + catch let error { self.forwardOn(.error(error)) self.dispose() } @@ -61,23 +63,23 @@ final private class GenerateSink : Sink { } } -final private class Generate : Producer { +final private class Generate: Producer { fileprivate let _initialState: S fileprivate let _condition: (S) throws -> Bool fileprivate let _iterate: (S) throws -> S fileprivate let _resultSelector: (S) throws -> E fileprivate let _scheduler: ImmediateSchedulerType - + init(initialState: S, condition: @escaping (S) throws -> Bool, iterate: @escaping (S) throws -> S, resultSelector: @escaping (S) throws -> E, scheduler: ImmediateSchedulerType) { - _initialState = initialState - _condition = condition - _iterate = iterate - _resultSelector = resultSelector - _scheduler = scheduler + self._initialState = initialState + self._condition = condition + self._iterate = iterate + self._resultSelector = resultSelector + self._scheduler = scheduler super.init() } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = GenerateSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift index 6ce5fd8301..adce8763a9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/GroupBy.swift @@ -16,29 +16,31 @@ extension ObservableType { - returns: A sequence of observable groups, each of which corresponds to a unique key value, containing all elements that share that same key value. */ public func groupBy(keySelector: @escaping (E) throws -> K) - -> Observable> { + -> Observable> { return GroupBy(source: self.asObservable(), selector: keySelector) } } -final private class GroupedObservableImpl : Observable { +final private class GroupedObservableImpl: Observable { private var _subject: PublishSubject private var _refCount: RefCountDisposable - - init(key: Key, subject: PublishSubject, refCount: RefCountDisposable) { - _subject = subject - _refCount = refCount + + init(subject: PublishSubject, refCount: RefCountDisposable) { + self._subject = subject + self._refCount = refCount } override public func subscribe(_ observer: O) -> Disposable where O.E == E { - let release = _refCount.retain() - let subscription = _subject.subscribe(observer) + let release = self._refCount.retain() + let subscription = self._subject.subscribe(observer) return Disposables.create(release, subscription) } } + final private class GroupBySink - : Sink, ObserverType where O.E == GroupedObservable { + : Sink + , ObserverType where O.E == GroupedObservable { typealias E = Element typealias ResultType = O.E typealias Parent = GroupBy @@ -47,34 +49,34 @@ final private class GroupBySink private let _subscription = SingleAssignmentDisposable() private var _refCountDisposable: RefCountDisposable! private var _groupedSubjectTable: [Key: PublishSubject] - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _groupedSubjectTable = [Key: PublishSubject]() + self._parent = parent + self._groupedSubjectTable = [Key: PublishSubject]() super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - _refCountDisposable = RefCountDisposable(disposable: _subscription) - - _subscription.setDisposable(_parent._source.subscribe(self)) - - return _refCountDisposable + self._refCountDisposable = RefCountDisposable(disposable: self._subscription) + + self._subscription.setDisposable(self._parent._source.subscribe(self)) + + return self._refCountDisposable } - + private func onGroupEvent(key: Key, value: Element) { - if let writer = _groupedSubjectTable[key] { + if let writer = self._groupedSubjectTable[key] { writer.on(.next(value)) } else { let writer = PublishSubject() - _groupedSubjectTable[key] = writer - + self._groupedSubjectTable[key] = writer + let group = GroupedObservable( key: key, - source: GroupedObservableImpl(key: key, subject: writer, refCount: _refCountDisposable) + source: GroupedObservableImpl(subject: writer, refCount: _refCountDisposable) ) - - forwardOn(.next(group)) + + self.forwardOn(.next(group)) writer.on(.next(value)) } } @@ -83,48 +85,49 @@ final private class GroupBySink switch event { case let .next(value): do { - let groupKey = try _parent._selector(value) - onGroupEvent(key: groupKey, value: value) - } catch let e { - error(e) + let groupKey = try self._parent._selector(value) + self.onGroupEvent(key: groupKey, value: value) + } + catch let e { + self.error(e) return } case let .error(e): - error(e) + self.error(e) case .completed: - forwardOnGroups(event: .completed) - forwardOn(.completed) - _subscription.dispose() - dispose() + self.forwardOnGroups(event: .completed) + self.forwardOn(.completed) + self._subscription.dispose() + self.dispose() } } final func error(_ error: Swift.Error) { - forwardOnGroups(event: .error(error)) - forwardOn(.error(error)) - _subscription.dispose() - dispose() + self.forwardOnGroups(event: .error(error)) + self.forwardOn(.error(error)) + self._subscription.dispose() + self.dispose() } - + final func forwardOnGroups(event: Event) { - for writer in _groupedSubjectTable.values { + for writer in self._groupedSubjectTable.values { writer.on(event) } } } -final private class GroupBy: Producer> { +final private class GroupBy: Producer> { typealias KeySelector = (Element) throws -> Key fileprivate let _source: Observable fileprivate let _selector: KeySelector - + init(source: Observable, selector: @escaping KeySelector) { - _source = source - _selector = selector + self._source = source + self._selector = selector } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == GroupedObservable { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == GroupedObservable { let sink = GroupBySink(parent: self, observer: observer, cancel: cancel) return (sink: sink, subscription: sink.run()) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift index 466de2bd04..f4fa0d2d5d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Just.swift @@ -33,19 +33,19 @@ extension ObservableType { } } -final private class JustScheduledSink : Sink { +final private class JustScheduledSink: Sink { typealias Parent = JustScheduled private let _parent: Parent init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - let scheduler = _parent._scheduler - return scheduler.schedule(_parent._element) { element in + let scheduler = self._parent._scheduler + return scheduler.schedule(self._parent._element) { element in self.forwardOn(.next(element)) return scheduler.schedule(()) { _ in self.forwardOn(.completed) @@ -56,31 +56,31 @@ final private class JustScheduledSink : Sink { } } -final private class JustScheduled : Producer { +final private class JustScheduled: Producer { fileprivate let _scheduler: ImmediateSchedulerType fileprivate let _element: Element init(element: Element, scheduler: ImmediateSchedulerType) { - _scheduler = scheduler - _element = element + self._scheduler = scheduler + self._element = element } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = JustScheduledSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) } } -final private class Just : Producer { +final private class Just: Producer { private let _element: Element - + init(element: Element) { - _element = element + self._element = element } - + override func subscribe(_ observer: O) -> Disposable where O.E == Element { - observer.on(.next(_element)) + observer.on(.next(self._element)) observer.on(.completed) return Disposables.create() } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift index fd7f266860..b5ae370924 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Map.swift @@ -23,7 +23,7 @@ extension ObservableType { } } -final private class MapSink : Sink, ObserverType { +final private class MapSink: Sink, ObserverType { typealias Transform = (SourceType) throws -> ResultType typealias ResultType = O.E @@ -32,7 +32,7 @@ final private class MapSink : Sink, ObserverType private let _transform: Transform init(transform: @escaping Transform, observer: O, cancel: Cancelable) { - _transform = transform + self._transform = transform super.init(observer: observer, cancel: cancel) } @@ -40,27 +40,28 @@ final private class MapSink : Sink, ObserverType switch event { case .next(let element): do { - let mappedElement = try _transform(element) - forwardOn(.next(mappedElement)) - } catch let e { - forwardOn(.error(e)) - dispose() + let mappedElement = try self._transform(element) + self.forwardOn(.next(mappedElement)) + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() } case .error(let error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() case .completed: - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } #if TRACE_RESOURCES - private var _numberOfMapOperators = AtomicInt(0) + fileprivate let _numberOfMapOperators = AtomicInt(0) extension Resources { public static var numberOfMapOperators: Int32 { - return _numberOfMapOperators.load() + return load(_numberOfMapOperators) } } #endif @@ -77,31 +78,31 @@ final private class Map: Producer { private let _transform: Transform init(source: Observable, transform: @escaping Transform) { - _source = source - _transform = transform + self._source = source + self._transform = transform #if TRACE_RESOURCES - _ = _numberOfMapOperators.increment() + _ = increment(_numberOfMapOperators) #endif } override func composeMap(_ selector: @escaping (ResultType) throws -> R) -> Observable { - let originalSelector = _transform - return Map(source: _source, transform: { (s: SourceType) throws -> R in + let originalSelector = self._transform + return Map(source: self._source, transform: { (s: SourceType) throws -> R in let r: ResultType = try originalSelector(s) return try selector(r) }) } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType { - let sink = MapSink(transform: _transform, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let sink = MapSink(transform: self._transform, observer: observer, cancel: cancel) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } #if TRACE_RESOURCES deinit { - _ = _numberOfMapOperators.decrement() + _ = decrement(_numberOfMapOperators) } #endif } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift index 18e549d979..1a5e2f52bf 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Materialize.swift @@ -18,26 +18,26 @@ extension ObservableType { } fileprivate final class MaterializeSink: Sink, ObserverType where O.E == Event { - + func on(_ event: Event) { - forwardOn(.next(event)) + self.forwardOn(.next(event)) if event.isStopEvent { - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } final private class Materialize: Producer> { private let _source: Observable - + init(source: Observable) { - _source = source + self._source = source } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = MaterializeSink(observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift index 3790efd647..0bc0a38347 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Merge.swift @@ -18,7 +18,7 @@ extension ObservableType { */ public func flatMap(_ selector: @escaping (E) throws -> O) -> Observable { - return FlatMap(source: asObservable(), selector: selector) + return FlatMap(source: self.asObservable(), selector: selector) } } @@ -36,11 +36,11 @@ extension ObservableType { */ public func flatMapFirst(_ selector: @escaping (E) throws -> O) -> Observable { - return FlatMapFirst(source: asObservable(), selector: selector) + return FlatMapFirst(source: self.asObservable(), selector: selector) } } -extension ObservableType where E: ObservableConvertibleType { +extension ObservableType where E : ObservableConvertibleType { /** Merges elements from all observable sequences in the given enumerable sequence into a single observable sequence. @@ -50,7 +50,7 @@ extension ObservableType where E: ObservableConvertibleType { - returns: The observable sequence that merges the elements of the observable sequences. */ public func merge() -> Observable { - return Merge(source: asObservable()) + return Merge(source: self.asObservable()) } /** @@ -63,11 +63,11 @@ extension ObservableType where E: ObservableConvertibleType { */ public func merge(maxConcurrent: Int) -> Observable { - return MergeLimited(source: asObservable(), maxConcurrent: maxConcurrent) + return MergeLimited(source: self.asObservable(), maxConcurrent: maxConcurrent) } } -extension ObservableType where E: ObservableConvertibleType { +extension ObservableType where E : ObservableConvertibleType { /** Concatenates all inner observable sequences, as long as the previous observable sequence terminated successfully. @@ -77,7 +77,7 @@ extension ObservableType where E: ObservableConvertibleType { - returns: An observable sequence that contains the elements of each observed inner sequence, in sequential order. */ public func concat() -> Observable { - return merge(maxConcurrent: 1) + return self.merge(maxConcurrent: 1) } } @@ -129,52 +129,55 @@ extension ObservableType { - returns: An observable sequence that contains the elements of each observed inner sequence, in sequential order. */ - + public func concatMap(_ selector: @escaping (E) throws -> O) -> Observable { - return ConcatMap(source: asObservable(), selector: selector) + return ConcatMap(source: self.asObservable(), selector: selector) } } fileprivate final class MergeLimitedSinkIter - : ObserverType, LockOwnerType, SynchronizedOnType where SourceSequence.E == Observer.E { + : ObserverType + , LockOwnerType + , SynchronizedOnType where SourceSequence.E == Observer.E { typealias E = Observer.E typealias DisposeKey = CompositeDisposable.DisposeKey typealias Parent = MergeLimitedSink - + private let _parent: Parent private let _disposeKey: DisposeKey var _lock: RecursiveLock { - return _parent._lock + return self._parent._lock } - + init(parent: Parent, disposeKey: DisposeKey) { - _parent = parent - _disposeKey = disposeKey + self._parent = parent + self._disposeKey = disposeKey } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next: - _parent.forwardOn(event) + self._parent.forwardOn(event) case .error: - _parent.forwardOn(event) - _parent.dispose() + self._parent.forwardOn(event) + self._parent.dispose() case .completed: - _parent._group.remove(for: _disposeKey) - if let next = _parent._queue.dequeue() { - _parent.subscribe(next, group: _parent._group) - } else { - _parent._activeCount = _parent._activeCount - 1 - - if _parent._stopped && _parent._activeCount == 0 { - _parent.forwardOn(.completed) - _parent.dispose() + self._parent._group.remove(for: self._disposeKey) + if let next = self._parent._queue.dequeue() { + self._parent.subscribe(next, group: self._parent._group) + } + else { + self._parent._activeCount -= 1 + + if self._parent._stopped && self._parent._activeCount == 0 { + self._parent.forwardOn(.completed) + self._parent.dispose() } } } @@ -183,28 +186,29 @@ fileprivate final class MergeLimitedSinkIter: MergeLimitedSink where Observer.E == SourceSequence.E { typealias Selector = (SourceElement) throws -> SourceSequence - + private let _selector: Selector - + init(selector: @escaping Selector, observer: Observer, cancel: Cancelable) { - _selector = selector + self._selector = selector super.init(maxConcurrent: 1, observer: observer, cancel: cancel) } - + override func performMap(_ element: SourceElement) throws -> SourceSequence { - return try _selector(element) + return try self._selector(element) } } fileprivate final class MergeLimitedBasicSink: MergeLimitedSink where Observer.E == SourceSequence.E { - + override func performMap(_ element: SourceSequence) throws -> SourceSequence { return element } } private class MergeLimitedSink - : Sink, ObserverType where Observer.E == SourceSequence.E { + : Sink + , ObserverType where Observer.E == SourceSequence.E { typealias QueueType = Queue let _maxConcurrent: Int @@ -215,64 +219,65 @@ private class MergeLimitedSink) -> Disposable { - _ = _group.insert(_sourceSubscription) - + _ = self._group.insert(self._sourceSubscription) + let disposable = source.subscribe(self) - _sourceSubscription.setDisposable(disposable) - return _group + self._sourceSubscription.setDisposable(disposable) + return self._group } - + func subscribe(_ innerSource: SourceSequence, group: CompositeDisposable) { let subscription = SingleAssignmentDisposable() - + let key = group.insert(subscription) - + if let key = key { let observer = MergeLimitedSinkIter(parent: self, disposeKey: key) - + let disposable = innerSource.asObservable().subscribe(observer) subscription.setDisposable(disposable) } } - + func performMap(_ element: SourceElement) throws -> SourceSequence { rxAbstractMethod() } @inline(__always) final private func nextElementArrived(element: SourceElement) -> SourceSequence? { - _lock.lock(); defer { _lock.unlock() } // { + self._lock.lock(); defer { self._lock.unlock() } // { let subscribe: Bool - if _activeCount < _maxConcurrent { - _activeCount += 1 + if self._activeCount < self._maxConcurrent { + self._activeCount += 1 subscribe = true - } else { + } + else { do { - let value = try performMap(element) - _queue.enqueue(value) + let value = try self.performMap(element) + self._queue.enqueue(value) } catch { - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } subscribe = false } if subscribe { do { - return try performMap(element) + return try self.performMap(element) } catch { - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } } @@ -284,40 +289,41 @@ private class MergeLimitedSink : Producer { +final private class MergeLimited: Producer { private let _source: Observable private let _maxConcurrent: Int - + init(source: Observable, maxConcurrent: Int) { - _source = source - _maxConcurrent = maxConcurrent + self._source = source + self._maxConcurrent = maxConcurrent } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E { - let sink = MergeLimitedBasicSink(maxConcurrent: _maxConcurrent, observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let sink = MergeLimitedBasicSink(maxConcurrent: self._maxConcurrent, observer: observer, cancel: cancel) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } @@ -338,12 +344,12 @@ fileprivate final class FlatMapSink SourceSequence { - return try _selector(element) + return try self._selector(element) } } @@ -355,16 +361,16 @@ fileprivate final class FlatMapFirstSink SourceSequence { - return try _selector(element) + return try self._selector(element) } } @@ -372,34 +378,36 @@ fileprivate final class MergeSinkIter typealias DisposeKey = CompositeDisposable.DisposeKey typealias E = Observer.E - + private let _parent: Parent private let _disposeKey: DisposeKey init(parent: Parent, disposeKey: DisposeKey) { - _parent = parent - _disposeKey = disposeKey + self._parent = parent + self._disposeKey = disposeKey } - + func on(_ event: Event) { - _parent._lock.lock(); defer { _parent._lock.unlock() } // lock { + self._parent._lock.lock(); defer { self._parent._lock.unlock() } // lock { switch event { case .next(let value): - _parent.forwardOn(.next(value)) + self._parent.forwardOn(.next(value)) case .error(let error): - _parent.forwardOn(.error(error)) - _parent.dispose() + self._parent.forwardOn(.error(error)) + self._parent.dispose() case .completed: - _parent._group.remove(for: _disposeKey) - _parent._activeCount -= 1 - _parent.checkCompleted() + self._parent._group.remove(for: self._disposeKey) + self._parent._activeCount -= 1 + self._parent.checkCompleted() } // } } } + private class MergeSink - : Sink, ObserverType where Observer.E == SourceSequence.E { + : Sink + , ObserverType where Observer.E == SourceSequence.E { typealias ResultType = Observer.E typealias Element = SourceElement @@ -426,44 +434,45 @@ private class MergeSink SourceSequence? { - _lock.lock(); defer { _lock.unlock() } // { - if !subscribeNext { + self._lock.lock(); defer { self._lock.unlock() } // { + if !self.subscribeNext { return nil } do { - let value = try performMap(element) - _activeCount += 1 + let value = try self.performMap(element) + self._activeCount += 1 return value - } catch let e { - forwardOn(.error(e)) - dispose() + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() return nil } // } } - + func on(_ event: Event) { switch event { case .next(let element): - if let value = nextElementArrived(element: element) { - subscribeInner(value.asObservable()) + if let value = self.nextElementArrived(element: element) { + self.subscribeInner(value.asObservable()) } case .error(let error): - _lock.lock(); defer { _lock.unlock() } - forwardOn(.error(error)) - dispose() + self._lock.lock(); defer { self._lock.unlock() } + self.forwardOn(.error(error)) + self.dispose() case .completed: - _lock.lock(); defer { _lock.unlock() } - _stopped = true - _sourceSubscription.dispose() - checkCompleted() + self._lock.lock(); defer { self._lock.unlock() } + self._stopped = true + self._sourceSubscription.dispose() + self.checkCompleted() } } func subscribeInner(_ source: Observable) { let iterDisposable = SingleAssignmentDisposable() - if let disposeKey = _group.insert(iterDisposable) { + if let disposeKey = self._group.insert(iterDisposable) { let iter = MergeSinkIter(parent: self, disposeKey: disposeKey) let subscription = source.subscribe(iter) iterDisposable.setDisposable(subscription) @@ -471,34 +480,34 @@ private class MergeSink]) -> Disposable { - _activeCount += sources.count + self._activeCount += sources.count for source in sources { - subscribeInner(source) + self.subscribeInner(source) } - _stopped = true + self._stopped = true - checkCompleted() + self.checkCompleted() - return _group + return self._group } @inline(__always) func checkCompleted() { - if _stopped && _activeCount == 0 { + if self._stopped && self._activeCount == 0 { self.forwardOn(.completed) self.dispose() } } - + func run(_ source: Observable) -> Disposable { - _ = _group.insert(_sourceSubscription) + _ = self._group.insert(self._sourceSubscription) let subscription = source.subscribe(self) - _sourceSubscription.setDisposable(subscription) - - return _group + self._sourceSubscription.setDisposable(subscription) + + return self._group } } @@ -508,17 +517,17 @@ final private class FlatMap SourceSequence private let _source: Observable - + private let _selector: Selector init(source: Observable, selector: @escaping Selector) { - _source = source - _selector = selector + self._source = source + self._selector = selector } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E { - let sink = FlatMapSink(selector: _selector, observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let sink = FlatMapSink(selector: self._selector, observer: observer, cancel: cancel) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } @@ -531,31 +540,31 @@ final private class FlatMapFirst, selector: @escaping Selector) { - _source = source - _selector = selector + self._source = source + self._selector = selector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E { - let sink = FlatMapFirstSink(selector: _selector, observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let sink = FlatMapFirstSink(selector: self._selector, observer: observer, cancel: cancel) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } final class ConcatMap: Producer { typealias Selector = (SourceElement) throws -> SourceSequence - + private let _source: Observable private let _selector: Selector - + init(source: Observable, selector: @escaping Selector) { - _source = source - _selector = selector + self._source = source + self._selector = selector } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E { - let sink = ConcatMapSink(selector: _selector, observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let sink = ConcatMapSink(selector: self._selector, observer: observer, cancel: cancel) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } @@ -564,26 +573,26 @@ final class Merge : Producer init(source: Observable) { - _source = source + self._source = source } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == SourceSequence.E { let sink = MergeBasicSink(observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } -final private class MergeArray : Producer { +final private class MergeArray: Producer { private let _sources: [Observable] init(sources: [Observable]) { - _sources = sources + self._sources = sources } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = MergeBasicSink, O>(observer: observer, cancel: cancel) - let subscription = sink.run(_sources) + let subscription = sink.run(self._sources) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift index 5eaf9e9810..7e47389f72 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Multicast.swift @@ -10,7 +10,8 @@ Represents an observable wrapper that can be connected and disconnected from its underlying observable sequence. */ public class ConnectableObservable - : Observable, ConnectableObservableType { + : Observable + , ConnectableObservableType { /** Connects the observable wrapper to its source. All subscribed observers will receive values from the underlying observable sequence as long as the connection is established. @@ -25,14 +26,14 @@ public class ConnectableObservable extension ObservableType { /** - Multicasts the source sequence notifications through an instantiated subject into all uses of the sequence within a selector function. - + Multicasts the source sequence notifications through an instantiated subject into all uses of the sequence within a selector function. + Each subscription to the resulting sequence causes a separate multicast invocation, exposing the sequence resulting from the selector function's invocation. For specializations with fixed subject types, see `publish` and `replay`. - seealso: [multicast operator on reactivex.io](http://reactivex.io/documentation/operators/publish.html) - + - parameter subjectSelector: Factory function to create an intermediate subject through which the source sequence's elements will be multicast to the selector function. - parameter selector: Selector function which can use the multicasted source sequence subject to the policies enforced by the created subject. - returns: An observable sequence that contains the elements of a sequence produced by multicasting the source sequence within a selector function. @@ -50,12 +51,12 @@ extension ObservableType { extension ObservableType { /** - Returns a connectable observable sequence that shares a single subscription to the underlying sequence. - + Returns a connectable observable sequence that shares a single subscription to the underlying sequence. + This operator is a specialization of `multicast` using a `PublishSubject`. - seealso: [publish operator on reactivex.io](http://reactivex.io/documentation/operators/publish.html) - + - returns: A connectable observable sequence that shares a single subscription to the underlying sequence. */ public func publish() -> ConnectableObservable { @@ -101,7 +102,7 @@ extension ConnectableObservableType { Returns an observable sequence that stays connected to the source as long as there is at least one subscription to the observable sequence. - seealso: [refCount operator on reactivex.io](http://reactivex.io/documentation/operators/refcount.html) - + - returns: An observable sequence that stays connected to the source as long as there is at least one subscription to the observable sequence. */ public func refCount() -> Observable { @@ -132,7 +133,7 @@ extension ObservableType { Multicasts the source sequence notifications through an instantiated subject to the resulting connectable observable. Upon connection of the connectable observable, the subject is subscribed to the source exactly one, and messages are forwarded to the observers registered with the connectable observable. - + Subject is cleared on connection disposal or in case source sequence produces terminal event. - seealso: [multicast operator on reactivex.io](http://reactivex.io/documentation/operators/publish.html) @@ -146,37 +147,37 @@ extension ObservableType { } } -final private class Connection : ObserverType, Disposable { +final private class Connection: ObserverType, Disposable { typealias E = S.SubjectObserverType.E private var _lock: RecursiveLock // state private var _parent: ConnectableObservableAdapter? - private var _subscription: Disposable? + private var _subscription : Disposable? private var _subjectObserver: S.SubjectObserverType - private var _disposed: Bool = false + private let _disposed = AtomicInt(0) init(parent: ConnectableObservableAdapter, subjectObserver: S.SubjectObserverType, lock: RecursiveLock, subscription: Disposable) { - _parent = parent - _subscription = subscription - _lock = lock - _subjectObserver = subjectObserver + self._parent = parent + self._subscription = subscription + self._lock = lock + self._subjectObserver = subjectObserver } func on(_ event: Event) { - if _disposed { + if isFlagSet(self._disposed, 1) { return } if event.isStopEvent { self.dispose() } - _subjectObserver.on(event) + self._subjectObserver.on(event) } func dispose() { _lock.lock(); defer { _lock.unlock() } // { - _disposed = true + fetchOr(self._disposed, 1) guard let parent = _parent else { return } @@ -185,10 +186,10 @@ final private class Connection : ObserverType, Disposable { parent._connection = nil parent._subject = nil } - _parent = nil + self._parent = nil - _subscription?.dispose() - _subscription = nil + self._subscription?.dispose() + self._subscription = nil // } } } @@ -207,22 +208,22 @@ final private class ConnectableObservableAdapter fileprivate var _connection: ConnectionType? init(source: Observable, makeSubject: @escaping () -> S) { - _source = source - _makeSubject = makeSubject - _subject = nil - _connection = nil + self._source = source + self._makeSubject = makeSubject + self._subject = nil + self._connection = nil } override func connect() -> Disposable { - return _lock.calculateLocked { - if let connection = _connection { + return self._lock.calculateLocked { + if let connection = self._connection { return connection } let singleAssignmentDisposable = SingleAssignmentDisposable() - let connection = Connection(parent: self, subjectObserver: self.lazySubject.asObserver(), lock: _lock, subscription: singleAssignmentDisposable) - _connection = connection - let subscription = _source.subscribe(connection) + let connection = Connection(parent: self, subjectObserver: self.lazySubject.asObserver(), lock: self._lock, subscription: singleAssignmentDisposable) + self._connection = connection + let subscription = self._source.subscribe(connection) singleAssignmentDisposable.setDisposable(subscription) return connection } @@ -233,18 +234,19 @@ final private class ConnectableObservableAdapter return subject } - let subject = _makeSubject() + let subject = self._makeSubject() self._subject = subject return subject } - override func subscribe(_ observer: O) -> Disposable where O.E == S.E { + override func subscribe(_ observer: O) -> Disposable where O.E == S.E { return self.lazySubject.subscribe(observer) } } final private class RefCountSink - : Sink, ObserverType where CO.E == O.E { + : Sink + , ObserverType where CO.E == O.E { typealias Element = O.E typealias Parent = RefCount @@ -253,25 +255,26 @@ final private class RefCountSink private var _connectionIdSnapshot: Int64 = -1 init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - let subscription = _parent._source.subscribe(self) - _parent._lock.lock(); defer { _parent._lock.unlock() } // { + let subscription = self._parent._source.subscribe(self) + self._parent._lock.lock(); defer { self._parent._lock.unlock() } // { - _connectionIdSnapshot = _parent._connectionId + self._connectionIdSnapshot = self._parent._connectionId if self.disposed { return Disposables.create() } - if _parent._count == 0 { - _parent._count = 1 - _parent._connectableSubscription = _parent._source.connect() - } else { - _parent._count = _parent._count + 1 + if self._parent._count == 0 { + self._parent._count = 1 + self._parent._connectableSubscription = self._parent._source.connect() + } + else { + self._parent._count += 1 } // } @@ -289,9 +292,11 @@ final private class RefCountSink connectableSubscription.dispose() self._parent._connectableSubscription = nil - } else if self._parent._count > 1 { - self._parent._count = self._parent._count - 1 - } else { + } + else if self._parent._count > 1 { + self._parent._count -= 1 + } + else { rxFatalError("Something went wrong with RefCount disposing mechanism") } // } @@ -301,20 +306,20 @@ final private class RefCountSink func on(_ event: Event) { switch event { case .next: - forwardOn(event) + self.forwardOn(event) case .error, .completed: - _parent._lock.lock() // { - if _parent._connectionId == self._connectionIdSnapshot { - let connection = _parent._connectableSubscription + self._parent._lock.lock() // { + if self._parent._connectionId == self._connectionIdSnapshot { + let connection = self._parent._connectableSubscription defer { connection?.dispose() } - _parent._count = 0 - _parent._connectionId = _parent._connectionId &+ 1 - _parent._connectableSubscription = nil + self._parent._count = 0 + self._parent._connectionId = self._parent._connectionId &+ 1 + self._parent._connectableSubscription = nil } // } - _parent._lock.unlock() - forwardOn(event) - dispose() + self._parent._lock.unlock() + self.forwardOn(event) + self.dispose() } } } @@ -330,7 +335,7 @@ final private class RefCount: Producer { fileprivate let _source: CO init(source: CO) { - _source = source + self._source = source } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == CO.E { @@ -348,34 +353,35 @@ final private class MulticastSink: Sink, Obs private let _parent: MutlicastType init(parent: MutlicastType, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { do { - let subject = try _parent._subjectSelector() - let connectable = ConnectableObservableAdapter(source: _parent._source, makeSubject: { subject }) + let subject = try self._parent._subjectSelector() + let connectable = ConnectableObservableAdapter(source: self._parent._source, makeSubject: { subject }) - let observable = try _parent._selector(connectable) + let observable = try self._parent._selector(connectable) let subscription = observable.subscribe(self) let connection = connectable.connect() return Disposables.create(subscription, connection) - } catch let e { - forwardOn(.error(e)) - dispose() + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() return Disposables.create() } } func on(_ event: Event) { - forwardOn(event) + self.forwardOn(event) switch event { - case .next: break - case .error, .completed: - dispose() + case .next: break + case .error, .completed: + self.dispose() } } } @@ -389,9 +395,9 @@ final private class Multicast: Producer { fileprivate let _selector: SelectorType init(source: Observable, subjectSelector: @escaping SubjectSelectorType, selector: @escaping SelectorType) { - _source = source - _subjectSelector = subjectSelector - _selector = selector + self._source = source + self._subjectSelector = subjectSelector + self._selector = selector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift index 77ac7303b4..51aa3f0504 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Never.swift @@ -20,7 +20,7 @@ extension ObservableType { } } -final private class NeverProducer : Producer { +final private class NeverProducer: Producer { override func subscribe(_ observer: O) -> Disposable where O.E == Element { return Disposables.create() } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift index 552ce7dc2d..cf7e0b6b81 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ObserveOn.swift @@ -23,13 +23,14 @@ extension ObservableType { -> Observable { if let scheduler = scheduler as? SerialDispatchQueueScheduler { return ObserveOnSerialDispatchQueue(source: self.asObservable(), scheduler: scheduler) - } else { + } + else { return ObserveOn(source: self.asObservable(), scheduler: scheduler) } } } -final private class ObserveOn : Producer { +final private class ObserveOn: Producer { let scheduler: ImmediateSchedulerType let source: Observable @@ -43,8 +44,8 @@ final private class ObserveOn : Producer { } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { - let sink = ObserveOnSink(scheduler: scheduler, observer: observer, cancel: cancel) - let subscription = source.subscribe(sink) + let sink = ObserveOnSink(scheduler: self.scheduler, observer: observer, cancel: cancel) + let subscription = self.source.subscribe(sink) return (sink: sink, subscription: subscription) } @@ -55,14 +56,14 @@ final private class ObserveOn : Producer { #endif } -enum ObserveOnState: Int32 { +enum ObserveOnState : Int32 { // pump is not running case stopped = 0 // pump is running case running = 1 } -final private class ObserveOnSink : ObserverBase { +final private class ObserveOnSink: ObserverBase { typealias E = O.E let _scheduler: ImmediateSchedulerType @@ -78,13 +79,13 @@ final private class ObserveOnSink : ObserverBase { let _cancel: Cancelable init(scheduler: ImmediateSchedulerType, observer: O, cancel: Cancelable) { - _scheduler = scheduler - _observer = observer - _cancel = cancel + self._scheduler = scheduler + self._observer = observer + self._cancel = cancel } override func onCore(_ event: Event) { - let shouldStart = _lock.calculateLocked { () -> Bool in + let shouldStart = self._lock.calculateLocked { () -> Bool in self._queue.enqueue(event) switch self._state { @@ -97,7 +98,7 @@ final private class ObserveOnSink : ObserverBase { } if shouldStart { - _scheduleDisposable.disposable = self._scheduler.scheduleRecursive((), action: self.run) + self._scheduleDisposable.disposable = self._scheduler.scheduleRecursive((), action: self.run) } } @@ -105,22 +106,24 @@ final private class ObserveOnSink : ObserverBase { let (nextEvent, observer) = self._lock.calculateLocked { () -> (Event?, O) in if !self._queue.isEmpty { return (self._queue.dequeue(), self._observer) - } else { + } + else { self._state = .stopped return (nil, self._observer) } } - if let nextEvent = nextEvent, !_cancel.isDisposed { + if let nextEvent = nextEvent, !self._cancel.isDisposed { observer.on(nextEvent) if nextEvent.isStopEvent { - dispose() + self.dispose() } - } else { + } + else { return } - let shouldContinue = _shouldContinue_synchronized() + let shouldContinue = self._shouldContinue_synchronized() if shouldContinue { recurse(()) @@ -128,10 +131,11 @@ final private class ObserveOnSink : ObserverBase { } func _shouldContinue_synchronized() -> Bool { - _lock.lock(); defer { _lock.unlock() } // { + self._lock.lock(); defer { self._lock.unlock() } // { if !self._queue.isEmpty { return true - } else { + } + else { self._state = .stopped return false } @@ -141,13 +145,13 @@ final private class ObserveOnSink : ObserverBase { override func dispose() { super.dispose() - _cancel.dispose() - _scheduleDisposable.dispose() + self._cancel.dispose() + self._scheduleDisposable.dispose() } } #if TRACE_RESOURCES - private var _numberOfSerialDispatchQueueObservables = AtomicInt(0) + fileprivate let _numberOfSerialDispatchQueueObservables = AtomicInt(0) extension Resources { /** Counts number of `SerialDispatchQueueObservables`. @@ -155,12 +159,12 @@ final private class ObserveOnSink : ObserverBase { Purposed for unit tests. */ public static var numberOfSerialDispatchQueueObservables: Int32 { - return _numberOfSerialDispatchQueueObservables.load() + return load(_numberOfSerialDispatchQueueObservables) } } #endif -final private class ObserveOnSerialDispatchQueueSink : ObserverBase { +final private class ObserveOnSerialDispatchQueueSink: ObserverBase { let scheduler: SerialDispatchQueueScheduler let observer: O @@ -174,7 +178,7 @@ final private class ObserveOnSerialDispatchQueueSink : Observer self.cancel = cancel super.init() - cachedScheduleLambda = { pair in + self.cachedScheduleLambda = { pair in guard !cancel.isDisposed else { return Disposables.create() } pair.sink.observer.on(pair.event) @@ -188,17 +192,17 @@ final private class ObserveOnSerialDispatchQueueSink : Observer } override func onCore(_ event: Event) { - _ = self.scheduler.schedule((self, event), action: cachedScheduleLambda!) + _ = self.scheduler.schedule((self, event), action: self.cachedScheduleLambda!) } override func dispose() { super.dispose() - cancel.dispose() + self.cancel.dispose() } } -final private class ObserveOnSerialDispatchQueue : Producer { +final private class ObserveOnSerialDispatchQueue: Producer { let scheduler: SerialDispatchQueueScheduler let source: Observable @@ -208,20 +212,20 @@ final private class ObserveOnSerialDispatchQueue : Producer { #if TRACE_RESOURCES _ = Resources.incrementTotal() - _ = _numberOfSerialDispatchQueueObservables.increment() + _ = increment(_numberOfSerialDispatchQueueObservables) #endif } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { - let sink = ObserveOnSerialDispatchQueueSink(scheduler: scheduler, observer: observer, cancel: cancel) - let subscription = source.subscribe(sink) + let sink = ObserveOnSerialDispatchQueueSink(scheduler: self.scheduler, observer: observer, cancel: cancel) + let subscription = self.source.subscribe(sink) return (sink: sink, subscription: subscription) } #if TRACE_RESOURCES deinit { _ = Resources.decrementTotal() - _ = _numberOfSerialDispatchQueueObservables.decrement() + _ = decrement(_numberOfSerialDispatchQueueObservables) } #endif } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift index 4f40fe14e3..43fede5aec 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Optional.swift @@ -33,19 +33,19 @@ extension ObservableType { } } -final private class ObservableOptionalScheduledSink : Sink { +final private class ObservableOptionalScheduledSink: Sink { typealias E = O.E typealias Parent = ObservableOptionalScheduled private let _parent: Parent init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - return _parent._scheduler.schedule(_parent._optional) { (optional: E?) -> Disposable in + return self._parent._scheduler.schedule(self._parent._optional) { (optional: E?) -> Disposable in if let next = optional { self.forwardOn(.next(next)) return self._parent._scheduler.schedule(()) { _ in @@ -62,16 +62,16 @@ final private class ObservableOptionalScheduledSink : Sink { } } -final private class ObservableOptionalScheduled : Producer { +final private class ObservableOptionalScheduled: Producer { fileprivate let _optional: E? fileprivate let _scheduler: ImmediateSchedulerType init(optional: E?, scheduler: ImmediateSchedulerType) { - _optional = optional - _scheduler = scheduler + self._optional = optional + self._scheduler = scheduler } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = ObservableOptionalScheduledSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) @@ -80,13 +80,13 @@ final private class ObservableOptionalScheduled : Producer { final private class ObservableOptional: Producer { private let _optional: E? - + init(optional: E?) { - _optional = optional + self._optional = optional } - + override func subscribe(_ observer: O) -> Disposable where O.E == E { - if let element = _optional { + if let element = self._optional { observer.on(.next(element)) } observer.on(.completed) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift index a1199e9796..f687d1145f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Producer.swift @@ -11,15 +11,16 @@ class Producer : Observable { super.init() } - override func subscribe(_ observer: O) -> Disposable where O.E == Element { + override func subscribe(_ observer: O) -> Disposable where O.E == Element { if !CurrentThreadScheduler.isScheduleRequired { // The returned disposable needs to release all references once it was disposed. let disposer = SinkDisposer() - let sinkAndSubscription = run(observer, cancel: disposer) + let sinkAndSubscription = self.run(observer, cancel: disposer) disposer.setSinkAndSubscription(sink: sinkAndSubscription.sink, subscription: sinkAndSubscription.subscription) return disposer - } else { + } + else { return CurrentThreadScheduler.instance.schedule(()) { _ in let disposer = SinkDisposer() let sinkAndSubscription = self.run(observer, cancel: disposer) @@ -30,7 +31,7 @@ class Producer : Observable { } } - func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { rxAbstractMethod() } } @@ -41,19 +42,19 @@ fileprivate final class SinkDisposer: Cancelable { case sinkAndSubscriptionSet = 2 } - private var _state = AtomicInt(0) + private let _state = AtomicInt(0) private var _sink: Disposable? private var _subscription: Disposable? var isDisposed: Bool { - return _state.isFlagSet(DisposeState.disposed.rawValue) + return isFlagSet(self._state, DisposeState.disposed.rawValue) } func setSinkAndSubscription(sink: Disposable, subscription: Disposable) { - _sink = sink - _subscription = subscription + self._sink = sink + self._subscription = subscription - let previousState = _state.fetchOr(DisposeState.sinkAndSubscriptionSet.rawValue) + let previousState = fetchOr(self._state, DisposeState.sinkAndSubscriptionSet.rawValue) if (previousState & DisposeState.sinkAndSubscriptionSet.rawValue) != 0 { rxFatalError("Sink and subscription were already set") } @@ -61,31 +62,31 @@ fileprivate final class SinkDisposer: Cancelable { if (previousState & DisposeState.disposed.rawValue) != 0 { sink.dispose() subscription.dispose() - _sink = nil - _subscription = nil + self._sink = nil + self._subscription = nil } } func dispose() { - let previousState = _state.fetchOr(DisposeState.disposed.rawValue) + let previousState = fetchOr(self._state, DisposeState.disposed.rawValue) if (previousState & DisposeState.disposed.rawValue) != 0 { return } if (previousState & DisposeState.sinkAndSubscriptionSet.rawValue) != 0 { - guard let sink = _sink else { + guard let sink = self._sink else { rxFatalError("Sink not set") } - guard let subscription = _subscription else { + guard let subscription = self._subscription else { rxFatalError("Subscription not set") } sink.dispose() subscription.dispose() - _sink = nil - _subscription = nil + self._sink = nil + self._subscription = nil } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift index 8d455cae4f..67a441204b 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Range.swift @@ -6,7 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -extension ObservableType where E: RxAbstractInteger { +extension ObservableType where E : RxAbstractInteger { /** Generates an observable sequence of integral numbers within a specified range, using the specified scheduler to generate and send out observer messages. @@ -22,48 +22,49 @@ extension ObservableType where E: RxAbstractInteger { } } -final private class RangeProducer : Producer { +final private class RangeProducer: Producer { fileprivate let _start: E fileprivate let _count: E fileprivate let _scheduler: ImmediateSchedulerType init(start: E, count: E, scheduler: ImmediateSchedulerType) { - if count < 0 { + guard count >= 0 else { rxFatalError("count can't be negative") } - if start &+ (count - 1) < start { + guard start &+ (count - 1) >= start || count == 0 else { rxFatalError("overflow of count") } - _start = start - _count = count - _scheduler = scheduler + self._start = start + self._count = count + self._scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = RangeSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) } } -final private class RangeSink : Sink where O.E: RxAbstractInteger { +final private class RangeSink: Sink where O.E: RxAbstractInteger { typealias Parent = RangeProducer - + private let _parent: Parent - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - return _parent._scheduler.scheduleRecursive(0 as O.E) { i, recurse in + return self._parent._scheduler.scheduleRecursive(0 as O.E) { i, recurse in if i < self._parent._count { self.forwardOn(.next(self._parent._start + i)) recurse(i + 1) - } else { + } + else { self.forwardOn(.completed) self.dispose() } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift index 964d6c6632..5b3efd82e5 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Reduce.swift @@ -6,6 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // + extension ObservableType { /** Applies an `accumulator` function over an observable sequence, returning the result of the aggregation as a single element in the result sequence. The specified `seed` value is used as the initial accumulator value. @@ -41,65 +42,68 @@ extension ObservableType { } } -final private class ReduceSink : Sink, ObserverType { +final private class ReduceSink: Sink, ObserverType { typealias ResultType = O.E typealias Parent = Reduce - + private let _parent: Parent private var _accumulation: AccumulateType - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _accumulation = parent._seed - + self._parent = parent + self._accumulation = parent._seed + super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): do { - _accumulation = try _parent._accumulator(_accumulation, value) - } catch let e { - forwardOn(.error(e)) - dispose() + self._accumulation = try self._parent._accumulator(self._accumulation, value) + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() } case .error(let e): - forwardOn(.error(e)) - dispose() + self.forwardOn(.error(e)) + self.dispose() case .completed: do { - let result = try _parent._mapResult(_accumulation) - forwardOn(.next(result)) - forwardOn(.completed) - dispose() - } catch let e { - forwardOn(.error(e)) - dispose() + let result = try self._parent._mapResult(self._accumulation) + self.forwardOn(.next(result)) + self.forwardOn(.completed) + self.dispose() + } + catch let e { + self.forwardOn(.error(e)) + self.dispose() } } } } -final private class Reduce : Producer { +final private class Reduce: Producer { typealias AccumulatorType = (AccumulateType, SourceType) throws -> AccumulateType typealias ResultSelectorType = (AccumulateType) throws -> ResultType - + fileprivate let _source: Observable fileprivate let _seed: AccumulateType fileprivate let _accumulator: AccumulatorType fileprivate let _mapResult: ResultSelectorType - + init(source: Observable, seed: AccumulateType, accumulator: @escaping AccumulatorType, mapResult: @escaping ResultSelectorType) { - _source = source - _seed = seed - _accumulator = accumulator - _mapResult = mapResult + self._source = source + self._seed = seed + self._accumulator = accumulator + self._mapResult = mapResult } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType { let sink = ReduceSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift index f66adb29d4..f430c90b81 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Repeat.swift @@ -21,16 +21,16 @@ extension ObservableType { } } -final private class RepeatElement : Producer { +final private class RepeatElement: Producer { fileprivate let _element: Element fileprivate let _scheduler: ImmediateSchedulerType - + init(element: Element, scheduler: ImmediateSchedulerType) { - _element = element - _scheduler = scheduler + self._element = element + self._scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = RepeatElementSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() @@ -38,18 +38,18 @@ final private class RepeatElement : Producer { } } -final private class RepeatElementSink : Sink { +final private class RepeatElementSink: Sink { typealias Parent = RepeatElement - + private let _parent: Parent - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - return _parent._scheduler.scheduleRecursive(_parent._element) { e, recurse in + return self._parent._scheduler.scheduleRecursive(self._parent._element) { e, recurse in self.forwardOn(.next(e)) recurse(e) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift index 39a3e4ba39..ce82df9bcc 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/RetryWhen.swift @@ -40,32 +40,33 @@ extension ObservableType { final private class RetryTriggerSink : ObserverType where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E { typealias E = TriggerObservable.E - + typealias Parent = RetryWhenSequenceSinkIter - + fileprivate let _parent: Parent init(parent: Parent) { - _parent = parent + self._parent = parent } func on(_ event: Event) { switch event { case .next: - _parent._parent._lastError = nil - _parent._parent.schedule(.moveNext) + self._parent._parent._lastError = nil + self._parent._parent.schedule(.moveNext) case .error(let e): - _parent._parent.forwardOn(.error(e)) - _parent._parent.dispose() + self._parent._parent.forwardOn(.error(e)) + self._parent._parent.dispose() case .completed: - _parent._parent.forwardOn(.completed) - _parent._parent.dispose() + self._parent._parent.forwardOn(.completed) + self._parent._parent.dispose() } } } final private class RetryWhenSequenceSinkIter - : ObserverType, Disposable where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E { + : ObserverType + , Disposable where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E { typealias E = O.E typealias Parent = RetryWhenSequenceSink @@ -74,37 +75,38 @@ final private class RetryWhenSequenceSinkIter) { switch event { case .next: - _parent.forwardOn(event) + self._parent.forwardOn(event) case .error(let error): - _parent._lastError = error + self._parent._lastError = error if let failedWith = error as? Error { // dispose current subscription - _subscription.dispose() + self._subscription.dispose() - let errorHandlerSubscription = _parent._notifier.subscribe(RetryTriggerSink(parent: self)) - _errorHandlerSubscription.setDisposable(errorHandlerSubscription) - _parent._errorSubject.on(.next(failedWith)) - } else { - _parent.forwardOn(.error(error)) - _parent.dispose() + let errorHandlerSubscription = self._parent._notifier.subscribe(RetryTriggerSink(parent: self)) + self._errorHandlerSubscription.setDisposable(errorHandlerSubscription) + self._parent._errorSubject.on(.next(failedWith)) + } + else { + self._parent.forwardOn(.error(error)) + self._parent.dispose() } case .completed: - _parent.forwardOn(event) - _parent.dispose() + self._parent.forwardOn(event) + self._parent.dispose() } } final func dispose() { - _subscription.dispose() - _errorHandlerSubscription.dispose() + self._subscription.dispose() + self._errorHandlerSubscription.dispose() } } @@ -112,33 +114,34 @@ final private class RetryWhenSequenceSink where S.Iterator.Element: ObservableType, S.Iterator.Element.E == O.E { typealias Element = O.E typealias Parent = RetryWhenSequence - + let _lock = RecursiveLock() - + fileprivate let _parent: Parent - + fileprivate var _lastError: Swift.Error? fileprivate let _errorSubject = PublishSubject() fileprivate let _handler: Observable fileprivate let _notifier = PublishSubject() init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _handler = parent._notificationHandler(_errorSubject).asObservable() + self._parent = parent + self._handler = parent._notificationHandler(self._errorSubject).asObservable() super.init(observer: observer, cancel: cancel) } - + override func done() { - if let lastError = _lastError { - forwardOn(.error(lastError)) - _lastError = nil - } else { - forwardOn(.completed) + if let lastError = self._lastError { + self.forwardOn(.error(lastError)) + self._lastError = nil + } + else { + self.forwardOn(.completed) } - dispose() + self.dispose() } - + override func extract(_ observable: Observable) -> SequenceGenerator? { // It is important to always return `nil` here because there are sideffects in the `run` method // that are dependant on particular `retryWhen` operator so single operator stack can't be reused in this @@ -154,24 +157,24 @@ final private class RetryWhenSequenceSink Disposable { - let triggerSubscription = _handler.subscribe(_notifier.asObserver()) + let triggerSubscription = self._handler.subscribe(self._notifier.asObserver()) let superSubscription = super.run(sources) return Disposables.create(superSubscription, triggerSubscription) } } -final private class RetryWhenSequence : Producer where S.Iterator.Element: ObservableType { +final private class RetryWhenSequence: Producer where S.Iterator.Element: ObservableType { typealias Element = S.Iterator.Element.E - + fileprivate let _sources: S fileprivate let _notificationHandler: (Observable) -> TriggerObservable - + init(sources: S, notificationHandler: @escaping (Observable) -> TriggerObservable) { - _sources = sources - _notificationHandler = notificationHandler + self._sources = sources + self._notificationHandler = notificationHandler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = RetryWhenSequenceSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run((self._sources.makeIterator(), nil)) return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift index 4d479b1e9a..a930f0d456 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sample.swift @@ -27,108 +27,104 @@ extension ObservableType { } final private class SamplerSink - : ObserverType, LockOwnerType, SynchronizedOnType { + : ObserverType + , LockOwnerType + , SynchronizedOnType { typealias E = SampleType - + typealias Parent = SampleSequenceSink - + fileprivate let _parent: Parent var _lock: RecursiveLock { - return _parent._lock + return self._parent._lock } - + init(parent: Parent) { - _parent = parent + self._parent = parent } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { - case .next: + case .next, .completed: if let element = _parent._element { - _parent._element = nil - _parent.forwardOn(.next(element)) + self._parent._element = nil + self._parent.forwardOn(.next(element)) } - if _parent._atEnd { - _parent.forwardOn(.completed) - _parent.dispose() + if self._parent._atEnd { + self._parent.forwardOn(.completed) + self._parent.dispose() } case .error(let e): - _parent.forwardOn(.error(e)) - _parent.dispose() - case .completed: - if let element = _parent._element { - _parent._element = nil - _parent.forwardOn(.next(element)) - } - if _parent._atEnd { - _parent.forwardOn(.completed) - _parent.dispose() - } + self._parent.forwardOn(.error(e)) + self._parent.dispose() } } } final private class SampleSequenceSink - : Sink, ObserverType, LockOwnerType, SynchronizedOnType { + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType { typealias Element = O.E typealias Parent = Sample - + fileprivate let _parent: Parent let _lock = RecursiveLock() - + // state fileprivate var _element = nil as Element? fileprivate var _atEnd = false - + fileprivate let _sourceSubscription = SingleAssignmentDisposable() - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - _sourceSubscription.setDisposable(_parent._source.subscribe(self)) - let samplerSubscription = _parent._sampler.subscribe(SamplerSink(parent: self)) - + self._sourceSubscription.setDisposable(self._parent._source.subscribe(self)) + let samplerSubscription = self._parent._sampler.subscribe(SamplerSink(parent: self)) + return Disposables.create(_sourceSubscription, samplerSubscription) } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next(let element): - _element = element + self._element = element case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - _atEnd = true - _sourceSubscription.dispose() + self._atEnd = true + self._sourceSubscription.dispose() } } - + } -final private class Sample : Producer { +final private class Sample: Producer { fileprivate let _source: Observable fileprivate let _sampler: Observable init(source: Observable, sampler: Observable) { - _source = source - _sampler = sampler + self._source = source + self._sampler = sampler } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = SampleSequenceSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift index 56877b2703..c6df6084e9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Scan.swift @@ -44,57 +44,58 @@ extension ObservableType { } } -final private class ScanSink : Sink, ObserverType { +final private class ScanSink: Sink, ObserverType { typealias Accumulate = O.E typealias Parent = Scan typealias E = ElementType - + fileprivate let _parent: Parent fileprivate var _accumulate: Accumulate - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _accumulate = parent._seed + self._parent = parent + self._accumulate = parent._seed super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let element): do { - try _parent._accumulator(&_accumulate, element) - forwardOn(.next(_accumulate)) - } catch let error { - forwardOn(.error(error)) - dispose() + try self._parent._accumulator(&self._accumulate, element) + self.forwardOn(.next(self._accumulate)) + } + catch let error { + self.forwardOn(.error(error)) + self.dispose() } case .error(let error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() case .completed: - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } - + } final private class Scan: Producer { typealias Accumulator = (inout Accumulate, Element) throws -> Void - + fileprivate let _source: Observable fileprivate let _seed: Accumulate fileprivate let _accumulator: Accumulator - + init(source: Observable, seed: Accumulate, accumulator: @escaping Accumulator) { - _source = source - _seed = seed - _accumulator = accumulator + self._source = source + self._seed = seed + self._accumulator = accumulator } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Accumulate { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Accumulate { let sink = ScanSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift index 79b0af4e39..a7f6450a32 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sequence.swift @@ -47,23 +47,24 @@ extension ObservableType { } } -final private class ObservableSequenceSink : Sink where S.Iterator.Element == O.E { +final private class ObservableSequenceSink: Sink where S.Iterator.Element == O.E { typealias Parent = ObservableSequence private let _parent: Parent init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - return _parent._scheduler.scheduleRecursive((_parent._elements.makeIterator(), _parent._elements)) { (iterator, recurse) in + return self._parent._scheduler.scheduleRecursive(self._parent._elements.makeIterator()) { iterator, recurse in var mutableIterator = iterator - if let next = mutableIterator.0.next() { + if let next = mutableIterator.next() { self.forwardOn(.next(next)) recurse(mutableIterator) - } else { + } + else { self.forwardOn(.completed) self.dispose() } @@ -71,16 +72,16 @@ final private class ObservableSequenceSink : Sink< } } -final private class ObservableSequence : Producer { +final private class ObservableSequence: Producer { fileprivate let _elements: S fileprivate let _scheduler: ImmediateSchedulerType init(elements: S, scheduler: ImmediateSchedulerType) { - _elements = elements - _scheduler = scheduler + self._elements = elements + self._scheduler = scheduler } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = ObservableSequenceSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift index f32fedb194..44e37d9fb7 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ShareReplayScope.swift @@ -157,7 +157,8 @@ extension ObservableType { } fileprivate final class ShareReplay1WhileConnectedConnection - : ObserverType, SynchronizedUnsubscribeType { + : ObserverType + , SynchronizedUnsubscribeType { typealias E = Element typealias Observers = AnyObserver.s typealias DisposeKey = Observers.KeyType @@ -172,8 +173,8 @@ fileprivate final class ShareReplay1WhileConnectedConnection fileprivate var _element: Element? init(parent: Parent, lock: RecursiveLock) { - _parent = parent - _lock = lock + self._parent = parent + self._lock = lock #if TRACE_RESOURCES _ = Resources.incrementTotal() @@ -181,57 +182,57 @@ fileprivate final class ShareReplay1WhileConnectedConnection } final func on(_ event: Event) { - _lock.lock() - let observers = _synchronized_on(event) - _lock.unlock() + self._lock.lock() + let observers = self._synchronized_on(event) + self._lock.unlock() dispatch(observers, event) } final private func _synchronized_on(_ event: Event) -> Observers { - if _disposed { + if self._disposed { return Observers() } switch event { case .next(let element): - _element = element - return _observers + self._element = element + return self._observers case .error, .completed: - let observers = _observers + let observers = self._observers self._synchronized_dispose() return observers } } final func connect() { - _subscription.setDisposable(_parent._source.subscribe(self)) + self._subscription.setDisposable(self._parent._source.subscribe(self)) } final func _synchronized_subscribe(_ observer: O) -> Disposable where O.E == Element { - _lock.lock(); defer { _lock.unlock() } - if let element = _element { + self._lock.lock(); defer { self._lock.unlock() } + if let element = self._element { observer.on(.next(element)) } - let disposeKey = _observers.insert(observer.on) + let disposeKey = self._observers.insert(observer.on) return SubscriptionDisposable(owner: self, key: disposeKey) } final private func _synchronized_dispose() { - _disposed = true - if _parent._connection === self { - _parent._connection = nil + self._disposed = true + if self._parent._connection === self { + self._parent._connection = nil } - _observers = Observers() + self._observers = Observers() } final func synchronizedUnsubscribe(_ disposeKey: DisposeKey) { - _lock.lock() - let shouldDisconnect = _synchronized_unsubscribe(disposeKey) - _lock.unlock() + self._lock.lock() + let shouldDisconnect = self._synchronized_unsubscribe(disposeKey) + self._lock.unlock() if shouldDisconnect { - _subscription.dispose() + self._subscription.dispose() } } @@ -242,8 +243,8 @@ fileprivate final class ShareReplay1WhileConnectedConnection return false } - if _observers.count == 0 { - _synchronized_dispose() + if self._observers.count == 0 { + self._synchronized_dispose() return true } @@ -274,15 +275,15 @@ final private class ShareReplay1WhileConnected } override func subscribe(_ observer: O) -> Disposable where O.E == E { - _lock.lock() + self._lock.lock() - let connection = _synchronized_subscribe(observer) + let connection = self._synchronized_subscribe(observer) let count = connection._observers.count let disposable = connection._synchronized_subscribe(observer) - _lock.unlock() - + self._lock.unlock() + if count == 0 { connection.connect() } @@ -291,16 +292,17 @@ final private class ShareReplay1WhileConnected } @inline(__always) - private func _synchronized_subscribe(_ observer: O) -> Connection where O.E == E { + private func _synchronized_subscribe(_ observer: O) -> Connection where O.E == E { let connection: Connection - if let existingConnection = _connection { + if let existingConnection = self._connection { connection = existingConnection - } else { + } + else { connection = ShareReplay1WhileConnectedConnection( parent: self, - lock: _lock) - _connection = connection + lock: self._lock) + self._connection = connection } return connection @@ -308,7 +310,8 @@ final private class ShareReplay1WhileConnected } fileprivate final class ShareWhileConnectedConnection - : ObserverType, SynchronizedUnsubscribeType { + : ObserverType + , SynchronizedUnsubscribeType { typealias E = Element typealias Observers = AnyObserver.s typealias DisposeKey = Observers.KeyType @@ -322,8 +325,8 @@ fileprivate final class ShareWhileConnectedConnection fileprivate var _observers = Observers() init(parent: Parent, lock: RecursiveLock) { - _parent = parent - _lock = lock + self._parent = parent + self._lock = lock #if TRACE_RESOURCES _ = Resources.incrementTotal() @@ -331,53 +334,53 @@ fileprivate final class ShareWhileConnectedConnection } final func on(_ event: Event) { - _lock.lock() - let observers = _synchronized_on(event) - _lock.unlock() + self._lock.lock() + let observers = self._synchronized_on(event) + self._lock.unlock() dispatch(observers, event) } final private func _synchronized_on(_ event: Event) -> Observers { - if _disposed { + if self._disposed { return Observers() } switch event { case .next: - return _observers + return self._observers case .error, .completed: - let observers = _observers + let observers = self._observers self._synchronized_dispose() return observers } } final func connect() { - _subscription.setDisposable(_parent._source.subscribe(self)) + self._subscription.setDisposable(self._parent._source.subscribe(self)) } final func _synchronized_subscribe(_ observer: O) -> Disposable where O.E == Element { - _lock.lock(); defer { _lock.unlock() } + self._lock.lock(); defer { self._lock.unlock() } - let disposeKey = _observers.insert(observer.on) + let disposeKey = self._observers.insert(observer.on) return SubscriptionDisposable(owner: self, key: disposeKey) } final private func _synchronized_dispose() { - _disposed = true - if _parent._connection === self { - _parent._connection = nil + self._disposed = true + if self._parent._connection === self { + self._parent._connection = nil } - _observers = Observers() + self._observers = Observers() } final func synchronizedUnsubscribe(_ disposeKey: DisposeKey) { - _lock.lock() - let shouldDisconnect = _synchronized_unsubscribe(disposeKey) - _lock.unlock() + self._lock.lock() + let shouldDisconnect = self._synchronized_unsubscribe(disposeKey) + self._lock.unlock() if shouldDisconnect { - _subscription.dispose() + self._subscription.dispose() } } @@ -388,8 +391,8 @@ fileprivate final class ShareWhileConnectedConnection return false } - if _observers.count == 0 { - _synchronized_dispose() + if self._observers.count == 0 { + self._synchronized_dispose() return true } @@ -420,14 +423,14 @@ final private class ShareWhileConnected } override func subscribe(_ observer: O) -> Disposable where O.E == E { - _lock.lock() + self._lock.lock() - let connection = _synchronized_subscribe(observer) + let connection = self._synchronized_subscribe(observer) let count = connection._observers.count let disposable = connection._synchronized_subscribe(observer) - _lock.unlock() + self._lock.unlock() if count == 0 { connection.connect() @@ -437,18 +440,19 @@ final private class ShareWhileConnected } @inline(__always) - private func _synchronized_subscribe(_ observer: O) -> Connection where O.E == E { + private func _synchronized_subscribe(_ observer: O) -> Connection where O.E == E { let connection: Connection - if let existingConnection = _connection { + if let existingConnection = self._connection { connection = existingConnection - } else { + } + else { connection = ShareWhileConnectedConnection( parent: self, - lock: _lock) - _connection = connection + lock: self._lock) + self._connection = connection } - + return connection } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift index 265e877443..cf40b65e3d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SingleAsync.swift @@ -18,7 +18,7 @@ extension ObservableType { */ public func single() -> Observable { - return SingleAsync(source: asObservable()) + return SingleAsync(source: self.asObservable()) } /** @@ -32,7 +32,7 @@ extension ObservableType { */ public func single(_ predicate: @escaping (E) throws -> Bool) -> Observable { - return SingleAsync(source: asObservable(), predicate: predicate) + return SingleAsync(source: self.asObservable(), predicate: predicate) } } @@ -40,65 +40,66 @@ fileprivate final class SingleAsyncSink : Sink, ObserverType typealias ElementType = O.E typealias Parent = SingleAsync typealias E = ElementType - + private let _parent: Parent private var _seenValue: Bool = false - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): do { - let forward = try _parent._predicate?(value) ?? true + let forward = try self._parent._predicate?(value) ?? true if !forward { return } - } catch let error { - forwardOn(.error(error as Swift.Error)) - dispose() + } + catch let error { + self.forwardOn(.error(error as Swift.Error)) + self.dispose() return } - if _seenValue { - forwardOn(.error(RxError.moreThanOneElement)) - dispose() + if self._seenValue { + self.forwardOn(.error(RxError.moreThanOneElement)) + self.dispose() return } - _seenValue = true - forwardOn(.next(value)) + self._seenValue = true + self.forwardOn(.next(value)) case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - if (_seenValue) { - forwardOn(.completed) + if self._seenValue { + self.forwardOn(.completed) } else { - forwardOn(.error(RxError.noElements)) + self.forwardOn(.error(RxError.noElements)) } - dispose() + self.dispose() } } } final class SingleAsync: Producer { typealias Predicate = (Element) throws -> Bool - + fileprivate let _source: Observable fileprivate let _predicate: Predicate? - + init(source: Observable, predicate: Predicate? = nil) { - _source = source - _predicate = predicate + self._source = source + self._predicate = predicate } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = SingleAsyncSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift index 88c3e86dad..9b1018b610 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Sink.swift @@ -6,10 +6,10 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -class Sink : Disposable { +class Sink : Disposable { fileprivate let _observer: O fileprivate let _cancel: Cancelable - fileprivate var _disposed: Bool + fileprivate let _disposed = AtomicInt(0) #if DEBUG fileprivate let _synchronizationTracker = SynchronizationTracker() @@ -19,20 +19,19 @@ class Sink : Disposable { #if TRACE_RESOURCES _ = Resources.incrementTotal() #endif - _observer = observer - _cancel = cancel - _disposed = false + self._observer = observer + self._cancel = cancel } final func forwardOn(_ event: Event) { #if DEBUG - _synchronizationTracker.register(synchronizationErrorMessage: .default) - defer { _synchronizationTracker.unregister() } + self._synchronizationTracker.register(synchronizationErrorMessage: .default) + defer { self._synchronizationTracker.unregister() } #endif - if _disposed { + if isFlagSet(self._disposed, 1) { return } - _observer.on(event) + self._observer.on(event) } final func forwarder() -> SinkForward { @@ -40,12 +39,12 @@ class Sink : Disposable { } final var disposed: Bool { - return _disposed + return isFlagSet(self._disposed, 1) } func dispose() { - _disposed = true - _cancel.dispose() + fetchOr(self._disposed, 1) + self._cancel.dispose() } deinit { @@ -61,16 +60,16 @@ final class SinkForward: ObserverType { private let _forward: Sink init(forward: Sink) { - _forward = forward + self._forward = forward } final func on(_ event: Event) { switch event { case .next: - _forward._observer.on(event) + self._forward._observer.on(event) case .error, .completed: - _forward._observer.on(event) - _forward._cancel.dispose() + self._forward._observer.on(event) + self._forward._cancel.dispose() } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift index 96186c7dde..bc49283fdb 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Skip.swift @@ -18,7 +18,7 @@ extension ObservableType { */ public func skip(_ count: Int) -> Observable { - return SkipCount(source: asObservable(), count: count) + return SkipCount(source: self.asObservable(), count: count) } } @@ -41,52 +41,53 @@ extension ObservableType { // count version -final private class SkipCountSink : Sink, ObserverType { +final private class SkipCountSink: Sink, ObserverType { typealias Element = O.E typealias Parent = SkipCount - + let parent: Parent - + var remaining: Int - + init(parent: Parent, observer: O, cancel: Cancelable) { self.parent = parent self.remaining = parent.count super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): - - if remaining <= 0 { - forwardOn(.next(value)) - } else { - remaining -= 1 + + if self.remaining <= 0 { + self.forwardOn(.next(value)) + } + else { + self.remaining -= 1 } case .error: - forwardOn(event) + self.forwardOn(event) self.dispose() case .completed: - forwardOn(event) + self.forwardOn(event) self.dispose() } } - + } final private class SkipCount: Producer { let source: Observable let count: Int - + init(source: Observable, count: Int) { self.source = source self.count = count } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = SkipCountSink(parent: self, observer: observer, cancel: cancel) - let subscription = source.subscribe(sink) + let subscription = self.source.subscribe(sink) return (sink: sink, subscription: subscription) } @@ -94,47 +95,47 @@ final private class SkipCount: Producer { // time version -final private class SkipTimeSink : Sink, ObserverType where O.E == ElementType { +final private class SkipTimeSink: Sink, ObserverType where O.E == ElementType { typealias Parent = SkipTime typealias Element = ElementType let parent: Parent - + // state var open = false - + init(parent: Parent, observer: O, cancel: Cancelable) { self.parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): - if open { - forwardOn(.next(value)) + if self.open { + self.forwardOn(.next(value)) } case .error: - forwardOn(event) + self.forwardOn(event) self.dispose() case .completed: - forwardOn(event) + self.forwardOn(event) self.dispose() } } - + func tick() { - open = true + self.open = true } - + func run() -> Disposable { - let disposeTimer = parent.scheduler.scheduleRelative((), dueTime: self.parent.duration) { _ in + let disposeTimer = self.parent.scheduler.scheduleRelative((), dueTime: self.parent.duration) { _ in self.tick() return Disposables.create() } - - let disposeSubscription = parent.source.subscribe(self) - + + let disposeSubscription = self.parent.source.subscribe(self) + return Disposables.create(disposeTimer, disposeSubscription) } } @@ -143,14 +144,14 @@ final private class SkipTime: Producer { let source: Observable let duration: RxTimeInterval let scheduler: SchedulerType - + init(source: Observable, duration: RxTimeInterval, scheduler: SchedulerType) { self.source = source self.scheduler = scheduler self.duration = duration } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = SkipTimeSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift index d466cce36f..7681b14143 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipUntil.swift @@ -18,47 +18,49 @@ extension ObservableType { */ public func skipUntil(_ other: O) -> Observable { - return SkipUntil(source: asObservable(), other: other.asObservable()) + return SkipUntil(source: self.asObservable(), other: other.asObservable()) } } final private class SkipUntilSinkOther - : ObserverType, LockOwnerType, SynchronizedOnType { + : ObserverType + , LockOwnerType + , SynchronizedOnType { typealias Parent = SkipUntilSink typealias E = Other - + fileprivate let _parent: Parent var _lock: RecursiveLock { - return _parent._lock + return self._parent._lock } - + let _subscription = SingleAssignmentDisposable() init(parent: Parent) { - _parent = parent + self._parent = parent #if TRACE_RESOURCES _ = Resources.incrementTotal() #endif } func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next: - _parent._forwardElements = true - _subscription.dispose() + self._parent._forwardElements = true + self._subscription.dispose() case .error(let e): - _parent.forwardOn(.error(e)) - _parent.dispose() + self._parent.forwardOn(.error(e)) + self._parent.dispose() case .completed: - _subscription.dispose() + self._subscription.dispose() } } - + #if TRACE_RESOURCES deinit { _ = Resources.decrementTotal() @@ -67,65 +69,69 @@ final private class SkipUntilSinkOther } + final private class SkipUntilSink - : Sink, ObserverType, LockOwnerType, SynchronizedOnType { + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType { typealias E = O.E typealias Parent = SkipUntil - + let _lock = RecursiveLock() fileprivate let _parent: Parent fileprivate var _forwardElements = false - + fileprivate let _sourceSubscription = SingleAssignmentDisposable() init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next: - if _forwardElements { - forwardOn(event) + if self._forwardElements { + self.forwardOn(event) } case .error: - forwardOn(event) + self.forwardOn(event) self.dispose() case .completed: - if _forwardElements { - forwardOn(event) + if self._forwardElements { + self.forwardOn(event) } self.dispose() } } - + func run() -> Disposable { - let sourceSubscription = _parent._source.subscribe(self) + let sourceSubscription = self._parent._source.subscribe(self) let otherObserver = SkipUntilSinkOther(parent: self) - let otherSubscription = _parent._other.subscribe(otherObserver) - _sourceSubscription.setDisposable(sourceSubscription) + let otherSubscription = self._parent._other.subscribe(otherObserver) + self._sourceSubscription.setDisposable(sourceSubscription) otherObserver._subscription.setDisposable(otherSubscription) - + return Disposables.create(_sourceSubscription, otherObserver._subscription) } } final private class SkipUntil: Producer { - + fileprivate let _source: Observable fileprivate let _other: Observable - + init(source: Observable, other: Observable) { - _source = source - _other = other + self._source = source + self._other = other } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = SkipUntilSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift index 5fb122fe5c..a0fbdf5585 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SkipWhile.swift @@ -17,12 +17,11 @@ extension ObservableType { - returns: An observable sequence that contains the elements from the input sequence starting at the first element in the linear series that does not pass the test specified by predicate. */ public func skipWhile(_ predicate: @escaping (E) throws -> Bool) -> Observable { - return SkipWhile(source: asObservable(), predicate: predicate) + return SkipWhile(source: self.asObservable(), predicate: predicate) } } -final private class SkipWhileSink : Sink, ObserverType { - +final private class SkipWhileSink: Sink, ObserverType { typealias Element = O.E typealias Parent = SkipWhile @@ -30,48 +29,47 @@ final private class SkipWhileSink : Sink, ObserverType { fileprivate var _running = false init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func on(_ event: Event) { switch event { case .next(let value): - if !_running { + if !self._running { do { - _running = try !_parent._predicate(value) + self._running = try !self._parent._predicate(value) } catch let e { - forwardOn(.error(e)) - dispose() + self.forwardOn(.error(e)) + self.dispose() return } } - if _running { - forwardOn(.next(value)) + if self._running { + self.forwardOn(.next(value)) } case .error, .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } } final private class SkipWhile: Producer { typealias Predicate = (Element) throws -> Bool - typealias PredicateWithIndex = (Element, Int) throws -> Bool fileprivate let _source: Observable fileprivate let _predicate: Predicate init(source: Observable, predicate: @escaping Predicate) { - _source = source - _predicate = predicate + self._source = source + self._predicate = predicate } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = SkipWhileSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift index deebf4b52e..842f4afbc0 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/StartWith.swift @@ -33,10 +33,10 @@ final private class StartWith: Producer { } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - for e in elements { + for e in self.elements { observer.on(.next(e)) } - return (sink: Disposables.create(), subscription: source.subscribe(observer)) + return (sink: Disposables.create(), subscription: self.source.subscribe(observer)) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift index aad97d65e1..2d0d348532 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SubscribeOn.swift @@ -29,53 +29,53 @@ extension ObservableType { } } -final private class SubscribeOnSink : Sink, ObserverType where Ob.E == O.E { +final private class SubscribeOnSink: Sink, ObserverType where Ob.E == O.E { typealias Element = O.E typealias Parent = SubscribeOn - + let parent: Parent - + init(parent: Parent, observer: O, cancel: Cancelable) { self.parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { - forwardOn(event) - + self.forwardOn(event) + if event.isStopEvent { self.dispose() } } - + func run() -> Disposable { let disposeEverything = SerialDisposable() let cancelSchedule = SingleAssignmentDisposable() - + disposeEverything.disposable = cancelSchedule - - let disposeSchedule = parent.scheduler.schedule(()) { (_) -> Disposable in + + let disposeSchedule = self.parent.scheduler.schedule(()) { _ -> Disposable in let subscription = self.parent.source.subscribe(self) disposeEverything.disposable = ScheduledDisposable(scheduler: self.parent.scheduler, disposable: subscription) return Disposables.create() } cancelSchedule.setDisposable(disposeSchedule) - + return disposeEverything } } -final private class SubscribeOn : Producer { +final private class SubscribeOn: Producer { let source: Ob let scheduler: ImmediateSchedulerType - + init(source: Ob, scheduler: ImmediateSchedulerType) { self.source = source self.scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Ob.E { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Ob.E { let sink = SubscribeOnSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift index 204a3b0775..5139f0eccd 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Switch.swift @@ -21,11 +21,11 @@ extension ObservableType { */ public func flatMapLatest(_ selector: @escaping (E) throws -> O) -> Observable { - return FlatMapLatest(source: asObservable(), selector: selector) + return FlatMapLatest(source: self.asObservable(), selector: selector) } } -extension ObservableType where E: ObservableConvertibleType { +extension ObservableType where E : ObservableConvertibleType { /** Transforms an observable sequence of observable sequences into an observable sequence @@ -39,31 +39,32 @@ extension ObservableType where E: ObservableConvertibleType { - returns: The observable sequence that at any point in time produces the elements of the most recent inner observable sequence that has been received. */ public func switchLatest() -> Observable { - return Switch(source: asObservable()) + return Switch(source: self.asObservable()) } } private class SwitchSink - : Sink, ObserverType where S.E == O.E { + : Sink + , ObserverType where S.E == O.E { typealias E = SourceType fileprivate let _subscriptions: SingleAssignmentDisposable = SingleAssignmentDisposable() fileprivate let _innerSubscription: SerialDisposable = SerialDisposable() let _lock = RecursiveLock() - + // state fileprivate var _stopped = false fileprivate var _latest = 0 fileprivate var _hasLatest = false - + override init(observer: O, cancel: Cancelable) { super.init(observer: observer, cancel: cancel) } - + func run(_ source: Observable) -> Disposable { let subscription = source.subscribe(self) - _subscriptions.setDisposable(subscription) + self._subscriptions.setDisposable(subscription) return Disposables.create(_subscriptions, _innerSubscription) } @@ -73,15 +74,16 @@ private class SwitchSink (Int, Observable)? { - _lock.lock(); defer { _lock.unlock() } // { + self._lock.lock(); defer { self._lock.unlock() } // { do { - let observable = try performMap(element).asObservable() - _hasLatest = true - _latest = _latest &+ 1 - return (_latest, observable) - } catch let error { - forwardOn(.error(error)) - dispose() + let observable = try self.performMap(element).asObservable() + self._hasLatest = true + self._latest = self._latest &+ 1 + return (self._latest, observable) + } + catch let error { + self.forwardOn(.error(error)) + self.dispose() } return nil @@ -91,77 +93,79 @@ private class SwitchSink) { switch event { case .next(let element): - if let (latest, observable) = nextElementArrived(element: element) { + if let (latest, observable) = self.nextElementArrived(element: element) { let d = SingleAssignmentDisposable() - _innerSubscription.disposable = d - + self._innerSubscription.disposable = d + let observer = SwitchSinkIter(parent: self, id: latest, _self: d) let disposable = observable.subscribe(observer) d.setDisposable(disposable) } case .error(let error): - _lock.lock(); defer { _lock.unlock() } - forwardOn(.error(error)) - dispose() + self._lock.lock(); defer { self._lock.unlock() } + self.forwardOn(.error(error)) + self.dispose() case .completed: - _lock.lock(); defer { _lock.unlock() } - _stopped = true - - _subscriptions.dispose() - - if !_hasLatest { - forwardOn(.completed) - dispose() + self._lock.lock(); defer { self._lock.unlock() } + self._stopped = true + + self._subscriptions.dispose() + + if !self._hasLatest { + self.forwardOn(.completed) + self.dispose() } } } } final private class SwitchSinkIter - : ObserverType, LockOwnerType, SynchronizedOnType where S.E == O.E { + : ObserverType + , LockOwnerType + , SynchronizedOnType where S.E == O.E { typealias E = S.E typealias Parent = SwitchSink - + fileprivate let _parent: Parent fileprivate let _id: Int fileprivate let _self: Disposable var _lock: RecursiveLock { - return _parent._lock + return self._parent._lock } init(parent: Parent, id: Int, _self: Disposable) { - _parent = parent - _id = id + self._parent = parent + self._id = id self._self = _self } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next: break case .error, .completed: - _self.dispose() + self._self.dispose() } - - if _parent._latest != _id { + + if self._parent._latest != self._id { return } - + switch event { case .next: - _parent.forwardOn(event) + self._parent.forwardOn(event) case .error: - _parent.forwardOn(event) - _parent.dispose() + self._parent.forwardOn(event) + self._parent.dispose() case .completed: - _parent._hasLatest = false - if _parent._stopped { - _parent.forwardOn(event) - _parent.dispose() + self._parent._hasLatest = false + if self._parent._stopped { + self._parent.forwardOn(event) + self._parent.dispose() } } } @@ -169,7 +173,7 @@ final private class SwitchSinkIter : SwitchSink where O.E == S.E { +final private class SwitchIdentitySink: SwitchSink where O.E == S.E { override init(observer: O, cancel: Cancelable) { super.init(observer: observer, cancel: cancel) } @@ -179,51 +183,51 @@ final private class SwitchIdentitySink : SwitchSink where O.E == S.E { +final private class MapSwitchSink: SwitchSink where O.E == S.E { typealias Selector = (SourceType) throws -> S fileprivate let _selector: Selector init(selector: @escaping Selector, observer: O, cancel: Cancelable) { - _selector = selector + self._selector = selector super.init(observer: observer, cancel: cancel) } override func performMap(_ element: SourceType) throws -> S { - return try _selector(element) + return try self._selector(element) } } // MARK: Producers -final private class Switch : Producer { +final private class Switch: Producer { fileprivate let _source: Observable - + init(source: Observable) { - _source = source + self._source = source } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E { let sink = SwitchIdentitySink(observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } -final private class FlatMapLatest : Producer { +final private class FlatMapLatest: Producer { typealias Selector = (SourceType) throws -> S fileprivate let _source: Observable fileprivate let _selector: Selector init(source: Observable, selector: @escaping Selector) { - _source = source - _selector = selector + self._source = source + self._selector = selector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == S.E { - let sink = MapSwitchSink(selector: _selector, observer: observer, cancel: cancel) - let subscription = sink.run(_source) + let sink = MapSwitchSink(selector: self._selector, observer: observer, cancel: cancel) + let subscription = sink.run(self._source) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift index 9ee3b30ee5..2ce6f246a2 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/SwitchIfEmpty.swift @@ -16,63 +16,64 @@ extension ObservableType { - returns: Observable sequence that contains elements from switchTo sequence if source is empty, otherwise returns source sequence elements. */ public func ifEmpty(switchTo other: Observable) -> Observable { - return SwitchIfEmpty(source: asObservable(), ifEmpty: other) + return SwitchIfEmpty(source: self.asObservable(), ifEmpty: other) } } final private class SwitchIfEmpty: Producer { - + private let _source: Observable private let _ifEmpty: Observable - + init(source: Observable, ifEmpty: Observable) { - _source = source - _ifEmpty = ifEmpty + self._source = source + self._ifEmpty = ifEmpty } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { - let sink = SwitchIfEmptySink(ifEmpty: _ifEmpty, + let sink = SwitchIfEmptySink(ifEmpty: self._ifEmpty, observer: observer, cancel: cancel) - let subscription = sink.run(_source.asObservable()) - + let subscription = sink.run(self._source.asObservable()) + return (sink: sink, subscription: subscription) } } -final private class SwitchIfEmptySink: Sink, ObserverType { +final private class SwitchIfEmptySink: Sink + , ObserverType { typealias E = O.E - + private let _ifEmpty: Observable private var _isEmpty = true private let _ifEmptySubscription = SingleAssignmentDisposable() - + init(ifEmpty: Observable, observer: O, cancel: Cancelable) { - _ifEmpty = ifEmpty + self._ifEmpty = ifEmpty super.init(observer: observer, cancel: cancel) } - + func run(_ source: Observable) -> Disposable { let subscription = source.subscribe(self) return Disposables.create(subscription, _ifEmptySubscription) } - + func on(_ event: Event) { switch event { case .next: - _isEmpty = false - forwardOn(event) + self._isEmpty = false + self.forwardOn(event) case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - guard _isEmpty else { - forwardOn(.completed) - dispose() + guard self._isEmpty else { + self.forwardOn(.completed) + self.dispose() return } let ifEmptySink = SwitchIfEmptySinkIter(parent: self) - _ifEmptySubscription.setDisposable(_ifEmpty.subscribe(ifEmptySink)) + self._ifEmptySubscription.setDisposable(self._ifEmpty.subscribe(ifEmptySink)) } } } @@ -81,23 +82,23 @@ final private class SwitchIfEmptySinkIter : ObserverType { typealias E = O.E typealias Parent = SwitchIfEmptySink - + private let _parent: Parent init(parent: Parent) { - _parent = parent + self._parent = parent } - + func on(_ event: Event) { switch event { case .next: - _parent.forwardOn(event) + self._parent.forwardOn(event) case .error: - _parent.forwardOn(event) - _parent.dispose() + self._parent.forwardOn(event) + self._parent.dispose() case .completed: - _parent.forwardOn(event) - _parent.dispose() + self._parent.forwardOn(event) + self._parent.dispose() } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift index 4c1e00f747..cbfb57fcac 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Take.swift @@ -20,8 +20,9 @@ extension ObservableType { -> Observable { if count == 0 { return Observable.empty() - } else { - return TakeCount(source: asObservable(), count: count) + } + else { + return TakeCount(source: self.asObservable(), count: count) } } } @@ -45,60 +46,60 @@ extension ObservableType { // count version -final private class TakeCountSink : Sink, ObserverType { +final private class TakeCountSink: Sink, ObserverType { typealias E = O.E typealias Parent = TakeCount - + private let _parent: Parent - + private var _remaining: Int - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _remaining = parent._count + self._parent = parent + self._remaining = parent._count super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): - - if _remaining > 0 { - _remaining -= 1 - - forwardOn(.next(value)) - - if _remaining == 0 { - forwardOn(.completed) - dispose() + + if self._remaining > 0 { + self._remaining -= 1 + + self.forwardOn(.next(value)) + + if self._remaining == 0 { + self.forwardOn(.completed) + self.dispose() } } case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } - + } final private class TakeCount: Producer { fileprivate let _source: Observable fileprivate let _count: Int - + init(source: Observable, count: Int) { if count < 0 { rxFatalError("count can't be negative") } - _source = source - _count = count + self._source = source + self._count = count } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = TakeCountSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } @@ -106,69 +107,72 @@ final private class TakeCount: Producer { // time version final private class TakeTimeSink - : Sink, LockOwnerType, ObserverType, SynchronizedOnType where O.E == ElementType { + : Sink + , LockOwnerType + , ObserverType + , SynchronizedOnType where O.E == ElementType { typealias Parent = TakeTime typealias E = ElementType fileprivate let _parent: Parent - + let _lock = RecursiveLock() - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next(let value): - forwardOn(.next(value)) + self.forwardOn(.next(value)) case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } - + func tick() { - _lock.lock(); defer { _lock.unlock() } + self._lock.lock(); defer { self._lock.unlock() } - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } - + func run() -> Disposable { - let disposeTimer = _parent._scheduler.scheduleRelative((), dueTime: _parent._duration) { _ in + let disposeTimer = self._parent._scheduler.scheduleRelative((), dueTime: self._parent._duration) { _ in self.tick() return Disposables.create() } - - let disposeSubscription = _parent._source.subscribe(self) - + + let disposeSubscription = self._parent._source.subscribe(self) + return Disposables.create(disposeTimer, disposeSubscription) } } -final private class TakeTime : Producer { +final private class TakeTime: Producer { typealias TimeInterval = RxTimeInterval - + fileprivate let _source: Observable fileprivate let _duration: TimeInterval fileprivate let _scheduler: SchedulerType - + init(source: Observable, duration: TimeInterval, scheduler: SchedulerType) { - _source = source - _scheduler = scheduler - _duration = duration + self._source = source + self._scheduler = scheduler + self._duration = duration } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = TakeTimeSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift index 4da8bb6eed..2267296428 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeLast.swift @@ -20,40 +20,40 @@ extension ObservableType { */ public func takeLast(_ count: Int) -> Observable { - return TakeLast(source: asObservable(), count: count) + return TakeLast(source: self.asObservable(), count: count) } } -final private class TakeLastSink : Sink, ObserverType { +final private class TakeLastSink: Sink, ObserverType { typealias E = O.E typealias Parent = TakeLast - + private let _parent: Parent - + private var _elements: Queue - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _elements = Queue(capacity: parent._count + 1) + self._parent = parent + self._elements = Queue(capacity: parent._count + 1) super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): - _elements.enqueue(value) - if _elements.count > self._parent._count { - _ = _elements.dequeue() + self._elements.enqueue(value) + if self._elements.count > self._parent._count { + _ = self._elements.dequeue() } case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - for e in _elements { - forwardOn(.next(e)) + for e in self._elements { + self.forwardOn(.next(e)) } - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } @@ -61,18 +61,18 @@ final private class TakeLastSink : Sink, ObserverType { final private class TakeLast: Producer { fileprivate let _source: Observable fileprivate let _count: Int - + init(source: Observable, count: Int) { if count < 0 { rxFatalError("count can't be negative") } - _source = source - _count = count + self._source = source + self._count = count } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = TakeLastSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift index e53c709591..b0d6927c96 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeUntil.swift @@ -18,47 +18,76 @@ extension ObservableType { */ public func takeUntil(_ other: O) -> Observable { - return TakeUntil(source: asObservable(), other: other.asObservable()) + return TakeUntil(source: self.asObservable(), other: other.asObservable()) + } + + /** + Returns elements from an observable sequence until the specified condition is true. + + - seealso: [takeUntil operator on reactivex.io](http://reactivex.io/documentation/operators/takeuntil.html) + + - parameter behavior: Whether or not to include the last element matching the predicate. + - parameter predicate: A function to test each element for a condition. + - returns: An observable sequence that contains the elements from the input sequence that occur before the element at which the test passes. + */ + public func takeUntil(_ behavior: TakeUntilBehavior, + predicate: @escaping (E) throws -> Bool) + -> Observable { + return TakeUntilPredicate(source: self.asObservable(), + behavior: behavior, + predicate: predicate) } } +/// Behaviors for the `takeUntil(_ behavior:predicate:)` operator. +public enum TakeUntilBehavior { + /// Include the last element matching the predicate. + case inclusive + + /// Exclude the last element matching the predicate. + case exclusive +} + +// MARK: - TakeUntil Observable final private class TakeUntilSinkOther - : ObserverType, LockOwnerType, SynchronizedOnType { + : ObserverType + , LockOwnerType + , SynchronizedOnType { typealias Parent = TakeUntilSink typealias E = Other - + fileprivate let _parent: Parent var _lock: RecursiveLock { - return _parent._lock + return self._parent._lock } - + fileprivate let _subscription = SingleAssignmentDisposable() - + init(parent: Parent) { - _parent = parent + self._parent = parent #if TRACE_RESOURCES _ = Resources.incrementTotal() #endif } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next: - _parent.forwardOn(.completed) - _parent.dispose() + self._parent.forwardOn(.completed) + self._parent.dispose() case .error(let e): - _parent.forwardOn(.error(e)) - _parent.dispose() + self._parent.forwardOn(.error(e)) + self._parent.dispose() case .completed: - _subscription.dispose() + self._subscription.dispose() } } - + #if TRACE_RESOURCES deinit { _ = Resources.decrementTotal() @@ -67,59 +96,132 @@ final private class TakeUntilSinkOther } final private class TakeUntilSink - : Sink, LockOwnerType, ObserverType, SynchronizedOnType { + : Sink + , LockOwnerType + , ObserverType + , SynchronizedOnType { typealias E = O.E typealias Parent = TakeUntil - + fileprivate let _parent: Parent - + let _lock = RecursiveLock() - + + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next: - forwardOn(event) + self.forwardOn(event) case .error: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() case .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } - + func run() -> Disposable { let otherObserver = TakeUntilSinkOther(parent: self) - let otherSubscription = _parent._other.subscribe(otherObserver) + let otherSubscription = self._parent._other.subscribe(otherObserver) otherObserver._subscription.setDisposable(otherSubscription) - let sourceSubscription = _parent._source.subscribe(self) - + let sourceSubscription = self._parent._source.subscribe(self) + return Disposables.create(sourceSubscription, otherObserver._subscription) } } final private class TakeUntil: Producer { - + fileprivate let _source: Observable fileprivate let _other: Observable - + init(source: Observable, other: Observable) { - _source = source - _other = other + self._source = source + self._other = other } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = TakeUntilSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) } } + +// MARK: - TakeUntil Predicate +final private class TakeUntilPredicateSink + : Sink, ObserverType { + typealias Element = O.E + typealias Parent = TakeUntilPredicate + + fileprivate let _parent: Parent + fileprivate var _running = true + + init(parent: Parent, observer: O, cancel: Cancelable) { + self._parent = parent + super.init(observer: observer, cancel: cancel) + } + + func on(_ event: Event) { + switch event { + case .next(let value): + if !self._running { + return + } + + do { + self._running = try !self._parent._predicate(value) + } catch let e { + self.forwardOn(.error(e)) + self.dispose() + return + } + + if self._running { + self.forwardOn(.next(value)) + } else { + if self._parent._behavior == .inclusive { + self.forwardOn(.next(value)) + } + + self.forwardOn(.completed) + self.dispose() + } + case .error, .completed: + self.forwardOn(event) + self.dispose() + } + } + +} + +final private class TakeUntilPredicate: Producer { + typealias Predicate = (Element) throws -> Bool + + fileprivate let _source: Observable + fileprivate let _predicate: Predicate + fileprivate let _behavior: TakeUntilBehavior + + init(source: Observable, + behavior: TakeUntilBehavior, + predicate: @escaping Predicate) { + self._source = source + self._behavior = behavior + self._predicate = predicate + } + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + let sink = TakeUntilPredicateSink(parent: self, observer: observer, cancel: cancel) + let subscription = self._source.subscribe(sink) + return (sink: sink, subscription: subscription) + } +} diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift index 5318f2c566..1e866f88c0 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/TakeWhile.swift @@ -18,12 +18,13 @@ extension ObservableType { */ public func takeWhile(_ predicate: @escaping (E) throws -> Bool) -> Observable { - return TakeWhile(source: asObservable(), predicate: predicate) + return TakeWhile(source: self.asObservable(), predicate: predicate) } } final private class TakeWhileSink - : Sink, ObserverType { + : Sink + , ObserverType { typealias Element = O.E typealias Parent = TakeWhile @@ -32,37 +33,37 @@ final private class TakeWhileSink fileprivate var _running = true init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): - if !_running { + if !self._running { return } - + do { - _running = try _parent._predicate(value) + self._running = try self._parent._predicate(value) } catch let e { - forwardOn(.error(e)) - dispose() + self.forwardOn(.error(e)) + self.dispose() return } - - if _running { - forwardOn(.next(value)) + + if self._running { + self.forwardOn(.next(value)) } else { - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } case .error, .completed: - forwardOn(event) - dispose() + self.forwardOn(event) + self.dispose() } } - + } final private class TakeWhile: Producer { @@ -72,13 +73,13 @@ final private class TakeWhile: Producer { fileprivate let _predicate: Predicate init(source: Observable, predicate: @escaping Predicate) { - _source = source - _predicate = predicate + self._source = source + self._predicate = predicate } - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = TakeWhileSink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift index 6a02ff41a5..c31ae74699 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Throttle.swift @@ -29,130 +29,134 @@ extension ObservableType { } final private class ThrottleSink - : Sink, ObserverType, LockOwnerType, SynchronizedOnType { + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType { typealias Element = O.E typealias ParentType = Throttle - + private let _parent: ParentType - + let _lock = RecursiveLock() - + // state private var _lastUnsentElement: Element? private var _lastSentTime: Date? private var _completed: Bool = false let cancellable = SerialDisposable() - + init(parent: ParentType, observer: O, cancel: Cancelable) { - _parent = parent - + self._parent = parent + super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - let subscription = _parent._source.subscribe(self) - + let subscription = self._parent._source.subscribe(self) + return Disposables.create(subscription, cancellable) } func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case .next(let element): - let now = _parent._scheduler.now + let now = self._parent._scheduler.now let timeIntervalSinceLast: RxTimeInterval - if let lastSendingTime = _lastSentTime { + if let lastSendingTime = self._lastSentTime { timeIntervalSinceLast = now.timeIntervalSince(lastSendingTime) - } else { - timeIntervalSinceLast = _parent._dueTime + } + else { + timeIntervalSinceLast = self._parent._dueTime } - let couldSendNow = timeIntervalSinceLast >= _parent._dueTime + let couldSendNow = timeIntervalSinceLast >= self._parent._dueTime if couldSendNow { self.sendNow(element: element) return } - if !_parent._latest { + if !self._parent._latest { return } - let isThereAlreadyInFlightRequest = _lastUnsentElement != nil - - _lastUnsentElement = element + let isThereAlreadyInFlightRequest = self._lastUnsentElement != nil + + self._lastUnsentElement = element if isThereAlreadyInFlightRequest { return } - let scheduler = _parent._scheduler - let dueTime = _parent._dueTime + let scheduler = self._parent._scheduler + let dueTime = self._parent._dueTime let d = SingleAssignmentDisposable() self.cancellable.disposable = d d.setDisposable(scheduler.scheduleRelative(0, dueTime: dueTime - timeIntervalSinceLast, action: self.propagate)) case .error: - _lastUnsentElement = nil - forwardOn(event) - dispose() + self._lastUnsentElement = nil + self.forwardOn(event) + self.dispose() case .completed: - if let _ = _lastUnsentElement { - _completed = true - } else { - forwardOn(.completed) - dispose() + if self._lastUnsentElement != nil { + self._completed = true + } + else { + self.forwardOn(.completed) + self.dispose() } } } private func sendNow(element: Element) { - _lastUnsentElement = nil + self._lastUnsentElement = nil self.forwardOn(.next(element)) // in case element processing takes a while, this should give some more room - _lastSentTime = _parent._scheduler.now + self._lastSentTime = self._parent._scheduler.now } - + func propagate(_: Int) -> Disposable { - _lock.lock(); defer { _lock.unlock() } // { - if let lastUnsentElement = _lastUnsentElement { - sendNow(element: lastUnsentElement) + self._lock.lock(); defer { self._lock.unlock() } // { + if let lastUnsentElement = self._lastUnsentElement { + self.sendNow(element: lastUnsentElement) } - if _completed { - forwardOn(.completed) - dispose() + if self._completed { + self.forwardOn(.completed) + self.dispose() } // } return Disposables.create() } } -final private class Throttle : Producer { - +final private class Throttle: Producer { fileprivate let _source: Observable fileprivate let _dueTime: RxTimeInterval fileprivate let _latest: Bool fileprivate let _scheduler: SchedulerType init(source: Observable, dueTime: RxTimeInterval, latest: Bool, scheduler: SchedulerType) { - _source = source - _dueTime = dueTime - _latest = latest - _scheduler = scheduler + self._source = source + self._dueTime = dueTime + self._latest = latest + self._scheduler = scheduler } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = ThrottleSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) } - + } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift index 16b79ff4be..f37bf76206 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timeout.swift @@ -41,30 +41,30 @@ extension ObservableType { final private class TimeoutSink: Sink, LockOwnerType, ObserverType { typealias E = O.E typealias Parent = Timeout - + private let _parent: Parent - + let _lock = RecursiveLock() private let _timerD = SerialDisposable() private let _subscription = SerialDisposable() - + private var _id = 0 private var _switched = false - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { let original = SingleAssignmentDisposable() - _subscription.disposable = original - - _createTimeoutTimer() - - original.setDisposable(_parent._source.subscribe(self)) - + self._subscription.disposable = original + + self._createTimeoutTimer() + + original.setDisposable(self._parent._source.subscribe(self)) + return Disposables.create(_subscription, _timerD) } @@ -72,56 +72,56 @@ final private class TimeoutSink: Sink, LockOwnerType, Observ switch event { case .next: var onNextWins = false - - _lock.performLocked { + + self._lock.performLocked { onNextWins = !self._switched if onNextWins { self._id = self._id &+ 1 } } - + if onNextWins { - forwardOn(event) + self.forwardOn(event) self._createTimeoutTimer() } case .error, .completed: var onEventWins = false - - _lock.performLocked { + + self._lock.performLocked { onEventWins = !self._switched if onEventWins { self._id = self._id &+ 1 } } - + if onEventWins { - forwardOn(event) + self.forwardOn(event) self.dispose() } } } - + private func _createTimeoutTimer() { - if _timerD.isDisposed { + if self._timerD.isDisposed { return } - + let nextTimer = SingleAssignmentDisposable() - _timerD.disposable = nextTimer - - let disposeSchedule = _parent._scheduler.scheduleRelative(_id, dueTime: _parent._dueTime) { state in - + self._timerD.disposable = nextTimer + + let disposeSchedule = self._parent._scheduler.scheduleRelative(self._id, dueTime: self._parent._dueTime) { state in + var timerWins = false - + self._lock.performLocked { self._switched = (state == self._id) timerWins = self._switched } - + if timerWins { self._subscription.disposable = self._parent._other.subscribe(self.forwarder()) } - + return Disposables.create() } @@ -129,21 +129,21 @@ final private class TimeoutSink: Sink, LockOwnerType, Observ } } -final private class Timeout : Producer { +final private class Timeout: Producer { fileprivate let _source: Observable fileprivate let _dueTime: RxTimeInterval fileprivate let _other: Observable fileprivate let _scheduler: SchedulerType - + init(source: Observable, dueTime: RxTimeInterval, other: Observable, scheduler: SchedulerType) { - _source = source - _dueTime = dueTime - _other = other - _scheduler = scheduler + self._source = source + self._dueTime = dueTime + self._other = other + self._scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Element { let sink = TimeoutSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift index 77a0b88137..1715e1ec5e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Timer.swift @@ -6,7 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -extension ObservableType where E: RxAbstractInteger { +extension ObservableType where E : RxAbstractInteger { /** Returns an observable sequence that produces a value after each period, using the specified scheduler to run timers and to send out observer messages. @@ -18,9 +18,10 @@ extension ObservableType where E: RxAbstractInteger { */ public static func interval(_ period: RxTimeInterval, scheduler: SchedulerType) -> Observable { - return Timer(dueTime: period, - period: period, - scheduler: scheduler + return Timer( + dueTime: period, + period: period, + scheduler: scheduler ) } } @@ -46,36 +47,40 @@ extension ObservableType where E: RxAbstractInteger { } } -final private class TimerSink : Sink where O.E: RxAbstractInteger { +import Foundation + +final private class TimerSink : Sink where O.E : RxAbstractInteger { typealias Parent = Timer private let _parent: Parent + private let _lock = RecursiveLock() init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - return _parent._scheduler.schedulePeriodic(0 as O.E, startAfter: _parent._dueTime, period: _parent._period!) { state in + return self._parent._scheduler.schedulePeriodic(0 as O.E, startAfter: self._parent._dueTime, period: self._parent._period!) { state in + self._lock.lock(); defer { self._lock.unlock() } self.forwardOn(.next(state)) return state &+ 1 } } } -final private class TimerOneOffSink : Sink where O.E: RxAbstractInteger { +final private class TimerOneOffSink: Sink where O.E: RxAbstractInteger { typealias Parent = Timer private let _parent: Parent init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } func run() -> Disposable { - return _parent._scheduler.scheduleRelative(self, dueTime: _parent._dueTime) { (_f`) -> Disposable in + return self._parent._scheduler.scheduleRelative(self, dueTime: self._parent._dueTime) { [unowned self] _ -> Disposable in self.forwardOn(.next(0)) self.forwardOn(.completed) self.dispose() @@ -91,17 +96,18 @@ final private class Timer: Producer { fileprivate let _period: RxTimeInterval? init(dueTime: RxTimeInterval, period: RxTimeInterval?, scheduler: SchedulerType) { - _scheduler = scheduler - _dueTime = dueTime - _period = period + self._scheduler = scheduler + self._dueTime = dueTime + self._period = period } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { - if let _ = _period { + if self._period != nil { let sink = TimerSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) - } else { + } + else { let sink = TimerOneOffSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift index d760f2197f..5cf1aa431f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/ToArray.swift @@ -6,6 +6,7 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // + extension ObservableType { /** @@ -23,43 +24,43 @@ extension ObservableType { } } -final private class ToArraySink : Sink, ObserverType where O.E == [SourceType] { +final private class ToArraySink: Sink, ObserverType where O.E == [SourceType] { typealias Parent = ToArray - + let _parent: Parent - var _list = Array() - + var _list = [SourceType]() + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - + self._parent = parent + super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event) { switch event { case .next(let value): self._list.append(value) case .error(let e): - forwardOn(.error(e)) + self.forwardOn(.error(e)) self.dispose() case .completed: - forwardOn(.next(_list)) - forwardOn(.completed) + self.forwardOn(.next(self._list)) + self.forwardOn(.completed) self.dispose() } } } -final private class ToArray : Producer<[SourceType]> { +final private class ToArray: Producer<[SourceType]> { let _source: Observable init(source: Observable) { - _source = source + self._source = source } - + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == [SourceType] { let sink = ToArraySink(parent: self, observer: observer, cancel: cancel) - let subscription = _source.subscribe(sink) + let subscription = self._source.subscribe(sink) return (sink: sink, subscription: subscription) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift index a8213b9247..3651dc9a00 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Using.swift @@ -21,25 +21,25 @@ extension ObservableType { } } -final private class UsingSink : Sink, ObserverType { +final private class UsingSink: Sink, ObserverType { typealias SourceType = O.E typealias Parent = Using private let _parent: Parent - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { var disposable = Disposables.create() - + do { - let resource = try _parent._resourceFactory() + let resource = try self._parent._resourceFactory() disposable = resource - let source = try _parent._observableFactory(resource) - + let source = try self._parent._observableFactory(resource) + return Disposables.create( source.subscribe(self), disposable @@ -51,37 +51,38 @@ final private class UsingSink : Sink< ) } } - + func on(_ event: Event) { switch event { case let .next(value): - forwardOn(.next(value)) + self.forwardOn(.next(value)) case let .error(error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() case .completed: - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } final private class Using: Producer { - + typealias E = SourceType - + typealias ResourceFactory = () throws -> ResourceType typealias ObservableFactory = (ResourceType) throws -> Observable - + fileprivate let _resourceFactory: ResourceFactory fileprivate let _observableFactory: ObservableFactory - + + init(resourceFactory: @escaping ResourceFactory, observableFactory: @escaping ObservableFactory) { - _resourceFactory = resourceFactory - _observableFactory = observableFactory + self._resourceFactory = resourceFactory + self._observableFactory = observableFactory } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == E { let sink = UsingSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift index 0c6e7b2b24..5de452cabf 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Window.swift @@ -25,119 +25,122 @@ extension ObservableType { } final private class WindowTimeCountSink - : Sink, ObserverType, LockOwnerType, SynchronizedOnType where O.E == Observable { + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType where O.E == Observable { typealias Parent = WindowTimeCount typealias E = Element - + private let _parent: Parent - + let _lock = RecursiveLock() - + private var _subject = PublishSubject() private var _count = 0 private var _windowId = 0 - + private let _timerD = SerialDisposable() private let _refCountDisposable: RefCountDisposable private let _groupDisposable = CompositeDisposable() - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - - _ = _groupDisposable.insert(_timerD) - - _refCountDisposable = RefCountDisposable(disposable: _groupDisposable) + self._parent = parent + + _ = self._groupDisposable.insert(self._timerD) + + self._refCountDisposable = RefCountDisposable(disposable: self._groupDisposable) super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { - - forwardOn(.next(AddRef(source: _subject, refCount: _refCountDisposable).asObservable())) - createTimer(_windowId) - - _ = _groupDisposable.insert(_parent._source.subscribe(self)) - return _refCountDisposable + + self.forwardOn(.next(AddRef(source: self._subject, refCount: self._refCountDisposable).asObservable())) + self.createTimer(self._windowId) + + _ = self._groupDisposable.insert(self._parent._source.subscribe(self)) + return self._refCountDisposable } - + func startNewWindowAndCompleteCurrentOne() { - _subject.on(.completed) - _subject = PublishSubject() - - forwardOn(.next(AddRef(source: _subject, refCount: _refCountDisposable).asObservable())) + self._subject.on(.completed) + self._subject = PublishSubject() + + self.forwardOn(.next(AddRef(source: self._subject, refCount: self._refCountDisposable).asObservable())) } func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { var newWindow = false var newId = 0 - + switch event { case .next(let element): - _subject.on(.next(element)) - + self._subject.on(.next(element)) + do { - _ = try incrementChecked(&_count) - } catch (let e) { - _subject.on(.error(e as Swift.Error)) - dispose() + _ = try incrementChecked(&self._count) + } catch let e { + self._subject.on(.error(e as Swift.Error)) + self.dispose() } - - if (_count == _parent._count) { + + if self._count == self._parent._count { newWindow = true - _count = 0 - _windowId += 1 - newId = _windowId + self._count = 0 + self._windowId += 1 + newId = self._windowId self.startNewWindowAndCompleteCurrentOne() } - + case .error(let error): - _subject.on(.error(error)) - forwardOn(.error(error)) - dispose() + self._subject.on(.error(error)) + self.forwardOn(.error(error)) + self.dispose() case .completed: - _subject.on(.completed) - forwardOn(.completed) - dispose() + self._subject.on(.completed) + self.forwardOn(.completed) + self.dispose() } if newWindow { - createTimer(newId) + self.createTimer(newId) } } - + func createTimer(_ windowId: Int) { - if _timerD.isDisposed { + if self._timerD.isDisposed { return } - - if _windowId != windowId { + + if self._windowId != windowId { return } let nextTimer = SingleAssignmentDisposable() - _timerD.disposable = nextTimer - - let scheduledRelative = _parent._scheduler.scheduleRelative(windowId, dueTime: _parent._timeSpan) { previousWindowId in + self._timerD.disposable = nextTimer + let scheduledRelative = self._parent._scheduler.scheduleRelative(windowId, dueTime: self._parent._timeSpan) { previousWindowId in + var newId = 0 - + self._lock.performLocked { if previousWindowId != self._windowId { return } - + self._count = 0 self._windowId = self._windowId &+ 1 newId = self._windowId self.startNewWindowAndCompleteCurrentOne() } - + self.createTimer(newId) - + return Disposables.create() } @@ -145,21 +148,20 @@ final private class WindowTimeCountSink } } -final private class WindowTimeCount : Producer> { - +final private class WindowTimeCount: Producer> { fileprivate let _timeSpan: RxTimeInterval fileprivate let _count: Int fileprivate let _scheduler: SchedulerType fileprivate let _source: Observable - + init(source: Observable, timeSpan: RxTimeInterval, count: Int, scheduler: SchedulerType) { - _source = source - _timeSpan = timeSpan - _count = count - _scheduler = scheduler + self._source = source + self._timeSpan = timeSpan + self._count = count + self._scheduler = scheduler } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Observable { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == Observable { let sink = WindowTimeCountSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift index b938aa1d6e..1a1b594984 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/WithLatestFrom.swift @@ -18,7 +18,7 @@ extension ObservableType { - returns: An observable sequence containing the result of combining each element of the self with the latest element from the second source, if any, using the specified result selector function. */ public func withLatestFrom(_ second: SecondO, resultSelector: @escaping (E, SecondO.E) throws -> ResultType) -> Observable { - return WithLatestFrom(first: asObservable(), second: second.asObservable(), resultSelector: resultSelector) + return WithLatestFrom(first: self.asObservable(), second: second.asObservable(), resultSelector: resultSelector) } /** @@ -30,113 +30,118 @@ extension ObservableType { - returns: An observable sequence containing the result of combining each element of the self with the latest element from the second source, if any, using the specified result selector function. */ public func withLatestFrom(_ second: SecondO) -> Observable { - return WithLatestFrom(first: asObservable(), second: second.asObservable(), resultSelector: { $1 }) + return WithLatestFrom(first: self.asObservable(), second: second.asObservable(), resultSelector: { $1 }) } } final private class WithLatestFromSink - : Sink, ObserverType, LockOwnerType, SynchronizedOnType { + : Sink + , ObserverType + , LockOwnerType + , SynchronizedOnType { typealias ResultType = O.E typealias Parent = WithLatestFrom typealias E = FirstType - + fileprivate let _parent: Parent - + var _lock = RecursiveLock() fileprivate var _latest: SecondType? init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - + self._parent = parent + super.init(observer: observer, cancel: cancel) } - + func run() -> Disposable { let sndSubscription = SingleAssignmentDisposable() let sndO = WithLatestFromSecond(parent: self, disposable: sndSubscription) - - sndSubscription.setDisposable(_parent._second.subscribe(sndO)) - let fstSubscription = _parent._first.subscribe(self) + + sndSubscription.setDisposable(self._parent._second.subscribe(sndO)) + let fstSubscription = self._parent._first.subscribe(self) return Disposables.create(fstSubscription, sndSubscription) } func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case let .next(value): - guard let latest = _latest else { return } + guard let latest = self._latest else { return } do { - let res = try _parent._resultSelector(value, latest) - - forwardOn(.next(res)) + let res = try self._parent._resultSelector(value, latest) + + self.forwardOn(.next(res)) } catch let e { - forwardOn(.error(e)) - dispose() + self.forwardOn(.error(e)) + self.dispose() } case .completed: - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() case let .error(error): - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } } } final private class WithLatestFromSecond - : ObserverType, LockOwnerType, SynchronizedOnType { - + : ObserverType + , LockOwnerType + , SynchronizedOnType { + typealias ResultType = O.E typealias Parent = WithLatestFromSink typealias E = SecondType - + private let _parent: Parent private let _disposable: Disposable var _lock: RecursiveLock { - return _parent._lock + return self._parent._lock } init(parent: Parent, disposable: Disposable) { - _parent = parent - _disposable = disposable + self._parent = parent + self._disposable = disposable } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { switch event { case let .next(value): - _parent._latest = value + self._parent._latest = value case .completed: - _disposable.dispose() + self._disposable.dispose() case let .error(error): - _parent.forwardOn(.error(error)) - _parent.dispose() + self._parent.forwardOn(.error(error)) + self._parent.dispose() } } } final private class WithLatestFrom: Producer { typealias ResultSelector = (FirstType, SecondType) throws -> ResultType - + fileprivate let _first: Observable fileprivate let _second: Observable fileprivate let _resultSelector: ResultSelector init(first: Observable, second: Observable, resultSelector: @escaping ResultSelector) { - _first = first - _second = second - _resultSelector = resultSelector + self._first = first + self._second = second + self._resultSelector = resultSelector } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == ResultType { let sink = WithLatestFromSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift index fd465e7366..c2b5819a6c 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+Collection.swift @@ -31,7 +31,7 @@ extension ObservableType { where C.Iterator.Element: ObservableType, C.Iterator.Element.E == E { return ZipCollectionType(sources: collection, resultSelector: { $0 }) } - + } final private class ZipCollectionTypeSink @@ -39,127 +39,129 @@ final private class ZipCollectionTypeSink typealias R = O.E typealias Parent = ZipCollectionType typealias SourceElement = C.Iterator.Element.E - + private let _parent: Parent - + private let _lock = RecursiveLock() - + // state private var _numberOfValues = 0 private var _values: [Queue] private var _isDone: [Bool] private var _numberOfDone = 0 private var _subscriptions: [SingleAssignmentDisposable] - + init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent - _values = [Queue](repeating: Queue(capacity: 4), count: parent.count) - _isDone = [Bool](repeating: false, count: parent.count) - _subscriptions = Array() - _subscriptions.reserveCapacity(parent.count) - + self._parent = parent + self._values = [Queue](repeating: Queue(capacity: 4), count: parent.count) + self._isDone = [Bool](repeating: false, count: parent.count) + self._subscriptions = [SingleAssignmentDisposable]() + self._subscriptions.reserveCapacity(parent.count) + for _ in 0 ..< parent.count { - _subscriptions.append(SingleAssignmentDisposable()) + self._subscriptions.append(SingleAssignmentDisposable()) } - + super.init(observer: observer, cancel: cancel) } - + func on(_ event: Event, atIndex: Int) { - _lock.lock(); defer { _lock.unlock() } // { + self._lock.lock(); defer { self._lock.unlock() } // { switch event { case .next(let element): - _values[atIndex].enqueue(element) - - if _values[atIndex].count == 1 { - _numberOfValues += 1 + self._values[atIndex].enqueue(element) + + if self._values[atIndex].count == 1 { + self._numberOfValues += 1 } - - if _numberOfValues < _parent.count { - if _numberOfDone == _parent.count - 1 { + + if self._numberOfValues < self._parent.count { + if self._numberOfDone == self._parent.count - 1 { self.forwardOn(.completed) self.dispose() } return } - + do { var arguments = [SourceElement]() - arguments.reserveCapacity(_parent.count) - + arguments.reserveCapacity(self._parent.count) + // recalculate number of values - _numberOfValues = 0 - - for i in 0 ..< _values.count { - arguments.append(_values[i].dequeue()!) - if !_values[i].isEmpty { - _numberOfValues += 1 + self._numberOfValues = 0 + + for i in 0 ..< self._values.count { + arguments.append(self._values[i].dequeue()!) + if !self._values[i].isEmpty { + self._numberOfValues += 1 } } - - let result = try _parent.resultSelector(arguments) + + let result = try self._parent.resultSelector(arguments) self.forwardOn(.next(result)) - } catch let error { + } + catch let error { self.forwardOn(.error(error)) self.dispose() } - + case .error(let error): self.forwardOn(.error(error)) self.dispose() case .completed: - if _isDone[atIndex] { + if self._isDone[atIndex] { return } - - _isDone[atIndex] = true - _numberOfDone += 1 - - if _numberOfDone == _parent.count { + + self._isDone[atIndex] = true + self._numberOfDone += 1 + + if self._numberOfDone == self._parent.count { self.forwardOn(.completed) self.dispose() - } else { - _subscriptions[atIndex].dispose() + } + else { + self._subscriptions[atIndex].dispose() } } // } } - + func run() -> Disposable { var j = 0 - for i in _parent.sources { + for i in self._parent.sources { let index = j let source = i.asObservable() let disposable = source.subscribe(AnyObserver { event in self.on(event, atIndex: index) }) - _subscriptions[j].setDisposable(disposable) + self._subscriptions[j].setDisposable(disposable) j += 1 } - if _parent.sources.isEmpty { + if self._parent.sources.isEmpty { self.forwardOn(.completed) } - + return Disposables.create(_subscriptions) } } -final private class ZipCollectionType : Producer where C.Iterator.Element: ObservableConvertibleType { +final private class ZipCollectionType: Producer where C.Iterator.Element: ObservableConvertibleType { typealias ResultSelector = ([C.Iterator.Element.E]) throws -> R - + let sources: C let resultSelector: ResultSelector let count: Int - + init(sources: C, resultSelector: @escaping ResultSelector) { self.sources = sources self.resultSelector = resultSelector self.count = Int(Int64(self.sources.count)) } - - override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { + + override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { let sink = ZipCollectionTypeSink(parent: self, observer: observer, cancel: cancel) let subscription = sink.run() return (sink: sink, subscription: subscription) diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift index 945adc3af6..01992f432d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip+arity.swift @@ -7,6 +7,8 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // + + // 2 extension ObservableType { @@ -56,31 +58,37 @@ final class ZipSink2_ : ZipSink { var _values2: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 2, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { let subscription1 = SingleAssignmentDisposable() let subscription2 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) return Disposables.create([ subscription1, @@ -89,7 +97,7 @@ final class ZipSink2_ : ZipSink { } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!) } } @@ -105,7 +113,7 @@ final class Zip2 : Producer { self.source1 = source1 self.source2 = source2 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -115,6 +123,8 @@ final class Zip2 : Producer { } } + + // 3 extension ObservableType { @@ -165,21 +175,27 @@ final class ZipSink3_ : ZipSink { var _values3: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 3, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty - case 2: return !_values3.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty + case 2: return !self._values3.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { @@ -187,13 +203,13 @@ final class ZipSink3_ : ZipSink { let subscription2 = SingleAssignmentDisposable() let subscription3 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer3 = ZipObserver(lock: self._lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) - subscription3.setDisposable(_parent.source3.subscribe(observer3)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) + subscription3.setDisposable(self._parent.source3.subscribe(observer3)) return Disposables.create([ subscription1, @@ -203,7 +219,7 @@ final class ZipSink3_ : ZipSink { } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!, self._values3.dequeue()!) } } @@ -221,7 +237,7 @@ final class Zip3 : Producer { self.source2 = source2 self.source3 = source3 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -231,6 +247,8 @@ final class Zip3 : Producer { } } + + // 4 extension ObservableType { @@ -282,22 +300,28 @@ final class ZipSink4_ : ZipSink { var _values4: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 4, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty - case 2: return !_values3.isEmpty - case 3: return !_values4.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty + case 2: return !self._values3.isEmpty + case 3: return !self._values4.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { @@ -306,15 +330,15 @@ final class ZipSink4_ : ZipSink { let subscription3 = SingleAssignmentDisposable() let subscription4 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) - let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer3 = ZipObserver(lock: self._lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) + let observer4 = ZipObserver(lock: self._lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) - subscription3.setDisposable(_parent.source3.subscribe(observer3)) - subscription4.setDisposable(_parent.source4.subscribe(observer4)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) + subscription3.setDisposable(self._parent.source3.subscribe(observer3)) + subscription4.setDisposable(self._parent.source4.subscribe(observer4)) return Disposables.create([ subscription1, @@ -325,7 +349,7 @@ final class ZipSink4_ : ZipSink { } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!, self._values3.dequeue()!, self._values4.dequeue()!) } } @@ -345,7 +369,7 @@ final class Zip4 : Producer { self.source3 = source3 self.source4 = source4 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -355,6 +379,8 @@ final class Zip4 : Producer { } } + + // 5 extension ObservableType { @@ -407,23 +433,29 @@ final class ZipSink5_ : ZipSink { var _values5: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 5, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty - case 2: return !_values3.isEmpty - case 3: return !_values4.isEmpty - case 4: return !_values5.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty + case 2: return !self._values3.isEmpty + case 3: return !self._values4.isEmpty + case 4: return !self._values5.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { @@ -433,17 +465,17 @@ final class ZipSink5_ : ZipSink { let subscription4 = SingleAssignmentDisposable() let subscription5 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) - let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) - let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer3 = ZipObserver(lock: self._lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) + let observer4 = ZipObserver(lock: self._lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) + let observer5 = ZipObserver(lock: self._lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) - subscription3.setDisposable(_parent.source3.subscribe(observer3)) - subscription4.setDisposable(_parent.source4.subscribe(observer4)) - subscription5.setDisposable(_parent.source5.subscribe(observer5)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) + subscription3.setDisposable(self._parent.source3.subscribe(observer3)) + subscription4.setDisposable(self._parent.source4.subscribe(observer4)) + subscription5.setDisposable(self._parent.source5.subscribe(observer5)) return Disposables.create([ subscription1, @@ -455,7 +487,7 @@ final class ZipSink5_ : ZipSink { } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!, self._values3.dequeue()!, self._values4.dequeue()!, self._values5.dequeue()!) } } @@ -477,7 +509,7 @@ final class Zip5 : Producer { self.source4 = source4 self.source5 = source5 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -487,6 +519,8 @@ final class Zip5 : Producer { } } + + // 6 extension ObservableType { @@ -540,24 +574,30 @@ final class ZipSink6_ : ZipSink { var _values6: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 6, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty - case 2: return !_values3.isEmpty - case 3: return !_values4.isEmpty - case 4: return !_values5.isEmpty - case 5: return !_values6.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty + case 2: return !self._values3.isEmpty + case 3: return !self._values4.isEmpty + case 4: return !self._values5.isEmpty + case 5: return !self._values6.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { @@ -568,19 +608,19 @@ final class ZipSink6_ : ZipSink { let subscription5 = SingleAssignmentDisposable() let subscription6 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) - let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) - let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) - let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer3 = ZipObserver(lock: self._lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) + let observer4 = ZipObserver(lock: self._lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) + let observer5 = ZipObserver(lock: self._lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) + let observer6 = ZipObserver(lock: self._lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) - subscription3.setDisposable(_parent.source3.subscribe(observer3)) - subscription4.setDisposable(_parent.source4.subscribe(observer4)) - subscription5.setDisposable(_parent.source5.subscribe(observer5)) - subscription6.setDisposable(_parent.source6.subscribe(observer6)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) + subscription3.setDisposable(self._parent.source3.subscribe(observer3)) + subscription4.setDisposable(self._parent.source4.subscribe(observer4)) + subscription5.setDisposable(self._parent.source5.subscribe(observer5)) + subscription6.setDisposable(self._parent.source6.subscribe(observer6)) return Disposables.create([ subscription1, @@ -593,7 +633,7 @@ final class ZipSink6_ : ZipSink { } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!, self._values3.dequeue()!, self._values4.dequeue()!, self._values5.dequeue()!, self._values6.dequeue()!) } } @@ -617,7 +657,7 @@ final class Zip6 : Producer { self.source5 = source5 self.source6 = source6 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -627,6 +667,8 @@ final class Zip6 : Producer { } } + + // 7 extension ObservableType { @@ -681,25 +723,31 @@ final class ZipSink7_ : ZipSink var _values7: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 7, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty - case 2: return !_values3.isEmpty - case 3: return !_values4.isEmpty - case 4: return !_values5.isEmpty - case 5: return !_values6.isEmpty - case 6: return !_values7.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty + case 2: return !self._values3.isEmpty + case 3: return !self._values4.isEmpty + case 4: return !self._values5.isEmpty + case 5: return !self._values6.isEmpty + case 6: return !self._values7.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { @@ -711,21 +759,21 @@ final class ZipSink7_ : ZipSink let subscription6 = SingleAssignmentDisposable() let subscription7 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) - let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) - let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) - let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) - let observer7 = ZipObserver(lock: _lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer3 = ZipObserver(lock: self._lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) + let observer4 = ZipObserver(lock: self._lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) + let observer5 = ZipObserver(lock: self._lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) + let observer6 = ZipObserver(lock: self._lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) + let observer7 = ZipObserver(lock: self._lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) - subscription3.setDisposable(_parent.source3.subscribe(observer3)) - subscription4.setDisposable(_parent.source4.subscribe(observer4)) - subscription5.setDisposable(_parent.source5.subscribe(observer5)) - subscription6.setDisposable(_parent.source6.subscribe(observer6)) - subscription7.setDisposable(_parent.source7.subscribe(observer7)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) + subscription3.setDisposable(self._parent.source3.subscribe(observer3)) + subscription4.setDisposable(self._parent.source4.subscribe(observer4)) + subscription5.setDisposable(self._parent.source5.subscribe(observer5)) + subscription6.setDisposable(self._parent.source6.subscribe(observer6)) + subscription7.setDisposable(self._parent.source7.subscribe(observer7)) return Disposables.create([ subscription1, @@ -739,7 +787,7 @@ final class ZipSink7_ : ZipSink } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!, self._values3.dequeue()!, self._values4.dequeue()!, self._values5.dequeue()!, self._values6.dequeue()!, self._values7.dequeue()!) } } @@ -765,7 +813,7 @@ final class Zip7 : Producer { self.source6 = source6 self.source7 = source7 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -775,6 +823,8 @@ final class Zip7 : Producer { } } + + // 8 extension ObservableType { @@ -830,26 +880,32 @@ final class ZipSink8_ : ZipSink var _values8: Queue = Queue(capacity: 2) init(parent: Parent, observer: O, cancel: Cancelable) { - _parent = parent + self._parent = parent super.init(arity: 8, observer: observer, cancel: cancel) } override func hasElements(_ index: Int) -> Bool { - switch (index) { - case 0: return !_values1.isEmpty - case 1: return !_values2.isEmpty - case 2: return !_values3.isEmpty - case 3: return !_values4.isEmpty - case 4: return !_values5.isEmpty - case 5: return !_values6.isEmpty - case 6: return !_values7.isEmpty - case 7: return !_values8.isEmpty + switch index { + case 0: return !self._values1.isEmpty + case 1: return !self._values2.isEmpty + case 2: return !self._values3.isEmpty + case 3: return !self._values4.isEmpty + case 4: return !self._values5.isEmpty + case 5: return !self._values6.isEmpty + case 6: return !self._values7.isEmpty + case 7: return !self._values8.isEmpty default: rxFatalError("Unhandled case (Function)") } + #if swift(>=4.2) + #if !compiler(>=5.0) return false + #endif + #else + return false + #endif } func run() -> Disposable { @@ -862,23 +918,23 @@ final class ZipSink8_ : ZipSink let subscription7 = SingleAssignmentDisposable() let subscription8 = SingleAssignmentDisposable() - let observer1 = ZipObserver(lock: _lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) - let observer2 = ZipObserver(lock: _lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) - let observer3 = ZipObserver(lock: _lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) - let observer4 = ZipObserver(lock: _lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) - let observer5 = ZipObserver(lock: _lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) - let observer6 = ZipObserver(lock: _lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) - let observer7 = ZipObserver(lock: _lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7) - let observer8 = ZipObserver(lock: _lock, parent: self, index: 7, setNextValue: { self._values8.enqueue($0) }, this: subscription8) + let observer1 = ZipObserver(lock: self._lock, parent: self, index: 0, setNextValue: { self._values1.enqueue($0) }, this: subscription1) + let observer2 = ZipObserver(lock: self._lock, parent: self, index: 1, setNextValue: { self._values2.enqueue($0) }, this: subscription2) + let observer3 = ZipObserver(lock: self._lock, parent: self, index: 2, setNextValue: { self._values3.enqueue($0) }, this: subscription3) + let observer4 = ZipObserver(lock: self._lock, parent: self, index: 3, setNextValue: { self._values4.enqueue($0) }, this: subscription4) + let observer5 = ZipObserver(lock: self._lock, parent: self, index: 4, setNextValue: { self._values5.enqueue($0) }, this: subscription5) + let observer6 = ZipObserver(lock: self._lock, parent: self, index: 5, setNextValue: { self._values6.enqueue($0) }, this: subscription6) + let observer7 = ZipObserver(lock: self._lock, parent: self, index: 6, setNextValue: { self._values7.enqueue($0) }, this: subscription7) + let observer8 = ZipObserver(lock: self._lock, parent: self, index: 7, setNextValue: { self._values8.enqueue($0) }, this: subscription8) - subscription1.setDisposable(_parent.source1.subscribe(observer1)) - subscription2.setDisposable(_parent.source2.subscribe(observer2)) - subscription3.setDisposable(_parent.source3.subscribe(observer3)) - subscription4.setDisposable(_parent.source4.subscribe(observer4)) - subscription5.setDisposable(_parent.source5.subscribe(observer5)) - subscription6.setDisposable(_parent.source6.subscribe(observer6)) - subscription7.setDisposable(_parent.source7.subscribe(observer7)) - subscription8.setDisposable(_parent.source8.subscribe(observer8)) + subscription1.setDisposable(self._parent.source1.subscribe(observer1)) + subscription2.setDisposable(self._parent.source2.subscribe(observer2)) + subscription3.setDisposable(self._parent.source3.subscribe(observer3)) + subscription4.setDisposable(self._parent.source4.subscribe(observer4)) + subscription5.setDisposable(self._parent.source5.subscribe(observer5)) + subscription6.setDisposable(self._parent.source6.subscribe(observer6)) + subscription7.setDisposable(self._parent.source7.subscribe(observer7)) + subscription8.setDisposable(self._parent.source8.subscribe(observer8)) return Disposables.create([ subscription1, @@ -893,7 +949,7 @@ final class ZipSink8_ : ZipSink } override func getResult() throws -> R { - return try _parent._resultSelector(_values1.dequeue()!, _values2.dequeue()!, _values3.dequeue()!, _values4.dequeue()!, _values5.dequeue()!, _values6.dequeue()!, _values7.dequeue()!, _values8.dequeue()!) + return try self._parent._resultSelector(self._values1.dequeue()!, self._values2.dequeue()!, self._values3.dequeue()!, self._values4.dequeue()!, self._values5.dequeue()!, self._values6.dequeue()!, self._values7.dequeue()!, self._values8.dequeue()!) } } @@ -921,7 +977,7 @@ final class Zip8 : Producer { self.source7 = source7 self.source8 = source8 - _resultSelector = resultSelector + self._resultSelector = resultSelector } override func run(_ observer: O, cancel: Cancelable) -> (sink: Disposable, subscription: Disposable) where O.E == R { @@ -930,3 +986,5 @@ final class Zip8 : Producer { return (sink: sink, subscription: subscription) } } + + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift index de65c27cfc..50edf8481d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observables/Zip.swift @@ -6,7 +6,8 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol ZipSinkProtocol: class { +protocol ZipSinkProtocol : class +{ func next(_ index: Int) func fail(_ error: Swift.Error) func done(_ index: Int) @@ -14,136 +15,138 @@ protocol ZipSinkProtocol: class { class ZipSink : Sink, ZipSinkProtocol { typealias Element = O.E - + let _arity: Int let _lock = RecursiveLock() // state private var _isDone: [Bool] - + init(arity: Int, observer: O, cancel: Cancelable) { - _isDone = [Bool](repeating: false, count: arity) - _arity = arity - + self._isDone = [Bool](repeating: false, count: arity) + self._arity = arity + super.init(observer: observer, cancel: cancel) } func getResult() throws -> Element { rxAbstractMethod() } - + func hasElements(_ index: Int) -> Bool { rxAbstractMethod() } - + func next(_ index: Int) { var hasValueAll = true - - for i in 0 ..< _arity { - if !hasElements(i) { + + for i in 0 ..< self._arity { + if !self.hasElements(i) { hasValueAll = false break } } - + if hasValueAll { do { - let result = try getResult() + let result = try self.getResult() self.forwardOn(.next(result)) - } catch let e { - self.forwardOn(.error(e)) - dispose() } - } else { + catch let e { + self.forwardOn(.error(e)) + self.dispose() + } + } + else { var allOthersDone = true - - let arity = _isDone.count + + let arity = self._isDone.count for i in 0 ..< arity { - if i != index && !_isDone[i] { + if i != index && !self._isDone[i] { allOthersDone = false break } } - + if allOthersDone { - forwardOn(.completed) + self.forwardOn(.completed) self.dispose() } } } - + func fail(_ error: Swift.Error) { - forwardOn(.error(error)) - dispose() + self.forwardOn(.error(error)) + self.dispose() } - + func done(_ index: Int) { - _isDone[index] = true - + self._isDone[index] = true + var allDone = true - - for done in _isDone { - if !done { - allDone = false - break - } + + for done in self._isDone where !done { + allDone = false + break } - + if allDone { - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } } } final class ZipObserver - : ObserverType, LockOwnerType, SynchronizedOnType { + : ObserverType + , LockOwnerType + , SynchronizedOnType { typealias E = ElementType typealias ValueSetter = (ElementType) -> Void private var _parent: ZipSinkProtocol? - + let _lock: RecursiveLock - + // state private let _index: Int private let _this: Disposable private let _setNextValue: ValueSetter - + init(lock: RecursiveLock, parent: ZipSinkProtocol, index: Int, setNextValue: @escaping ValueSetter, this: Disposable) { - _lock = lock - _parent = parent - _index = index - _this = this - _setNextValue = setNextValue + self._lock = lock + self._parent = parent + self._index = index + self._this = this + self._setNextValue = setNextValue } - + func on(_ event: Event) { - synchronizedOn(event) + self.synchronizedOn(event) } func _synchronized_on(_ event: Event) { - if let _ = _parent { + if self._parent != nil { switch event { case .next: break case .error: - _this.dispose() + self._this.dispose() case .completed: - _this.dispose() + self._this.dispose() } } - - if let parent = _parent { + + if let parent = self._parent { switch event { case .next(let value): - _setNextValue(value) - parent.next(_index) + self._setNextValue(value) + parent.next(self._index) case .error(let error): parent.fail(error) case .completed: - parent.done(_index) + parent.done(self._index) } } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift index 5a9b84b2db..908941ff17 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/ObserverType.swift @@ -19,22 +19,22 @@ public protocol ObserverType { /// Convenience API extensions to provide alternate next, error, completed events extension ObserverType { - + /// Convenience method equivalent to `on(.next(element: E))` /// /// - parameter element: Next element to send to observer(s) public func onNext(_ element: E) { - on(.next(element)) + self.on(.next(element)) } - + /// Convenience method equivalent to `on(.completed)` public func onCompleted() { - on(.completed) + self.on(.completed) } - + /// Convenience method equivalent to `on(.error(Swift.Error))` /// - parameter error: Swift.Error to send to observer(s) public func onError(_ error: Swift.Error) { - on(.error(error)) + self.on(.error(error)) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift index 8a54b7dcd1..765cf1168d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/AnonymousObserver.swift @@ -8,22 +8,22 @@ final class AnonymousObserver : ObserverBase { typealias Element = ElementType - + typealias EventHandler = (Event) -> Void - - private let _eventHandler: EventHandler - + + private let _eventHandler : EventHandler + init(_ eventHandler: @escaping EventHandler) { #if TRACE_RESOURCES _ = Resources.incrementTotal() #endif - _eventHandler = eventHandler + self._eventHandler = eventHandler } override func onCore(_ event: Event) { - return _eventHandler(event) + return self._eventHandler(event) } - + #if TRACE_RESOURCES deinit { _ = Resources.decrementTotal() diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/ObserverBase.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/ObserverBase.swift index 9648daf2c5..65d05ec0f9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/ObserverBase.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/ObserverBase.swift @@ -9,17 +9,17 @@ class ObserverBase : Disposable, ObserverType { typealias E = ElementType - private var _isStopped = AtomicInt(0) + private let _isStopped = AtomicInt(0) func on(_ event: Event) { switch event { case .next: - if _isStopped.load() == 0 { - onCore(event) + if load(self._isStopped) == 0 { + self.onCore(event) } case .error, .completed: - if _isStopped.fetchOr(1) == 0 { - onCore(event) + if fetchOr(self._isStopped, 1) == 0 { + self.onCore(event) } } } @@ -29,6 +29,6 @@ class ObserverBase : Disposable, ObserverType { } func dispose() { - _isStopped.fetchOr(1) + fetchOr(self._isStopped, 1) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift index 23bdbbd30c..e75a38012e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Observers/TailRecursiveSink.swift @@ -17,7 +17,8 @@ enum TailRecursiveSinkCommand { /// This class is usually used with `Generator` version of the operators. class TailRecursiveSink - : Sink, InvocableWithValueType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E { + : Sink + , InvocableWithValueType where S.Iterator.Element: ObservableConvertibleType, S.Iterator.Element.E == O.E { typealias Value = TailRecursiveSinkCommand typealias E = O.E typealias SequenceGenerator = (generator: S.Iterator, remaining: IntMax?) @@ -34,30 +35,30 @@ class TailRecursiveSink } func run(_ sources: SequenceGenerator) -> Disposable { - _generators.append(sources) + self._generators.append(sources) - schedule(.moveNext) + self.schedule(.moveNext) - return _subscription + return self._subscription } func invoke(_ command: TailRecursiveSinkCommand) { switch command { case .dispose: - disposeCommand() + self.disposeCommand() case .moveNext: - moveNextCommand() + self.moveNextCommand() } } // simple implementation for now func schedule(_ command: TailRecursiveSinkCommand) { - _gate.invoke(InvocableScheduledItem(invocable: self, state: command)) + self._gate.invoke(InvocableScheduledItem(invocable: self, state: command)) } func done() { - forwardOn(.completed) - dispose() + self.forwardOn(.completed) + self.dispose() } func extract(_ observable: Observable) -> SequenceGenerator? { @@ -70,16 +71,16 @@ class TailRecursiveSink var next: Observable? repeat { - guard let (g, left) = _generators.last else { + guard let (g, left) = self._generators.last else { break } - - if _isDisposed { + + if self._isDisposed { return } - _generators.removeLast() - + self._generators.removeLast() + var e = g guard let nextCandidate = e.next()?.asObservable() else { @@ -97,34 +98,36 @@ class TailRecursiveSink if let knownOriginalLeft = left { // `- 1` because generator.next() has just been called if knownOriginalLeft - 1 >= 1 { - _generators.append((e, knownOriginalLeft - 1)) + self._generators.append((e, knownOriginalLeft - 1)) } - } else { - _generators.append((e, nil)) + } + else { + self._generators.append((e, nil)) } - let nextGenerator = extract(nextCandidate) + let nextGenerator = self.extract(nextCandidate) if let nextGenerator = nextGenerator { - _generators.append(nextGenerator) + self._generators.append(nextGenerator) #if DEBUG || TRACE_RESOURCES - if maxTailRecursiveSinkStackSize < _generators.count { - maxTailRecursiveSinkStackSize = _generators.count + if maxTailRecursiveSinkStackSize < self._generators.count { + maxTailRecursiveSinkStackSize = self._generators.count } #endif - } else { + } + else { next = nextCandidate } } while next == nil guard let existingNext = next else { - done() + self.done() return } let disposable = SingleAssignmentDisposable() - _subscription.disposable = disposable - disposable.setDisposable(subscribeToNext(existingNext)) + self._subscription.disposable = disposable + disposable.setDisposable(self.subscribeToNext(existingNext)) } func subscribeToNext(_ source: Observable) -> Disposable { @@ -132,16 +135,17 @@ class TailRecursiveSink } func disposeCommand() { - _isDisposed = true - _generators.removeAll(keepingCapacity: false) + self._isDisposed = true + self._generators.removeAll(keepingCapacity: false) } override func dispose() { super.dispose() - - _subscription.dispose() - _gate.dispose() - - schedule(.dispose) + + self._subscription.dispose() + self._gate.dispose() + + self.schedule(.dispose) } } + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift index 7f5b11a184..a547a8f98c 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Rx.swift @@ -7,27 +7,27 @@ // #if TRACE_RESOURCES - private var resourceCount = AtomicInt(0) + fileprivate let resourceCount = AtomicInt(0) /// Resource utilization information public struct Resources { /// Counts internal Rx resource allocations (Observables, Observers, Disposables, etc.). This provides a simple way to detect leaks during development. public static var total: Int32 { - return resourceCount.load() + return load(resourceCount) } /// Increments `Resources.total` resource count. /// /// - returns: New resource count public static func incrementTotal() -> Int32 { - return resourceCount.increment() + return increment(resourceCount) } /// Decrements `Resources.total` resource count /// /// - returns: New resource count public static func decrementTotal() -> Int32 { - return resourceCount.decrement() + return decrement(resourceCount) } } #endif @@ -37,8 +37,7 @@ func rxAbstractMethod(file: StaticString = #file, line: UInt = #line) -> Swift.N rxFatalError("Abstract method", file: file, line: line) } -func rxFatalError(_ lastMessage: @autoclosure () -> String, file: StaticString = #file, line: UInt = #line) -> Swift.Never { - // The temptation to comment this line is great, but please don't, it's for your own good. The choice is yours. +func rxFatalError(_ lastMessage: @autoclosure () -> String, file: StaticString = #file, line: UInt = #line) -> Swift.Never { fatalError(lastMessage(), file: file, line: line) } @@ -76,7 +75,7 @@ func decrementChecked(_ i: inout Int) throws -> Int { case `default` = "Two different unsynchronized threads are trying to send some event simultaneously.\n This is undefined behavior because the ordering of the effects caused by these events is nondeterministic and depends on the \n operating system thread scheduler. This will result in a random behavior of your program.\n" } - private var _threads = Dictionary() + private var _threads = [UnsafeMutableRawPointer: Int]() private func synchronizationError(_ message: String) { #if FATAL_SYNCHRONIZATION @@ -85,14 +84,14 @@ func decrementChecked(_ i: inout Int) throws -> Int { print(message) #endif } - + func register(synchronizationErrorMessage: SynchronizationErrorMessages) { - _lock.lock(); defer { _lock.unlock() } + self._lock.lock(); defer { self._lock.unlock() } let pointer = Unmanaged.passUnretained(Thread.current).toOpaque() - let count = (_threads[pointer] ?? 0) + 1 + let count = (self._threads[pointer] ?? 0) + 1 if count > 1 { - synchronizationError( + self.synchronizationError( "⚠️ Reentrancy anomaly was detected.\n" + " > Debugging: To debug this issue you can set a breakpoint in \(#file):\(#line) and observe the call stack.\n" + " > Problem: This behavior is breaking the observable sequence grammar. `next (error | completed)?`\n" + @@ -101,14 +100,14 @@ func decrementChecked(_ i: inout Int) throws -> Int { " > Interpretation: This could mean that there is some kind of unexpected cyclic dependency in your code,\n" + " or that the system is not behaving in the expected way.\n" + " > Remedy: If this is the expected behavior this message can be suppressed by adding `.observeOn(MainScheduler.asyncInstance)`\n" + - " or by enqueing sequence events in some other way.\n" + " or by enqueuing sequence events in some other way.\n" ) } + + self._threads[pointer] = count - _threads[pointer] = count - - if _threads.count > 1 { - synchronizationError( + if self._threads.count > 1 { + self.synchronizationError( "⚠️ Synchronization anomaly was detected.\n" + " > Debugging: To debug this issue you can set a breakpoint in \(#file):\(#line) and observe the call stack.\n" + " > Problem: This behavior is breaking the observable sequence grammar. `next (error | completed)?`\n" + @@ -122,11 +121,11 @@ func decrementChecked(_ i: inout Int) throws -> Int { } func unregister() { - _lock.lock(); defer { _lock.unlock() } + self._lock.lock(); defer { self._lock.unlock() } let pointer = Unmanaged.passUnretained(Thread.current).toOpaque() - _threads[pointer] = (_threads[pointer] ?? 1) - 1 - if _threads[pointer] == 0 { - _threads[pointer] = nil + self._threads[pointer] = (self._threads[pointer] ?? 1) - 1 + if self._threads[pointer] == 0 { + self._threads[pointer] = nil } } } @@ -135,7 +134,7 @@ func decrementChecked(_ i: inout Int) throws -> Int { /// RxSwift global hooks public enum Hooks { - + // Should capture call stack public static var recordCallStackOnError: Bool = false diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift index bd88886766..7f3c333baa 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/RxMutableBox.swift @@ -9,8 +9,8 @@ /// Creates mutable reference wrapper for any type. final class RxMutableBox : CustomDebugStringConvertible { /// Wrapped value - var value: T - + var value : T + /// Creates reference wrapper for `value`. /// /// - parameter value: Value to wrap. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift index d765c9a45d..e09c499de2 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/SchedulerType.swift @@ -19,7 +19,7 @@ public typealias RxTime = Date public protocol SchedulerType: ImmediateSchedulerType { /// - returns: Current time. - var now: RxTime { + var now : RxTime { get } @@ -32,7 +32,7 @@ public protocol SchedulerType: ImmediateSchedulerType { - returns: The disposable object used to cancel the scheduled action (best effort). */ func scheduleRelative(_ state: StateType, dueTime: RxTimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable - + /** Schedules a periodic piece of work. @@ -57,15 +57,15 @@ extension SchedulerType { */ public func schedulePeriodic(_ state: StateType, startAfter: RxTimeInterval, period: RxTimeInterval, action: @escaping (StateType) -> StateType) -> Disposable { let schedule = SchedulePeriodicRecursive(scheduler: self, startAfter: startAfter, period: period, action: action, state: state) - + return schedule.start() } func scheduleRecursive(_ state: State, dueTime: RxTimeInterval, action: @escaping (State, AnyRecursiveScheduler) -> Void) -> Disposable { let scheduler = AnyRecursiveScheduler(scheduler: self, action: action) - + scheduler.schedule(state, dueTime: dueTime) - + return Disposables.create(with: scheduler.dispose) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift index b800097983..ed2efbb16b 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentDispatchQueueScheduler.swift @@ -16,21 +16,21 @@ import Dispatch public class ConcurrentDispatchQueueScheduler: SchedulerType { public typealias TimeInterval = Foundation.TimeInterval public typealias Time = Date - - public var now: Date { + + public var now : Date { return Date() } let configuration: DispatchQueueConfiguration - + /// Constructs new `ConcurrentDispatchQueueScheduler` that wraps `queue`. /// /// - parameter queue: Target dispatch queue. /// - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. public init(queue: DispatchQueue, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { - configuration = DispatchQueueConfiguration(queue: queue, leeway: leeway) + self.configuration = DispatchQueueConfiguration(queue: queue, leeway: leeway) } - + /// Convenience init for scheduler that wraps one of the global concurrent dispatch queues. /// /// - parameter qos: Target global dispatch queue, by quality of service class. @@ -56,7 +56,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType { public final func schedule(_ state: StateType, action: @escaping (StateType) -> Disposable) -> Disposable { return self.configuration.schedule(state, action: action) } - + /** Schedules an action to be executed. @@ -68,7 +68,7 @@ public class ConcurrentDispatchQueueScheduler: SchedulerType { public final func scheduleRelative(_ state: StateType, dueTime: Foundation.TimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable { return self.configuration.scheduleRelative(state, dueTime: dueTime, action: action) } - + /** Schedules a periodic piece of work. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift index c717147bd5..0d65b6cabd 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/ConcurrentMainScheduler.swift @@ -16,7 +16,7 @@ Abstracts work that needs to be performed on `MainThread`. In case `schedule` me This scheduler is optimized for `subscribeOn` operator. If you want to observe observable sequence elements on main thread using `observeOn` operator, `MainScheduler` is more suitable for that purpose. */ -public final class ConcurrentMainScheduler: SchedulerType { +public final class ConcurrentMainScheduler : SchedulerType { public typealias TimeInterval = Foundation.TimeInterval public typealias Time = Date @@ -25,12 +25,12 @@ public final class ConcurrentMainScheduler: SchedulerType { /// - returns: Current time. public var now: Date { - return _mainScheduler.now as Date + return self._mainScheduler.now as Date } private init(mainScheduler: MainScheduler) { - _mainQueue = DispatchQueue.main - _mainScheduler = mainScheduler + self._mainQueue = DispatchQueue.main + self._mainScheduler = mainScheduler } /// Singleton instance of `ConcurrentMainScheduler` @@ -50,7 +50,7 @@ public final class ConcurrentMainScheduler: SchedulerType { let cancel = SingleAssignmentDisposable() - _mainQueue.async { + self._mainQueue.async { if cancel.isDisposed { return } @@ -70,7 +70,7 @@ public final class ConcurrentMainScheduler: SchedulerType { - returns: The disposable object used to cancel the scheduled action (best effort). */ public final func scheduleRelative(_ state: StateType, dueTime: Foundation.TimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable { - return _mainScheduler.scheduleRelative(state, dueTime: dueTime, action: action) + return self._mainScheduler.scheduleRelative(state, dueTime: dueTime, action: action) } /** @@ -83,6 +83,6 @@ public final class ConcurrentMainScheduler: SchedulerType { - returns: The disposable object used to cancel the scheduled action (best effort). */ public func schedulePeriodic(_ state: StateType, startAfter: TimeInterval, period: TimeInterval, action: @escaping (StateType) -> StateType) -> Disposable { - return _mainScheduler.schedulePeriodic(state, startAfter: startAfter, period: period, action: action) + return self._mainScheduler.schedulePeriodic(state, startAfter: startAfter, period: period, action: action) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift index 2d85097458..c7f6b1730c 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/CurrentThreadScheduler.swift @@ -16,8 +16,8 @@ import Dispatch import func Foundation.pthread_setspecific import func Foundation.pthread_getspecific import func Foundation.pthread_key_create - - private enum CurrentThreadSchedulerQueueKey { + + fileprivate enum CurrentThreadSchedulerQueueKey { fileprivate static let instance = "RxSwift.CurrentThreadScheduler.Queue" } #else @@ -42,7 +42,7 @@ import Dispatch /// This is the default scheduler for operators that generate elements. /// /// This scheduler is also sometimes called `trampoline scheduler`. -public class CurrentThreadScheduler: ImmediateSchedulerType { +public class CurrentThreadScheduler : ImmediateSchedulerType { typealias ScheduleQueue = RxMutableBox> /// The singleton instance of the current thread scheduler. @@ -57,7 +57,7 @@ public class CurrentThreadScheduler: ImmediateSchedulerType { key.deallocate(capacity: 1) #endif } - + guard pthread_key_create(key, nil) == 0 else { rxFatalError("isScheduleRequired key creation failed") } @@ -69,7 +69,7 @@ public class CurrentThreadScheduler: ImmediateSchedulerType { return UnsafeRawPointer(UnsafeMutablePointer.allocate(capacity: 1)) }() - static var queue: ScheduleQueue? { + static var queue : ScheduleQueue? { get { return Thread.getThreadLocalStorageValueForKey(CurrentThreadSchedulerQueueKey.instance) } @@ -130,7 +130,8 @@ public class CurrentThreadScheduler: ImmediateSchedulerType { let queue: RxMutableBox> if let existingQueue = existingQueue { queue = existingQueue - } else { + } + else { queue = RxMutableBox(Queue(capacity: 1)) CurrentThreadScheduler.queue = queue } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift index 8f76a1407b..11af238a3b 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalScheduler.swift @@ -9,7 +9,7 @@ import struct Foundation.Date /// Provides a virtual time scheduler that uses `Date` for absolute time and `NSTimeInterval` for relative time. -public class HistoricalScheduler: VirtualTimeScheduler { +public class HistoricalScheduler : VirtualTimeScheduler { /** Creates a new historical scheduler with initial clock value. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift index 260f5a2bd8..930ca37762 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/HistoricalSchedulerTimeConverter.swift @@ -11,7 +11,7 @@ import struct Foundation.Date /// Converts historical virtual time into real time. /// /// Since historical virtual time is also measured in `Date`, this converter is identity function. -public struct HistoricalSchedulerTimeConverter: VirtualTimeConverterType { +public struct HistoricalSchedulerTimeConverter : VirtualTimeConverterType { /// Virtual time unit used that represents ticks of virtual clock. public typealias VirtualTimeUnit = RxTime diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift index d16434d234..792a0be29e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/DispatchQueueConfiguration.swift @@ -25,11 +25,12 @@ extension DispatchQueueConfiguration { func schedule(_ state: StateType, action: @escaping (StateType) -> Disposable) -> Disposable { let cancel = SingleAssignmentDisposable() - queue.async { + self.queue.async { if cancel.isDisposed { return } + cancel.setDisposable(action(state)) } @@ -41,8 +42,8 @@ extension DispatchQueueConfiguration { let compositeDisposable = CompositeDisposable() - let timer = DispatchSource.makeTimerSource(queue: queue) - timer.schedule(deadline: deadline, leeway: leeway) + let timer = DispatchSource.makeTimerSource(queue: self.queue) + timer.schedule(deadline: deadline, leeway: self.leeway) // TODO: // This looks horrible, and yes, it is. @@ -75,9 +76,9 @@ extension DispatchQueueConfiguration { var timerState = state - let timer = DispatchSource.makeTimerSource(queue: queue) - timer.schedule(deadline: initial, repeating: dispatchInterval(period), leeway: leeway) - + let timer = DispatchSource.makeTimerSource(queue: self.queue) + timer.schedule(deadline: initial, repeating: dispatchInterval(period), leeway: self.leeway) + // TODO: // This looks horrible, and yes, it is. // It looks like Apple has made a conceputal change here, and I'm unsure why. @@ -97,7 +98,7 @@ extension DispatchQueueConfiguration { timerState = action(timerState) }) timer.resume() - + return cancelTimer } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/InvocableScheduledItem.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/InvocableScheduledItem.swift index 90445f8d5a..f31469e006 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/InvocableScheduledItem.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/InvocableScheduledItem.swift @@ -12,11 +12,11 @@ struct InvocableScheduledItem : InvocableType { let _state: I.Value init(invocable: I, state: I.Value) { - _invocable = invocable - _state = state + self._invocable = invocable + self._state = state } func invoke() { - _invocable.invoke(_state) + self._invocable.invoke(self._state) } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift index 8b01608a65..6e7a0c1a86 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItem.swift @@ -7,28 +7,29 @@ // struct ScheduledItem - : ScheduledItemType, InvocableType { + : ScheduledItemType + , InvocableType { typealias Action = (T) -> Disposable - + private let _action: Action private let _state: T private let _disposable = SingleAssignmentDisposable() var isDisposed: Bool { - return _disposable.isDisposed + return self._disposable.isDisposed } - + init(action: @escaping Action, state: T) { - _action = action - _state = state + self._action = action + self._state = state } - + func invoke() { - _disposable.setDisposable(_action(_state)) + self._disposable.setDisposable(self._action(self._state)) } - + func dispose() { - _disposable.dispose() + self._disposable.dispose() } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift index ec05efda62..d2b16cab70 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/Internal/ScheduledItemType.swift @@ -6,6 +6,8 @@ // Copyright © 2015 Krunoslav Zaher. All rights reserved. // -protocol ScheduledItemType: Cancelable, InvocableType { +protocol ScheduledItemType + : Cancelable + , InvocableType { func invoke() } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift index 421659f71f..8fb09071d5 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/MainScheduler.swift @@ -7,6 +7,9 @@ // import Dispatch +#if !os(Linux) + import Foundation +#endif /** Abstracts work that needs to be performed on `DispatchQueue.main`. In case `schedule` methods are called from `DispatchQueue.main`, it will perform action immediately without scheduling. @@ -18,16 +21,16 @@ Main scheduler is a specialization of `SerialDispatchQueueScheduler`. This scheduler is optimized for `observeOn` operator. To ensure observable sequence is subscribed on main thread using `subscribeOn` operator please use `ConcurrentMainScheduler` because it is more optimized for that purpose. */ -public final class MainScheduler: SerialDispatchQueueScheduler { +public final class MainScheduler : SerialDispatchQueueScheduler { private let _mainQueue: DispatchQueue - var numberEnqueued = AtomicInt(0) + let numberEnqueued = AtomicInt(0) /// Initializes new instance of `MainScheduler`. public init() { - _mainQueue = DispatchQueue.main - super.init(serialQueue: _mainQueue) + self._mainQueue = DispatchQueue.main + super.init(serialQueue: self._mainQueue) } /// Singleton instance of `MainScheduler` @@ -44,23 +47,32 @@ public final class MainScheduler: SerialDispatchQueueScheduler { } } + /// In case this method is running on a background thread it will throw an exception. + public class func ensureRunningOnMainThread(errorMessage: String? = nil) { + #if !os(Linux) // isMainThread is not implemented in Linux Foundation + guard Thread.isMainThread else { + rxFatalError(errorMessage ?? "Running on background thread.") + } + #endif + } + override func scheduleInternal(_ state: StateType, action: @escaping (StateType) -> Disposable) -> Disposable { - let previousNumberEnqueued = numberEnqueued.increment() + let previousNumberEnqueued = increment(self.numberEnqueued) if DispatchQueue.isMain && previousNumberEnqueued == 0 { let disposable = action(state) - numberEnqueued.decrement() + decrement(self.numberEnqueued) return disposable } let cancel = SingleAssignmentDisposable() - _mainQueue.async { + self._mainQueue.async { if !cancel.isDisposed { _ = action(state) } - self.numberEnqueued.decrement() + decrement(self.numberEnqueued) } return cancel diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift index a7dc1b8e3e..81ba59f34e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/OperationQueueScheduler.swift @@ -17,7 +17,7 @@ import Dispatch public class OperationQueueScheduler: ImmediateSchedulerType { public let operationQueue: OperationQueue public let queuePriority: Operation.QueuePriority - + /// Constructs new instance of `OperationQueueScheduler` that performs work on `operationQueue`. /// /// - parameter operationQueue: Operation queue targeted to perform work on. @@ -26,7 +26,7 @@ public class OperationQueueScheduler: ImmediateSchedulerType { self.operationQueue = operationQueue self.queuePriority = queuePriority } - + /** Schedules an action to be executed recursively. @@ -42,13 +42,14 @@ public class OperationQueueScheduler: ImmediateSchedulerType { return } + cancel.setDisposable(action(state)) } operation.queuePriority = self.queuePriority self.operationQueue.addOperation(operation) - + return cancel } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift index f0e4a5d18a..9e9b4ffd11 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/RecursiveScheduler.swift @@ -14,20 +14,20 @@ private enum ScheduleState { /// Type erased recursive scheduler. final class AnyRecursiveScheduler { - + typealias Action = (State, AnyRecursiveScheduler) -> Void private let _lock = RecursiveLock() - + // state private let _group = CompositeDisposable() private var _scheduler: SchedulerType private var _action: Action? - + init(scheduler: SchedulerType, action: @escaping Action) { - _action = action - _scheduler = scheduler + self._action = action + self._scheduler = scheduler } /** @@ -39,12 +39,12 @@ final class AnyRecursiveScheduler { func schedule(_ state: State, dueTime: RxTimeInterval) { var scheduleState: ScheduleState = .initial - let d = _scheduler.scheduleRelative(state, dueTime: dueTime) { (state) -> Disposable in + let d = self._scheduler.scheduleRelative(state, dueTime: dueTime) { state -> Disposable in // best effort if self._group.isDisposed { return Disposables.create() } - + let action = self._lock.calculateLocked { () -> Action? in switch scheduleState { case let .added(removeKey): @@ -59,26 +59,25 @@ final class AnyRecursiveScheduler { return self._action } - + if let action = action { action(state, self) } - + return Disposables.create() } - - _lock.performLocked { + + self._lock.performLocked { switch scheduleState { case .added: rxFatalError("Invalid state") - break case .initial: - if let removeKey = _group.insert(d) { + if let removeKey = self._group.insert(d) { scheduleState = .added(removeKey) - } else { + } + else { scheduleState = .done } - break case .done: break } @@ -91,12 +90,12 @@ final class AnyRecursiveScheduler { func schedule(_ state: State) { var scheduleState: ScheduleState = .initial - let d = _scheduler.schedule(state) { (state) -> Disposable in + let d = self._scheduler.schedule(state) { state -> Disposable in // best effort if self._group.isDisposed { return Disposables.create() } - + let action = self._lock.calculateLocked { () -> Action? in switch scheduleState { case let .added(removeKey): @@ -108,72 +107,71 @@ final class AnyRecursiveScheduler { } scheduleState = .done - + return self._action } - + if let action = action { action(state, self) } - + return Disposables.create() } - - _lock.performLocked { + + self._lock.performLocked { switch scheduleState { case .added: rxFatalError("Invalid state") - break case .initial: - if let removeKey = _group.insert(d) { + if let removeKey = self._group.insert(d) { scheduleState = .added(removeKey) - } else { + } + else { scheduleState = .done } - break case .done: break } } } - + func dispose() { - _lock.performLocked { - _action = nil + self._lock.performLocked { + self._action = nil } - _group.dispose() + self._group.dispose() } } /// Type erased recursive scheduler. final class RecursiveImmediateScheduler { typealias Action = (_ state: State, _ recurse: (State) -> Void) -> Void - + private var _lock = SpinLock() private let _group = CompositeDisposable() - + private var _action: Action? private let _scheduler: ImmediateSchedulerType - + init(action: @escaping Action, scheduler: ImmediateSchedulerType) { - _action = action - _scheduler = scheduler + self._action = action + self._scheduler = scheduler } - + // immediate scheduling - + /// Schedules an action to be executed recursively. /// /// - parameter state: State passed to the action to be executed. func schedule(_ state: State) { var scheduleState: ScheduleState = .initial - let d = _scheduler.schedule(state) { (state) -> Disposable in + let d = self._scheduler.schedule(state) { state -> Disposable in // best effort if self._group.isDisposed { return Disposables.create() } - + let action = self._lock.calculateLocked { () -> Action? in switch scheduleState { case let .added(removeKey): @@ -188,36 +186,35 @@ final class RecursiveImmediateScheduler { return self._action } - + if let action = action { action(state, self.schedule) } - + return Disposables.create() } - - _lock.performLocked { + + self._lock.performLocked { switch scheduleState { case .added: rxFatalError("Invalid state") - break case .initial: - if let removeKey = _group.insert(d) { + if let removeKey = self._group.insert(d) { scheduleState = .added(removeKey) - } else { + } + else { scheduleState = .done } - break case .done: break } } } - + func dispose() { - _lock.performLocked { - _action = nil + self._lock.performLocked { + self._action = nil } - _group.dispose() + self._group.dispose() } } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift index 2e6bd76c36..5b7b840b74 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SchedulerServices+Emulation.swift @@ -21,18 +21,18 @@ final class SchedulePeriodicRecursive { private let _action: RecursiveAction private var _state: State - private var _pendingTickCount = AtomicInt(0) + private let _pendingTickCount = AtomicInt(0) init(scheduler: SchedulerType, startAfter: RxTimeInterval, period: RxTimeInterval, action: @escaping RecursiveAction, state: State) { - _scheduler = scheduler - _startAfter = startAfter - _period = period - _action = action - _state = state + self._scheduler = scheduler + self._startAfter = startAfter + self._period = period + self._action = action + self._state = state } func start() -> Disposable { - return _scheduler.scheduleRecursive(SchedulePeriodicRecursiveCommand.tick, dueTime: _startAfter, action: self.tick) + return self._scheduler.scheduleRecursive(SchedulePeriodicRecursiveCommand.tick, dueTime: self._startAfter, action: self.tick) } func tick(_ command: SchedulePeriodicRecursiveCommand, scheduler: RecursiveScheduler) { @@ -41,18 +41,18 @@ final class SchedulePeriodicRecursive { // tick interval is short. switch command { case .tick: - scheduler.schedule(.tick, dueTime: _period) + scheduler.schedule(.tick, dueTime: self._period) // The idea is that if on tick there wasn't any item enqueued, schedule to perform work immediately. // Else work will be scheduled after previous enqueued work completes. - if _pendingTickCount.increment() == 0 { + if increment(self._pendingTickCount) == 0 { self.tick(.dispatchStart, scheduler: scheduler) } case .dispatchStart: - _state = _action(_state) + self._state = self._action(self._state) // Start work and schedule check is this last batch of work - if _pendingTickCount.decrement() > 1 { + if decrement(self._pendingTickCount) > 1 { // This gives priority to scheduler emulation, it's not perfect, but helps scheduler.schedule(SchedulePeriodicRecursiveCommand.dispatchStart) } diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift index 33dfc6e8d4..8adb57b309 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/SerialDispatchQueueScheduler.swift @@ -27,17 +27,17 @@ In case some customization need to be made on it before usage, internal serial queue can be customized using `serialQueueConfiguration` callback. */ -public class SerialDispatchQueueScheduler: SchedulerType { +public class SerialDispatchQueueScheduler : SchedulerType { public typealias TimeInterval = Foundation.TimeInterval public typealias Time = Date - + /// - returns: Current time. - public var now: Date { + public var now : Date { return Date() } let configuration: DispatchQueueConfiguration - + /** Constructs new `SerialDispatchQueueScheduler` that wraps `serialQueue`. @@ -45,7 +45,7 @@ public class SerialDispatchQueueScheduler: SchedulerType { - parameter leeway: The amount of time, in nanoseconds, that the system will defer the timer. */ init(serialQueue: DispatchQueue, leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { - configuration = DispatchQueueConfiguration(queue: serialQueue, leeway: leeway) + self.configuration = DispatchQueueConfiguration(queue: serialQueue, leeway: leeway) } /** @@ -62,7 +62,7 @@ public class SerialDispatchQueueScheduler: SchedulerType { serialQueueConfiguration?(queue) self.init(serialQueue: queue, leeway: leeway) } - + /** Constructs new `SerialDispatchQueueScheduler` named `internalSerialQueueName` that wraps `queue`. @@ -89,7 +89,7 @@ public class SerialDispatchQueueScheduler: SchedulerType { public convenience init(qos: DispatchQoS, internalSerialQueueName: String = "rx.global_dispatch_queue.serial", leeway: DispatchTimeInterval = DispatchTimeInterval.nanoseconds(0)) { self.init(queue: DispatchQueue.global(qos: qos.qosClass), internalSerialQueueName: internalSerialQueueName, leeway: leeway) } - + /** Schedules an action to be executed immediately. @@ -116,7 +116,7 @@ public class SerialDispatchQueueScheduler: SchedulerType { public final func scheduleRelative(_ state: StateType, dueTime: Foundation.TimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable { return self.configuration.scheduleRelative(state, dueTime: dueTime, action: action) } - + /** Schedules a periodic piece of work. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift index 0c86a089ae..037df95a04 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/RxSwift/RxSwift/Schedulers/VirtualTimeScheduler.swift @@ -13,33 +13,33 @@ open class VirtualTimeScheduler public typealias VirtualTime = Converter.VirtualTimeUnit public typealias VirtualTimeInterval = Converter.VirtualTimeIntervalUnit - private var _running: Bool + private var _running : Bool private var _clock: VirtualTime - fileprivate var _schedulerQueue: PriorityQueue> + fileprivate var _schedulerQueue : PriorityQueue> private var _converter: Converter private var _nextId = 0 /// - returns: Current time. public var now: RxTime { - return _converter.convertFromVirtualTime(clock) + return self._converter.convertFromVirtualTime(self.clock) } /// - returns: Scheduler's absolute time clock value. public var clock: VirtualTime { - return _clock + return self._clock } /// Creates a new virtual time scheduler. /// /// - parameter initialClock: Initial value for the clock. public init(initialClock: VirtualTime, converter: Converter) { - _clock = initialClock - _running = false - _converter = converter - _schedulerQueue = PriorityQueue(hasHigherPriority: { + self._clock = initialClock + self._running = false + self._converter = converter + self._schedulerQueue = PriorityQueue(hasHigherPriority: { switch converter.compareVirtualTime($0.time, $1.time) { case .lessThan: return true @@ -77,9 +77,9 @@ open class VirtualTimeScheduler */ public func scheduleRelative(_ state: StateType, dueTime: RxTimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable { let time = self.now.addingTimeInterval(dueTime) - let absoluteTime = _converter.convertToVirtualTime(time) + let absoluteTime = self._converter.convertToVirtualTime(time) let adjustedTime = self.adjustScheduledTime(absoluteTime) - return scheduleAbsoluteVirtual(state, time: adjustedTime, action: action) + return self.scheduleAbsoluteVirtual(state, time: adjustedTime, action: action) } /** @@ -91,8 +91,8 @@ open class VirtualTimeScheduler - returns: The disposable object used to cancel the scheduled action (best effort). */ public func scheduleRelativeVirtual(_ state: StateType, dueTime: VirtualTimeInterval, action: @escaping (StateType) -> Disposable) -> Disposable { - let time = _converter.offsetVirtualTime(self.clock, offset: dueTime) - return scheduleAbsoluteVirtual(state, time: time, action: action) + let time = self._converter.offsetVirtualTime(self.clock, offset: dueTime) + return self.scheduleAbsoluteVirtual(state, time: time, action: action) } /** @@ -111,14 +111,14 @@ open class VirtualTimeScheduler let item = VirtualSchedulerItem(action: { let dispose = action(state) return dispose - }, time: time, id: _nextId) + }, time: time, id: self._nextId) - _nextId += 1 - - _schedulerQueue.enqueue(item) + self._nextId += 1 + self._schedulerQueue.enqueue(item) + _ = compositeDisposable.insert(item) - + return compositeDisposable } @@ -131,31 +131,31 @@ open class VirtualTimeScheduler public func start() { MainScheduler.ensureExecutingOnScheduler() - if _running { + if self._running { return } - _running = true + self._running = true repeat { - guard let next = findNext() else { + guard let next = self.findNext() else { break } - if _converter.compareVirtualTime(next.time, self.clock).greaterThan { - _clock = next.time + if self._converter.compareVirtualTime(next.time, self.clock).greaterThan { + self._clock = next.time } next.invoke() - _schedulerQueue.remove(next) - } while _running + self._schedulerQueue.remove(next) + } while self._running - _running = false + self._running = false } func findNext() -> VirtualSchedulerItem? { - while let front = _schedulerQueue.peek() { + while let front = self._schedulerQueue.peek() { if front.isDisposed { - _schedulerQueue.remove(front) + self._schedulerQueue.remove(front) continue } @@ -171,49 +171,49 @@ open class VirtualTimeScheduler public func advanceTo(_ virtualTime: VirtualTime) { MainScheduler.ensureExecutingOnScheduler() - if _running { + if self._running { fatalError("Scheduler is already running") } - _running = true + self._running = true repeat { - guard let next = findNext() else { + guard let next = self.findNext() else { break } - if _converter.compareVirtualTime(next.time, virtualTime).greaterThan { + if self._converter.compareVirtualTime(next.time, virtualTime).greaterThan { break } - if _converter.compareVirtualTime(next.time, self.clock).greaterThan { - _clock = next.time + if self._converter.compareVirtualTime(next.time, self.clock).greaterThan { + self._clock = next.time } next.invoke() - _schedulerQueue.remove(next) - } while _running + self._schedulerQueue.remove(next) + } while self._running - _clock = virtualTime - _running = false + self._clock = virtualTime + self._running = false } /// Advances the scheduler's clock by the specified relative time. public func sleep(_ virtualInterval: VirtualTimeInterval) { MainScheduler.ensureExecutingOnScheduler() - let sleepTo = _converter.offsetVirtualTime(clock, offset: virtualInterval) - if _converter.compareVirtualTime(sleepTo, clock).lessThen { + let sleepTo = self._converter.offsetVirtualTime(self.clock, offset: virtualInterval) + if self._converter.compareVirtualTime(sleepTo, self.clock).lessThen { fatalError("Can't sleep to past.") } - _clock = sleepTo + self._clock = sleepTo } /// Stops the virtual time scheduler. public func stop() { MainScheduler.ensureExecutingOnScheduler() - _running = false + self._running = false } #if TRACE_RESOURCES @@ -235,17 +235,17 @@ extension VirtualTimeScheduler: CustomDebugStringConvertible { final class VirtualSchedulerItem
FooterText - Copyright (c) 2014-2018 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2014 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -51,24 +51,6 @@ Permission is hereby granted, free of charge, to any person obtaining a copy of The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - License - MIT - Title - RxAtomic - Type - PSGroupSpecifier - - - FooterText - **The MIT License** -**Copyright © 2015 Krunoslav Zaher** -**All rights reserved.** - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. License MIT diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh index 9f32c6b8ec..785b1a9734 100755 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh @@ -3,10 +3,15 @@ set -e set -u set -o pipefail +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then - # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy - # frameworks to, so exit 0 (signalling the script phase was successful). - exit 0 + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 fi echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" @@ -36,8 +41,8 @@ install_framework() local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" if [ -L "${source}" ]; then - echo "Symlinked..." - source="$(readlink "${source}")" + echo "Symlinked..." + source="$(readlink "${source}")" fi # Use filter instead of exclude so missing patterns don't throw errors. @@ -47,8 +52,13 @@ install_framework() local basename basename="$(basename -s .framework "$1")" binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" fi # Strip invalid architectures so "fat" simulator / device frameworks work on device @@ -62,7 +72,7 @@ install_framework() # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) for lib in $swift_runtime_libs; do echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" @@ -101,8 +111,8 @@ install_dsym() { # Signs a framework with the provided identity code_sign_if_enabled() { - if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then - # Use the current code_sign_identitiy + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" @@ -131,7 +141,7 @@ strip_invalid_archs() { for arch in $binary_archs; do if ! [[ "${ARCHS}" == *"$arch"* ]]; then # Strip non-valid architectures in-place - lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + lipo -remove "$arch" -output "$binary" "$binary" stripped="$stripped $arch" fi done @@ -145,13 +155,11 @@ strip_invalid_archs() { if [[ "$CONFIGURATION" == "Debug" ]]; then install_framework "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework" install_framework "${BUILT_PRODUCTS_DIR}/PetstoreClient/PetstoreClient.framework" - install_framework "${BUILT_PRODUCTS_DIR}/RxAtomic/RxAtomic.framework" install_framework "${BUILT_PRODUCTS_DIR}/RxSwift/RxSwift.framework" fi if [[ "$CONFIGURATION" == "Release" ]]; then install_framework "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework" install_framework "${BUILT_PRODUCTS_DIR}/PetstoreClient/PetstoreClient.framework" - install_framework "${BUILT_PRODUCTS_DIR}/RxAtomic/RxAtomic.framework" install_framework "${BUILT_PRODUCTS_DIR}/RxSwift/RxSwift.framework" fi if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig index 81d3075ab4..ad9eb4c96e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.debug.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic/RxAtomic.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "RxAtomic" -framework "RxSwift" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "RxSwift" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig index 81d3075ab4..ad9eb4c96e 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient.release.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic/RxAtomic.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "RxAtomic" -framework "RxSwift" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "RxSwift" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist new file mode 100644 index 0000000000..2243fe6e27 --- /dev/null +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig index 069a56a28c..4e13d2c23f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.debug.xcconfig @@ -1,7 +1,8 @@ -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic/RxAtomic.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "RxSwift" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig index 069a56a28c..4e13d2c23f 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/Pods-SwaggerClientTests/Pods-SwaggerClientTests.release.xcconfig @@ -1,7 +1,8 @@ -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PetstoreClient/PetstoreClient.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic/RxAtomic.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RxSwift/RxSwift.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "Alamofire" -framework "PetstoreClient" -framework "RxSwift" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-dummy.m b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-dummy.m deleted file mode 100644 index 1d3f7e947f..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_RxAtomic : NSObject -@end -@implementation PodsDummy_RxAtomic -@end diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-prefix.pch b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-prefix.pch deleted file mode 100644 index beb2a24418..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-prefix.pch +++ /dev/null @@ -1,12 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-umbrella.h b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-umbrella.h deleted file mode 100644 index 2a0158805c..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic-umbrella.h +++ /dev/null @@ -1,17 +0,0 @@ -#ifdef __OBJC__ -#import -#else -#ifndef FOUNDATION_EXPORT -#if defined(__cplusplus) -#define FOUNDATION_EXPORT extern "C" -#else -#define FOUNDATION_EXPORT extern -#endif -#endif -#endif - -#import "RxAtomic.h" - -FOUNDATION_EXPORT double RxAtomicVersionNumber; -FOUNDATION_EXPORT const unsigned char RxAtomicVersionString[]; - diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic.modulemap b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic.modulemap deleted file mode 100644 index e8cefe476b..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -framework module RxAtomic { - umbrella header "RxAtomic-umbrella.h" - - export * - module * { export * } -} diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic.xcconfig b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic.xcconfig deleted file mode 100644 index 3feea2637a..0000000000 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxAtomic/RxAtomic.xcconfig +++ /dev/null @@ -1,8 +0,0 @@ -CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -PODS_BUILD_DIR = ${BUILD_DIR} -PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) -PODS_ROOT = ${SRCROOT} -PODS_TARGET_SRCROOT = ${PODS_ROOT}/RxAtomic -PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} -SKIP_INSTALL = YES diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift-Info.plist b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift-Info.plist new file mode 100644 index 0000000000..c1c4a98b9a --- /dev/null +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 4.5.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift.xcconfig b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift.xcconfig index d519839a47..840598cf9d 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift.xcconfig +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/Pods/Target Support Files/RxSwift/RxSwift.xcconfig @@ -1,7 +1,6 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/RxSwift -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/RxAtomic" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj index 215216111e..14d07786a9 100644 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/SwaggerClient.xcodeproj/project.pbxproj @@ -281,22 +281,20 @@ files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Alamofire/Alamofire.framework", "${BUILT_PRODUCTS_DIR}/PetstoreClient/PetstoreClient.framework", - "${BUILT_PRODUCTS_DIR}/RxAtomic/RxAtomic.framework", "${BUILT_PRODUCTS_DIR}/RxSwift/RxSwift.framework", ); name = "[CP] Embed Pods Frameworks"; outputPaths = ( "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Alamofire.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/PetstoreClient.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxAtomic.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RxSwift.framework", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-SwaggerClient/Pods-SwaggerClient-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ diff --git a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/run_xcodebuild.sh b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/run_xcodebuild.sh index 7975187791..5de1147746 100755 --- a/samples/client/petstore/swift4/rxswift/SwaggerClientTests/run_xcodebuild.sh +++ b/samples/client/petstore/swift4/rxswift/SwaggerClientTests/run_xcodebuild.sh @@ -1,3 +1,3 @@ #!/bin/sh -xcodebuild -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" test -destination "platform=iOS Simulator,name=iPhone 8,OS=12.2" | xcpretty && exit ${PIPESTATUS[0]} +xcodebuild -workspace "SwaggerClient.xcworkspace" -scheme "SwaggerClient" test -destination "platform=iOS Simulator,name=iPhone 8,OS=13.0" | xcpretty && exit ${PIPESTATUS[0]} diff --git a/samples/client/petstore/swift4/rxswift/git_push.sh b/samples/client/petstore/swift4/rxswift/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/swift4/rxswift/git_push.sh +++ b/samples/client/petstore/swift4/rxswift/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/swift4/unwrapRequired/.openapi-generator/VERSION b/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION index 83a328a922..0e97bd19ef 100644 --- a/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION +++ b/samples/client/petstore/swift4/unwrapRequired/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/swift4/unwrapRequired/Cartfile b/samples/client/petstore/swift4/unwrapRequired/Cartfile index f1823fda9a..86748c63d9 100644 --- a/samples/client/petstore/swift4/unwrapRequired/Cartfile +++ b/samples/client/petstore/swift4/unwrapRequired/Cartfile @@ -1 +1 @@ -github "Alamofire/Alamofire" ~> 4.5.0 +github "Alamofire/Alamofire" ~> 4.9.0 diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.podspec b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.podspec index 50531fd25a..a6c9a1f3d4 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.podspec +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient.podspec @@ -10,5 +10,5 @@ Pod::Spec.new do |s| s.homepage = 'https://github.com/openapitools/openapi-generator' s.summary = 'PetstoreClient' s.source_files = 'PetstoreClient/Classes/**/*.swift' - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 1073935592..d1f658b08d 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -131,7 +131,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testBodyWithFileSchema(body: FileSchemaTestClass, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (response, error) -> Void in + testBodyWithFileSchemaWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -165,7 +165,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testBodyWithQueryParams(query: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (response, error) -> Void in + testBodyWithQueryParamsWithRequestBuilder(query: query, body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -246,7 +246,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, 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 { (response, error) -> 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 { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -389,7 +389,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, 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 { (response, error) -> Void in + testEnumParametersWithRequestBuilder(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -453,7 +453,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (response, error) -> Void in + testGroupParametersWithRequestBuilder(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -504,7 +504,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testInlineAdditionalProperties(param: [String: String], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (response, error) -> Void in + testInlineAdditionalPropertiesWithRequestBuilder(param: param).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -539,7 +539,7 @@ open class FakeAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func testJsonFormData(param: String, param2: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (response, error) -> Void in + testJsonFormDataWithRequestBuilder(param: param, param2: param2).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 896f151180..3952547574 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -16,7 +16,7 @@ open class PetAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func addPet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - addPetWithRequestBuilder(body: body).execute { (response, error) -> Void in + addPetWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -54,7 +54,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (response, error) -> Void in + deletePetWithRequestBuilder(petId: petId, apiKey: apiKey).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -219,7 +219,7 @@ open class PetAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func updatePet(body: Pet, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updatePetWithRequestBuilder(body: body).execute { (response, error) -> Void in + updatePetWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -258,7 +258,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, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (response, error) -> Void in + updatePetWithFormWithRequestBuilder(petId: petId, name: name, status: status).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 71949b335d..98ff7b5474 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -16,7 +16,7 @@ open class StoreAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func deleteOrder(orderId: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deleteOrderWithRequestBuilder(orderId: orderId).execute { (response, error) -> Void in + deleteOrderWithRequestBuilder(orderId: orderId).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index efeb64468a..24d0d35e9d 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -16,7 +16,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUser(body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUserWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUserWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -51,7 +51,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUsersWithArrayInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUsersWithArrayInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithArrayInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -85,7 +85,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func createUsersWithListInput(body: [User], completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - createUsersWithListInputWithRequestBuilder(body: body).execute { (response, error) -> Void in + createUsersWithListInputWithRequestBuilder(body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -119,7 +119,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func deleteUser(username: String, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - deleteUserWithRequestBuilder(username: username).execute { (response, error) -> Void in + deleteUserWithRequestBuilder(username: username).execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -226,7 +226,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func logoutUser(completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - logoutUserWithRequestBuilder().execute { (response, error) -> Void in + logoutUserWithRequestBuilder().execute { (_, error) -> Void in if error == nil { completion((), error) } else { @@ -260,7 +260,7 @@ open class UserAPI { - parameter completion: completion handler to receive the data and the error objects */ open class func updateUser(username: String, body: User, completion: @escaping ((_ data: Void?, _ error: Error?) -> Void)) { - updateUserWithRequestBuilder(username: username, body: body).execute { (response, error) -> Void in + updateUserWithRequestBuilder(username: username, body: body).execute { (_, error) -> Void in if error == nil { completion((), error) } else { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift index 04ad02a5ce..60ce28c66a 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/AlamofireImplementations.swift @@ -283,7 +283,7 @@ open class AlamofireRequestBuilder: RequestBuilder { let items = contentDisposition.components(separatedBy: ";") - var filename: String? = nil + var filename: String? for contentItem in items { @@ -294,7 +294,7 @@ open class AlamofireRequestBuilder: RequestBuilder { filename = contentItem return filename? - .replacingCharacters(in: range, with:"") + .replacingCharacters(in: range, with: "") .replacingOccurrences(of: "\"", with: "") .trimmingCharacters(in: .whitespacesAndNewlines) } @@ -435,7 +435,7 @@ open class AlamofireDecodableRequestBuilder: AlamofireRequestBuild return } - var responseObj: Response? = nil + var responseObj: Response? let decodeResult: (decodableObj: T?, error: Error?) = CodableHelper.decode(T.self, from: data) if decodeResult.error == nil { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift index 111d5a3a8c..0a333db0d1 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/CodableHelper.swift @@ -14,8 +14,8 @@ open class CodableHelper { public static var dateformatter: DateFormatter? open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable { - var returnedDecodable: T? = nil - var returnedError: Error? = nil + var returnedDecodable: T? + var returnedError: Error? let decoder = JSONDecoder() if let df = self.dateformatter { @@ -41,7 +41,7 @@ open class CodableHelper { open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable { var returnedData: Data? - var returnedError: Error? = nil + var returnedError: Error? let encoder = JSONEncoder() if prettyPrint { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift index 24c128daad..2fa32b9e0f 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Extensions.swift @@ -152,7 +152,7 @@ extension KeyedDecodingContainerProtocol { } public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { - var tmpArray: [T]? = nil + var tmpArray: [T]? if contains(key) { tmpArray = try decodeArray(T.self, forKey: key) diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift index ca05906d42..fb76bbed26 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodableEncoding.swift @@ -42,7 +42,7 @@ public struct JSONDataEncoding: ParameterEncoding { } public static func encodingParameters(jsonData: Data?) -> Parameters? { - var returnedParams: Parameters? = nil + var returnedParams: Parameters? if let jsonData = jsonData, !jsonData.isEmpty { var params = Parameters() params[jsonDataKey] = jsonData diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift index 3e68bb5d4a..7bd1267e95 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/JSONEncodingHelper.swift @@ -11,7 +11,7 @@ import Alamofire open class JSONEncodingHelper { open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? // Encode the Encodable object if let encodableObj = encodableObj { @@ -25,7 +25,7 @@ open class JSONEncodingHelper { } open class func encodingParameters(forEncodableObject encodableObj: Any?) -> Parameters? { - var params: Parameters? = nil + var params: Parameters? if let encodableObj = encodableObj { do { diff --git a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift index e87ce399c7..2516116586 100644 --- a/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift +++ b/samples/client/petstore/swift4/unwrapRequired/PetstoreClient/Classes/OpenAPIs/Models.swift @@ -27,7 +27,7 @@ open class Response { public convenience init(response: HTTPURLResponse, body: T?) { let rawHeader = response.allHeaderFields - var header = [String:String]() + var header = [String: String]() for case let (key, value) as (String, String) in rawHeader { header[key] = value } diff --git a/samples/client/petstore/swift4/unwrapRequired/git_push.sh b/samples/client/petstore/swift4/unwrapRequired/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/petstore/swift4/unwrapRequired/git_push.sh +++ b/samples/client/petstore/swift4/unwrapRequired/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/typescript-fetch/builds/default/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/default/src/apis/PetApi.ts index 1fcb27ef1c..1b59ed3ef0 100644 --- a/samples/client/petstore/typescript-fetch/builds/default/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/default/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/default/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/default/src/apis/UserApi.ts index 4126b817ee..52d6f3d2e3 100644 --- a/samples/client/petstore/typescript-fetch/builds/default/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/default/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/default/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/default/src/runtime.ts index eec2074ab6..473d2e7231 100644 --- a/samples/client/petstore/typescript-fetch/builds/default/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/default/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/PetApi.ts index 1fcb27ef1c..1b59ed3ef0 100644 --- a/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/UserApi.ts index 4126b817ee..52d6f3d2e3 100644 --- a/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/es6-target/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts index eec2074ab6..473d2e7231 100644 --- a/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/es6-target/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/PetApi.ts index 786513ad7d..28a239690b 100644 --- a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/UserApi.ts index ce75bed4fd..008d458aca 100644 --- a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/runtime.ts index eec2074ab6..473d2e7231 100644 --- a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/PetApi.ts index 1e5dc0803e..3bd5d9cf41 100644 --- a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/UserApi.ts index f28cd54fc8..7738fe82ea 100644 --- a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts index eec2074ab6..473d2e7231 100644 --- a/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/prefix-parameter-interfaces/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/PetApi.ts index 1fcb27ef1c..1b59ed3ef0 100644 --- a/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/UserApi.ts index 4126b817ee..52d6f3d2e3 100644 --- a/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/runtime.ts index 857f5143a6..aa2ef61589 100644 --- a/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/typescript-three-plus/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/PetApi.ts index 1fcb27ef1c..1b59ed3ef0 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/UserApi.ts index 4126b817ee..52d6f3d2e3 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/runtime.ts index eec2074ab6..473d2e7231 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/PetApi.ts index 1fcb27ef1c..1b59ed3ef0 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/PetApi.ts @@ -335,13 +335,26 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'application/x-www-form-urlencoded' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.name !== undefined) { - formData.append('name', requestParameters.name as any); + formParams.append('name', requestParameters.name as any); } if (requestParameters.status !== undefined) { - formData.append('status', requestParameters.status as any); + formParams.append('status', requestParameters.status as any); } const response = await this.request({ @@ -349,7 +362,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.VoidApiResponse(response); @@ -383,13 +396,28 @@ export class PetApi extends runtime.BaseAPI { } } - const formData = new FormData(); + const consumes: runtime.Consume[] = [ + { contentType: 'multipart/form-data' }, + ]; + // @ts-ignore: canConsumeForm may be unused + const canConsumeForm = runtime.canConsumeForm(consumes); + + let formParams: { append(param: string, value: any): any }; + let useForm = false; + // use FormData to transmit files using content-type "multipart/form-data" + useForm = canConsumeForm; + if (useForm) { + formParams = new FormData(); + } else { + formParams = new URLSearchParams(); + } + if (requestParameters.additionalMetadata !== undefined) { - formData.append('additionalMetadata', requestParameters.additionalMetadata as any); + formParams.append('additionalMetadata', requestParameters.additionalMetadata as any); } if (requestParameters.file !== undefined) { - formData.append('file', requestParameters.file as any); + formParams.append('file', requestParameters.file as any); } const response = await this.request({ @@ -397,7 +425,7 @@ export class PetApi extends runtime.BaseAPI { method: 'POST', headers: headerParameters, query: queryParameters, - body: formData, + body: formParams, }); return new runtime.JSONApiResponse(response, (jsonValue) => ModelApiResponseFromJSON(jsonValue)); diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/UserApi.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/UserApi.ts index 4126b817ee..52d6f3d2e3 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/UserApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/apis/UserApi.ts @@ -244,7 +244,7 @@ export class UserApi extends runtime.BaseAPI { query: queryParameters, }); - return new runtime.TextApiResponse(response); + return new runtime.TextApiResponse(response) as any; } /** diff --git a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts index eec2074ab6..473d2e7231 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-npm-version/src/runtime.ts @@ -195,7 +195,7 @@ export type Json = any; export type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS'; export type HTTPHeaders = { [key: string]: string }; export type HTTPQuery = { [key: string]: string | number | null | boolean | Array | HTTPQuery }; -export type HTTPBody = Json | FormData; +export type HTTPBody = Json | FormData | URLSearchParams; export type ModelPropertyNaming = 'camelCase' | 'snake_case' | 'PascalCase' | 'original'; export interface FetchParams { @@ -242,6 +242,19 @@ export function mapValues(data: any, fn: (item: any) => any) { ); } +export function canConsumeForm(consumes: Consume[]): boolean { + for (const consume of consumes) { + if ('multipart/form-data' === consume.contentType) { + return true; + } + } + return false; +} + +export interface Consume { + contentType: string +} + export interface RequestContext { fetch: FetchAPI; url: string; diff --git a/samples/client/petstore/typescript-node/default/api/apis.ts b/samples/client/petstore/typescript-node/default/api/apis.ts index d3fb76d4a5..50e5ef8303 100644 --- a/samples/client/petstore/typescript-node/default/api/apis.ts +++ b/samples/client/petstore/typescript-node/default/api/apis.ts @@ -4,11 +4,24 @@ export * from './storeApi'; import { StoreApi } from './storeApi'; export * from './userApi'; import { UserApi } from './userApi'; -import http = require('http'); +import * as fs from 'fs'; +import * as http from 'http'; + export class HttpError extends Error { constructor (public response: http.ClientResponse, public body: any, public statusCode?: number) { super('HTTP request failed'); this.name = 'HttpError'; } } + +export interface RequestDetailedFile { + value: Buffer; + options?: { + filename?: string; + contentType?: string; + } +} + +export type RequestFile = string | Buffer | fs.ReadStream | RequestDetailedFile; + export const APIS = [PetApi, StoreApi, UserApi]; diff --git a/samples/client/petstore/typescript-node/default/api/petApi.ts b/samples/client/petstore/typescript-node/default/api/petApi.ts index 0131e39e7f..e943ad7a58 100644 --- a/samples/client/petstore/typescript-node/default/api/petApi.ts +++ b/samples/client/petstore/typescript-node/default/api/petApi.ts @@ -18,10 +18,9 @@ import { ApiResponse } from '../model/apiResponse'; import { Pet } from '../model/pet'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; -import { OAuth } from '../model/models'; -import { ApiKeyAuth } from '../model/models'; +import { HttpBasicAuth, ApiKeyAuth, OAuth } from '../model/models'; -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = 'http://petstore.swagger.io/v2'; @@ -206,6 +205,13 @@ export class PetApi { const localVarPath = this.basePath + '/pet/findByStatus'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'status' is not null or undefined @@ -267,6 +273,13 @@ export class PetApi { const localVarPath = this.basePath + '/pet/findByTags'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'tags' is not null or undefined @@ -329,6 +342,13 @@ export class PetApi { .replace('{' + 'petId' + '}', encodeURIComponent(String(petId))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'petId' is not null or undefined @@ -508,11 +528,18 @@ export class PetApi { * @param additionalMetadata Additional data to pass to server * @param file file to upload */ - public async uploadFile (petId: number, additionalMetadata?: string, file?: Buffer, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.ClientResponse; body: ApiResponse; }> { + public async uploadFile (petId: number, additionalMetadata?: string, file?: RequestFile, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.ClientResponse; body: ApiResponse; }> { const localVarPath = this.basePath + '/pet/{petId}/uploadImage' .replace('{' + 'petId' + '}', encodeURIComponent(String(petId))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'petId' is not null or undefined diff --git a/samples/client/petstore/typescript-node/default/api/storeApi.ts b/samples/client/petstore/typescript-node/default/api/storeApi.ts index 6d19eabc0a..2acc326108 100644 --- a/samples/client/petstore/typescript-node/default/api/storeApi.ts +++ b/samples/client/petstore/typescript-node/default/api/storeApi.ts @@ -17,9 +17,9 @@ import http = require('http'); import { Order } from '../model/order'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; -import { ApiKeyAuth } from '../model/models'; +import { HttpBasicAuth, ApiKeyAuth, OAuth } from '../model/models'; -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = 'http://petstore.swagger.io/v2'; @@ -137,6 +137,13 @@ export class StoreApi { const localVarPath = this.basePath + '/store/inventory'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; (Object).assign(localVarHeaderParams, options.headers); @@ -190,6 +197,13 @@ export class StoreApi { .replace('{' + 'orderId' + '}', encodeURIComponent(String(orderId))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'orderId' is not null or undefined @@ -245,6 +259,13 @@ export class StoreApi { const localVarPath = this.basePath + '/store/order'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'body' is not null or undefined diff --git a/samples/client/petstore/typescript-node/default/api/userApi.ts b/samples/client/petstore/typescript-node/default/api/userApi.ts index eab57a38e4..6443289f02 100644 --- a/samples/client/petstore/typescript-node/default/api/userApi.ts +++ b/samples/client/petstore/typescript-node/default/api/userApi.ts @@ -18,7 +18,7 @@ import { User } from '../model/user'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = 'http://petstore.swagger.io/v2'; @@ -301,6 +301,13 @@ export class UserApi { .replace('{' + 'username' + '}', encodeURIComponent(String(username))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'username' is not null or undefined @@ -357,6 +364,13 @@ export class UserApi { const localVarPath = this.basePath + '/user/login'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'username' is not null or undefined diff --git a/samples/client/petstore/typescript-node/default/model/inlineObject.ts b/samples/client/petstore/typescript-node/default/model/inlineObject.ts index ceaabe7df4..b9396dae34 100644 --- a/samples/client/petstore/typescript-node/default/model/inlineObject.ts +++ b/samples/client/petstore/typescript-node/default/model/inlineObject.ts @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/typescript-node/default/model/inlineObject1.ts b/samples/client/petstore/typescript-node/default/model/inlineObject1.ts index b3e23fb843..a9c57cdab6 100644 --- a/samples/client/petstore/typescript-node/default/model/inlineObject1.ts +++ b/samples/client/petstore/typescript-node/default/model/inlineObject1.ts @@ -2,7 +2,7 @@ * OpenAPI Petstore * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. * - * OpenAPI spec version: 1.0.0 + * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). diff --git a/samples/client/petstore/typescript-node/default/model/models.ts b/samples/client/petstore/typescript-node/default/model/models.ts index 73d5122442..7aea0f1544 100644 --- a/samples/client/petstore/typescript-node/default/model/models.ts +++ b/samples/client/petstore/typescript-node/default/model/models.ts @@ -25,7 +25,7 @@ let primitives = [ "number", "any" ]; - + let enumsMap: {[index: string]: any} = { "Order.StatusEnum": Order.StatusEnum, "Pet.StatusEnum": Pet.StatusEnum, @@ -99,7 +99,7 @@ export class ObjectSerializer { if (!typeMap[type]) { // in case we dont know the type return data; } - + // Get the actual type of this object type = this.findCorrectType(data, type); @@ -180,6 +180,13 @@ export class ApiKeyAuth implements Authentication { (requestOptions.qs)[this.paramName] = this.apiKey; } else if (this.location == "header" && requestOptions && requestOptions.headers) { requestOptions.headers[this.paramName] = this.apiKey; + } else if (this.location == 'cookie' && requestOptions && requestOptions.headers) { + if (requestOptions.headers['Cookie']) { + requestOptions.headers['Cookie'] += '; ' + this.paramName + '=' + encodeURIComponent(this.apiKey); + } + else { + requestOptions.headers['Cookie'] = this.paramName + '=' + encodeURIComponent(this.apiKey); + } } } } diff --git a/samples/client/petstore/typescript-node/npm/api/apis.ts b/samples/client/petstore/typescript-node/npm/api/apis.ts index d3fb76d4a5..50e5ef8303 100644 --- a/samples/client/petstore/typescript-node/npm/api/apis.ts +++ b/samples/client/petstore/typescript-node/npm/api/apis.ts @@ -4,11 +4,24 @@ export * from './storeApi'; import { StoreApi } from './storeApi'; export * from './userApi'; import { UserApi } from './userApi'; -import http = require('http'); +import * as fs from 'fs'; +import * as http from 'http'; + export class HttpError extends Error { constructor (public response: http.ClientResponse, public body: any, public statusCode?: number) { super('HTTP request failed'); this.name = 'HttpError'; } } + +export interface RequestDetailedFile { + value: Buffer; + options?: { + filename?: string; + contentType?: string; + } +} + +export type RequestFile = string | Buffer | fs.ReadStream | RequestDetailedFile; + export const APIS = [PetApi, StoreApi, UserApi]; diff --git a/samples/client/petstore/typescript-node/npm/api/petApi.ts b/samples/client/petstore/typescript-node/npm/api/petApi.ts index 0131e39e7f..e943ad7a58 100644 --- a/samples/client/petstore/typescript-node/npm/api/petApi.ts +++ b/samples/client/petstore/typescript-node/npm/api/petApi.ts @@ -18,10 +18,9 @@ import { ApiResponse } from '../model/apiResponse'; import { Pet } from '../model/pet'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; -import { OAuth } from '../model/models'; -import { ApiKeyAuth } from '../model/models'; +import { HttpBasicAuth, ApiKeyAuth, OAuth } from '../model/models'; -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = 'http://petstore.swagger.io/v2'; @@ -206,6 +205,13 @@ export class PetApi { const localVarPath = this.basePath + '/pet/findByStatus'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'status' is not null or undefined @@ -267,6 +273,13 @@ export class PetApi { const localVarPath = this.basePath + '/pet/findByTags'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'tags' is not null or undefined @@ -329,6 +342,13 @@ export class PetApi { .replace('{' + 'petId' + '}', encodeURIComponent(String(petId))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'petId' is not null or undefined @@ -508,11 +528,18 @@ export class PetApi { * @param additionalMetadata Additional data to pass to server * @param file file to upload */ - public async uploadFile (petId: number, additionalMetadata?: string, file?: Buffer, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.ClientResponse; body: ApiResponse; }> { + public async uploadFile (petId: number, additionalMetadata?: string, file?: RequestFile, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.ClientResponse; body: ApiResponse; }> { const localVarPath = this.basePath + '/pet/{petId}/uploadImage' .replace('{' + 'petId' + '}', encodeURIComponent(String(petId))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'petId' is not null or undefined diff --git a/samples/client/petstore/typescript-node/npm/api/storeApi.ts b/samples/client/petstore/typescript-node/npm/api/storeApi.ts index 6d19eabc0a..2acc326108 100644 --- a/samples/client/petstore/typescript-node/npm/api/storeApi.ts +++ b/samples/client/petstore/typescript-node/npm/api/storeApi.ts @@ -17,9 +17,9 @@ import http = require('http'); import { Order } from '../model/order'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; -import { ApiKeyAuth } from '../model/models'; +import { HttpBasicAuth, ApiKeyAuth, OAuth } from '../model/models'; -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = 'http://petstore.swagger.io/v2'; @@ -137,6 +137,13 @@ export class StoreApi { const localVarPath = this.basePath + '/store/inventory'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; (Object).assign(localVarHeaderParams, options.headers); @@ -190,6 +197,13 @@ export class StoreApi { .replace('{' + 'orderId' + '}', encodeURIComponent(String(orderId))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'orderId' is not null or undefined @@ -245,6 +259,13 @@ export class StoreApi { const localVarPath = this.basePath + '/store/order'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'body' is not null or undefined diff --git a/samples/client/petstore/typescript-node/npm/api/userApi.ts b/samples/client/petstore/typescript-node/npm/api/userApi.ts index eab57a38e4..6443289f02 100644 --- a/samples/client/petstore/typescript-node/npm/api/userApi.ts +++ b/samples/client/petstore/typescript-node/npm/api/userApi.ts @@ -18,7 +18,7 @@ import { User } from '../model/user'; import { ObjectSerializer, Authentication, VoidAuth } from '../model/models'; -import { HttpError } from './apis'; +import { HttpError, RequestFile } from './apis'; let defaultBasePath = 'http://petstore.swagger.io/v2'; @@ -301,6 +301,13 @@ export class UserApi { .replace('{' + 'username' + '}', encodeURIComponent(String(username))); let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'username' is not null or undefined @@ -357,6 +364,13 @@ export class UserApi { const localVarPath = this.basePath + '/user/login'; let localVarQueryParameters: any = {}; let localVarHeaderParams: any = (Object).assign({}, this.defaultHeaders); + const produces = ['application/xml', 'application/json']; + // give precedence to 'application/json' + if (produces.indexOf('application/json') >= 0) { + localVarHeaderParams.Accept = 'application/json'; + } else { + localVarHeaderParams.Accept = produces.join(','); + } let localVarFormParams: any = {}; // verify required parameter 'username' is not null or undefined diff --git a/samples/client/petstore/typescript-node/npm/model/models.ts b/samples/client/petstore/typescript-node/npm/model/models.ts index 73d5122442..7aea0f1544 100644 --- a/samples/client/petstore/typescript-node/npm/model/models.ts +++ b/samples/client/petstore/typescript-node/npm/model/models.ts @@ -25,7 +25,7 @@ let primitives = [ "number", "any" ]; - + let enumsMap: {[index: string]: any} = { "Order.StatusEnum": Order.StatusEnum, "Pet.StatusEnum": Pet.StatusEnum, @@ -99,7 +99,7 @@ export class ObjectSerializer { if (!typeMap[type]) { // in case we dont know the type return data; } - + // Get the actual type of this object type = this.findCorrectType(data, type); @@ -180,6 +180,13 @@ export class ApiKeyAuth implements Authentication { (requestOptions.qs)[this.paramName] = this.apiKey; } else if (this.location == "header" && requestOptions && requestOptions.headers) { requestOptions.headers[this.paramName] = this.apiKey; + } else if (this.location == 'cookie' && requestOptions && requestOptions.headers) { + if (requestOptions.headers['Cookie']) { + requestOptions.headers['Cookie'] += '; ' + this.paramName + '=' + encodeURIComponent(this.apiKey); + } + else { + requestOptions.headers['Cookie'] = this.paramName + '=' + encodeURIComponent(this.apiKey); + } } } } diff --git a/samples/client/test/swift4/default/.openapi-generator/VERSION b/samples/client/test/swift4/default/.openapi-generator/VERSION index 83a328a922..0e97bd19ef 100644 --- a/samples/client/test/swift4/default/.openapi-generator/VERSION +++ b/samples/client/test/swift4/default/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/client/test/swift4/default/Cartfile b/samples/client/test/swift4/default/Cartfile index f1823fda9a..86748c63d9 100644 --- a/samples/client/test/swift4/default/Cartfile +++ b/samples/client/test/swift4/default/Cartfile @@ -1 +1 @@ -github "Alamofire/Alamofire" ~> 4.5.0 +github "Alamofire/Alamofire" ~> 4.9.0 diff --git a/samples/client/test/swift4/default/TestClient.podspec b/samples/client/test/swift4/default/TestClient.podspec index a5eea58a7a..4adf2b418a 100644 --- a/samples/client/test/swift4/default/TestClient.podspec +++ b/samples/client/test/swift4/default/TestClient.podspec @@ -10,5 +10,5 @@ Pod::Spec.new do |s| s.homepage = 'https://github.com/openapitools/openapi-generator' s.summary = 'TestClient' s.source_files = 'TestClient/Classes/**/*.swift' - s.dependency 'Alamofire', '~> 4.7.0' + s.dependency 'Alamofire', '~> 4.9.0' end diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift index 75dea24395..d94614b34f 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIHelper.swift @@ -7,7 +7,7 @@ import Foundation public struct APIHelper { - public static func rejectNil(_ source: [String: Any?]) -> [String: Any]? { + 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 @@ -20,17 +20,17 @@ public struct APIHelper { return destination } - public static func rejectNilHeaders(_ source: [String: Any?]) -> [String: String] { + public static func rejectNilHeaders(_ source: [String:Any?]) -> [String:String] { return source.reduce(into: [String: String]()) { (result, item) in if let collection = item.value as? Array { - result[item.key] = collection.filter({ $0 != nil }).map { "\($0!)" }.joined(separator: ",") + 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]? { + public static func convertBoolToString(_ source: [String: Any]?) -> [String:Any]? { guard let source = source else { return nil } @@ -52,7 +52,7 @@ public struct APIHelper { return source } - public static func mapValuesToQueryItems(_ source: [String: Any?]) -> [URLQueryItem]? { + 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? Array { let value = collection.filter({ $0 != nil }).map({"\($0!)"}).joined(separator: ",") @@ -68,3 +68,4 @@ public struct APIHelper { return destination } } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift index e60b615400..88a72b1c67 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs.swift @@ -9,22 +9,22 @@ import Foundation open class TestClientAPI { public static var basePath = "http://api.example.com/basePath" public static var credential: URLCredential? - public static var customHeaders: [String: String] = [:] + public static var customHeaders: [String:String] = [:] public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory() } open class RequestBuilder { var credential: URLCredential? - var headers: [String: String] - public let parameters: [String: Any]? + var headers: [String:String] + public let parameters: [String:Any]? public let isBody: Bool public let method: String public let URLString: String /// Optional block to obtain a reference to the request's progress instance when available. - public var onProgressReady: ((Progress) -> Void)? + public var onProgressReady: ((Progress) -> ())? - required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) { + required public init(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:]) { self.method = method self.URLString = URLString self.parameters = parameters @@ -34,7 +34,7 @@ open class RequestBuilder { addHeaders(TestClientAPI.customHeaders) } - open func addHeaders(_ aHeaders: [String: String]) { + open func addHeaders(_ aHeaders:[String:String]) { for (header, value) in aHeaders { headers[header] = value } @@ -57,5 +57,5 @@ open class RequestBuilder { public protocol RequestBuilderFactory { func getNonDecodableBuilder() -> RequestBuilder.Type - func getBuilder() -> RequestBuilder.Type + func getBuilder() -> RequestBuilder.Type } diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift index a775c2aaaa..a0b90ee6a8 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/APIs/Swift4TestAPI.swift @@ -8,6 +8,8 @@ import Foundation import Alamofire + + open class Swift4TestAPI { /** Get all of the models @@ -15,7 +17,7 @@ open class Swift4TestAPI { - parameter clientId: (query) id that represent the Api client - parameter completion: completion handler to receive the data and the error objects */ - open class func getAllModels(clientId: String, completion: @escaping ((_ data: GetAllModelsResult?, _ error: Error?) -> Void)) { + open class func getAllModels(clientId: String, completion: @escaping ((_ data: GetAllModelsResult?,_ error: Error?) -> Void)) { getAllModelsWithRequestBuilder(clientId: clientId).execute { (response, error) -> Void in completion(response?.body, error) } @@ -31,8 +33,8 @@ open class Swift4TestAPI { open class func getAllModelsWithRequestBuilder(clientId: String) -> RequestBuilder { let path = "/allModels" let URLString = TestClientAPI.basePath + path - let parameters: [String: Any]? = nil - + let parameters: [String:Any]? = nil + var url = URLComponents(string: URLString) url?.queryItems = APIHelper.mapValuesToQueryItems([ "client_id": clientId diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift index 04ad02a5ce..dac40e9a31 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/AlamofireImplementations.swift @@ -12,7 +12,7 @@ class AlamofireRequestBuilderFactory: RequestBuilderFactory { return AlamofireRequestBuilder.self } - func getBuilder() -> RequestBuilder.Type { + func getBuilder() -> RequestBuilder.Type { return AlamofireDecodableRequestBuilder.self } } @@ -50,7 +50,7 @@ private struct SynchronizedDictionary { private var managerStore = SynchronizedDictionary() open class AlamofireRequestBuilder: RequestBuilder { - required public init(method: String, URLString: String, parameters: [String: Any]?, isBody: Bool, headers: [String: String] = [:]) { + required public init(method: String, URLString: String, parameters: [String : Any]?, isBody: Bool, headers: [String : String] = [:]) { super.init(method: method, URLString: URLString, parameters: parameters, isBody: isBody, headers: headers) } @@ -88,17 +88,17 @@ open class AlamofireRequestBuilder: RequestBuilder { May be overridden by a subclass if you want to control the request configuration (e.g. to override the cache policy). */ - open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String: String]) -> DataRequest { + open func makeRequest(manager: SessionManager, method: HTTPMethod, encoding: ParameterEncoding, headers: [String:String]) -> DataRequest { return manager.request(URLString, method: method, parameters: parameters, encoding: encoding, headers: headers) } override open func execute(_ completion: @escaping (_ response: Response?, _ error: Error?) -> Void) { - let managerId: String = UUID().uuidString + let managerId:String = UUID().uuidString // Create a new manager for each request to customize its request header let manager = createSessionManager() managerStore[managerId] = manager - let encoding: ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding() + let encoding:ParameterEncoding = isBody ? JSONDataEncoding() : URLEncoding() let xMethod = Alamofire.HTTPMethod(rawValue: method) let fileKeys = parameters == nil ? [] : parameters!.filter { $1 is NSURL } @@ -111,7 +111,8 @@ open class AlamofireRequestBuilder: RequestBuilder { case let fileURL as URL: if let mimeType = self.contentTypeForFormPart(fileURL: fileURL) { mpForm.append(fileURL, withName: k, fileName: fileURL.lastPathComponent, mimeType: mimeType) - } else { + } + else { mpForm.append(fileURL, withName: k) } case let string as String: @@ -275,7 +276,7 @@ open class AlamofireRequestBuilder: RequestBuilder { return httpHeaders } - fileprivate func getFileName(fromContentDisposition contentDisposition: String?) -> String? { + fileprivate func getFileName(fromContentDisposition contentDisposition : String?) -> String? { guard let contentDisposition = contentDisposition else { return nil @@ -283,7 +284,7 @@ open class AlamofireRequestBuilder: RequestBuilder { let items = contentDisposition.components(separatedBy: ";") - var filename: String? = nil + var filename : String? = nil for contentItem in items { @@ -303,7 +304,7 @@ open class AlamofireRequestBuilder: RequestBuilder { } - fileprivate func getPath(from url: URL) throws -> String { + fileprivate func getPath(from url : URL) throws -> String { guard var path = URLComponents(url: url, resolvingAgainstBaseURL: true)?.path else { throw DownloadException.requestMissingPath @@ -317,7 +318,7 @@ open class AlamofireRequestBuilder: RequestBuilder { } - fileprivate func getURL(from urlRequest: URLRequest) throws -> URL { + fileprivate func getURL(from urlRequest : URLRequest) throws -> URL { guard let url = urlRequest.url else { throw DownloadException.requestMissingURL @@ -328,7 +329,7 @@ open class AlamofireRequestBuilder: RequestBuilder { } -private enum DownloadException: Error { +fileprivate enum DownloadException : Error { case responseDataMissing case responseFailed case requestMissing @@ -343,7 +344,7 @@ public enum AlamofireDecodableRequestBuilderError: Error { case generalError(Error) } -open class AlamofireDecodableRequestBuilder: AlamofireRequestBuilder { +open class AlamofireDecodableRequestBuilder: AlamofireRequestBuilder { override fileprivate func processRequest(request: DataRequest, _ managerId: String, _ completion: @escaping (_ response: Response?, _ error: Error?) -> Void) { if let credential = self.credential { diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift index 111d5a3a8c..584de8c3d5 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/CodableHelper.swift @@ -13,7 +13,7 @@ open class CodableHelper { public static var dateformatter: DateFormatter? - open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T: Decodable { + open class func decode(_ type: T.Type, from data: Data) -> (decodableObj: T?, error: Error?) where T : Decodable { var returnedDecodable: T? = nil var returnedError: Error? = nil @@ -39,7 +39,7 @@ open class CodableHelper { return (returnedDecodable, returnedError) } - open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T: Encodable { + open class func encode(_ value: T, prettyPrint: Bool = false) -> EncodeResult where T : Encodable { var returnedData: Data? var returnedError: Error? = nil diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift index e1ecb39726..516590da5d 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Configuration.swift @@ -7,9 +7,9 @@ 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. public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ" - -} + +} \ No newline at end of file diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift index 24c128daad..8bf1829ba8 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Extensions.swift @@ -112,24 +112,24 @@ extension String: CodingKey { extension KeyedEncodingContainerProtocol { - public mutating func encodeArray(_ values: [T], forKey key: Self.Key) throws where T: Encodable { + 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 { + 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 { + 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 { + public mutating func encodeMapIfPresent(_ pairs: [Self.Key: T]?) throws where T : Encodable { if let pairs = pairs { try encodeMap(pairs) } @@ -139,7 +139,7 @@ extension KeyedEncodingContainerProtocol { extension KeyedDecodingContainerProtocol { - public func decodeArray(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable { + public func decodeArray(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T : Decodable { var tmpArray = [T]() var nestedContainer = try nestedUnkeyedContainer(forKey: key) @@ -151,7 +151,7 @@ extension KeyedDecodingContainerProtocol { return tmpArray } - public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { + public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T : Decodable { var tmpArray: [T]? = nil if contains(key) { @@ -161,8 +161,8 @@ extension KeyedDecodingContainerProtocol { return tmpArray } - public func decodeMap(_ type: T.Type, excludedKeys: Set) throws -> [Self.Key: T] where T: Decodable { - var map: [Self.Key: T] = [:] + 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) { @@ -175,3 +175,5 @@ extension KeyedDecodingContainerProtocol { } } + + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift index 3e68bb5d4a..7044951584 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/JSONEncodingHelper.swift @@ -10,7 +10,7 @@ import Alamofire open class JSONEncodingHelper { - open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { + open class func encodingParameters(forEncodableObject encodableObj: T?) -> Parameters? { var params: Parameters? = nil // Encode the Encodable object @@ -39,5 +39,5 @@ open class JSONEncodingHelper { return params } - + } diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift index e87ce399c7..4085638903 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models.swift @@ -10,7 +10,7 @@ protocol JSONEncodable { func encodeToJSON() -> Any } -public enum ErrorResponse: Error { +public enum ErrorResponse : Error { case error(Int, Data?, Error) } diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift index 0087792f20..3ce27fcd98 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/AllPrimitives.swift @@ -7,6 +7,7 @@ import Foundation + /** Object which contains lots of different primitive Swagger types */ public struct AllPrimitives: Codable { @@ -70,4 +71,6 @@ public struct AllPrimitives: Codable { self.myInlineStringEnum = myInlineStringEnum } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift index 51055d8573..7e4bb2c0cd 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/BaseCard.swift @@ -7,6 +7,7 @@ import Foundation + /** This is a base card object which uses a 'cardType' discriminator. */ public struct BaseCard: Codable { @@ -17,4 +18,6 @@ public struct BaseCard: Codable { self.cardType = cardType } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift index a603717abe..ae5327eda3 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ErrorInfo.swift @@ -7,6 +7,7 @@ import Foundation + /** Example Error object */ public struct ErrorInfo: Codable { @@ -21,4 +22,6 @@ public struct ErrorInfo: Codable { self.details = details } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift index cc3992e748..286c5a7a35 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/GetAllModelsResult.swift @@ -7,6 +7,7 @@ import Foundation + /** Response object containing AllPrimitives object */ public struct GetAllModelsResult: Codable { @@ -21,4 +22,6 @@ public struct GetAllModelsResult: Codable { self.myVariableNameTest = myVariableNameTest } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift index c00da2ea9f..d7f2ca1526 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/ModelWithPropertiesAndAdditionalProperties.swift @@ -7,6 +7,7 @@ import Foundation + /** This is an empty model with no properties and only additionalProperties of type int32 */ public struct ModelWithPropertiesAndAdditionalProperties: Codable { @@ -30,7 +31,7 @@ public struct ModelWithPropertiesAndAdditionalProperties: Codable { self.myPrimitiveArrayReq = myPrimitiveArrayReq self.myPrimitiveArrayOpt = myPrimitiveArrayOpt } - public var additionalProperties: [String: String] = [:] + public var additionalProperties: [String:String] = [:] public subscript(key: String) -> String? { get { @@ -87,4 +88,7 @@ public struct ModelWithPropertiesAndAdditionalProperties: Codable { additionalProperties = try container.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys) } + + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift index 0f60362765..9ce70e0b95 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCard.swift @@ -7,6 +7,7 @@ import Foundation + /** This is a card object for a Person derived from BaseCard. */ public struct PersonCard: Codable { @@ -21,4 +22,6 @@ public struct PersonCard: Codable { self.lastName = lastName } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift index e11d38985a..347da1187e 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PersonCardAllOf.swift @@ -7,6 +7,8 @@ import Foundation + + public struct PersonCardAllOf: Codable { public var firstName: String? @@ -17,4 +19,6 @@ public struct PersonCardAllOf: Codable { self.lastName = lastName } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift index d292636040..905b80ae52 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCard.swift @@ -7,6 +7,7 @@ import Foundation + /** This is a card object for a Person derived from BaseCard. */ public struct PlaceCard: Codable { @@ -21,4 +22,6 @@ public struct PlaceCard: Codable { self.placeAddress = placeAddress } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift index c5e89a15e0..b9642dfdeb 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/PlaceCardAllOf.swift @@ -7,6 +7,8 @@ import Foundation + + public struct PlaceCardAllOf: Codable { public var placeName: String? @@ -17,4 +19,6 @@ public struct PlaceCardAllOf: Codable { self.placeAddress = placeAddress } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift index 42b32eee43..77f8897cdf 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleBase.swift @@ -7,6 +7,7 @@ import Foundation + /** This is a base class object from which other classes will derive. */ public struct SampleBase: Codable { @@ -19,4 +20,6 @@ public struct SampleBase: Codable { self.baseClassIntegerProp = baseClassIntegerProp } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift index a33ee92f22..d53cd948fe 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClass.swift @@ -7,11 +7,23 @@ import Foundation + /** This is a subclass defived from the SampleBase class. */ public struct SampleSubClass: Codable { - public init() { + public var baseClassStringProp: String? + public var baseClassIntegerProp: Int? + public var subClassStringProp: String? + public var subClassIntegerProp: Int? + + public init(baseClassStringProp: String?, baseClassIntegerProp: Int?, subClassStringProp: String?, subClassIntegerProp: Int?) { + self.baseClassStringProp = baseClassStringProp + self.baseClassIntegerProp = baseClassIntegerProp + self.subClassStringProp = subClassStringProp + self.subClassIntegerProp = subClassIntegerProp } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift index 7f52bb9fef..d96f845668 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/SampleSubClassAllOf.swift @@ -7,6 +7,8 @@ import Foundation + + public struct SampleSubClassAllOf: Codable { public var subClassStringProp: String? @@ -17,4 +19,6 @@ public struct SampleSubClassAllOf: Codable { self.subClassIntegerProp = subClassIntegerProp } + } + diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift index 67c1c22ded..d4cce19e6d 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/StringEnum.swift @@ -7,6 +7,7 @@ import Foundation + public enum StringEnum: String, Codable { case stringenumvalue1 = "stringEnumValue1" case stringenumvalue2 = "stringEnumValue2" diff --git a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift index 6592d3f1ee..1248e645c6 100644 --- a/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift +++ b/samples/client/test/swift4/default/TestClient/Classes/OpenAPIs/Models/VariableNameTest.swift @@ -7,6 +7,7 @@ import Foundation + /** This object contains property names which we know will be different from their variable name. Examples of this include snake case property names and property names which are Swift 4 reserved words. */ public struct VariableNameTest: Codable { @@ -24,10 +25,12 @@ public struct VariableNameTest: Codable { self.normalName = normalName } - public enum CodingKeys: String, CodingKey { + public enum CodingKeys: String, CodingKey { case exampleName = "example_name" case _for = "for" case normalName } + } + diff --git a/samples/client/test/swift4/default/git_push.sh b/samples/client/test/swift4/default/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/client/test/swift4/default/git_push.sh +++ b/samples/client/test/swift4/default/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/openapi3/client/petstore/go/go-petstore/.openapi-generator/VERSION b/samples/openapi3/client/petstore/go/go-petstore/.openapi-generator/VERSION index d1a8f58b38..c3a2c7076f 100644 --- a/samples/openapi3/client/petstore/go/go-petstore/.openapi-generator/VERSION +++ b/samples/openapi3/client/petstore/go/go-petstore/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.2-SNAPSHOT \ No newline at end of file +4.2.0-SNAPSHOT \ No newline at end of file diff --git a/samples/openapi3/client/petstore/go/go-petstore/api_fake.go b/samples/openapi3/client/petstore/go/go-petstore/api_fake.go index 2866fd5cd8..7035339127 100644 --- a/samples/openapi3/client/petstore/go/go-petstore/api_fake.go +++ b/samples/openapi3/client/petstore/go/go-petstore/api_fake.go @@ -17,8 +17,6 @@ import ( "github.com/antihax/optional" "os" "reflect" - "reflect" - "reflect" ) // Linger please @@ -853,11 +851,7 @@ func (a *FakeApiService) TestEndpointParameters(ctx _context.Context, number flo localVarFormParams.Add("date", parameterToString(localVarOptionals.Date.Value(), "")) } if localVarOptionals != nil && localVarOptionals.DateTime.IsSet() { - paramJson, err := parameterToJson(localVarOptionals.DateTime.Value()) - if err != nil { - return nil, err - } - localVarFormParams.Add("dateTime", paramJson) + localVarFormParams.Add("dateTime", parameterToString(localVarOptionals.DateTime.Value(), "")) } if localVarOptionals != nil && localVarOptionals.Password.IsSet() { localVarFormParams.Add("password", parameterToString(localVarOptionals.Password.Value(), "")) diff --git a/samples/openapi3/client/petstore/go/go-petstore/git_push.sh b/samples/openapi3/client/petstore/go/go-petstore/git_push.sh index 8442b80bb4..ced3be2b0c 100644 --- a/samples/openapi3/client/petstore/go/go-petstore/git_push.sh +++ b/samples/openapi3/client/petstore/go/go-petstore/git_push.sh @@ -1,11 +1,17 @@ #!/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-pestore-perl "minor update" +# Usage example: /bin/sh ./git_push.sh wing328 openapi-pestore-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" @@ -28,7 +34,7 @@ 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. +# Commits the tracked changes and prepares them to be pushed to a remote repository. git commit -m "$release_note" # Sets the new remote @@ -37,9 +43,9 @@ 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://github.com/${git_user_id}/${git_repo_id}.git + 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}@github.com/${git_user_id}/${git_repo_id}.git + git remote add origin https://${git_user_id}:${GIT_TOKEN}@${git_host}/${git_user_id}/${git_repo_id}.git fi fi @@ -47,6 +53,6 @@ fi git pull origin master # Pushes (Forces) the changes in the local repository up to the remote repository -echo "Git pushing to https://github.com/${git_user_id}/${git_repo_id}.git" +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/openapi3/client/petstore/kotlin/.openapi-generator/VERSION b/samples/openapi3/client/petstore/kotlin/.openapi-generator/VERSION index 2f81801b79..d99e7162d0 100644 --- a/samples/openapi3/client/petstore/kotlin/.openapi-generator/VERSION +++ b/samples/openapi3/client/petstore/kotlin/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.1-SNAPSHOT \ No newline at end of file +5.0.0-SNAPSHOT \ No newline at end of file diff --git a/samples/openapi3/client/petstore/kotlin/README.md b/samples/openapi3/client/petstore/kotlin/README.md index cf1793ec2f..3738c4b9c9 100644 --- a/samples/openapi3/client/petstore/kotlin/README.md +++ b/samples/openapi3/client/petstore/kotlin/README.md @@ -2,8 +2,8 @@ ## Requires -* Kotlin 1.1.2 -* Gradle 3.3 +* Kotlin 1.3.41 +* Gradle 4.9 ## Build @@ -50,6 +50,7 @@ Class | Method | HTTP request | Description *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 +*FakeApi* | [**testQueryParameterCollectionFormat**](docs/FakeApi.md#testqueryparametercollectionformat) | **PUT** /fake/test-query-paramters | *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 diff --git a/samples/openapi3/client/petstore/kotlin/build.gradle b/samples/openapi3/client/petstore/kotlin/build.gradle index 8668dab3a7..c09f7912cf 100644 --- a/samples/openapi3/client/petstore/kotlin/build.gradle +++ b/samples/openapi3/client/petstore/kotlin/build.gradle @@ -1,13 +1,13 @@ group 'org.openapitools' version '1.0.0' -task wrapper(type: Wrapper) { - gradleVersion = '3.3' +wrapper { + gradleVersion = '4.9' distributionUrl = "https://services.gradle.org/distributions/gradle-$gradleVersion-all.zip" } buildscript { - ext.kotlin_version = '1.1.2' + ext.kotlin_version = '1.3.41' repositories { mavenCentral() @@ -23,11 +23,15 @@ repositories { mavenCentral() } -dependencies { - compile "org.jetbrains.kotlin:kotlin-stdlib-jre8:$kotlin_version" - compile "com.squareup.moshi:moshi-kotlin:1.5.0" - compile "com.squareup.moshi:moshi-adapters:1.5.0" - compile "com.squareup.okhttp3:okhttp:3.8.0" - compile "org.threeten:threetenbp:1.3.6" - testCompile "io.kotlintest:kotlintest:2.0.2" +test { + useJUnitPlatform() +} + +dependencies { + compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" + compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" + compile "com.squareup.moshi:moshi-kotlin:1.8.0" + compile "com.squareup.moshi:moshi-adapters:1.8.0" + compile "com.squareup.okhttp3:okhttp:4.0.1" + testImplementation "io.kotlintest:kotlintest-runner-junit5:3.1.0" } diff --git a/samples/openapi3/client/petstore/kotlin/settings.gradle b/samples/openapi3/client/petstore/kotlin/settings.gradle index 17e020387e..7540d01de3 100644 --- a/samples/openapi3/client/petstore/kotlin/settings.gradle +++ b/samples/openapi3/client/petstore/kotlin/settings.gradle @@ -1 +1,2 @@ + rootProject.name = 'kotlin-petstore-client' \ No newline at end of file diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiAbstractions.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiAbstractions.kt index c2c3f1f0ea..f97cb88d23 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiAbstractions.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/infrastructure/ApiAbstractions.kt @@ -12,9 +12,12 @@ fun collectionDelimiter(collectionFormat: String) = when(collectionFormat) { val defaultMultiValueConverter: (item: Any?) -> String = { item -> "$item" } -fun toMultiValue(items: List, collectionFormat: String, map: (item: Any?) -> String = defaultMultiValueConverter): List { +fun toMultiValue(items: Array, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter) + = toMultiValue(items.asIterable(), collectionFormat, map) + +fun toMultiValue(items: Iterable, collectionFormat: String, map: (item: T) -> String = defaultMultiValueConverter): List { return when(collectionFormat) { "multi" -> items.map(map) - else -> listOf(items.map(map).joinToString(separator = collectionDelimiter(collectionFormat))) + else -> listOf(items.joinToString(separator = collectionDelimiter(collectionFormat), transform = map)) } } \ No newline at end of file diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/AdditionalPropertiesClass.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/AdditionalPropertiesClass.kt index 7d5ee7a1bb..4367965e2d 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/AdditionalPropertiesClass.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/AdditionalPropertiesClass.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param mapProperty * @param mapOfMapProperty */ + data class AdditionalPropertiesClass ( @Json(name = "map_property") val mapProperty: kotlin.collections.Map? = null, @Json(name = "map_of_map_property") val mapOfMapProperty: kotlin.collections.Map>? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Animal.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Animal.kt index 5f4435f56f..ba590f165b 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Animal.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Animal.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param className * @param color */ + data class Animal ( @Json(name = "className") val className: kotlin.String, @Json(name = "color") val color: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt index 0fe4589a5f..22773e6505 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ApiResponse.kt @@ -13,12 +13,14 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param code * @param type * @param message */ + data class ApiResponse ( @Json(name = "code") val code: kotlin.Int? = null, @@ -26,6 +28,7 @@ data class ApiResponse ( val type: kotlin.String? = null, @Json(name = "message") val message: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfArrayOfNumberOnly.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfArrayOfNumberOnly.kt index 7ade7d8cff..5c9048466e 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfArrayOfNumberOnly.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfArrayOfNumberOnly.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param arrayArrayNumber */ + data class ArrayOfArrayOfNumberOnly ( @Json(name = "ArrayArrayNumber") val arrayArrayNumber: kotlin.Array>? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfNumberOnly.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfNumberOnly.kt index 263146cfd9..214ef4b0cf 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfNumberOnly.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayOfNumberOnly.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param arrayNumber */ + data class ArrayOfNumberOnly ( @Json(name = "ArrayNumber") val arrayNumber: kotlin.Array? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayTest.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayTest.kt index a430c05593..d406e97bf7 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayTest.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ArrayTest.kt @@ -14,12 +14,14 @@ package org.openapitools.client.models import org.openapitools.client.models.ReadOnlyFirst import com.squareup.moshi.Json +import java.io.Serializable /** * * @param arrayOfString * @param arrayArrayOfInteger * @param arrayArrayOfModel */ + data class ArrayTest ( @Json(name = "array_of_string") val arrayOfString: kotlin.Array? = null, @@ -27,6 +29,7 @@ data class ArrayTest ( val arrayArrayOfInteger: kotlin.Array>? = null, @Json(name = "array_array_of_model") val arrayArrayOfModel: kotlin.Array>? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Capitalization.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Capitalization.kt index 72b27a5450..c9153d08cc 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Capitalization.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Capitalization.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param smallCamel @@ -22,6 +23,7 @@ import com.squareup.moshi.Json * @param scAETHFlowPoints * @param ATT_NAME Name of the pet */ + data class Capitalization ( @Json(name = "smallCamel") val smallCamel: kotlin.String? = null, @@ -36,6 +38,7 @@ data class Capitalization ( /* Name of the pet */ @Json(name = "ATT_NAME") val ATT_NAME: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Cat.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Cat.kt index 1ce9e6ef43..05c1647fb7 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Cat.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Cat.kt @@ -15,10 +15,12 @@ import org.openapitools.client.models.Animal import org.openapitools.client.models.CatAllOf import com.squareup.moshi.Json +import java.io.Serializable /** * * @param declawed */ + data class Cat ( @Json(name = "className") val className: kotlin.String, @@ -26,6 +28,7 @@ data class Cat ( val declawed: kotlin.Boolean? = null, @Json(name = "color") val color: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/CatAllOf.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/CatAllOf.kt index ec9862cd17..c4cb55cb62 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/CatAllOf.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/CatAllOf.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param declawed */ + data class CatAllOf ( @Json(name = "declawed") val declawed: kotlin.Boolean? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt index 059231f463..f3280e75d4 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Category.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param id * @param name */ + data class Category ( @Json(name = "name") val name: kotlin.String, @Json(name = "id") val id: kotlin.Long? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ClassModel.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ClassModel.kt index 06245c42be..7580a49224 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ClassModel.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ClassModel.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Model for testing model with \"_class\" property * @param propertyClass */ + data class ClassModel ( @Json(name = "_class") val propertyClass: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Client.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Client.kt index 4a0cc69a78..09324d61a0 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Client.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Client.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param client */ + data class Client ( @Json(name = "client") val client: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Dog.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Dog.kt index 19cb002da7..54a2bb6fea 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Dog.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Dog.kt @@ -15,10 +15,12 @@ import org.openapitools.client.models.Animal import org.openapitools.client.models.DogAllOf import com.squareup.moshi.Json +import java.io.Serializable /** * * @param breed */ + data class Dog ( @Json(name = "className") val className: kotlin.String, @@ -26,6 +28,7 @@ data class Dog ( val breed: kotlin.String? = null, @Json(name = "color") val color: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/DogAllOf.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/DogAllOf.kt index 71b1b71365..6085540ff7 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/DogAllOf.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/DogAllOf.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param breed */ + data class DogAllOf ( @Json(name = "breed") val breed: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumArrays.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumArrays.kt index 862929784c..79b1a4c101 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumArrays.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumArrays.kt @@ -13,44 +13,50 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param justSymbol * @param arrayEnum */ + data class EnumArrays ( @Json(name = "just_symbol") val justSymbol: EnumArrays.JustSymbol? = null, @Json(name = "array_enum") val arrayEnum: kotlin.Array? = null -) +) +: Serializable { + /** * * Values: greaterThanEqual,dollar */ + enum class JustSymbol(val value: kotlin.String){ @Json(name = ">=") greaterThanEqual(">="), @Json(name = "$") dollar("$"); - } -} -{ + } + /** * * Values: fish,crab */ + enum class ArrayEnum(val value: kotlin.String){ @Json(name = "fish") fish("fish"), @Json(name = "crab") crab("crab"); + } + } - diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumClass.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumClass.kt index c1d5645936..db8cf07dd9 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumClass.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumClass.kt @@ -18,6 +18,7 @@ import com.squareup.moshi.Json * * Values: abc,minusEfg,leftParenthesisXyzRightParenthesis */ + enum class EnumClass(val value: kotlin.String){ @@ -33,5 +34,6 @@ enum class EnumClass(val value: kotlin.String){ leftParenthesisXyzRightParenthesis("(xyz)"); + } diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumTest.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumTest.kt index 5c40736503..52ea113cc9 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumTest.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/EnumTest.kt @@ -17,6 +17,7 @@ import org.openapitools.client.models.OuterEnumInteger import org.openapitools.client.models.OuterEnumIntegerDefaultValue import com.squareup.moshi.Json +import java.io.Serializable /** * * @param enumString @@ -28,6 +29,7 @@ import com.squareup.moshi.Json * @param outerEnumDefaultValue * @param outerEnumIntegerDefaultValue */ + data class EnumTest ( @Json(name = "enum_string_required") val enumStringRequired: EnumTest.EnumStringRequired, @@ -45,13 +47,16 @@ data class EnumTest ( val outerEnumDefaultValue: OuterEnumDefaultValue? = null, @Json(name = "outerEnumIntegerDefaultValue") val outerEnumIntegerDefaultValue: OuterEnumIntegerDefaultValue? = null -) +) +: Serializable { + /** * * Values: uPPER,lower,eMPTY */ + enum class EnumString(val value: kotlin.String){ @Json(name = "UPPER") uPPER("UPPER"), @@ -60,14 +65,14 @@ data class EnumTest ( @Json(name = "") eMPTY(""); - } -} -{ + } + /** * * Values: uPPER,lower,eMPTY */ + enum class EnumStringRequired(val value: kotlin.String){ @Json(name = "UPPER") uPPER("UPPER"), @@ -76,35 +81,36 @@ data class EnumTest ( @Json(name = "") eMPTY(""); - } -} -{ + } + /** * * Values: _1,minus1 */ + enum class EnumInteger(val value: kotlin.Int){ @Json(name = 1) _1(1), @Json(name = -1) minus1(-1); - } -} -{ + } + /** * * Values: _1period1,minus1Period2 */ + enum class EnumNumber(val value: kotlin.Double){ @Json(name = 1.1) _1period1(1.1), @Json(name = -1.2) minus1Period2(-1.2); + } + } - diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FileSchemaTestClass.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FileSchemaTestClass.kt index 82e5666101..ab39639e0c 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FileSchemaTestClass.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FileSchemaTestClass.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param file * @param files */ + data class FileSchemaTestClass ( @Json(name = "file") val file: java.io.File? = null, @Json(name = "files") val files: kotlin.Array? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Foo.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Foo.kt index 4ac5986724..0dd32c21af 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Foo.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Foo.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param bar */ + data class Foo ( @Json(name = "bar") val bar: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FormatTest.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FormatTest.kt index d185226b0d..e746da485f 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FormatTest.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/FormatTest.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param integer @@ -31,6 +32,7 @@ import com.squareup.moshi.Json * @param patternWithDigits A string that is a 10 digit number. Can have leading zeros. * @param patternWithDigitsAndDelimiter A string starting with 'image_' (case insensitive) and one to three digits following i.e. Image_01. */ + data class FormatTest ( @Json(name = "number") val number: java.math.BigDecimal, @@ -64,6 +66,7 @@ data class FormatTest ( /* A string starting with 'image_' (case insensitive) and one to three digits following i.e. Image_01. */ @Json(name = "pattern_with_digits_and_delimiter") val patternWithDigitsAndDelimiter: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HasOnlyReadOnly.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HasOnlyReadOnly.kt index 1e649d71f2..04eef4d206 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HasOnlyReadOnly.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HasOnlyReadOnly.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param bar * @param foo */ + data class HasOnlyReadOnly ( @Json(name = "bar") val bar: kotlin.String? = null, @Json(name = "foo") val foo: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HealthCheckResult.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HealthCheckResult.kt index 8f53541bd2..ce497df1fc 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HealthCheckResult.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/HealthCheckResult.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Just a string to inform instance is up and running. Make it nullable in hope to get it as pointer in generated model. * @param nullableMessage */ + data class HealthCheckResult ( @Json(name = "NullableMessage") val nullableMessage: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject.kt index 70484e6894..f2f290f408 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject.kt @@ -13,11 +13,13 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param name Updated name of the pet * @param status Updated status of the pet */ + data class InlineObject ( /* Updated name of the pet */ @Json(name = "name") @@ -25,6 +27,7 @@ data class InlineObject ( /* Updated status of the pet */ @Json(name = "status") val status: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject1.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject1.kt index 51f2137de9..ea1e3ae241 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject1.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject1.kt @@ -13,11 +13,13 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param additionalMetadata Additional data to pass to server * @param file file to upload */ + data class InlineObject1 ( /* Additional data to pass to server */ @Json(name = "additionalMetadata") @@ -25,6 +27,7 @@ data class InlineObject1 ( /* file to upload */ @Json(name = "file") val file: java.io.File? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject2.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject2.kt index 0f982f05a8..ec48e39edf 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject2.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject2.kt @@ -13,11 +13,13 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param enumFormStringArray Form parameter enum test (string array) * @param enumFormString Form parameter enum test (string) */ + data class InlineObject2 ( /* Form parameter enum test (string array) */ @Json(name = "enum_form_string_array") @@ -25,27 +27,30 @@ data class InlineObject2 ( /* Form parameter enum test (string) */ @Json(name = "enum_form_string") val enumFormString: InlineObject2.EnumFormString? = null -) +) +: Serializable { + /** * Form parameter enum test (string array) * Values: greaterThan,dollar */ + enum class EnumFormStringArray(val value: kotlin.String){ @Json(name = ">") greaterThan(">"), @Json(name = "$") dollar("$"); - } -} -{ + } + /** * Form parameter enum test (string) * Values: abc,minusEfg,leftParenthesisXyzRightParenthesis */ + enum class EnumFormString(val value: kotlin.String){ @Json(name = "_abc") abc("_abc"), @@ -54,7 +59,8 @@ data class InlineObject2 ( @Json(name = "(xyz)") leftParenthesisXyzRightParenthesis("(xyz)"); + } + } - diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject3.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject3.kt index 35dc49df57..b2725c7fc1 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject3.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject3.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param integer None @@ -30,6 +31,7 @@ import com.squareup.moshi.Json * @param password None * @param callback None */ + data class InlineObject3 ( /* None */ @Json(name = "number") @@ -73,6 +75,7 @@ data class InlineObject3 ( /* None */ @Json(name = "callback") val callback: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject4.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject4.kt index 52eef17034..f6776d3b7f 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject4.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject4.kt @@ -13,11 +13,13 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param param field1 * @param param2 field2 */ + data class InlineObject4 ( /* field1 */ @Json(name = "param") @@ -25,6 +27,7 @@ data class InlineObject4 ( /* field2 */ @Json(name = "param2") val param2: kotlin.String -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject5.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject5.kt index ca95c5ee03..0497fa03e6 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject5.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineObject5.kt @@ -13,11 +13,13 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param additionalMetadata Additional data to pass to server * @param requiredFile file to upload */ + data class InlineObject5 ( /* file to upload */ @Json(name = "requiredFile") @@ -25,6 +27,7 @@ data class InlineObject5 ( /* Additional data to pass to server */ @Json(name = "additionalMetadata") val additionalMetadata: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineResponseDefault.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineResponseDefault.kt index 5768639b0b..b09c724605 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineResponseDefault.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/InlineResponseDefault.kt @@ -14,13 +14,16 @@ package org.openapitools.client.models import org.openapitools.client.models.Foo import com.squareup.moshi.Json +import java.io.Serializable /** * * @param string */ + data class InlineResponseDefault ( @Json(name = "string") val string: Foo? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/List.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/List.kt index 6e2a75355b..43f321eabc 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/List.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/List.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * - * @param `123minusList` + * @param ``123minusList`` */ + data class List ( @Json(name = "123-list") - val `123minusList`: kotlin.String? = null -) + val ``123minusList``: kotlin.String? = null +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MapTest.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MapTest.kt index dc1096dc70..bf1aa56a15 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MapTest.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MapTest.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param mapMapOfString @@ -20,6 +21,7 @@ import com.squareup.moshi.Json * @param directMap * @param indirectMap */ + data class MapTest ( @Json(name = "map_map_of_string") val mapMapOfString: kotlin.collections.Map>? = null, @@ -29,20 +31,24 @@ data class MapTest ( val directMap: kotlin.collections.Map? = null, @Json(name = "indirect_map") val indirectMap: kotlin.collections.Map? = null -) +) +: Serializable { + /** * * Values: uPPER,lower */ + enum class MapOfEnumString(val value: kotlin.collections.Map){ @Json(name = "UPPER") uPPER("UPPER"), @Json(name = "lower") lower("lower"); + } + } - diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MixedPropertiesAndAdditionalPropertiesClass.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MixedPropertiesAndAdditionalPropertiesClass.kt index 7d835a2af5..1551efc4c2 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MixedPropertiesAndAdditionalPropertiesClass.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/MixedPropertiesAndAdditionalPropertiesClass.kt @@ -14,12 +14,14 @@ package org.openapitools.client.models import org.openapitools.client.models.Animal import com.squareup.moshi.Json +import java.io.Serializable /** * * @param uuid * @param dateTime * @param map */ + data class MixedPropertiesAndAdditionalPropertiesClass ( @Json(name = "uuid") val uuid: java.util.UUID? = null, @@ -27,6 +29,7 @@ data class MixedPropertiesAndAdditionalPropertiesClass ( val dateTime: java.time.LocalDateTime? = null, @Json(name = "map") val map: kotlin.collections.Map? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Model200Response.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Model200Response.kt index b2e792c8e8..bb07187522 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Model200Response.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Model200Response.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Model for testing model name starting with number * @param name * @param propertyClass */ + data class Model200Response ( @Json(name = "name") val name: kotlin.Int? = null, @Json(name = "class") val propertyClass: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Name.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Name.kt index 72cb9d7ad6..1362bd97c1 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Name.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Name.kt @@ -13,13 +13,15 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Model for testing model name same as property name * @param name * @param snakeCase * @param property - * @param `123number` + * @param ``123number`` */ + data class Name ( @Json(name = "name") val name: kotlin.Int, @@ -28,7 +30,8 @@ data class Name ( @Json(name = "property") val property: kotlin.String? = null, @Json(name = "123Number") - val `123number`: kotlin.Int? = null -) + val ``123number``: kotlin.Int? = null +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NullableClass.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NullableClass.kt index 86bb11c5c1..7bfd1d97c1 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NullableClass.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NullableClass.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param integerProp @@ -28,6 +29,7 @@ import com.squareup.moshi.Json * @param objectAndItemsNullableProp * @param objectItemsNullable */ + data class NullableClass ( @Json(name = "integer_prop") val integerProp: kotlin.Int? = null, @@ -53,6 +55,7 @@ data class NullableClass ( val objectAndItemsNullableProp: kotlin.collections.Map? = null, @Json(name = "object_items_nullable") val objectItemsNullable: kotlin.collections.Map? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NumberOnly.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NumberOnly.kt index 7385bd9523..d14ad1907e 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NumberOnly.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/NumberOnly.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param justNumber */ + data class NumberOnly ( @Json(name = "JustNumber") val justNumber: java.math.BigDecimal? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt index d33f3bf239..07459585e9 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Order.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param id @@ -22,6 +23,7 @@ import com.squareup.moshi.Json * @param status Order Status * @param complete */ + data class Order ( @Json(name = "id") val id: kotlin.Long? = null, @@ -36,13 +38,16 @@ data class Order ( val status: Order.Status? = null, @Json(name = "complete") val complete: kotlin.Boolean? = null -) +) +: Serializable { + /** * Order Status * Values: placed,approved,delivered */ + enum class Status(val value: kotlin.String){ @Json(name = "placed") placed("placed"), @@ -51,7 +56,8 @@ data class Order ( @Json(name = "delivered") delivered("delivered"); + } + } - diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterComposite.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterComposite.kt index 304f88c52d..21565c2cff 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterComposite.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterComposite.kt @@ -13,12 +13,14 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param myNumber * @param myString * @param myBoolean */ + data class OuterComposite ( @Json(name = "my_number") val myNumber: java.math.BigDecimal? = null, @@ -26,6 +28,7 @@ data class OuterComposite ( val myString: kotlin.String? = null, @Json(name = "my_boolean") val myBoolean: kotlin.Boolean? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnum.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnum.kt index 8d84d27187..86ce0b25a1 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnum.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnum.kt @@ -18,6 +18,7 @@ import com.squareup.moshi.Json * * Values: placed,approved,delivered */ + enum class OuterEnum(val value: kotlin.String){ @@ -33,5 +34,6 @@ enum class OuterEnum(val value: kotlin.String){ delivered("delivered"); + } diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumDefaultValue.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumDefaultValue.kt index b3fa7c4524..bf9e3e7996 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumDefaultValue.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumDefaultValue.kt @@ -18,6 +18,7 @@ import com.squareup.moshi.Json * * Values: placed,approved,delivered */ + enum class OuterEnumDefaultValue(val value: kotlin.String){ @@ -33,5 +34,6 @@ enum class OuterEnumDefaultValue(val value: kotlin.String){ delivered("delivered"); + } diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumInteger.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumInteger.kt index 9defa9842e..c7345e41eb 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumInteger.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumInteger.kt @@ -18,6 +18,7 @@ import com.squareup.moshi.Json * * Values: _0,_1,_2 */ + enum class OuterEnumInteger(val value: kotlin.Int){ @@ -33,5 +34,6 @@ enum class OuterEnumInteger(val value: kotlin.Int){ _2(2); + } diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumIntegerDefaultValue.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumIntegerDefaultValue.kt index 8b9a7e7184..f8435385ea 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumIntegerDefaultValue.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/OuterEnumIntegerDefaultValue.kt @@ -18,6 +18,7 @@ import com.squareup.moshi.Json * * Values: _0,_1,_2 */ + enum class OuterEnumIntegerDefaultValue(val value: kotlin.Int){ @@ -33,5 +34,6 @@ enum class OuterEnumIntegerDefaultValue(val value: kotlin.Int){ _2(2); + } diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt index b0c73cfb51..23abc63ce3 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Pet.kt @@ -15,6 +15,7 @@ import org.openapitools.client.models.Category import org.openapitools.client.models.Tag import com.squareup.moshi.Json +import java.io.Serializable /** * * @param id @@ -24,6 +25,7 @@ import com.squareup.moshi.Json * @param tags * @param status pet status in the store */ + data class Pet ( @Json(name = "name") val name: kotlin.String, @@ -38,13 +40,16 @@ data class Pet ( /* pet status in the store */ @Json(name = "status") val status: Pet.Status? = null -) +) +: Serializable { + /** * pet status in the store * Values: available,pending,sold */ + enum class Status(val value: kotlin.String){ @Json(name = "available") available("available"), @@ -53,7 +58,8 @@ data class Pet ( @Json(name = "sold") sold("sold"); + } + } - diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ReadOnlyFirst.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ReadOnlyFirst.kt index 52bf083649..325a4c5ffd 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ReadOnlyFirst.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/ReadOnlyFirst.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param bar * @param baz */ + data class ReadOnlyFirst ( @Json(name = "bar") val bar: kotlin.String? = null, @Json(name = "baz") val baz: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Return.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Return.kt index 91c5314684..6670a26a8f 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Return.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Return.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * Model for testing reserved words - * @param `return` + * @param ``return`` */ + data class Return ( @Json(name = "return") - val `return`: kotlin.Int? = null -) + val ``return``: kotlin.Int? = null +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/SpecialModelname.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/SpecialModelname.kt index a4faf3fd57..2bcfeb506e 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/SpecialModelname.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/SpecialModelname.kt @@ -13,13 +13,16 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param dollarSpecialLeftSquareBracketPropertyPeriodNameRightSquareBracket */ + data class SpecialModelname ( @Json(name = "$special[property.name]") val dollarSpecialLeftSquareBracketPropertyPeriodNameRightSquareBracket: kotlin.Long? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt index 37e9e0eaef..7596c7d495 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/Tag.kt @@ -13,16 +13,19 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param id * @param name */ + data class Tag ( @Json(name = "id") val id: kotlin.Long? = null, @Json(name = "name") val name: kotlin.String? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt index 5301e72d37..d6bd140f13 100644 --- a/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt +++ b/samples/openapi3/client/petstore/kotlin/src/main/kotlin/org/openapitools/client/models/User.kt @@ -13,6 +13,7 @@ package org.openapitools.client.models import com.squareup.moshi.Json +import java.io.Serializable /** * * @param id @@ -24,6 +25,7 @@ import com.squareup.moshi.Json * @param phone * @param userStatus User Status */ + data class User ( @Json(name = "id") val id: kotlin.Long? = null, @@ -42,6 +44,7 @@ data class User ( /* User Status */ @Json(name = "userStatus") val userStatus: kotlin.Int? = null -) +) +: Serializable diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php index 8d56cb6540..4d7048dadd 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/AdditionalPropertiesClass.php @@ -322,6 +322,16 @@ class AdditionalPropertiesClass implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php index ec4e8cbe34..a60571f1cc 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Animal.php @@ -328,6 +328,16 @@ class Animal implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php index 47c25f4415..6fff9f9412 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ApiResponse.php @@ -352,6 +352,16 @@ class ApiResponse implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php index bf3eedd820..9bb81740fa 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfArrayOfNumberOnly.php @@ -292,6 +292,16 @@ class ArrayOfArrayOfNumberOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php index 3b9dae89a9..c6749189cd 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayOfNumberOnly.php @@ -292,6 +292,16 @@ class ArrayOfNumberOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php index 2ca2e7603a..cc56a6f248 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ArrayTest.php @@ -352,6 +352,16 @@ class ArrayTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php index 8cf2780071..1c611849e2 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Capitalization.php @@ -442,6 +442,16 @@ class Capitalization implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php index f8e9796bea..aeb7e8d98d 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Cat.php @@ -286,6 +286,16 @@ class Cat extends Animal JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php index 341ea6af9e..c10f1d6841 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/CatAllOf.php @@ -292,6 +292,16 @@ class CatAllOf implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php index 1d5575e0b2..0b13019e9f 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Category.php @@ -325,6 +325,16 @@ class Category implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php index cffb5ef289..8806d58238 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ClassModel.php @@ -293,6 +293,16 @@ class ClassModel implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php index 7abdfe35ee..c5f0689cf4 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Client.php @@ -292,6 +292,16 @@ class Client implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php index fe9f05b1c8..d565da78df 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Dog.php @@ -286,6 +286,16 @@ class Dog extends Animal JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php index 4430283209..3e2b09eb7b 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/DogAllOf.php @@ -292,6 +292,16 @@ class DogAllOf implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php index 722dcd9f30..41789295f1 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumArrays.php @@ -378,6 +378,16 @@ class EnumArrays implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php index 9a390f3566..4ab193f213 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/EnumTest.php @@ -637,6 +637,16 @@ class EnumTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/File.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/File.php index 0d7e229a88..f6d2710001 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/File.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/File.php @@ -293,6 +293,16 @@ class File implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php index d199354f73..5f024e46a2 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FileSchemaTestClass.php @@ -322,6 +322,16 @@ class FileSchemaTestClass implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Foo.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Foo.php index e5ead16227..fa6a9041fc 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Foo.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Foo.php @@ -292,6 +292,16 @@ class Foo implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php index aba41fcce9..0eb63a1075 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/FormatTest.php @@ -846,6 +846,16 @@ class FormatTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php index b4576165dd..b3c661d7ff 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HasOnlyReadOnly.php @@ -322,6 +322,16 @@ class HasOnlyReadOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HealthCheckResult.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HealthCheckResult.php index db19213680..da6c01a041 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HealthCheckResult.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/HealthCheckResult.php @@ -293,6 +293,16 @@ class HealthCheckResult implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject.php index 5710444d4f..caca206812 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject.php @@ -322,6 +322,16 @@ class InlineObject implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject1.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject1.php index 62ba22db48..230d2027c2 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject1.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject1.php @@ -322,6 +322,16 @@ class InlineObject1 implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject2.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject2.php index 1caeccee0d..989f0974a7 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject2.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject2.php @@ -380,6 +380,16 @@ class InlineObject2 implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject3.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject3.php index b55dfd64ad..eb26c91d58 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject3.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject3.php @@ -800,6 +800,16 @@ class InlineObject3 implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject4.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject4.php index 29e952fa37..1ccf2c47c5 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject4.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject4.php @@ -328,6 +328,16 @@ class InlineObject4 implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject5.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject5.php index 1ef3fe246e..85f51f4760 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject5.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineObject5.php @@ -325,6 +325,16 @@ class InlineObject5 implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineResponseDefault.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineResponseDefault.php index f01c690cd0..27d31fddd4 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineResponseDefault.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/InlineResponseDefault.php @@ -292,6 +292,16 @@ class InlineResponseDefault implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php index 737718d5d1..0644327a40 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MapTest.php @@ -406,6 +406,16 @@ class MapTest implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php index bb79ae3298..556a425e80 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/MixedPropertiesAndAdditionalPropertiesClass.php @@ -352,6 +352,16 @@ class MixedPropertiesAndAdditionalPropertiesClass implements ModelInterface, Arr JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php index bd417582bd..574f95c620 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Model200Response.php @@ -323,6 +323,16 @@ class Model200Response implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php index 788418bfd4..712d46ce2e 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelList.php @@ -292,6 +292,16 @@ class ModelList implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php index 33dc1ea163..1bb04c1b11 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ModelReturn.php @@ -293,6 +293,16 @@ class ModelReturn implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php index e7a3ec4990..7193486723 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Name.php @@ -386,6 +386,16 @@ class Name implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NullableClass.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NullableClass.php index 652c7ca3c6..c316723371 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NullableClass.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NullableClass.php @@ -622,6 +622,16 @@ class NullableClass implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php index b137503a74..720405c218 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/NumberOnly.php @@ -292,6 +292,16 @@ class NumberOnly implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php index 0937f1b7b7..0ea261e943 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Order.php @@ -476,6 +476,16 @@ class Order implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php index 6c289b0e37..2e9e490d3f 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/OuterComposite.php @@ -352,6 +352,16 @@ class OuterComposite implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php index ab5c5ee0a3..0c2935a09f 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Pet.php @@ -482,6 +482,16 @@ class Pet implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php index b34abb7b77..c1cd964026 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/ReadOnlyFirst.php @@ -322,6 +322,16 @@ class ReadOnlyFirst implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php index eeee6e5a6d..c08a3b63f7 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/SpecialModelName.php @@ -292,6 +292,16 @@ class SpecialModelName implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php index 1392dd720d..cb71a88dd7 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/Tag.php @@ -322,6 +322,16 @@ class Tag implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/User.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/User.php index 21e4734239..c9bec23649 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/User.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/Model/User.php @@ -502,6 +502,16 @@ class User implements ModelInterface, ArrayAccess JSON_PRETTY_PRINT ); } + + /** + * Gets a header-safe presentation of the object + * + * @return string + */ + public function toHeaderValue() + { + return json_encode(ObjectSerializer::sanitizeForSerialization($this)); + } } diff --git a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php index a391d35291..52de7747e1 100644 --- a/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php +++ b/samples/openapi3/client/petstore/php/OpenAPIClient-php/lib/ObjectSerializer.php @@ -150,6 +150,10 @@ class ObjectSerializer */ public static function toHeaderValue($value) { + if (method_exists($value, 'toHeaderValue')) { + return $value->toHeaderValue(); + } + return self::toString($value); } diff --git a/samples/openapi3/client/petstore/ruby-faraday/spec/api_client_spec.rb b/samples/openapi3/client/petstore/ruby-faraday/spec/api_client_spec.rb index a8383d805b..cba22407dd 100644 --- a/samples/openapi3/client/petstore/ruby-faraday/spec/api_client_spec.rb +++ b/samples/openapi3/client/petstore/ruby-faraday/spec/api_client_spec.rb @@ -118,7 +118,7 @@ describe Petstore::ApiClient do end it 'fails for invalid collection format' do - expect(proc { api_client.build_collection_param(param, :INVALID) }).to raise_error(RuntimeError, 'unknown collection format: :INVALID') + expect{api_client.build_collection_param(param, :INVALID)}.to raise_error(RuntimeError, 'unknown collection format: :INVALID') end end diff --git a/samples/openapi3/client/petstore/ruby/spec/api_client_spec.rb b/samples/openapi3/client/petstore/ruby/spec/api_client_spec.rb index ebe2564c92..fda8734300 100644 --- a/samples/openapi3/client/petstore/ruby/spec/api_client_spec.rb +++ b/samples/openapi3/client/petstore/ruby/spec/api_client_spec.rb @@ -156,7 +156,7 @@ describe Petstore::ApiClient do end it 'fails for invalid collection format' do - expect(proc { api_client.build_collection_param(param, :INVALID) }).to raise_error(RuntimeError, 'unknown collection format: :INVALID') + expect{api_client.build_collection_param(param, :INVALID)}.to raise_error(RuntimeError, 'unknown collection format: :INVALID') end end diff --git a/samples/schema/petstore/mysql/mysql_schema.sql b/samples/schema/petstore/mysql/mysql_schema.sql index c5b0f75fb0..e08b704631 100644 --- a/samples/schema/petstore/mysql/mysql_schema.sql +++ b/samples/schema/petstore/mysql/mysql_schema.sql @@ -273,7 +273,8 @@ CREATE TABLE IF NOT EXISTS `format_test` ( `date` DATE NOT NULL, `dateTime` DATETIME DEFAULT NULL, `uuid` TEXT DEFAULT NULL, - `password` VARCHAR(64) NOT NULL + `password` VARCHAR(64) NOT NULL, + `BigDecimal` DECIMAL(20, 9) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; -- diff --git a/samples/server/petstore/cpp-pistache/.openapi-generator/VERSION b/samples/server/petstore/cpp-pistache/.openapi-generator/VERSION index d1a8f58b38..0e97bd19ef 100644 --- a/samples/server/petstore/cpp-pistache/.openapi-generator/VERSION +++ b/samples/server/petstore/cpp-pistache/.openapi-generator/VERSION @@ -1 +1 @@ -4.1.2-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/cpp-pistache/main-api-server.cpp b/samples/server/petstore/cpp-pistache/main-api-server.cpp index 191b60b771..00799608e7 100644 --- a/samples/server/petstore/cpp-pistache/main-api-server.cpp +++ b/samples/server/petstore/cpp-pistache/main-api-server.cpp @@ -25,11 +25,12 @@ #include "UserApiImpl.h" #define PISTACHE_SERVER_THREADS 2 -#define PISTACHE_SERVER_MAX_PAYLOAD 32768 +#define PISTACHE_SERVER_MAX_REQUEST_SIZE 32768 +#define PISTACHE_SERVER_MAX_RESPONSE_SIZE 32768 static Pistache::Http::Endpoint *httpEndpoint; #ifdef __linux__ -static void sigHandler(int sig){ +static void sigHandler [[noreturn]] (int sig){ switch(sig){ case SIGINT: case SIGQUIT: @@ -73,7 +74,8 @@ int main() { auto opts = Pistache::Http::Endpoint::options() .threads(PISTACHE_SERVER_THREADS); opts.flags(Pistache::Tcp::Options::ReuseAddr); - opts.maxPayload(PISTACHE_SERVER_MAX_PAYLOAD); + opts.maxRequestSize(PISTACHE_SERVER_MAX_REQUEST_SIZE); + opts.maxResponseSize(PISTACHE_SERVER_MAX_RESPONSE_SIZE); httpEndpoint->init(opts); diff --git a/samples/server/petstore/fsharp-functions/.gitignore b/samples/server/petstore/fsharp-functions/.gitignore new file mode 100644 index 0000000000..ab071890fc --- /dev/null +++ b/samples/server/petstore/fsharp-functions/.gitignore @@ -0,0 +1,265 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. + +# Azure Functions localsettings file +local.settings.json + +# User-specific files +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ + +# Visual Studio 2015 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUNIT +*.VisualState.xml +TestResult.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# DNX +project.lock.json +project.fragment.lock.json +artifacts/ + +*_i.c +*_p.c +*_i.h +*.ilk +*.meta +*.obj +*.pch +*.pdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# JustCode is a .NET coding add-in +.JustCode + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# TODO: Comment the next line if you want to checkin your web deploy settings +# but database connection strings (with potential passwords) will be unencrypted +#*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# The packages folder can be ignored because of Package Restore +**/packages/* +**/packages/** +# except build/, which is used as an MSBuild target. +#!**/packages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/packages/repositories.config +# NuGet v3's project.json files produces more ignoreable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +node_modules/ +orleans.codegen.cs + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm + +# SQL Server files +*.mdf +*.ldf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +mercury_server/.paket/paket.exe +mercury_server/paket-files/ + +# FAKE - F# Make +mercury_server/.fake/ + +# JetBrains Rider +.idea/ +*.sln.iml + +# CodeRush +.cr/ + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/.openapi-generator-ignore b/samples/server/petstore/fsharp-functions/.openapi-generator-ignore new file mode 100644 index 0000000000..7484ee590a --- /dev/null +++ b/samples/server/petstore/fsharp-functions/.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/server/petstore/fsharp-functions/.openapi-generator/VERSION b/samples/server/petstore/fsharp-functions/.openapi-generator/VERSION new file mode 100644 index 0000000000..0e97bd19ef --- /dev/null +++ b/samples/server/petstore/fsharp-functions/.openapi-generator/VERSION @@ -0,0 +1 @@ +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/OpenAPI.fsproj b/samples/server/petstore/fsharp-functions/OpenAPI/OpenAPI.fsproj new file mode 100644 index 0000000000..e26976729b --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/OpenAPI.fsproj @@ -0,0 +1,44 @@ + + + OpenAPI + OpenAPI + netcoreapp2.1 + v2 + + + + + + + + + PreserveNewest + + + PreserveNewest + Never + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/build.bat b/samples/server/petstore/fsharp-functions/OpenAPI/build.bat new file mode 100644 index 0000000000..607db898bf --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/build.bat @@ -0,0 +1,3 @@ +dotnet restore OpenAPI.fsproj +dotnet build OpenAPI.fsproj + diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/build.sh b/samples/server/petstore/fsharp-functions/OpenAPI/build.sh new file mode 100644 index 0000000000..9356b9ac12 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/build.sh @@ -0,0 +1,4 @@ +#!/bin/sh +dotnet restore OpenAPI.fsproj +dotnet build OpenAPI.fsproj + diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiHandler.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiHandler.fs new file mode 100644 index 0000000000..53025caf26 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiHandler.fs @@ -0,0 +1,193 @@ +namespace OpenAPI + +open PetApiHandlerParams +open PetApiServiceImplementation +open Microsoft.AspNetCore.Mvc +open Microsoft.AspNetCore.Http +open Newtonsoft.Json +open Microsoft.Azure.WebJobs +open System.IO + +module PetApiHandlers = + + /// + /// + /// + + //#region AddPet + /// + /// Add a new pet to the store + /// + [] + let AddPet + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = ["application/json";"application/xml";] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = PetApiService.AddPet bodyParams + match result with + | AddPetStatusCode405 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(405)) + + //#region DeletePet + /// + /// Deletes a pet + /// + [] + let DeletePet + ([] + req:HttpRequest ) = + + let result = PetApiService.DeletePet () + match result with + | DeletePetStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + + //#region FindPetsByStatus + /// + /// Finds Pets by status + /// + [] + let FindPetsByStatus + ([] + req:HttpRequest ) = + + let result = PetApiService.FindPetsByStatus () + match result with + | FindPetsByStatusDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | FindPetsByStatusStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + + //#region FindPetsByTags + /// + /// Finds Pets by tags + /// + [] + let FindPetsByTags + ([] + req:HttpRequest ) = + + let result = PetApiService.FindPetsByTags () + match result with + | FindPetsByTagsDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | FindPetsByTagsStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + + //#region GetPetById + /// + /// Find pet by ID + /// + [] + let GetPetById + ([] + req:HttpRequest ) = + + let result = PetApiService.GetPetById () + match result with + | GetPetByIdDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | GetPetByIdStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | GetPetByIdStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + + //#region UpdatePet + /// + /// Update an existing pet + /// + [] + let UpdatePet + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = ["application/json";"application/xml";] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = PetApiService.UpdatePet bodyParams + match result with + | UpdatePetStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | UpdatePetStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + | UpdatePetStatusCode405 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(405)) + + //#region UpdatePetWithForm + /// + /// Updates a pet in the store with form data + /// + [] + let UpdatePetWithForm + ([] + req:HttpRequest ) = + + let result = PetApiService.UpdatePetWithForm () + match result with + | UpdatePetWithFormStatusCode405 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(405)) + + //#region UploadFile + /// + /// uploads an image + /// + [] + let UploadFile + ([] + req:HttpRequest ) = + + let result = PetApiService.UploadFile () + match result with + | UploadFileDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + + + + diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiHandlerParams.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiHandlerParams.fs new file mode 100644 index 0000000000..f84ffb76b2 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiHandlerParams.fs @@ -0,0 +1,210 @@ +namespace OpenAPI + +open OpenAPI.Model.ApiResponse +open OpenAPI.Model.Pet +open System.Collections.Generic +open System + +module PetApiHandlerParams = + + + //#region Body parameters + [] + type AddPetBodyParams = Pet + //#endregion + + + type AddPetStatusCode405Response = { + content:string; + + } + type AddPetResult = AddPetStatusCode405 of AddPetStatusCode405Response + + type AddPetArgs = { + bodyParams:AddPetBodyParams + } + //#region Path parameters + [] + type DeletePetPathParams = { + petId : int64 ; + } + //#endregion + + //#region Header parameters + [] + type DeletePetHeaderParams = { + apiKey : string option; + } + //#endregion + + + type DeletePetStatusCode400Response = { + content:string; + + } + type DeletePetResult = DeletePetStatusCode400 of DeletePetStatusCode400Response + + type DeletePetArgs = { + headerParams:DeletePetHeaderParams; + pathParams:DeletePetPathParams; + } + + //#region Query parameters + [] + type FindPetsByStatusQueryParams = { + status : string[] ; + + } + //#endregion + + + type FindPetsByStatusDefaultStatusCodeResponse = { + content:Pet[]; + + } + + type FindPetsByStatusStatusCode400Response = { + content:string; + + } + type FindPetsByStatusResult = FindPetsByStatusDefaultStatusCode of FindPetsByStatusDefaultStatusCodeResponse|FindPetsByStatusStatusCode400 of FindPetsByStatusStatusCode400Response + + type FindPetsByStatusArgs = { + queryParams:Result; + } + + //#region Query parameters + [] + type FindPetsByTagsQueryParams = { + tags : string[] ; + + } + //#endregion + + + type FindPetsByTagsDefaultStatusCodeResponse = { + content:Pet[]; + + } + + type FindPetsByTagsStatusCode400Response = { + content:string; + + } + type FindPetsByTagsResult = FindPetsByTagsDefaultStatusCode of FindPetsByTagsDefaultStatusCodeResponse|FindPetsByTagsStatusCode400 of FindPetsByTagsStatusCode400Response + + type FindPetsByTagsArgs = { + queryParams:Result; + } + //#region Path parameters + [] + type GetPetByIdPathParams = { + petId : int64 ; + } + //#endregion + + + type GetPetByIdDefaultStatusCodeResponse = { + content:Pet; + + } + + type GetPetByIdStatusCode400Response = { + content:string; + + } + + type GetPetByIdStatusCode404Response = { + content:string; + + } + type GetPetByIdResult = GetPetByIdDefaultStatusCode of GetPetByIdDefaultStatusCodeResponse|GetPetByIdStatusCode400 of GetPetByIdStatusCode400Response|GetPetByIdStatusCode404 of GetPetByIdStatusCode404Response + + type GetPetByIdArgs = { + pathParams:GetPetByIdPathParams; + } + + //#region Body parameters + [] + type UpdatePetBodyParams = Pet + //#endregion + + + type UpdatePetStatusCode400Response = { + content:string; + + } + + type UpdatePetStatusCode404Response = { + content:string; + + } + + type UpdatePetStatusCode405Response = { + content:string; + + } + type UpdatePetResult = UpdatePetStatusCode400 of UpdatePetStatusCode400Response|UpdatePetStatusCode404 of UpdatePetStatusCode404Response|UpdatePetStatusCode405 of UpdatePetStatusCode405Response + + type UpdatePetArgs = { + bodyParams:UpdatePetBodyParams + } + //#region Path parameters + [] + type UpdatePetWithFormPathParams = { + petId : int64 ; + } + //#endregion + + //#region Form parameters + [] + type UpdatePetWithFormFormParams = { + name : string option; + //#endregion + + //#region Form parameters + status : string option; + } + //#endregion + + + type UpdatePetWithFormStatusCode405Response = { + content:string; + + } + type UpdatePetWithFormResult = UpdatePetWithFormStatusCode405 of UpdatePetWithFormStatusCode405Response + + type UpdatePetWithFormArgs = { + pathParams:UpdatePetWithFormPathParams; + formParams:Result + } + //#region Path parameters + [] + type UploadFilePathParams = { + petId : int64 ; + } + //#endregion + + //#region Form parameters + [] + type UploadFileFormParams = { + additionalMetadata : string option; + //#endregion + + //#region Form parameters + file : System.IO.Stream option; + } + //#endregion + + + type UploadFileDefaultStatusCodeResponse = { + content:ApiResponse; + + } + type UploadFileResult = UploadFileDefaultStatusCode of UploadFileDefaultStatusCodeResponse + + type UploadFileArgs = { + pathParams:UploadFilePathParams; + formParams:Result + } + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiServiceInterface.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiServiceInterface.fs new file mode 100644 index 0000000000..d30fe21fff --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/PetApiServiceInterface.fs @@ -0,0 +1,19 @@ +namespace OpenAPI +open PetApiHandlerParams +open System +open Microsoft.AspNetCore.Http + + +module PetApiServiceInterface = + + //#region Service interface + type IPetApiService = + abstract member AddPet : AddPetBodyParams -> AddPetResult + abstract member DeletePet : unit -> DeletePetResult + abstract member FindPetsByStatus : unit -> FindPetsByStatusResult + abstract member FindPetsByTags : unit -> FindPetsByTagsResult + abstract member GetPetById : unit -> GetPetByIdResult + abstract member UpdatePet : UpdatePetBodyParams -> UpdatePetResult + abstract member UpdatePetWithForm : unit -> UpdatePetWithFormResult + abstract member UploadFile : unit -> UploadFileResult + //#endregion \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiHandler.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiHandler.fs new file mode 100644 index 0000000000..82c9a05e19 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiHandler.fs @@ -0,0 +1,110 @@ +namespace OpenAPI + +open StoreApiHandlerParams +open StoreApiServiceImplementation +open Microsoft.AspNetCore.Mvc +open Microsoft.AspNetCore.Http +open Newtonsoft.Json +open Microsoft.Azure.WebJobs +open System.IO + +module StoreApiHandlers = + + /// + /// + /// + + //#region DeleteOrder + /// + /// Delete purchase order by ID + /// + [] + let DeleteOrder + ([] + req:HttpRequest ) = + + let result = StoreApiService.DeleteOrder () + match result with + | DeleteOrderStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | DeleteOrderStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + + //#region GetInventory + /// + /// Returns pet inventories by status + /// + [] + let GetInventory + ([] + req:HttpRequest ) = + + let result = StoreApiService.GetInventory () + match result with + | GetInventoryDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + + //#region GetOrderById + /// + /// Find purchase order by ID + /// + [] + let GetOrderById + ([] + req:HttpRequest ) = + + let result = StoreApiService.GetOrderById () + match result with + | GetOrderByIdDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | GetOrderByIdStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | GetOrderByIdStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + + //#region PlaceOrder + /// + /// Place an order for a pet + /// + [] + let PlaceOrder + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = [] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = StoreApiService.PlaceOrder bodyParams + match result with + | PlaceOrderDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | PlaceOrderStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + + + + diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiHandlerParams.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiHandlerParams.fs new file mode 100644 index 0000000000..2c9226f8ab --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiHandlerParams.fs @@ -0,0 +1,88 @@ +namespace OpenAPI + +open System.Collections.Generic +open OpenAPI.Model.Order +open System.Collections.Generic +open System + +module StoreApiHandlerParams = + + //#region Path parameters + [] + type DeleteOrderPathParams = { + orderId : string ; + } + //#endregion + + + type DeleteOrderStatusCode400Response = { + content:string; + + } + + type DeleteOrderStatusCode404Response = { + content:string; + + } + type DeleteOrderResult = DeleteOrderStatusCode400 of DeleteOrderStatusCode400Response|DeleteOrderStatusCode404 of DeleteOrderStatusCode404Response + + type DeleteOrderArgs = { + pathParams:DeleteOrderPathParams; + } + + + type GetInventoryDefaultStatusCodeResponse = { + content:IDictionary; + + } + type GetInventoryResult = GetInventoryDefaultStatusCode of GetInventoryDefaultStatusCodeResponse + + //#region Path parameters + [] + type GetOrderByIdPathParams = { + orderId : int64 ; + } + //#endregion + + + type GetOrderByIdDefaultStatusCodeResponse = { + content:Order; + + } + + type GetOrderByIdStatusCode400Response = { + content:string; + + } + + type GetOrderByIdStatusCode404Response = { + content:string; + + } + type GetOrderByIdResult = GetOrderByIdDefaultStatusCode of GetOrderByIdDefaultStatusCodeResponse|GetOrderByIdStatusCode400 of GetOrderByIdStatusCode400Response|GetOrderByIdStatusCode404 of GetOrderByIdStatusCode404Response + + type GetOrderByIdArgs = { + pathParams:GetOrderByIdPathParams; + } + + //#region Body parameters + [] + type PlaceOrderBodyParams = Order + //#endregion + + + type PlaceOrderDefaultStatusCodeResponse = { + content:Order; + + } + + type PlaceOrderStatusCode400Response = { + content:string; + + } + type PlaceOrderResult = PlaceOrderDefaultStatusCode of PlaceOrderDefaultStatusCodeResponse|PlaceOrderStatusCode400 of PlaceOrderStatusCode400Response + + type PlaceOrderArgs = { + bodyParams:PlaceOrderBodyParams + } + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiServiceInterface.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiServiceInterface.fs new file mode 100644 index 0000000000..0e8e072b8b --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/StoreApiServiceInterface.fs @@ -0,0 +1,15 @@ +namespace OpenAPI +open StoreApiHandlerParams +open System +open Microsoft.AspNetCore.Http + + +module StoreApiServiceInterface = + + //#region Service interface + type IStoreApiService = + abstract member DeleteOrder : unit -> DeleteOrderResult + abstract member GetInventory : unit -> GetInventoryResult + abstract member GetOrderById : unit -> GetOrderByIdResult + abstract member PlaceOrder : PlaceOrderBodyParams -> PlaceOrderResult + //#endregion \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiHandler.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiHandler.fs new file mode 100644 index 0000000000..35f1ddf715 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiHandler.fs @@ -0,0 +1,211 @@ +namespace OpenAPI + +open UserApiHandlerParams +open UserApiServiceImplementation +open Microsoft.AspNetCore.Mvc +open Microsoft.AspNetCore.Http +open Newtonsoft.Json +open Microsoft.Azure.WebJobs +open System.IO + +module UserApiHandlers = + + /// + /// + /// + + //#region CreateUser + /// + /// Create user + /// + [] + let CreateUser + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = [] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = UserApiService.CreateUser bodyParams + match result with + | CreateUserDefaultStatusCode resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(0)) + + //#region CreateUsersWithArrayInput + /// + /// Creates list of users with given input array + /// + [] + let CreateUsersWithArrayInput + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = [] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = UserApiService.CreateUsersWithArrayInput bodyParams + match result with + | CreateUsersWithArrayInputDefaultStatusCode resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(0)) + + //#region CreateUsersWithListInput + /// + /// Creates list of users with given input array + /// + [] + let CreateUsersWithListInput + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = [] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = UserApiService.CreateUsersWithListInput bodyParams + match result with + | CreateUsersWithListInputDefaultStatusCode resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(0)) + + //#region DeleteUser + /// + /// Delete user + /// + [] + let DeleteUser + ([] + req:HttpRequest ) = + + let result = UserApiService.DeleteUser () + match result with + | DeleteUserStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | DeleteUserStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + + //#region GetUserByName + /// + /// Get user by user name + /// + [] + let GetUserByName + ([] + req:HttpRequest ) = + + let result = UserApiService.GetUserByName () + match result with + | GetUserByNameDefaultStatusCode resolved -> + let content = JsonConvert.SerializeObject resolved.content + let responseContentType = "application/json" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | GetUserByNameStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | GetUserByNameStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + + //#region LoginUser + /// + /// Logs user into the system + /// + [] + let LoginUser + ([] + req:HttpRequest ) = + + let result = UserApiService.LoginUser () + match result with + | LoginUserDefaultStatusCode resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(200)) + | LoginUserStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + + //#region LogoutUser + /// + /// Logs out current logged in user session + /// + [] + let LogoutUser + ([] + req:HttpRequest ) = + + let result = UserApiService.LogoutUser () + match result with + | LogoutUserDefaultStatusCode resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(0)) + + //#region UpdateUser + /// + /// Updated user + /// + [] + let UpdateUser + ([] + req:HttpRequest ) = + + use reader = StreamReader(req.Body) + + let mediaTypes = [] // currently unused + + let bind (contentType:string) body = + match (contentType.ToLower()) with + | "application/json" -> + body |> JsonConvert.DeserializeObject + | _ -> failwith (sprintf "TODO - ContentType %s not currently supported" contentType) + + let bodyParams = reader.ReadToEnd() |> bind req.ContentType + let result = UserApiService.UpdateUser bodyParams + match result with + | UpdateUserStatusCode400 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(400)) + | UpdateUserStatusCode404 resolved -> + let content = resolved.content + let responseContentType = "text/plain" + ContentResult(Content = content, ContentType = responseContentType, StatusCode = System.Nullable(404)) + + + + diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiHandlerParams.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiHandlerParams.fs new file mode 100644 index 0000000000..42c51c93a6 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiHandlerParams.fs @@ -0,0 +1,169 @@ +namespace OpenAPI + +open OpenAPI.Model.User +open System.Collections.Generic +open System + +module UserApiHandlerParams = + + + //#region Body parameters + [] + type CreateUserBodyParams = User + //#endregion + + + type CreateUserDefaultStatusCodeResponse = { + content:string; + + } + type CreateUserResult = CreateUserDefaultStatusCode of CreateUserDefaultStatusCodeResponse + + type CreateUserArgs = { + bodyParams:CreateUserBodyParams + } + + //#region Body parameters + [] + type CreateUsersWithArrayInputBodyParams = User[] + //#endregion + + + type CreateUsersWithArrayInputDefaultStatusCodeResponse = { + content:string; + + } + type CreateUsersWithArrayInputResult = CreateUsersWithArrayInputDefaultStatusCode of CreateUsersWithArrayInputDefaultStatusCodeResponse + + type CreateUsersWithArrayInputArgs = { + bodyParams:CreateUsersWithArrayInputBodyParams + } + + //#region Body parameters + [] + type CreateUsersWithListInputBodyParams = User[] + //#endregion + + + type CreateUsersWithListInputDefaultStatusCodeResponse = { + content:string; + + } + type CreateUsersWithListInputResult = CreateUsersWithListInputDefaultStatusCode of CreateUsersWithListInputDefaultStatusCodeResponse + + type CreateUsersWithListInputArgs = { + bodyParams:CreateUsersWithListInputBodyParams + } + //#region Path parameters + [] + type DeleteUserPathParams = { + username : string ; + } + //#endregion + + + type DeleteUserStatusCode400Response = { + content:string; + + } + + type DeleteUserStatusCode404Response = { + content:string; + + } + type DeleteUserResult = DeleteUserStatusCode400 of DeleteUserStatusCode400Response|DeleteUserStatusCode404 of DeleteUserStatusCode404Response + + type DeleteUserArgs = { + pathParams:DeleteUserPathParams; + } + //#region Path parameters + [] + type GetUserByNamePathParams = { + username : string ; + } + //#endregion + + + type GetUserByNameDefaultStatusCodeResponse = { + content:User; + + } + + type GetUserByNameStatusCode400Response = { + content:string; + + } + + type GetUserByNameStatusCode404Response = { + content:string; + + } + type GetUserByNameResult = GetUserByNameDefaultStatusCode of GetUserByNameDefaultStatusCodeResponse|GetUserByNameStatusCode400 of GetUserByNameStatusCode400Response|GetUserByNameStatusCode404 of GetUserByNameStatusCode404Response + + type GetUserByNameArgs = { + pathParams:GetUserByNamePathParams; + } + + //#region Query parameters + [] + type LoginUserQueryParams = { + username : string ; + + + password : string ; + + } + //#endregion + + + type LoginUserDefaultStatusCodeResponse = { + content:string; + + } + + type LoginUserStatusCode400Response = { + content:string; + + } + type LoginUserResult = LoginUserDefaultStatusCode of LoginUserDefaultStatusCodeResponse|LoginUserStatusCode400 of LoginUserStatusCode400Response + + type LoginUserArgs = { + queryParams:Result; + } + + + type LogoutUserDefaultStatusCodeResponse = { + content:string; + + } + type LogoutUserResult = LogoutUserDefaultStatusCode of LogoutUserDefaultStatusCodeResponse + + //#region Path parameters + [] + type UpdateUserPathParams = { + username : string ; + } + //#endregion + + //#region Body parameters + [] + type UpdateUserBodyParams = User + //#endregion + + + type UpdateUserStatusCode400Response = { + content:string; + + } + + type UpdateUserStatusCode404Response = { + content:string; + + } + type UpdateUserResult = UpdateUserStatusCode400 of UpdateUserStatusCode400Response|UpdateUserStatusCode404 of UpdateUserStatusCode404Response + + type UpdateUserArgs = { + pathParams:UpdateUserPathParams; + bodyParams:UpdateUserBodyParams + } + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiServiceInterface.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiServiceInterface.fs new file mode 100644 index 0000000000..d1aefa1cfb --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/api/UserApiServiceInterface.fs @@ -0,0 +1,19 @@ +namespace OpenAPI +open UserApiHandlerParams +open System +open Microsoft.AspNetCore.Http + + +module UserApiServiceInterface = + + //#region Service interface + type IUserApiService = + abstract member CreateUser : CreateUserBodyParams -> CreateUserResult + abstract member CreateUsersWithArrayInput : CreateUsersWithArrayInputBodyParams -> CreateUsersWithArrayInputResult + abstract member CreateUsersWithListInput : CreateUsersWithListInputBodyParams -> CreateUsersWithListInputResult + abstract member DeleteUser : unit -> DeleteUserResult + abstract member GetUserByName : unit -> GetUserByNameResult + abstract member LoginUser : unit -> LoginUserResult + abstract member LogoutUser : unit -> LogoutUserResult + abstract member UpdateUser : UpdateUserBodyParams -> UpdateUserResult + //#endregion \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/PetApiService.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/PetApiService.fs new file mode 100644 index 0000000000..913aff5bc1 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/PetApiService.fs @@ -0,0 +1,71 @@ +namespace OpenAPI +open OpenAPI.Model.ApiResponse +open OpenAPI.Model.Pet +open PetApiHandlerParams +open PetApiServiceInterface +open System.Collections.Generic +open System + +module PetApiServiceImplementation = + + //#region Service implementation + type PetApiServiceImpl() = + interface IPetApiService with + + member this.AddPet (parameters:AddPetBodyParams) = + let content = "Invalid input" + AddPetStatusCode405 { content = content } + + member this.DeletePet () = + let content = "Invalid pet value" + DeletePetStatusCode400 { content = content } + + member this.FindPetsByStatus () = + if true then + let content = "successful operation" :> obj :?> Pet[] // this cast is obviously wrong, and is only intended to allow generated project to compile + FindPetsByStatusDefaultStatusCode { content = content } + else + let content = "Invalid status value" + FindPetsByStatusStatusCode400 { content = content } + + member this.FindPetsByTags () = + if true then + let content = "successful operation" :> obj :?> Pet[] // this cast is obviously wrong, and is only intended to allow generated project to compile + FindPetsByTagsDefaultStatusCode { content = content } + else + let content = "Invalid tag value" + FindPetsByTagsStatusCode400 { content = content } + + member this.GetPetById () = + if true then + let content = "successful operation" :> obj :?> Pet // this cast is obviously wrong, and is only intended to allow generated project to compile + GetPetByIdDefaultStatusCode { content = content } + else if true then + let content = "Invalid ID supplied" + GetPetByIdStatusCode400 { content = content } + else + let content = "Pet not found" + GetPetByIdStatusCode404 { content = content } + + member this.UpdatePet (parameters:UpdatePetBodyParams) = + if true then + let content = "Invalid ID supplied" + UpdatePetStatusCode400 { content = content } + else if true then + let content = "Pet not found" + UpdatePetStatusCode404 { content = content } + else + let content = "Validation exception" + UpdatePetStatusCode405 { content = content } + + member this.UpdatePetWithForm () = + let content = "Invalid input" + UpdatePetWithFormStatusCode405 { content = content } + + member this.UploadFile () = + let content = "successful operation" :> obj :?> ApiResponse // this cast is obviously wrong, and is only intended to allow generated project to compile + UploadFileDefaultStatusCode { content = content } + + //#endregion + + let PetApiService = PetApiServiceImpl() :> IPetApiService \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/StoreApiService.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/StoreApiService.fs new file mode 100644 index 0000000000..13ea7dde15 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/StoreApiService.fs @@ -0,0 +1,48 @@ +namespace OpenAPI +open System.Collections.Generic +open OpenAPI.Model.Order +open StoreApiHandlerParams +open StoreApiServiceInterface +open System.Collections.Generic +open System + +module StoreApiServiceImplementation = + + //#region Service implementation + type StoreApiServiceImpl() = + interface IStoreApiService with + + member this.DeleteOrder () = + if true then + let content = "Invalid ID supplied" + DeleteOrderStatusCode400 { content = content } + else + let content = "Order not found" + DeleteOrderStatusCode404 { content = content } + + member this.GetInventory () = + let content = "successful operation" :> obj :?> IDictionary // this cast is obviously wrong, and is only intended to allow generated project to compile + GetInventoryDefaultStatusCode { content = content } + + member this.GetOrderById () = + if true then + let content = "successful operation" :> obj :?> Order // this cast is obviously wrong, and is only intended to allow generated project to compile + GetOrderByIdDefaultStatusCode { content = content } + else if true then + let content = "Invalid ID supplied" + GetOrderByIdStatusCode400 { content = content } + else + let content = "Order not found" + GetOrderByIdStatusCode404 { content = content } + + member this.PlaceOrder (parameters:PlaceOrderBodyParams) = + if true then + let content = "successful operation" :> obj :?> Order // this cast is obviously wrong, and is only intended to allow generated project to compile + PlaceOrderDefaultStatusCode { content = content } + else + let content = "Invalid Order" + PlaceOrderStatusCode400 { content = content } + + //#endregion + + let StoreApiService = StoreApiServiceImpl() :> IStoreApiService \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/UserApiService.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/UserApiService.fs new file mode 100644 index 0000000000..63d1bfcd13 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/impl/UserApiService.fs @@ -0,0 +1,67 @@ +namespace OpenAPI +open OpenAPI.Model.User +open UserApiHandlerParams +open UserApiServiceInterface +open System.Collections.Generic +open System + +module UserApiServiceImplementation = + + //#region Service implementation + type UserApiServiceImpl() = + interface IUserApiService with + + member this.CreateUser (parameters:CreateUserBodyParams) = + let content = "successful operation" + CreateUserDefaultStatusCode { content = content } + + member this.CreateUsersWithArrayInput (parameters:CreateUsersWithArrayInputBodyParams) = + let content = "successful operation" + CreateUsersWithArrayInputDefaultStatusCode { content = content } + + member this.CreateUsersWithListInput (parameters:CreateUsersWithListInputBodyParams) = + let content = "successful operation" + CreateUsersWithListInputDefaultStatusCode { content = content } + + member this.DeleteUser () = + if true then + let content = "Invalid username supplied" + DeleteUserStatusCode400 { content = content } + else + let content = "User not found" + DeleteUserStatusCode404 { content = content } + + member this.GetUserByName () = + if true then + let content = "successful operation" :> obj :?> User // this cast is obviously wrong, and is only intended to allow generated project to compile + GetUserByNameDefaultStatusCode { content = content } + else if true then + let content = "Invalid username supplied" + GetUserByNameStatusCode400 { content = content } + else + let content = "User not found" + GetUserByNameStatusCode404 { content = content } + + member this.LoginUser () = + if true then + let content = "successful operation" :> obj :?> string // this cast is obviously wrong, and is only intended to allow generated project to compile + LoginUserDefaultStatusCode { content = content } + else + let content = "Invalid username/password supplied" + LoginUserStatusCode400 { content = content } + + member this.LogoutUser () = + let content = "successful operation" + LogoutUserDefaultStatusCode { content = content } + + member this.UpdateUser (parameters:UpdateUserBodyParams) = + if true then + let content = "Invalid user supplied" + UpdateUserStatusCode400 { content = content } + else + let content = "User not found" + UpdateUserStatusCode404 { content = content } + + //#endregion + + let UserApiService = UserApiServiceImpl() :> IUserApiService \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/model/ApiResponse.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/ApiResponse.fs new file mode 100644 index 0000000000..aed7bd6288 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/ApiResponse.fs @@ -0,0 +1,22 @@ +namespace OpenAPI.Model + +open System +open System.Collections.Generic +open Newtonsoft.Json + +module ApiResponse = + + //#region ApiResponse + + [] + type ApiResponse = { + [] + Code : int; + [] + Type : string; + [] + Message : string; + } + + //#endregion + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Category.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Category.fs new file mode 100644 index 0000000000..866d74e8d9 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Category.fs @@ -0,0 +1,20 @@ +namespace OpenAPI.Model + +open System +open System.Collections.Generic +open Newtonsoft.Json + +module Category = + + //#region Category + + [] + type Category = { + [] + Id : int64; + [] + Name : string; + } + + //#endregion + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Order.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Order.fs new file mode 100644 index 0000000000..8d5c9f769b --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Order.fs @@ -0,0 +1,28 @@ +namespace OpenAPI.Model + +open System +open System.Collections.Generic +open Newtonsoft.Json + +module Order = + + //#region Order + + [] + type Order = { + [] + Id : int64; + [] + PetId : int64; + [] + Quantity : int; + [] + ShipDate : Nullable; + [] + Status : string; + [] + Complete : bool; + } + + //#endregion + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Pet.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Pet.fs new file mode 100644 index 0000000000..0917e14410 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Pet.fs @@ -0,0 +1,30 @@ +namespace OpenAPI.Model + +open System +open System.Collections.Generic +open Newtonsoft.Json +open OpenAPI.Model.Category +open OpenAPI.Model.Tag + +module Pet = + + //#region Pet + + [] + type Pet = { + [] + Id : int64; + [] + Category : Category; + [] + Name : string; + [] + PhotoUrls : string[]; + [] + Tags : Tag[]; + [] + Status : string; + } + + //#endregion + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Tag.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Tag.fs new file mode 100644 index 0000000000..3e4e1996b3 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/Tag.fs @@ -0,0 +1,20 @@ +namespace OpenAPI.Model + +open System +open System.Collections.Generic +open Newtonsoft.Json + +module Tag = + + //#region Tag + + [] + type Tag = { + [] + Id : int64; + [] + Name : string; + } + + //#endregion + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/OpenAPI/src/model/User.fs b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/User.fs new file mode 100644 index 0000000000..4c77e4c8a5 --- /dev/null +++ b/samples/server/petstore/fsharp-functions/OpenAPI/src/model/User.fs @@ -0,0 +1,32 @@ +namespace OpenAPI.Model + +open System +open System.Collections.Generic +open Newtonsoft.Json + +module User = + + //#region User + + [] + type User = { + [] + Id : int64; + [] + Username : string; + [] + FirstName : string; + [] + LastName : string; + [] + Email : string; + [] + Password : string; + [] + Phone : string; + [] + UserStatus : int; + } + + //#endregion + \ No newline at end of file diff --git a/samples/server/petstore/fsharp-functions/host.json b/samples/server/petstore/fsharp-functions/host.json new file mode 100644 index 0000000000..ccd1678a5e --- /dev/null +++ b/samples/server/petstore/fsharp-functions/host.json @@ -0,0 +1,8 @@ +{ + "version": "2.0", + "extensions":{ + "http": { + "routePrefix": "" + } + } +} \ No newline at end of file diff --git a/samples/server/petstore/fsharp-giraffe/.openapi-generator/VERSION b/samples/server/petstore/fsharp-giraffe/.openapi-generator/VERSION index afa6365606..0e97bd19ef 100644 --- a/samples/server/petstore/fsharp-giraffe/.openapi-generator/VERSION +++ b/samples/server/petstore/fsharp-giraffe/.openapi-generator/VERSION @@ -1 +1 @@ -4.0.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/PetApiTests.fs b/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/PetApiTests.fs index 8408a25602..aec008210d 100644 --- a/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/PetApiTests.fs +++ b/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/PetApiTests.fs @@ -106,7 +106,7 @@ module PetApiHandlerTests = // add your setup code here - let path = "/v2/pet/findByTags" + "?tags=ADDME&maxCount=ADDME" + let path = "/v2/pet/findByTags" + "?tags=ADDME" HttpGet client path |> isStatus (enum(200)) @@ -123,7 +123,7 @@ module PetApiHandlerTests = // add your setup code here - let path = "/v2/pet/findByTags" + "?tags=ADDME&maxCount=ADDME" + let path = "/v2/pet/findByTags" + "?tags=ADDME" HttpGet client path |> isStatus (enum(400)) diff --git a/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/UserApiTestsHelper.fs b/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/UserApiTestsHelper.fs index 352c553e0c..fca7987ef4 100644 --- a/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/UserApiTestsHelper.fs +++ b/samples/server/petstore/fsharp-giraffe/OpenAPI.Tests/UserApiTestsHelper.fs @@ -40,8 +40,17 @@ module UserApiHandlerTestsHelper = let mutable CreateUsersWithArrayInputExamples = Map.empty let mutable CreateUsersWithArrayInputBody = "" - CreateUsersWithArrayInputBody <- WebUtility.HtmlDecode "" - CreateUsersWithArrayInputExamples <- CreateUsersWithArrayInputExamples.Add("", CreateUsersWithArrayInputBody) + CreateUsersWithArrayInputBody <- WebUtility.HtmlDecode "{ + "firstName" : "firstName", + "lastName" : "lastName", + "password" : "password", + "userStatus" : 6, + "phone" : "phone", + "id" : 0, + "email" : "email", + "username" : "username" +}" + CreateUsersWithArrayInputExamples <- CreateUsersWithArrayInputExamples.Add("application/json", CreateUsersWithArrayInputBody) let getCreateUsersWithArrayInputExample mediaType = CreateUsersWithArrayInputExamples.[mediaType] @@ -50,8 +59,17 @@ module UserApiHandlerTestsHelper = let mutable CreateUsersWithListInputExamples = Map.empty let mutable CreateUsersWithListInputBody = "" - CreateUsersWithListInputBody <- WebUtility.HtmlDecode "" - CreateUsersWithListInputExamples <- CreateUsersWithListInputExamples.Add("", CreateUsersWithListInputBody) + CreateUsersWithListInputBody <- WebUtility.HtmlDecode "{ + "firstName" : "firstName", + "lastName" : "lastName", + "password" : "password", + "userStatus" : 6, + "phone" : "phone", + "id" : 0, + "email" : "email", + "username" : "username" +}" + CreateUsersWithListInputExamples <- CreateUsersWithListInputExamples.Add("application/json", CreateUsersWithListInputBody) let getCreateUsersWithListInputExample mediaType = CreateUsersWithListInputExamples.[mediaType] diff --git a/samples/server/petstore/fsharp-giraffe/OpenAPI/README.md b/samples/server/petstore/fsharp-giraffe/OpenAPI/README.md index 42731ee69c..c529ef85cd 100644 --- a/samples/server/petstore/fsharp-giraffe/OpenAPI/README.md +++ b/samples/server/petstore/fsharp-giraffe/OpenAPI/README.md @@ -6,7 +6,6 @@ A [Giraffe](https://github.com/giraffe-fsharp/Giraffe) server stub for the OpenA The following models have been auto-generated from the provided OpenAPI schema: -- model/ApiResponseModel.fs - model/UserModel.fs - model/TagModel.fs - model/CategoryModel.fs @@ -14,6 +13,7 @@ The following models have been auto-generated from the provided OpenAPI schema: - model/InlineObject1Model.fs - model/InlineObjectModel.fs - model/PetModel.fs +- model/ApiResponseModel.fs ## Operations diff --git a/samples/server/petstore/fsharp-giraffe/OpenAPI/src/OpenAPI.fsproj b/samples/server/petstore/fsharp-giraffe/OpenAPI/src/OpenAPI.fsproj index a5d1a1bebb..4b31d698ba 100644 --- a/samples/server/petstore/fsharp-giraffe/OpenAPI/src/OpenAPI.fsproj +++ b/samples/server/petstore/fsharp-giraffe/OpenAPI/src/OpenAPI.fsproj @@ -21,7 +21,6 @@ - @@ -29,6 +28,7 @@ + diff --git a/samples/server/petstore/fsharp-giraffe/OpenAPI/src/api/PetApiHandlerParams.fs b/samples/server/petstore/fsharp-giraffe/OpenAPI/src/api/PetApiHandlerParams.fs index 6bc290e74a..f84ffb76b2 100644 --- a/samples/server/petstore/fsharp-giraffe/OpenAPI/src/api/PetApiHandlerParams.fs +++ b/samples/server/petstore/fsharp-giraffe/OpenAPI/src/api/PetApiHandlerParams.fs @@ -78,9 +78,6 @@ module PetApiHandlerParams = type FindPetsByTagsQueryParams = { tags : string[] ; - - maxCount : int option; - } //#endregion diff --git a/samples/server/petstore/go-api-server/.openapi-generator/VERSION b/samples/server/petstore/go-api-server/.openapi-generator/VERSION index afa6365606..0e97bd19ef 100644 --- a/samples/server/petstore/go-api-server/.openapi-generator/VERSION +++ b/samples/server/petstore/go-api-server/.openapi-generator/VERSION @@ -1 +1 @@ -4.0.0-SNAPSHOT \ No newline at end of file +4.1.3-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/go-api-server/Dockerfile b/samples/server/petstore/go-api-server/Dockerfile index 0f512c7510..cfdfbaed08 100644 --- a/samples/server/petstore/go-api-server/Dockerfile +++ b/samples/server/petstore/go-api-server/Dockerfile @@ -1,6 +1,6 @@ FROM golang:1.10 AS build WORKDIR /go/src -COPY ./ +COPY go ./go COPY main.go . ENV CGO_ENABLED=0 diff --git a/samples/server/petstore/go-api-server/README.md b/samples/server/petstore/go-api-server/README.md new file mode 100644 index 0000000000..fbcf4ae661 --- /dev/null +++ b/samples/server/petstore/go-api-server/README.md @@ -0,0 +1,35 @@ +# Go API Server for petstoreserver + +This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + +## Overview +This server 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 a server stub. +- + +To see how to make this your own, look here: + +[README](https://openapi-generator.tech) + +- API version: 1.0.0 + + +### Running the server +To run the server, follow these simple steps: + +``` +go run main.go +``` + +To run the server in a docker container +``` +docker build --network=host -t petstoreserver . +``` + +Once image is built use +``` +docker run --rm -it petstoreserver +``` + + diff --git a/samples/server/petstore/go-api-server/api/openapi.yaml b/samples/server/petstore/go-api-server/api/openapi.yaml index b25b5c3fe6..a088e6e6c4 100644 --- a/samples/server/petstore/go-api-server/api/openapi.yaml +++ b/samples/server/petstore/go-api-server/api/openapi.yaml @@ -1,14 +1,12 @@ -openapi: 3.0.0 +openapi: 3.0.1 info: - description: This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + description: This is a sample server Petstore server. For this sample, you can use + the api key `special-key` to test the authorization filters. license: name: Apache-2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html title: OpenAPI Petstore version: 1.0.0 -externalDocs: - description: Find out more about Swagger - url: http://swagger.io servers: - url: http://petstore.swagger.io/v2 tags: @@ -23,9 +21,18 @@ paths: post: operationId: addPet requestBody: - $ref: '#/components/requestBodies/Pet' + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + application/xml: + schema: + $ref: '#/components/schemas/Pet' + description: Pet object that needs to be added to the store + required: true responses: 405: + content: {} description: Invalid input security: - petstore_auth: @@ -38,13 +45,24 @@ paths: put: operationId: updatePet requestBody: - $ref: '#/components/requestBodies/Pet' + content: + application/json: + schema: + $ref: '#/components/schemas/Pet' + application/xml: + schema: + $ref: '#/components/schemas/Pet' + description: Pet object that needs to be added to the store + required: true responses: 400: + content: {} description: Invalid ID supplied 404: + content: {} description: Pet not found 405: + content: {} description: Validation exception security: - petstore_auth: @@ -89,6 +107,7 @@ paths: type: array description: successful operation 400: + content: {} description: Invalid status value security: - petstore_auth: @@ -100,7 +119,8 @@ paths: /pet/findByTags: get: deprecated: true - description: Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. + description: Multiple tags can be provided with comma separated strings. Use + tag1, tag2, tag3 for testing. operationId: findPetsByTags parameters: - description: Tags to filter by @@ -128,6 +148,7 @@ paths: type: array description: successful operation 400: + content: {} description: Invalid tag value security: - petstore_auth: @@ -140,24 +161,20 @@ paths: delete: operationId: deletePet parameters: - - explode: false - in: header + - in: header name: api_key - required: false schema: type: string - style: simple - description: Pet id to delete - explode: false in: path name: petId required: true schema: format: int64 type: integer - style: simple responses: 400: + content: {} description: Invalid pet value security: - petstore_auth: @@ -171,14 +188,12 @@ paths: operationId: getPetById parameters: - description: ID of pet to return - explode: false in: path name: petId required: true schema: format: int64 type: integer - style: simple responses: 200: content: @@ -190,8 +205,10 @@ paths: $ref: '#/components/schemas/Pet' description: successful operation 400: + content: {} description: Invalid ID supplied 404: + content: {} description: Pet not found security: - api_key: [] @@ -202,16 +219,13 @@ paths: operationId: updatePetWithForm parameters: - description: ID of pet that needs to be updated - explode: false in: path name: petId required: true schema: format: int64 type: integer - style: simple requestBody: - $ref: '#/components/requestBodies/inline_object' content: application/x-www-form-urlencoded: schema: @@ -222,9 +236,9 @@ paths: status: description: Updated status of the pet type: string - type: object responses: 405: + content: {} description: Invalid input security: - petstore_auth: @@ -238,16 +252,13 @@ paths: operationId: uploadFile parameters: - description: ID of pet to update - explode: false in: path name: petId required: true schema: format: int64 type: integer - style: simple requestBody: - $ref: '#/components/requestBodies/inline_object_1' content: multipart/form-data: schema: @@ -259,7 +270,6 @@ paths: description: file to upload format: binary type: string - type: object responses: 200: content: @@ -298,7 +308,7 @@ paths: operationId: placeOrder requestBody: content: - application/json: + '*/*': schema: $ref: '#/components/schemas/Order' description: order placed for purchasing the pet @@ -314,6 +324,7 @@ paths: $ref: '#/components/schemas/Order' description: successful operation 400: + content: {} description: Invalid Order summary: Place an order for a pet tags: @@ -321,31 +332,32 @@ paths: x-codegen-request-body-name: body /store/order/{orderId}: delete: - description: For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors + description: For valid response try integer IDs with value < 1000. Anything + above 1000 or nonintegers will generate API errors operationId: deleteOrder parameters: - description: ID of the order that needs to be deleted - explode: false in: path name: orderId required: true schema: type: string - style: simple responses: 400: + content: {} description: Invalid ID supplied 404: + content: {} description: Order not found summary: Delete purchase order by ID tags: - store get: - description: For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions + description: For valid response try integer IDs with value <= 5 or > 10. Other + values will generated exceptions operationId: getOrderById parameters: - description: ID of pet that needs to be fetched - explode: false in: path name: orderId required: true @@ -354,7 +366,6 @@ paths: maximum: 5 minimum: 1 type: integer - style: simple responses: 200: content: @@ -366,8 +377,10 @@ paths: $ref: '#/components/schemas/Order' description: successful operation 400: + content: {} description: Invalid ID supplied 404: + content: {} description: Order not found summary: Find purchase order by ID tags: @@ -378,13 +391,14 @@ paths: operationId: createUser requestBody: content: - application/json: + '*/*': schema: $ref: '#/components/schemas/User' description: Created user object required: true responses: default: + content: {} description: successful operation summary: Create user tags: @@ -394,9 +408,17 @@ paths: post: operationId: createUsersWithArrayInput requestBody: - $ref: '#/components/requestBodies/UserArray' + content: + '*/*': + schema: + items: + $ref: '#/components/schemas/User' + type: array + description: List of user object + required: true responses: default: + content: {} description: successful operation summary: Creates list of users with given input array tags: @@ -406,9 +428,17 @@ paths: post: operationId: createUsersWithListInput requestBody: - $ref: '#/components/requestBodies/UserArray' + content: + '*/*': + schema: + items: + $ref: '#/components/schemas/User' + type: array + description: List of user object + required: true responses: default: + content: {} description: successful operation summary: Creates list of users with given input array tags: @@ -419,21 +449,17 @@ paths: operationId: loginUser parameters: - description: The user name for login - explode: true in: query name: username required: true schema: type: string - style: form - description: The password for login in clear text - explode: true in: query name: password required: true schema: type: string - style: form responses: 200: content: @@ -447,19 +473,16 @@ paths: headers: X-Rate-Limit: description: calls per hour allowed by the user - explode: false schema: format: int32 type: integer - style: simple X-Expires-After: description: date in UTC when toekn expires - explode: false schema: format: date-time type: string - style: simple 400: + content: {} description: Invalid username/password supplied summary: Logs user into the system tags: @@ -469,6 +492,7 @@ paths: operationId: logoutUser responses: default: + content: {} description: successful operation summary: Logs out current logged in user session tags: @@ -479,17 +503,17 @@ paths: operationId: deleteUser parameters: - description: The name that needs to be deleted - explode: false in: path name: username required: true schema: type: string - style: simple responses: 400: + content: {} description: Invalid username supplied 404: + content: {} description: User not found summary: Delete user tags: @@ -498,13 +522,11 @@ paths: operationId: getUserByName parameters: - description: The name that needs to be fetched. Use user1 for testing. - explode: false in: path name: username required: true schema: type: string - style: simple responses: 200: content: @@ -516,8 +538,10 @@ paths: $ref: '#/components/schemas/User' description: successful operation 400: + content: {} description: Invalid username supplied 404: + content: {} description: User not found summary: Get user by user name tags: @@ -527,60 +551,30 @@ paths: operationId: updateUser parameters: - description: name that need to be deleted - explode: false in: path name: username required: true schema: type: string - style: simple requestBody: content: - application/json: + '*/*': schema: $ref: '#/components/schemas/User' description: Updated user object required: true responses: 400: + content: {} description: Invalid user supplied 404: + content: {} description: User not found summary: Updated user tags: - user x-codegen-request-body-name: body components: - requestBodies: - UserArray: - content: - application/json: - schema: - items: - $ref: '#/components/schemas/User' - type: array - description: List of user object - required: true - Pet: - content: - application/json: - schema: - $ref: '#/components/schemas/Pet' - application/xml: - schema: - $ref: '#/components/schemas/Pet' - description: Pet object that needs to be added to the store - required: true - inline_object: - content: - application/x-www-form-urlencoded: - schema: - $ref: '#/components/schemas/inline_object' - inline_object_1: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/inline_object_1' schemas: Order: description: An order for a pets from the pet store @@ -753,25 +747,6 @@ components: type: string title: An uploaded response type: object - inline_object: - properties: - name: - description: Updated name of the pet - type: string - status: - description: Updated status of the pet - type: string - type: object - inline_object_1: - properties: - additionalMetadata: - description: Additional data to pass to server - type: string - file: - description: file to upload - format: binary - type: string - type: object securitySchemes: petstore_auth: flows: diff --git a/samples/server/petstore/go-api-server/main.go b/samples/server/petstore/go-api-server/main.go index 2e6999c2f4..0c87507794 100644 --- a/samples/server/petstore/go-api-server/main.go +++ b/samples/server/petstore/go-api-server/main.go @@ -18,9 +18,9 @@ import ( // once you place this file into your project. // For example, // - // sw "github.com/myname/myrepo/" + // sw "github.com/myname/myrepo/go" // - sw "./" + sw "./go" ) func main() { diff --git a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/FormatTest.java index df7be9e717..4c0b990e75 100644 --- a/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/java-msf4j/src/gen/java/org/openapitools/model/FormatTest.java @@ -54,6 +54,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -298,6 +301,24 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @ApiModelProperty(value = "") + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -320,12 +341,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -346,6 +368,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/FormatTest.java b/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/FormatTest.java index e01fd150a4..8528b94b0a 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/FormatTest.java +++ b/samples/server/petstore/java-play-framework-fake-endpoints/app/apimodels/FormatTest.java @@ -55,6 +55,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -308,6 +311,24 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @Valid + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -330,12 +351,13 @@ public class FormatTest { Objects.equals(date, formatTest.date) && Objects.equals(dateTime, formatTest.dateTime) && Objects.equals(uuid, formatTest.uuid) && - Objects.equals(password, formatTest.password); + Objects.equals(password, formatTest.password) && + Objects.equals(bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @SuppressWarnings("StringBufferReplaceableByString") @@ -357,6 +379,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json b/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json index 4c4f6b24a6..d3100df48a 100644 --- a/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json +++ b/samples/server/petstore/java-play-framework-fake-endpoints/public/openapi.json @@ -2021,6 +2021,10 @@ "maxLength" : 64, "minLength" : 10, "type" : "string" + }, + "BigDecimal" : { + "format" : "number", + "type" : "string" } }, "required" : [ "byte", "date", "number", "password" ], diff --git a/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/FormatTest.java index 970e4b2ebe..f68bfe9b73 100644 --- a/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs-cxf/src/gen/java/org/openapitools/model/FormatTest.java @@ -59,6 +59,9 @@ public class FormatTest { @ApiModelProperty(required = true, value = "") private String password; + + @ApiModelProperty(value = "") + private BigDecimal bigDecimal; /** * Get integer * minimum: 10 @@ -307,6 +310,24 @@ public class FormatTest { return this; } + /** + * Get bigDecimal + * @return bigDecimal + **/ + @JsonProperty("BigDecimal") + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + @Override public String toString() { @@ -326,6 +347,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/FormatTest.java index e58cb7798b..746a658274 100644 --- a/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs-datelib-j8/src/gen/java/org/openapitools/model/FormatTest.java @@ -44,7 +44,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest implements Serializable { @@ -100,6 +101,10 @@ public class FormatTest implements Serializable { @JsonProperty(JSON_PROPERTY_PASSWORD) private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -370,6 +375,26 @@ public class FormatTest implements Serializable { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @JsonProperty("BigDecimal") + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -392,12 +417,13 @@ public class FormatTest implements Serializable { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @@ -419,6 +445,7 @@ public class FormatTest implements Serializable { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/FormatTest.java index d86b83474d..7132d9908d 100644 --- a/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs-spec-interface/src/gen/java/org/openapitools/model/FormatTest.java @@ -34,6 +34,7 @@ public class FormatTest implements Serializable { private @Valid Date dateTime; private @Valid UUID uuid; private @Valid String password; + private @Valid BigDecimal bigDecimal; /** * minimum: 10 @@ -270,6 +271,23 @@ public class FormatTest implements Serializable { this.password = password; } + /** + **/ + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + + @ApiModelProperty(value = "") + @JsonProperty("BigDecimal") + public BigDecimal getBigDecimal() { + return bigDecimal; + } + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -292,12 +310,13 @@ public class FormatTest implements Serializable { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -318,6 +337,7 @@ public class FormatTest implements Serializable { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml b/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml index 4482ec16b7..ccb16e949a 100644 --- a/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml +++ b/samples/server/petstore/jaxrs-spec-interface/src/main/openapi/openapi.yaml @@ -1626,6 +1626,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date diff --git a/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/FormatTest.java index d86b83474d..7132d9908d 100644 --- a/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs-spec/src/gen/java/org/openapitools/model/FormatTest.java @@ -34,6 +34,7 @@ public class FormatTest implements Serializable { private @Valid Date dateTime; private @Valid UUID uuid; private @Valid String password; + private @Valid BigDecimal bigDecimal; /** * minimum: 10 @@ -270,6 +271,23 @@ public class FormatTest implements Serializable { this.password = password; } + /** + **/ + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + + @ApiModelProperty(value = "") + @JsonProperty("BigDecimal") + public BigDecimal getBigDecimal() { + return bigDecimal; + } + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -292,12 +310,13 @@ public class FormatTest implements Serializable { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -318,6 +337,7 @@ public class FormatTest implements Serializable { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml b/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml index 4482ec16b7..ccb16e949a 100644 --- a/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml +++ b/samples/server/petstore/jaxrs-spec/src/main/openapi/openapi.yaml @@ -1626,6 +1626,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date diff --git a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/FormatTest.java index e582bb6285..cdccca96bd 100644 --- a/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs/jersey1-useTags/src/gen/java/org/openapitools/model/FormatTest.java @@ -42,7 +42,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -98,6 +99,10 @@ public class FormatTest { @JsonProperty(JSON_PROPERTY_PASSWORD) private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -368,6 +373,26 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @JsonProperty("BigDecimal") + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -390,12 +415,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @@ -417,6 +443,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/FormatTest.java index e582bb6285..cdccca96bd 100644 --- a/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs/jersey1/src/gen/java/org/openapitools/model/FormatTest.java @@ -42,7 +42,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -98,6 +99,10 @@ public class FormatTest { @JsonProperty(JSON_PROPERTY_PASSWORD) private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -368,6 +373,26 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @JsonProperty("BigDecimal") + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -390,12 +415,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @@ -417,6 +443,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/FormatTest.java index e582bb6285..cdccca96bd 100644 --- a/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs/jersey2-useTags/src/gen/java/org/openapitools/model/FormatTest.java @@ -42,7 +42,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -98,6 +99,10 @@ public class FormatTest { @JsonProperty(JSON_PROPERTY_PASSWORD) private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -368,6 +373,26 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @JsonProperty("BigDecimal") + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -390,12 +415,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @@ -417,6 +443,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/FormatTest.java index e582bb6285..cdccca96bd 100644 --- a/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/jaxrs/jersey2/src/gen/java/org/openapitools/model/FormatTest.java @@ -42,7 +42,8 @@ import javax.validation.Valid; FormatTest.JSON_PROPERTY_DATE, FormatTest.JSON_PROPERTY_DATE_TIME, FormatTest.JSON_PROPERTY_UUID, - FormatTest.JSON_PROPERTY_PASSWORD + FormatTest.JSON_PROPERTY_PASSWORD, + FormatTest.JSON_PROPERTY_BIG_DECIMAL }) public class FormatTest { @@ -98,6 +99,10 @@ public class FormatTest { @JsonProperty(JSON_PROPERTY_PASSWORD) private String password; + public static final String JSON_PROPERTY_BIG_DECIMAL = "BigDecimal"; + @JsonProperty(JSON_PROPERTY_BIG_DECIMAL) + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -368,6 +373,26 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + **/ + @JsonProperty("BigDecimal") + @ApiModelProperty(value = "") + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -390,12 +415,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @@ -417,6 +443,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/ApiResponse.kt b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/ApiResponse.kt index d61abe165a..5ced7087da 100644 --- a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/ApiResponse.kt +++ b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/ApiResponse.kt @@ -12,6 +12,7 @@ package org.openapitools.server.models +import java.io.Serializable /** * Describes the result of uploading an image resource * @param code @@ -22,7 +23,10 @@ data class ApiResponse ( val code: kotlin.Int? = null, val type: kotlin.String? = null, val message: kotlin.String? = null -) { +) +: Serializable + +{ } diff --git a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Category.kt b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Category.kt index 5b6aab934e..a347a27877 100644 --- a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Category.kt +++ b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Category.kt @@ -12,6 +12,7 @@ package org.openapitools.server.models +import java.io.Serializable /** * A category for a pet * @param id @@ -20,7 +21,10 @@ package org.openapitools.server.models data class Category ( val id: kotlin.Long? = null, val name: kotlin.String? = null -) { +) +: Serializable + +{ } diff --git a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Order.kt b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Order.kt index 119722f85c..f3eba3816e 100644 --- a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Order.kt +++ b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Order.kt @@ -12,6 +12,7 @@ package org.openapitools.server.models +import java.io.Serializable /** * An order for a pets from the pet store * @param id @@ -29,7 +30,10 @@ data class Order ( /* Order Status */ val status: Order.Status? = null, val complete: kotlin.Boolean? = null -) { +) +: Serializable + +{ /** * Order Status diff --git a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Pet.kt b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Pet.kt index a21ea8ed37..07644fc8bd 100644 --- a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Pet.kt +++ b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Pet.kt @@ -14,6 +14,7 @@ package org.openapitools.server.models import org.openapitools.server.models.Category import org.openapitools.server.models.Tag +import java.io.Serializable /** * A pet for sale in the pet store * @param id @@ -31,7 +32,10 @@ data class Pet ( val tags: kotlin.Array? = null, /* pet status in the store */ val status: Pet.Status? = null -) { +) +: Serializable + +{ /** * pet status in the store diff --git a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Tag.kt b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Tag.kt index eadd8e74d3..aa13b7ca76 100644 --- a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Tag.kt +++ b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/Tag.kt @@ -12,6 +12,7 @@ package org.openapitools.server.models +import java.io.Serializable /** * A tag for a pet * @param id @@ -20,7 +21,10 @@ package org.openapitools.server.models data class Tag ( val id: kotlin.Long? = null, val name: kotlin.String? = null -) { +) +: Serializable + +{ } diff --git a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/User.kt b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/User.kt index bf6e8f53ec..0aa8a67299 100644 --- a/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/User.kt +++ b/samples/server/petstore/kotlin-server/ktor/src/main/kotlin/org/openapitools/server/models/User.kt @@ -12,6 +12,7 @@ package org.openapitools.server.models +import java.io.Serializable /** * A User who is purchasing from the pet store * @param id @@ -33,7 +34,10 @@ data class User ( val phone: kotlin.String? = null, /* User Status */ val userStatus: kotlin.Int? = null -) { +) +: Serializable + +{ } diff --git a/samples/server/petstore/php-slim/lib/Model/FormatTest.php b/samples/server/petstore/php-slim/lib/Model/FormatTest.php index 7e6fa1e958..8e53232118 100644 --- a/samples/server/petstore/php-slim/lib/Model/FormatTest.php +++ b/samples/server/petstore/php-slim/lib/Model/FormatTest.php @@ -63,4 +63,7 @@ class FormatTest /** @var string $password */ private $password; + + /** @var BigDecimal $bigDecimal */ + private $bigDecimal; } diff --git a/samples/server/petstore/php-symfony/SymfonyBundle-php/Controller/StoreController.php b/samples/server/petstore/php-symfony/SymfonyBundle-php/Controller/StoreController.php index 8fbf32d50c..a7c17cae0b 100644 --- a/samples/server/petstore/php-symfony/SymfonyBundle-php/Controller/StoreController.php +++ b/samples/server/petstore/php-symfony/SymfonyBundle-php/Controller/StoreController.php @@ -224,7 +224,7 @@ class StoreController extends Controller $asserts[] = new Assert\NotNull(); $asserts[] = new Assert\Type("int"); $asserts[] = new Assert\GreaterThanOrEqual(1); - $asserts[] = new Assert\LessThanOrEqual(1); + $asserts[] = new Assert\LessThanOrEqual(5); $response = $this->validate($orderId, $asserts); if ($response instanceof Response) { return $response; diff --git a/samples/server/petstore/php-ze-ph/src/App/DTO/FormatTest.php b/samples/server/petstore/php-ze-ph/src/App/DTO/FormatTest.php index 94fe11cc13..0b7dd0772c 100644 --- a/samples/server/petstore/php-ze-ph/src/App/DTO/FormatTest.php +++ b/samples/server/petstore/php-ze-ph/src/App/DTO/FormatTest.php @@ -103,4 +103,11 @@ class FormatTest * @var string */ public $password; + /** + * @DTA\Data(field="BigDecimal", nullable=true) + * @DTA\Strategy(name="Object", options={"type":BigDecimal::class}) + * @DTA\Validator(name="Dictionary", options={"type":BigDecimal::class}) + * @var BigDecimal + */ + public $big_decimal; } diff --git a/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/FormatTest.java index 7ce82141e0..c2ca28b354 100644 --- a/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/spring-mvc-j8-async/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/FormatTest.java index ba39164b5a..d0b99e8bc1 100644 --- a/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/spring-mvc-j8-localdatetime/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/FormatTest.java index f43bc1d659..e0887e1133 100644 --- a/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/spring-mvc/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/FormatTest.java index f43bc1d659..e0887e1133 100644 --- a/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot-beanvalidation/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/FormatTest.java index 7ce82141e0..c2ca28b354 100644 --- a/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot-delegate-j8/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/FormatTest.java index f43bc1d659..e0887e1133 100644 --- a/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot-delegate/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/FormatTest.java index 7ce82141e0..c2ca28b354 100644 --- a/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot-implicitHeaders/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/FormatTest.java index 7ce82141e0..c2ca28b354 100644 --- a/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot-reactive/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml b/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml index 4482ec16b7..ccb16e949a 100644 --- a/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml +++ b/samples/server/petstore/springboot-reactive/src/main/resources/openapi.yaml @@ -1626,6 +1626,9 @@ components: maxLength: 64 minLength: 10 type: string + BigDecimal: + format: number + type: string required: - byte - date diff --git a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/FormatTest.java index 7ce82141e0..c2ca28b354 100644 --- a/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot-useoptional/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/FormatTest.java b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/FormatTest.java index 9a402df17e..fc9b0feb4d 100644 --- a/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/FormatTest.java +++ b/samples/server/petstore/springboot-virtualan/src/main/java/org/openapitools/virtualan/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/FormatTest.java b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/FormatTest.java index 7ce82141e0..c2ca28b354 100644 --- a/samples/server/petstore/springboot/src/main/java/org/openapitools/model/FormatTest.java +++ b/samples/server/petstore/springboot/src/main/java/org/openapitools/model/FormatTest.java @@ -58,6 +58,9 @@ public class FormatTest { @JsonProperty("password") private String password; + @JsonProperty("BigDecimal") + private BigDecimal bigDecimal; + public FormatTest integer(Integer integer) { this.integer = integer; return this; @@ -337,6 +340,27 @@ public class FormatTest { this.password = password; } + public FormatTest bigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + return this; + } + + /** + * Get bigDecimal + * @return bigDecimal + */ + @ApiModelProperty(value = "") + + @Valid + + public BigDecimal getBigDecimal() { + return bigDecimal; + } + + public void setBigDecimal(BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + @Override public boolean equals(java.lang.Object o) { @@ -359,12 +383,13 @@ public class FormatTest { Objects.equals(this.date, formatTest.date) && Objects.equals(this.dateTime, formatTest.dateTime) && Objects.equals(this.uuid, formatTest.uuid) && - Objects.equals(this.password, formatTest.password); + Objects.equals(this.password, formatTest.password) && + Objects.equals(this.bigDecimal, formatTest.bigDecimal); } @Override public int hashCode() { - return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password); + return Objects.hash(integer, int32, int64, number, _float, _double, string, _byte, binary, date, dateTime, uuid, password, bigDecimal); } @Override @@ -385,6 +410,7 @@ public class FormatTest { sb.append(" dateTime: ").append(toIndentedString(dateTime)).append("\n"); sb.append(" uuid: ").append(toIndentedString(uuid)).append("\n"); sb.append(" password: ").append(toIndentedString(password)).append("\n"); + sb.append(" bigDecimal: ").append(toIndentedString(bigDecimal)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/website/core/Footer.js b/website/core/Footer.js index 14a67c4727..87013fc63c 100755 --- a/website/core/Footer.js +++ b/website/core/Footer.js @@ -55,7 +55,7 @@ class Footer extends React.Component { rel="noreferrer noopener"> Stack Overflow - Chat Room + Chat Room