diff --git a/.gitignore b/.gitignore index 8aee57b0b87..18d2a7a1027 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 cd195bb8c8d..5a7f9967c36 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 c74d2e1993f..97798295464 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 d0273a9d76c..7f2c734b689 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 e089c52abbb..e309802ed3a 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 7a5fc8d8cdd..23cce9c0e71 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 cad4be6995e..409911eb113 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 410ddbab399..57fae03ab11 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 dbdf48b2bbd..755a560a1f1 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 45179767ece..73b56bcf8fa 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 f426dba223b..d0352276800 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 b1320abdb0a..8779e1a0412 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 ab01d44cc53..531cf295d64 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 f8002951208..d5aceb82af6 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 c5671fe6653..eb9920ef67a 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 00000000000..560697ffe1b --- /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 3e6ce24e19b..7ccb70bdf9e 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 7cdf880edd7..262a9355c5e 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 ac4abee691e..2ffeb59cc7d 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 00000000000..b7a8ee78257 --- /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 6dffd55f255..b26bd8be10e 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 78d31c8573d..65def911683 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 8d338ebfef8..1bf741aad86 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 4c18a6165c9..54e62dcf208 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 9b690b12da5..ca5e09b8fbc 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 9677fe62392..03e2d0dd1fc 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 264842d4bb2..719ed37accb 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 7cd3720b738..691a6fcdf6e 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 16d8125b46c..99080ba9c08 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 099df0a5fd3..e0772f8aeae 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 ec6ee32b4b7..df86fb42470 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 634b674ab82..b19be19ac1f 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 e86240104fd..ffbf4f24cd8 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 f437f35e060..d22c9350262 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 ef235748f26..fa6d51ffb00 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 682ca581355..9a410941b01 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 623d6c5dbb4..98a0226afa2 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 c2df323731b..95ac8966391 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 912b172fcd0..361c64a3929 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 8bb5401e3c9..5eb052d1a54 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 04a626eac77..ddb9aa02248 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 70f251d33cf..17e89949d45 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 f04d4ac1379..d48702a62af 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 f7c08659665..4b2d39877d3 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 5351c1fe2d4..da9f4f14192 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 6617dbe14cd..8141e6f0516 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 b032ac3beed..2856fd67380 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 cf9d78ed5dd..3de0cbf5b91 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 ec03a45490f..7ab3d8bfef3 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 00000000000..c82a819bd94 --- /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 8bbb27912a4..c3f172713b4 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 889cad95432..35195ca1dc6 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 665cd9b85d4..ec30ae275e1 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 42251432c29..bb969ae172c 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 299dcd661da..e8f9fd6feca 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 a0a92778058..0543ff391eb 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 0df25cfd159..6c0c0c13454 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 4f5d3c3af59..71dd5d61133 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 fc23117e458..33d2007a3b2 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 1422504281f..759ce8fa1ce 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 c1b0d618d0b..e6d906804f9 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 96aed20d0a0..a5733e22fba 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 9e1142970ee..99d255c54db 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 9df586c08cb..0f826eb387b 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 6bf2a0e4bfb..705eb6aa9d3 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 febdd5d11bf..a92022e83ae 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 946b3195611..04091222022 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 1e9edaec8c0..ef60c22df43 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 f01cd1fc70f..4471072ec2f 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 48f28b25d1b..3dea3928279 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 76ddf4325e2..8bafe1ea9a4 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 fdda0dc7ede..588239f5c88 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 d5d69065495..ef2e32af36e 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 d72e0b1fe81..621228c2a7a 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 47b5e19323a..1c133a74353 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 4f67eb38823..0af339a0da6 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 d190566bac5..4318c37628a 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 e3cd4fa751e..1815ab926e1 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 45327813288..c3fd7802393 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 e5dfb17180f..40ab42d2efe 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 0d4d1ad995e..cf02f243950 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 21b00d3b91e..78f7e5786af 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 b35ffe66264..8bca88942d3 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 cf71f237698..20aa961eaaf 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 a2fd9f30ebe..17d2c1261a9 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 4fbf5d9cf1d..c8651f58c58 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 00000000000..1f328b17165 --- /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 00000000000..125ef995e5e --- /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 00000000000..25a7c650954 --- /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 00000000000..1780a159b0a --- /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 00000000000..a1e9d0a3d2e --- /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 00000000000..e3c07ab38a4 --- /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 00000000000..f3389b0ef03 --- /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 00000000000..17d17df35c2 --- /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 00000000000..91f36687323 --- /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 00000000000..c3fe390239c --- /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 00000000000..ac16c425770 --- /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 00000000000..176088c512d --- /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 00000000000..fa97e4b1172 --- /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 00000000000..426c99b81a1 --- /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 00000000000..90433afce82 --- /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 00000000000..cef6b517618 --- /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 00000000000..b86c7ac3405 --- /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 00000000000..265b492d2c0 --- /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 00000000000..64d4830d4b8 --- /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 00000000000..39e3e37a965 --- /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 5a6cb16c1ac..67c0f473b50 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 a822ae28ae5..2ad6f17868f 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 239c88e4473..01d7882fa98 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 00000000000..a49415db26d --- /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 00000000000..2e4f114cc73 --- /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 868f98f7ac7..a1141597d0e 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 08bb16e1698..9784bdaee67 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 00000000000..8c8aebc852a --- /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 00000000000..336ef2d55cf --- /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 00000000000..8084cc0cf8f --- /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 00000000000..c0b479a470f --- /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 00000000000..9441f3981f6 --- /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 00000000000..18050015f8c --- /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 00000000000..c57b01778fd --- /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 00000000000..9e7afd0a272 --- /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 00000000000..ab63b07a142 --- /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 00000000000..ab071890fc8 --- /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 00000000000..ccd1678a5e1 --- /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 00000000000..3cdc862b522 --- /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 3391efe3bc3..65ea95b6b5f 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 1e403bc86bd..1ccf6cc4589 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 8938a5ad3f3..d11a2ce7c89 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 0cece22bb0b..1cb58bb49e9 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 e77b8b2b2ba..5ec0214d6c9 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 0097d0702a9..a60f1baf24a 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 feb6a0b317e..fe88e433f20 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 91b9f80bdf1..8c3a1d5e361 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 526665f2717..f5f0e5119ef 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 98a892cb927..adc72e54879 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 edf76be03bb..dd650b37d7f 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 e955eb05707..0f02b445dfb 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 7dc8e01fa62..082f4bddc43 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 00000000000..6ed39521f66 --- /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 00000000000..7e89f83ef26 --- /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 00000000000..ab20932b289 --- /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 00000000000..46dc1afefc4 --- /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 00000000000..447aa22cacd --- /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 00000000000..bd1eaddcb40 --- /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 00000000000..94ad6336f9c --- /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 00000000000..c251879b104 --- /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 3e8d070ef9f..364c60419c4 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 bab80595cc0..b9211855b8b 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 b8548fc548c..f71be5049a5 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 33255f983a4..e147c0d1ef5 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 57da60ee261..73504161a16 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 15fca73053f..bd53174f179 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 adac7f8cacb..3092696f574 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 53e16de1677..8ecab671c21 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 59e86fe445d..963faeb2294 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 26ae76afc1b..8c00cbc2811 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 a53037e0f8f..fe48dff5370 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 491b4123044..12281dc29f5 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 77fb953bb34..55cb8025f21 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 9a7d4a03b4a..73d734f75fa 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 d424cd93e96..fea5233ee26 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 00000000000..861e84ca8d4 --- /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 8eb0885bd8b..f91139e7aae 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 0a055fed673..52725e7e123 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 805561cfb14..ff8078abda1 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 b3a80c42620..8a7a6a7793d 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 75e838eb3f9..b68958ed690 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 b3a80c42620..8a7a6a7793d 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 75e838eb3f9..b68958ed690 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 0d921285ba1..92d7d1e0104 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 b8735b8587d..31193ac3960 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 2adfc09c8a3..2139c301745 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 00000000000..78daa43da5d --- /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 1d77c96e46a..f2630175093 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 00000000000..82daf74108e --- /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 00000000000..8855b00d9e3 --- /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 00000000000..b4388d1e7b3 --- /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 00000000000..c0374e8c8b1 --- /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 3671469c7b7..b978022e565 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 00000000000..dce22ec58b2 --- /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 0e610e7a67a..ce4531e372d 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 00000000000..df2b4686f13 --- /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 a9c37e4808b..ea34b3713fa 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 6c0aca0ac84..00000000000 --- 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 869d7aa4192..5a54b558f3f 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 7da448adced..1bb5d817563 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 d1a8f58b388..c3a2c7076fa 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 b42cb2731cd..b976d6549d5 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 0a1559e1c4b..94c46a5bb5d 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 392ab5c46ef..731d5c00f42 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 be67cb585ed..fcae0074e6c 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 77dccc27684..b3fd6a6e669 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 e17fc1816ee..27fa46576c2 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 b3b81ad0824..22f01da0a5c 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 6711f4f4fcc..c1633f9cae2 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 f9a276c529f..3f9349a9b9a 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 8442b80bb44..ced3be2b0c7 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 8ddb18f24b6..c6de468fbfb 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 8a422eca9f9..e51025fcb74 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 37a46abf4fe..94c46a5bb5d 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 ee089a03cd7..4e8c3332b63 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 dc9628fbd3b..7509fd01c5f 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 37a46abf4fe..94c46a5bb5d 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 ee089a03cd7..4e8c3332b63 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 85f31cd081e..1c714c2ccae 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 d05a1ba4cc1..baf222ae11c 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 49b68e11b7e..a322bacdfba 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 6fbc9899d34..d16b93f7ed0 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 46623d752c2..10d2203f1d7 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 5908865df53..4926ee6c830 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 37a46abf4fe..94c46a5bb5d 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 c4b9395d4b6..3b5bf7a9842 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 bd54806dd0e..94d0029825a 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 f7b902d0900..ea30abac90a 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 9e22f5a2fd4..7004da87843 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 26dcada607e..738307efaf7 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 1b061a1972f..c5a76a97857 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 4c62aed5282..aec1767bf9f 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 7c9b95378fd..7aaee78ff4b 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 d7f942bda87..dd361e262c9 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 706fb1494b0..caccc26d76c 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 26dcada607e..738307efaf7 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 1b061a1972f..c5a76a97857 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 4c62aed5282..aec1767bf9f 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 4f532e81f62..208d7a57dc0 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 b4d7458b4b0..1450018366b 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 29f68d18ec7..d138e921902 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 3a79427c4f6..6b29ee3a8a1 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 4c62aed5282..aec1767bf9f 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 29f68d18ec7..d138e921902 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 4c62aed5282..aec1767bf9f 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 aa99cf80428..3e8fa656473 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 29f68d18ec7..d138e921902 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 aca1ee54756..a23046886f2 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 cfc1aeade6f..427c603328b 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 44284eee822..44798b9125f 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 84bd1b57eb5..8fcc9ffc1d2 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 29f68d18ec7..d138e921902 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 7efb89bdfe0..b81f6e210a3 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 ff59c313fc1..ac8809b98d9 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 b848f946e5e..9f9ce6cdf76 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 a5f01ab6f06..35031940ba2 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 29f68d18ec7..d138e921902 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 a9997df35f0..33a470f9386 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 4c62aed5282..aec1767bf9f 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 29f68d18ec7..d138e921902 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 ff59c313fc1..ac8809b98d9 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 29f68d18ec7..d138e921902 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 4064f8ee2fe..7efea2c8575 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 29f68d18ec7..d138e921902 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 36fe5897683..b1ad2d012fb 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 29f68d18ec7..d138e921902 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 36fe5897683..b1ad2d012fb 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 7b20123a77a..0fa0a028d25 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 9b2cf7539f3..7b4207991b7 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 29f68d18ec7..d138e921902 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 0ef6c55d6f7..829d0971d39 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 4c62aed5282..aec1767bf9f 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 c9ea3c3ea7e..6345e3b0f2d 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 29f68d18ec7..d138e921902 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 6f26a929b9e..ecd05624e46 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 4b2417df938..6081aaded21 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 29f68d18ec7..d138e921902 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 4c62aed5282..aec1767bf9f 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 d9f86ceab75..c1184d7d719 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 271e7db17b6..9391fe2efaa 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 29f68d18ec7..d138e921902 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 66b92273ea7..329612aa192 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 4b4c4b0f7ad..097e3b816e6 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 7fbd367c8d3..6070a723366 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 e0ba78560f9..0dd2611317c 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 29f68d18ec7..d138e921902 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 1ee0ac8e916..7c072f8bd55 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 f91b09215d9..7f75bcaa103 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 8a38e09d7f5..5a8bdb5e054 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 700e77c21df..545688cf09e 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 29f68d18ec7..d138e921902 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 81b82bc2708..5ba1a7f38a2 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 f91b09215d9..7f75bcaa103 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 29f68d18ec7..d138e921902 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 36fe5897683..b1ad2d012fb 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 29f68d18ec7..d138e921902 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 36fe5897683..b1ad2d012fb 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 29f68d18ec7..d138e921902 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 36fe5897683..b1ad2d012fb 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 78e71edb30f..1d51eb1193c 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 662db0083b5..ebaefd90fcc 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 4602e4c8915..54e985acc85 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 ee9a7271968..a527825f12d 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 2b51c08597c..1637b07938f 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 29f68d18ec7..d138e921902 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 0171470141e..d200a8d95e9 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 ff59c313fc1..ac8809b98d9 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 89fa3054a2a..d0df4b552e5 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 87aad136e16..978d4d3a808 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 89fa3054a2a..d0df4b552e5 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 87aad136e16..978d4d3a808 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 89fa3054a2a..d0df4b552e5 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 5c0304d6d49..9462fa56843 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 89fa3054a2a..d0df4b552e5 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 5c0304d6d49..9462fa56843 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 51ab6ed9398..3f05f17779e 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 96432c658ad..eff7d12a4ab 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 e949395ce4e..76b9cf068ed 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 dc2f8b0b0ef..145683fe578 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 b21e51bf8d3..6c5ce642e78 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 7d52e737d49..dd092dfd707 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 ada15fee7a1..6d5c231ccc8 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 426a0e51592..1fe92af826c 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 38be465c021..81cc2b0940b 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 d870b69e5e7..3b4dfc22abd 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 f9ef87e13fb..1d97954c460 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 dfd63806da9..df835a5d968 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 ada15fee7a1..47766821f18 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 426a0e51592..edb16cc1270 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 abf5219de33..af6dcb45604 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 d870b69e5e7..8015b6dab72 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 f9ef87e13fb..05dc7c9afef 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 dfd63806da9..537b01d3c27 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 ada15fee7a1..6d5c231ccc8 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 426a0e51592..1fe92af826c 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 2e9074a650a..a5478a61626 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 d870b69e5e7..3b4dfc22abd 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 f9ef87e13fb..1d97954c460 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 dfd63806da9..df835a5d968 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 3a1bf2c21f3..f58434c19f4 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 3a077d8fc9b..64c92268370 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 0a033f4bc4d..263f5b985cb 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 cd3ffebf82a..4064989ecee 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 5fbff73798a..7eb1d0ca466 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 0aae2a4433f..560ef5b7ee4 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 e8371d21997..289de7780c2 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 bb2a810a14d..f4e97f133bf 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 b857eb5693d..35b86ad99a3 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 841e9b95c06..b0ed9bd6664 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 678a69ed1b1..3af0db1f65b 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 ec4e8cbe34e..a60571f1cc0 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 47c25f4415b..6fff9f94126 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 bf3eedd8207..9bb81740fa7 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 3b9dae89a9c..c6749189cd3 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 2ca2e7603a9..cc56a6f2486 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 8cf27800717..1c611849e2f 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 f8e9796bea8..aeb7e8d98da 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 341ea6af9ef..c10f1d6841b 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 1d5575e0b23..0b13019e9fc 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 cffb5ef289e..8806d582382 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 7abdfe35ee3..c5f0689cf44 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 fe9f05b1c8b..d565da78df5 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 44302832092..3e2b09eb7bd 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 722dcd9f306..41789295f17 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 4ec5b633c18..69919acf340 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 0d7e229a885..f6d27100011 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 d199354f734..5f024e46a2f 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 d677f766698..c07ee193cfa 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 b4576165ddb..b3c661d7ffe 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 737718d5d1a..0644327a404 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 bb79ae32986..556a425e80c 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 bd417582bd4..574f95c6207 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 788418bfd41..712d46ce2e2 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 33dc1ea1632..1bb04c1b11e 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 e7a3ec4990c..71934867237 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 b137503a749..720405c2183 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 0937f1b7b73..0ea261e9432 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 6c289b0e375..2e9e490d3fb 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 ab5c5ee0a39..0c2935a09fd 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 b34abb7b77d..c1cd9640268 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 e1495174a7f..93b132a74c5 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 1392dd720d9..cb71a88dd70 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 7d5476e6540..332b1fe8334 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 2e5058a321a..7c2715088ed 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 21e47342396..c9bec236499 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 a9d4bc3ba09..5a970f205f9 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 a391d352917..52de7747e1e 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 7a649d745f5..19472117a14 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 31d92e2a750..4c15cd852fe 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 c27d6394dbe..1451cdcd6af 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 479c313e87b..0e97bd19efb 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 8f84fade2fb..2a5a1f6c149 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 7ed4ba541fa..e59166a62e8 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 8d30565d014..8bdbf9b3bcc 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 7e5c1e31649..33b2242d703 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 f727487975c..81de5678072 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 67f017becd0..510dff4df0c 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 c4c1630250f..5fc28b6c1ce 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 5aa5443d06f..94280a71234 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 31d92e2a750..1bf152e6828 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 a5601691f88..ee6036eb2f4 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 b5f7b22d34c..c21210a3bd5 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 bab07ad559e..3df277a30fa 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 06d413b0168..cba01706898 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 00000000000..5d75342bd8e --- /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 9e15090300f..15185316fea 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 00000000000..7abf11ec68b --- /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 fc82b9a827d..7ec864de09d 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 bb334f9925b..71f302f8d9f 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 8442b80bb44..ced3be2b0c7 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 efe3e5c3789..00000000000 --- 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 45d51fe90b8..905c4d34490 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 01d055616eb..1c429821437 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 0f14ef6739d..4b41defbc5a 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 f054a0a8ec7..6811a990bbc 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 bd1b58aa9ee..29bbead6c35 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 c80423baf48..db3f4d2561d 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 c8de4c6c277..7a3fb67c126 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 df3a9815aa0..7afd6306dcf 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 fa0c3f4d320..459ff6a3ca2 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 00000000000..57ca211a0f7 --- /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 96fd17471f1..1f2bb89aa33 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 ec5fa2a9a28..25e165ed7b5 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 e04ae6f4c04..5de262b864d 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 f5e7dc23d23..70675c7d3ae 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 d5082c17ce4..efa4d6a09d1 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 9b3715f8f26..55ba58e1e20 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 1d4e26e8733..32a59a5bc52 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 96b92ade018..362023c8460 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 a61c1fb70e8..e01ff7028f2 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 d5c0162b088..a2ce846a64d 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 43181962714..4f9f3a12bd4 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 d49c620abc1..2beb8772830 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 f87d00b168a..7c67bcf59d7 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 5098375a2f0..adcb8690dea 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 e94eca3e402..5eeafb5ac7b 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 2a19eddd5ed..b496a13fe98 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 88260a5e3d9..0a8267293dd 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 347ed14927e..bf117a1317d 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 bac11b0e138..907e0f6ce2d 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 4cde17963c5..7b133a38714 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 14c4eedcc59..61ef9958fc4 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 7940637ce5e..cc082b5b357 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 ad0e8c3d9b6..fe8355e7def 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 a2f3a3e4a78..60d4f64e9c1 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 4ea9e777f68..0ec5096c0ab 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 70e1611a237..6411e70e07b 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 86e926ca153..e773e2cb194 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 a7936dc37ec..8b1a5143e01 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 8744de38344..2ef64381ea3 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 14b9a656175..388989603a9 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 d6d975f16e6..17179143504 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 ac8d5626fbf..670e5d9905e 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 cec843833ad..f110d020825 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 3c8096b7c45..0ba8ad99b99 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 9d1814c670f..59c5429366d 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 70741767c49..cb782561873 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 f1c8220033c..7b866df4c89 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 f3887c8a326..70c9e7915fb 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 d042dbe3ceb..d9cdd3d0c60 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 00000000000..36c2bd3da19 --- /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 a3b12d20c6c..07db6522931 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 93f2be29861..96d93afbd2b 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 9eb9757a1d2..83ab1e65054 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 00000000000..01427c702be --- /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 2fbb5adb76b..f5e08704a00 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 08d1ac6432b..a27e05e14d2 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 96620b8b549..661bb21a380 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 382f0cc5fc5..1dcf8d75532 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 4d9c57350be..3657b04b1e6 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 86988b6d42e..1d5e7c2915e 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 fc2cbef35f1..e8877b915ec 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 46707c77b70..ba20d7f811b 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 472e36e1682..50bfff0869b 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 00000000000..31c9c41755d --- /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 00000000000..31c1ebeec5d --- /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 4cb90d0ed92..08a201b854d 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 75bf81a8de0..a05c3e902c5 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 6c4e083d1cd..10c5ecef423 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 4f38fbd6e17..f536f5ca288 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 31d92e2a750..4c15cd852fe 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 c27d6394dbe..1451cdcd6af 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 31d92e2a750..4c15cd852fe 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 c27d6394dbe..1451cdcd6af 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 46f739ae786..6c1ba0be631 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 18c16907a0a..2b8a7666c84 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 ebe2564c921..fda87343006 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 49be2684512..678310b4a47 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 479c313e87b..00000000000 --- 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 8ef695226a9..00000000000 --- 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 f2319088324..00000000000 --- 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 6aa106405a4..a9d37c560c6 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 479c313e87b..00000000000 --- 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 2ccdd989058..46b06cf9bbe 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 00000000000..f78404453cf --- /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 00000000000..1cb8e0b83f1 --- /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 00000000000..6e8157cf0e5 --- /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 00000000000..6105ed87f9d --- /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 00000000000..6a3d69dddd6 --- /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 00000000000..d5440cb4df0 --- /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 00000000000..cb13d23efc2 --- /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 00000000000..e69de29bb2d diff --git a/samples/client/petstore/rust/hyper/petstore/.gitignore b/samples/client/petstore/rust/hyper/petstore/.gitignore new file mode 100644 index 00000000000..6aa106405a4 --- /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 00000000000..83a328a9227 --- /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 00000000000..67fc43707a9 --- /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 a1149b09036..83a8b77584e 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 00000000000..2d5c7eb5a64 --- /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 00000000000..a76d822525d --- /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 00000000000..6aa106405a4 --- /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 00000000000..7484ee590a3 --- /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 00000000000..83a328a9227 --- /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 00000000000..22761ba7ee1 --- /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 00000000000..0e17417c3d2 --- /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 00000000000..1383eecfd30 --- /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 00000000000..caf46321830 --- /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 00000000000..e84136389e9 --- /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 00000000000..8442b80bb44 --- /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 00000000000..6105ed87f9d --- /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 00000000000..79762a1437c --- /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 00000000000..b1894d69ef2 --- /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 00000000000..cb13d23efc2 --- /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 00000000000..2d5c7eb5a64 --- /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 00000000000..a76d822525d --- /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 00000000000..8762207b5b3 --- /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 00000000000..abd6582cc66 --- /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 00000000000..6aa106405a4 --- /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 00000000000..7484ee590a3 --- /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 00000000000..83a328a9227 --- /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 00000000000..22761ba7ee1 --- /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 00000000000..97c0f07897b --- /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 00000000000..8bf849adb68 --- /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 00000000000..0b0273e4346 --- /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 00000000000..8442b80bb44 --- /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 00000000000..2f76997d319 --- /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 00000000000..107d558aa4f --- /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 00000000000..487e5d3af60 --- /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 00000000000..3b70668f6fd --- /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 00000000000..e69de29bb2d diff --git a/samples/client/petstore/rust/reqwest/petstore/.gitignore b/samples/client/petstore/rust/reqwest/petstore/.gitignore new file mode 100644 index 00000000000..6aa106405a4 --- /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 00000000000..7484ee590a3 --- /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 00000000000..22761ba7ee1 --- /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 6d66b8f7c7c..7a2aed735ea 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 d8591a2cb9f..b83be74204c 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 00000000000..8442b80bb44 --- /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 00000000000..c1dd666f795 --- /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 00000000000..6aa106405a4 --- /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 00000000000..7484ee590a3 --- /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 00000000000..83a328a9227 --- /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 00000000000..22761ba7ee1 --- /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 00000000000..60c968a7cf2 --- /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 00000000000..097d18b77d0 --- /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 00000000000..ea01d010f01 --- /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 00000000000..e84136389e9 --- /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 00000000000..8442b80bb44 --- /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 00000000000..2f76997d319 --- /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 00000000000..6aa6915560f --- /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 00000000000..9404fefb7dd --- /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 00000000000..3b70668f6fd --- /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 00000000000..c1dd666f795 --- /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 00000000000..8762207b5b3 --- /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 00000000000..abd6582cc66 --- /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 39175e119e0..00000000000 --- 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 afa63656064..0e97bd19efb 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 85cc57e381b..71ad618e31f 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 9aeea7d8d61..658f7fb8fe3 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 716625d5d6d..534b3a4949a 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 e695e1b4190..7a1e796b70d 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 6b9b04d3745..8b6eeee0bb5 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 2378d8c5fe0..3dfa61094de 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 448cd25f089..2553aeb3c87 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 ff715e3eb29..155a86dcf11 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 81370edb740..0ef406429cb 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 8d609a55522..23ba7482150 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 fe4daa9c359..83055706fd1 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 e5df29f2467..1f78a72e57b 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 e46602f84f4..30dfbf44191 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 ef8eb6b4a0d..0d33ce64753 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 83a328a9227..0e97bd19efb 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 f1823fda9ab..86748c63d90 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 50531fd25aa..a6c9a1f3d45 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 1073935592c..d1f658b08d8 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 896f1511805..39525475748 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 71949b335d7..98ff7b54742 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 efeb64468a5..24d0d35e9dd 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 04ad02a5ce8..60ce28c66a2 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 111d5a3a8cb..0a333db0d10 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 24c128daade..2fa32b9e0f3 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 ca05906d420..fb76bbed26f 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 3e68bb5d4a9..7bd1267e95f 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 e87ce399c7c..25161165865 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 3e86a1e892a..ec15c4176b8 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 2ec3cb14fb9..38a301a1db8 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 02082525ae2..9fdc9c73873 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 8b90d8471ea..b163f6038fa 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 a411b774910..20c3672fbaf 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 dea3ebc1be2..a54673cca61 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 85a0685748e..b840138ccc1 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 60bda83d2ff..398ca827c2b 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 e1b61204965..e1ac31bf327 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 344a048cad8..6195809c5db 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 18b83a0e732..2be2ce0106f 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 23571383bae..747a471a55b 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 fd049edac1c..9cc105a8205 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 df62e12cabd..e0928089ab7 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 d50e941fabd..dea099e257a 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 17d0d9f1506..4964f1eebfd 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 8c107066772..02c36a76b7b 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 12fcbe92d33..5705737e49d 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 b318b1ff484..596c1bdc41f 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 deaee34ad87..59e0bbb2b0e 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 a7b610374d6..bd27355c1ec 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 3e86a1e892a..ec15c4176b8 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 bea53771841..656584d5fee 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 df276491a16..bb5a9ffc808 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 6b8baab300a..12a1450811b 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 00000000000..2243fe6e27d --- /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 c24f97366d1..62fe7dab13d 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 00000000000..2243fe6e27d --- /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 ae80cfd366c..973d79a75d2 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 1ec7517ebaa..5c049b5d2a3 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 3680284d666..c0ca87ce2de 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 5ab6f3adf4f..b9d6266ecd1 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 5ab6f3adf4f..b9d6266ecd1 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 00000000000..2243fe6e27d --- /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 43fd8e36c03..b7db85d42cc 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 43fd8e36c03..b7db85d42cc 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 b93c795a579..4fd31d11f51 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 08ecb7c23dc..180aec08bb5 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 8442b80bb44..ced3be2b0c7 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 83a328a9227..0e97bd19efb 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 f1823fda9ab..86748c63d90 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 50531fd25aa..a6c9a1f3d45 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 4198e765465..583c6ead867 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 896f1511805..39525475748 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 71949b335d7..98ff7b54742 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 efeb64468a5..24d0d35e9dd 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 04ad02a5ce8..60ce28c66a2 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 111d5a3a8cb..0a333db0d10 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 24c128daade..2fa32b9e0f3 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 ca05906d420..fb76bbed26f 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 3e68bb5d4a9..7bd1267e95f 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 e87ce399c7c..25161165865 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 20bd6d103b3..c1987c40880 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 602a2a6d185..f51714718f8 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 8c1afe63fc7..a5a86abe0a1 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 f63957bc8db..befabdf3505 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 f74d94f6c46..55de2e05ecd 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 46d0471cd71..c0530dc0e5b 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 8442b80bb44..ced3be2b0c7 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 83a328a9227..0e97bd19efb 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 d09a24cb3d8..9835749b67f 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 620913bf16c..8648503b218 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 3fdda64aa25..d0c22ac8696 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 a9c64e897b6..55d39cf88fd 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 502f44af60a..05b2e4ce463 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 793c47447ea..3c10309130f 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 04ad02a5ce8..60ce28c66a2 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 111d5a3a8cb..0a333db0d10 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 d6202ace079..b07e60d99e3 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 ca05906d420..fb76bbed26f 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 3e68bb5d4a9..7bd1267e95f 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 e87ce399c7c..25161165865 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 91da0d53a01..355d4c9f5f0 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 2ec3cb14fb9..38a301a1db8 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 02082525ae2..9fdc9c73873 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 8b90d8471ea..b163f6038fa 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 a411b774910..20c3672fbaf 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 dea3ebc1be2..a54673cca61 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 85a0685748e..b840138ccc1 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 60bda83d2ff..398ca827c2b 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 e1b61204965..e1ac31bf327 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 344a048cad8..6195809c5db 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 18b83a0e732..2be2ce0106f 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 23571383bae..747a471a55b 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 fd049edac1c..9cc105a8205 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 df62e12cabd..e0928089ab7 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 d50e941fabd..dea099e257a 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 17d0d9f1506..4964f1eebfd 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 8c107066772..02c36a76b7b 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 12fcbe92d33..5705737e49d 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 b318b1ff484..596c1bdc41f 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 deaee34ad87..59e0bbb2b0e 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 0b0d0d7a974..6c368e72337 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 91da0d53a01..355d4c9f5f0 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 c058ebf80b4..6e4730ff2e6 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 00000000000..bb5a9ffc808 --- /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 6b8baab300a..12a1450811b 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 00000000000..2243fe6e27d --- /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 1704e72da48..69e0045b365 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 00000000000..2243fe6e27d --- /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 075a5985370..5bdac20a177 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 08968b494e6..315eee1ef8e 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 9e0a7d4afaa..9c68a38d70a 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 52a643ada6e..59f45a2a869 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 52a643ada6e..59f45a2a869 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 00000000000..2243fe6e27d --- /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 436aa2cb9ed..6750422210a 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 436aa2cb9ed..6750422210a 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 00000000000..ee58f387beb --- /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 6c47b4c1b92..329063190b5 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 9fcee5b9093..514ec061c2a 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 79751877913..5de11477461 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 8442b80bb44..ced3be2b0c7 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 83a328a9227..0e97bd19efb 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 95a72e26c15..60ba4967b6d 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 17a7f7a5c90..3b01a31b978 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 8e6840eeaac..474af3c46cc 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 fcbd3f3b002..8231330d1c8 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 6171b68c85d..b0e3d380fca 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 baeb80933a9..a50f0f0e9bf 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 04ad02a5ce8..60ce28c66a2 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 111d5a3a8cb..0a333db0d10 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 24c128daade..2fa32b9e0f3 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 ca05906d420..fb76bbed26f 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 3e68bb5d4a9..7bd1267e95f 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 e87ce399c7c..25161165865 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 3f1237fee47..00000000000 --- 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 ade4d8375fa..83d09b4381d 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 2ec3cb14fb9..38a301a1db8 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 02082525ae2..9fdc9c73873 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 8b90d8471ea..b163f6038fa 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 a411b774910..20c3672fbaf 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 dea3ebc1be2..a54673cca61 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 85a0685748e..b840138ccc1 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 60bda83d2ff..398ca827c2b 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 e1b61204965..e1ac31bf327 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 344a048cad8..6195809c5db 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 18b83a0e732..2be2ce0106f 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 23571383bae..747a471a55b 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 fd049edac1c..9cc105a8205 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 df62e12cabd..e0928089ab7 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 d50e941fabd..dea099e257a 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 17d0d9f1506..4964f1eebfd 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 8c107066772..02c36a76b7b 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 12fcbe92d33..5705737e49d 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 b318b1ff484..596c1bdc41f 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 deaee34ad87..59e0bbb2b0e 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 862a7234f76..2d9c418f908 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 ade4d8375fa..83d09b4381d 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 014854fad2c..32601008ce5 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 d6765d9c9b9..00000000000 --- 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 03270a0ae8d..00000000000 --- 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 5ec86f5a050..00000000000 --- 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 cd182cec017..00000000000 --- 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 2f405c8a0e9..d8d958078fa 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 6b92b4011d6..4ad0a2bc188 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 a46e74827c2..5a573a0de16 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 7d174fd7be5..f7cb99c8b02 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 b9b3ae2e8b8..d05726c7b99 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 d2ede7fb482..863636b7b7a 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 f75007f442e..6dc36add7be 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 125fe8863f2..570f8f00fa2 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 03270a0ae8d..17c8a9523e5 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 45160364396..85a5efa8fd4 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 341807c18cb..1fa7a67726e 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 7d040e7bf1d..80332dbc4f0 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 6f9ff8e4e45..b26f5b75016 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 0f6efdff4af..ed6b28a780d 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 ba729399b50..0490a69ba87 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 d7923769e21..33aa84fc51e 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 29897d4bdb8..bb1aa7e47df 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 239455a0f96..52bf93c5686 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 2ec47b31095..cb410906eca 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 73a8db79274..6fbd6355506 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 ee95e422e98..5693268d2a2 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 0e6a7da9cfd..a0f5c2fb866 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 46790ac8f66..ce0da6a7c62 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 fbee0bc5b8e..8cd6e28c3c9 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 edb449d467f..22e5cb02f98 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 08cd2dd263e..0d4b2fb7f9b 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 24fb5acc61f..149f8664342 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 f40fd84ff4f..922f20a6db0 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 fffd5881c34..c834f5be1b0 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 0932f568ecd..22dce3620b1 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 6ff65235dfa..88d59dbe31a 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 3ae138a8b31..430e4c6b550 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 648918e16fe..f17b52d882a 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 1386ba8a494..9193e3504d4 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 0b228b8a3f8..fc9b22cd7f8 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 42ef636ca68..70d4786cbb1 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 432f50d23b2..c5b0a9d6d10 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 de9f9ee9250..954fbf04b2a 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 6ba34b1fbeb..08caab43765 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 0d07788cbdb..362fc58a5ad 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 5f2a0219ab0..e41a36a1ae6 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 2d107dc49b9..a69147c8491 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 93b49fcfadf..b4b9b7ee902 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 d2c169c4260..d9010dd4331 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 61e3e6eb9d8..8682f1fb0ae 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 f270c3807da..db4cf210758 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 447d9e30ceb..13060767572 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 f063c6439b7..b62fa2929af 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 465a0b578c6..7474bdc449f 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 0d846b3d945..dbecf98ab36 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 24ce36840f4..27daf8d4dc8 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 5a362145b89..b57a63ab108 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 22931d09d58..0b23cc94b7a 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 8a1183a6310..1a07eb6e454 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 69d369a1d79..cf0bfed9dc6 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 df0cbbdcd99..b75fbf9162b 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 0b35a626e57..61969d5cfe5 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 253808bc018..16218a701f3 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 9c5ea9a6c64..e315d17103e 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 e1aef7c33e5..db0b0ab9218 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 22ef161a78c..d0571319418 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 a8609a9c688..2279400229d 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 abaeab1b8be..cf72519126a 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 c86560e51f9..fdf326ec623 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 2e7be595f8a..026a7cee009 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 45113c9b72f..d77e89022d8 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 2dbdc79597e..29ba8dedc4f 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 4c1d48274e5..98635e9748a 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 6ce5fd83017..adce8763a97 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 466de2bd047..f4fa0d2d5d3 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 fd7f2668609..b5ae3709241 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 18e549d9791..1a5e2f52bff 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 3790efd6476..0bc0a383471 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 5eaf9e98104..7e47389f725 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 77ac7303b43..51aa3f05049 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 552ce7dc2da..cf7e0b6b811 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 4f40fe14e34..43fede5aec7 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 a1199e9796f..f687d1145fd 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 8d455cae4f6..67a441204b0 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 964d6c66323..5b3efd82e52 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 f66adb29d4b..f430c90b819 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 39a3e4ba399..ce82df9bcc8 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 4d479b1e9a6..a930f0d456e 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 56877b27032..c6df6084e9b 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 79b0af4e394..a7f6450a327 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 f32fedb194d..44e37d9fb73 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 265e8774432..cf40b65e3d3 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 88c3e86dadb..9b1018b6100 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 96186c7ddee..bc49283fdb4 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 d466cce36f5..7681b14143d 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 5fb122fe5c2..a0fbdf5585e 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 deebf4b52e3..842f4afbc0c 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 aad97d65e1e..2d0d3485324 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 204a3b0775b..5139f0eccd6 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 9ee3b30ee56..2ce6f246a27 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 4c1e00f7476..cbfb57fcac1 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 4da8bb6eedf..22672964282 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 e53c709591e..b0d6927c968 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 5318f2c5666..1e866f88c0f 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 6a02ff41a54..c31ae746991 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 16b79ff4be8..f37bf762063 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 77a0b88137e..1715e1ec5e9 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 d760f2197f6..5cf1aa431fd 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 a8213b92477..3651dc9a005 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 0c6e7b2b242..5de452cabf3 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 b938aa1d6e1..1a1b5949845 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 fd465e73668..c2b5819a6c2 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 945adc3af63..01992f432d8 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 de65c27cfc8..50edf8481da 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 5a9b84b2db8..908941ff17c 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 8a54b7dcd1b..765cf1168d3 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 9648daf2c5a..65d05ec0f98 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 23bdbbd30c6..e75a38012e7 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 7f5b11a1843..a547a8f98cd 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 bd88886766a..7f3c333baa6 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 d765c9a45de..e09c499de26 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 b8000979838..ed2efbb16b5 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 c717147bd51..0d65b6cabd2 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 2d850974585..c7f6b1730cc 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 8f76a1407be..11af238a3b1 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 260f5a2bd82..930ca37762b 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 d16434d234e..792a0be29e3 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 90445f8d5ab..f31469e0065 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 8b01608a651..6e7a0c1a86c 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 ec05efda629..d2b16cab700 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 421659f71f9..8fb09071d5c 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 a7dc1b8e3eb..81ba59f34e4 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 f0e4a5d18a8..9e9b4ffd11b 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 2e6bd76c365..5b7b840b74e 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 33dfc6e8d4e..8adb57b309f 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 0c86a089aee..037df95a047 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 9f32c6b8ec1..785b1a97347 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 81d3075ab49..ad9eb4c96e1 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 81d3075ab49..ad9eb4c96e1 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 00000000000..2243fe6e27d --- /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 069a56a28cd..4e13d2c23fc 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 069a56a28cd..4e13d2c23fc 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 1d3f7e947f3..00000000000 --- 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 beb2a244183..00000000000 --- 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 2a0158805c3..00000000000 --- 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 e8cefe476bf..00000000000 --- 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 3feea2637ad..00000000000 --- 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 00000000000..c1c4a98b9a1 --- /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 d519839a47a..840598cf9d1 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 215216111e9..14d07786a91 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 79751877913..5de11477461 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 8442b80bb44..ced3be2b0c7 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 83a328a9227..0e97bd19efb 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 f1823fda9ab..86748c63d90 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 50531fd25aa..a6c9a1f3d45 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 1073935592c..d1f658b08d8 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 896f1511805..39525475748 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 71949b335d7..98ff7b54742 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 efeb64468a5..24d0d35e9dd 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 04ad02a5ce8..60ce28c66a2 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 111d5a3a8cb..0a333db0d10 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 24c128daade..2fa32b9e0f3 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 ca05906d420..fb76bbed26f 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 3e68bb5d4a9..7bd1267e95f 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 e87ce399c7c..25161165865 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 8442b80bb44..ced3be2b0c7 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 1fcb27ef1c5..1b59ed3ef08 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 4126b817ee9..52d6f3d2e3d 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 eec2074ab69..473d2e72316 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 1fcb27ef1c5..1b59ed3ef08 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 4126b817ee9..52d6f3d2e3d 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 eec2074ab69..473d2e72316 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 786513ad7d7..28a239690b8 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 ce75bed4fd1..008d458aca1 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 eec2074ab69..473d2e72316 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 1e5dc0803e0..3bd5d9cf411 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 f28cd54fc89..7738fe82ea6 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 eec2074ab69..473d2e72316 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 1fcb27ef1c5..1b59ed3ef08 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 4126b817ee9..52d6f3d2e3d 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 857f5143a6c..aa2ef615892 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 1fcb27ef1c5..1b59ed3ef08 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 4126b817ee9..52d6f3d2e3d 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 eec2074ab69..473d2e72316 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 1fcb27ef1c5..1b59ed3ef08 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 4126b817ee9..52d6f3d2e3d 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 eec2074ab69..473d2e72316 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 d3fb76d4a5a..50e5ef8303a 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 0131e39e7f2..e943ad7a582 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 6d19eabc0a7..2acc326108e 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 eab57a38e45..6443289f02e 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 ceaabe7df48..b9396dae34f 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 b3e23fb8438..a9c57cdab63 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 73d5122442a..7aea0f15444 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 d3fb76d4a5a..50e5ef8303a 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 0131e39e7f2..e943ad7a582 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 6d19eabc0a7..2acc326108e 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 eab57a38e45..6443289f02e 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 73d5122442a..7aea0f15444 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 83a328a9227..0e97bd19efb 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 f1823fda9ab..86748c63d90 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 a5eea58a7a6..4adf2b418ad 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 75dea243957..d94614b34fc 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 e60b6154004..88a72b1c672 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 a775c2aaaac..a0b90ee6a87 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 04ad02a5ce8..dac40e9a31c 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 111d5a3a8cb..584de8c3d57 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 e1ecb39726e..516590da5d9 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 24c128daade..8bf1829ba80 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 3e68bb5d4a9..70449515842 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 e87ce399c7c..40856389035 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 0087792f206..3ce27fcd98f 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 51055d85739..7e4bb2c0cd5 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 a603717abe6..ae5327eda32 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 cc3992e748a..286c5a7a35b 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 c00da2ea9fe..d7f2ca15262 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 0f603627658..9ce70e0b95e 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 e11d38985a2..347da1187e0 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 d2926360403..905b80ae524 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 c5e89a15e00..b9642dfdeb7 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 42b32eee439..77f8897cdf3 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 a33ee92f226..d53cd948fe7 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 7f52bb9fef4..d96f8456680 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 67c1c22deda..d4cce19e6d6 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 6592d3f1eef..1248e645c60 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 8442b80bb44..ced3be2b0c7 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 d1a8f58b388..c3a2c7076fa 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 2866fd5cd87..7035339127b 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 8442b80bb44..ced3be2b0c7 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 2f81801b794..d99e7162d01 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 cf1793ec2f6..3738c4b9c91 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 8668dab3a7e..c09f7912cfe 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 17e020387e2..7540d01de36 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 c2c3f1f0eae..f97cb88d233 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 7d5ee7a1bb7..4367965e2dc 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 5f4435f56fa..ba590f165b8 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 0fe4589a5f4..22773e65057 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 7ade7d8cff5..5c9048466e0 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 263146cfd9c..214ef4b0cfe 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 a430c055932..d406e97bf71 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 72b27a54507..c9153d08cc2 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 1ce9e6ef431..05c1647fb79 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 ec9862cd175..c4cb55cb62c 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 059231f463c..f3280e75d4c 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 06245c42beb..7580a49224f 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 4a0cc69a783..09324d61a09 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 19cb002da7e..54a2bb6feaf 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 71b1b71365a..6085540ff7f 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 862929784c0..79b1a4c1018 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 c1d5645936e..db8cf07dd99 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 5c407365037..52ea113cc92 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 82e56661014..ab39639e0cc 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 4ac59867244..0dd32c21afb 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 d185226b0dc..e746da485f9 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 1e649d71f24..04eef4d206b 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 8f53541bd22..ce497df1fca 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 70484e68946..f2f290f4081 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 51f2137de92..ea1e3ae2411 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 0f982f05a80..ec48e39edf2 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 35dc49df571..b2725c7fc12 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 52eef17034a..f6776d3b7fc 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 ca95c5ee037..0497fa03e67 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 5768639b0b2..b09c724605e 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 6e2a75355bd..43f321eabcb 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 dc1096dc70b..bf1aa56a158 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 7d835a2af54..1551efc4c2a 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 b2e792c8e8e..bb071875225 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 72cb9d7ad64..1362bd97c1b 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 86bb11c5c1d..7bfd1d97c1a 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 7385bd95231..d14ad1907e1 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 d33f3bf2393..07459585e99 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 304f88c52df..21565c2cff3 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 8d84d271873..86ce0b25a14 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 b3fa7c45242..bf9e3e79960 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 9defa9842e4..c7345e41ebe 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 8b9a7e71846..f8435385ea3 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 b0c73cfb514..23abc63ce39 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 52bf083649a..325a4c5ffd8 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 91c53146843..6670a26a8f9 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 a4faf3fd57a..2bcfeb506eb 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 37e9e0eaef3..7596c7d495d 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 5301e72d376..d6bd140f13a 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 8d56cb65404..4d7048dadd6 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 ec4e8cbe34e..a60571f1cc0 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 47c25f4415b..6fff9f94126 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 bf3eedd8207..9bb81740fa7 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 3b9dae89a9c..c6749189cd3 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 2ca2e7603a9..cc56a6f2486 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 8cf27800717..1c611849e2f 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 f8e9796bea8..aeb7e8d98da 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 341ea6af9ef..c10f1d6841b 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 1d5575e0b23..0b13019e9fc 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 cffb5ef289e..8806d582382 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 7abdfe35ee3..c5f0689cf44 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 fe9f05b1c8b..d565da78df5 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 44302832092..3e2b09eb7bd 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 722dcd9f306..41789295f17 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 9a390f35667..4ab193f2136 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 0d7e229a885..f6d27100011 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 d199354f734..5f024e46a2f 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 e5ead162272..fa6a9041fcd 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 aba41fcce9f..0eb63a1075f 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 b4576165ddb..b3c661d7ffe 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 db192136805..da6c01a0414 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 5710444d4fc..caca206812a 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 62ba22db48a..230d2027c2b 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 1caeccee0da..989f0974a7f 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 b55dfd64ada..eb26c91d58f 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 29e952fa372..1ccf2c47c53 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 1ef3fe246e7..85f51f4760c 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 f01c690cd00..27d31fddd45 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 737718d5d1a..0644327a404 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 bb79ae32986..556a425e80c 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 bd417582bd4..574f95c6207 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 788418bfd41..712d46ce2e2 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 33dc1ea1632..1bb04c1b11e 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 e7a3ec4990c..71934867237 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 652c7ca3c69..c3167233715 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 b137503a749..720405c2183 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 0937f1b7b73..0ea261e9432 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 6c289b0e375..2e9e490d3fb 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 ab5c5ee0a39..0c2935a09fd 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 b34abb7b77d..c1cd9640268 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 eeee6e5a6d5..c08a3b63f7b 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 1392dd720d9..cb71a88dd70 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 21e47342396..c9bec236499 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 a391d352917..52de7747e1e 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 a8383d805b5..cba22407dd0 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 ebe2564c921..fda87343006 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 c5b0f75fb07..e08b704631a 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 d1a8f58b388..0e97bd19efb 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 191b60b7712..00799608e73 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 00000000000..ab071890fc8 --- /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 00000000000..7484ee590a3 --- /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 00000000000..0e97bd19efb --- /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 00000000000..e26976729b7 --- /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 00000000000..607db898bff --- /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 00000000000..9356b9ac120 --- /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 00000000000..53025caf26e --- /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 00000000000..f84ffb76b22 --- /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 00000000000..d30fe21fff5 --- /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 00000000000..82c9a05e19f --- /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 00000000000..2c9226f8abf --- /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 00000000000..0e8e072b8b5 --- /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 00000000000..35f1ddf7157 --- /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 00000000000..42c51c93a66 --- /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 00000000000..d1aefa1cfb9 --- /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 00000000000..913aff5bc1f --- /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 00000000000..13ea7dde150 --- /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 00000000000..63d1bfcd136 --- /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 00000000000..aed7bd6288f --- /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 00000000000..866d74e8d9e --- /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 00000000000..8d5c9f769b1 --- /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 00000000000..0917e14410f --- /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 00000000000..3e4e1996b3e --- /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 00000000000..4c77e4c8a54 --- /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 00000000000..ccd1678a5e1 --- /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 afa63656064..0e97bd19efb 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 8408a25602e..aec008210d5 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 352c553e0c0..fca7987ef4c 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 42731ee69c6..c529ef85cdd 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 a5d1a1bebb1..4b31d698ba3 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 6bc290e74a7..f84ffb76b22 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 afa63656064..0e97bd19efb 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 0f512c75104..cfdfbaed080 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 00000000000..fbcf4ae661b --- /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 b25b5c3fe61..a088e6e6c48 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 2e6999c2f48..0c875077947 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 df7be9e7174..4c0b990e756 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 e01fd150a45..8528b94b0af 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 4c4f6b24a6f..d3100df48a1 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 970e4b2ebed..f68bfe9b733 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 e58cb7798bf..746a6582741 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 d86b83474dd..7132d9908d6 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 4482ec16b70..ccb16e949ad 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 d86b83474dd..7132d9908d6 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 4482ec16b70..ccb16e949ad 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 e582bb62858..cdccca96bdd 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 e582bb62858..cdccca96bdd 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 e582bb62858..cdccca96bdd 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 e582bb62858..cdccca96bdd 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 d61abe165a0..5ced7087da8 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 5b6aab934e2..a347a27877f 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 119722f85c1..f3eba3816ed 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 a21ea8ed37e..07644fc8bd2 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 eadd8e74d39..aa13b7ca76c 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 bf6e8f53ecc..0aa8a67299f 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 7e6fa1e9584..8e53232118c 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 8fbf32d50cb..a7c17cae0b4 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 94fe11cc13f..0b7dd0772c8 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 7ce82141e03..c2ca28b3541 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 ba39164b5ae..d0b99e8bc17 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 f43bc1d659e..e0887e11330 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 f43bc1d659e..e0887e11330 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 7ce82141e03..c2ca28b3541 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 f43bc1d659e..e0887e11330 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 7ce82141e03..c2ca28b3541 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 7ce82141e03..c2ca28b3541 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 4482ec16b70..ccb16e949ad 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 7ce82141e03..c2ca28b3541 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 9a402df17ef..fc9b0feb4d6 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 7ce82141e03..c2ca28b3541 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 14a67c4727a..87013fc63c2 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