From cdc00769aadb46d4617fbec35daee643e95b7926 Mon Sep 17 00:00:00 2001 From: Mikael Lixenstrand <78344223+lixen-wg2@users.noreply.github.com> Date: Thu, 3 Jun 2021 03:49:32 +0200 Subject: [PATCH 01/21] [Erlang] return empty body for 204 (#9512) * fix handle_request_json spec res * fix client spec * make it possible to answer with 0 size binary for 204 * only generate empty bin for 204 * only generate empty bin for 204 --- .../src/main/resources/erlang-client/api.mustache | 4 ++-- .../src/main/resources/erlang-server/handler.mustache | 9 +++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/erlang-client/api.mustache b/modules/openapi-generator/src/main/resources/erlang-client/api.mustache index a2335745bbba..ddb5dee01389 100644 --- a/modules/openapi-generator/src/main/resources/erlang-client/api.mustache +++ b/modules/openapi-generator/src/main/resources/erlang-client/api.mustache @@ -3,7 +3,7 @@ -export([{{#operations}}{{#operation}}{{^-first}}, {{/-first}}{{operationId}}/{{arityRequired}}, {{operationId}}/{{arityOptional}}{{/operation}}{{/operations}}]). --define(BASE_URL, "{{{basePathWithoutHost}}}"). +-define(BASE_URL, <<"{{{basePathWithoutHost}}}">>). {{#operations}} {{#operation}} @@ -21,7 +21,7 @@ Cfg = maps:get(cfg, Optional, application:get_env(kuberl, config, #{})), Method = {{httpMethod}}, - Path = ["{{{replacedPathName}}}"], + Path = [<<"{{{replacedPathName}}}">>], QS = {{#queryParams.isEmpty}}[]{{/queryParams.isEmpty}}{{^queryParams.isEmpty}}lists:flatten([{{#joinWithComma}}{{#queryParams}}{{#required}}{{#qsEncode}}{{this}}{{/qsEncode}} {{/required}}{{/queryParams}}{{/joinWithComma}}])++{{packageName}}_utils:optional_params([{{#joinWithComma}}{{#queryParams}}{{^required}} '{{baseName}}'{{/required}}{{/queryParams}}{{/joinWithComma}}], _OptionalParams){{/queryParams.isEmpty}}, Headers = {{#headerParams.isEmpty}}[]{{/headerParams.isEmpty}}{{^headerParams.isEmpty}}[{{#headerParams}}{{#required}} {<<"{{baseName}}">>, {{paramName}}}{{/required}}{{/headerParams}}]++{{packageName}}_utils:optional_params([{{#joinWithComma}}{{#headerParams}}{{^required}} '{{baseName}}'{{/required}}{{/headerParams}}{{/joinWithComma}}], _OptionalParams){{/headerParams.isEmpty}}, Body1 = {{^formParams.isEmpty}}{form, [{{#joinWithComma}}{{#formParams}}{{#required}} {<<"{{baseName}}">>, {{paramName}}}{{/required}}{{/formParams}}{{/joinWithComma}}]++{{packageName}}_utils:optional_params([{{#joinWithComma}}{{#formParams}}{{^required}} '{{baseName}}'{{/required}}{{/formParams}}{{/joinWithComma}}], _OptionalParams)}{{/formParams.isEmpty}}{{#formParams.isEmpty}}{{#bodyParams.isEmpty}}[]{{/bodyParams.isEmpty}}{{^bodyParams.isEmpty}}{{#bodyParams}}{{paramName}}{{/bodyParams}}{{/bodyParams.isEmpty}}{{/formParams.isEmpty}}, diff --git a/modules/openapi-generator/src/main/resources/erlang-server/handler.mustache b/modules/openapi-generator/src/main/resources/erlang-server/handler.mustache index 80314899a382..dc1c47cc20ec 100644 --- a/modules/openapi-generator/src/main/resources/erlang-server/handler.mustache +++ b/modules/openapi-generator/src/main/resources/erlang-server/handler.mustache @@ -209,7 +209,7 @@ process_response(Response, Req0, State = #state{operation_id = OperationID}) -> {stop, Req, State} end. --spec handle_request_json(cowboy_req:req(), state()) -> {cowboy_req:resp_body(), cowboy_req:req(), state()}. +-spec handle_request_json(cowboy_req:req(), state()) -> processed_response(). handle_request_json( Req0, @@ -233,7 +233,7 @@ handle_request_json( Body, ValidatorState ), - PreparedBody = jsx:encode(Body), + PreparedBody = prepare_body(Code, Body), Response = {ok, {Code, Headers, PreparedBody}}, process_response(Response, Req1, State); {error, Reason, Req1} -> @@ -241,3 +241,8 @@ handle_request_json( end. validate_headers(_, Req) -> {true, Req}. + +prepare_body(204, Body) when map_size(Body) == 0; length(Body) == 0 -> + <<>>; +prepare_body(_Code, Body) -> + jsx:encode(Body). From f0bbeb75ffa0fa26de67f13c6f622ea8c4d5108f Mon Sep 17 00:00:00 2001 From: William Cheng Date: Thu, 3 Jun 2021 09:52:05 +0800 Subject: [PATCH 02/21] update erlang-server samples --- .../petstore/erlang-server/.openapi-generator/VERSION | 2 +- .../petstore/erlang-server/src/openapi_pet_handler.erl | 9 +++++++-- .../petstore/erlang-server/src/openapi_store_handler.erl | 9 +++++++-- .../petstore/erlang-server/src/openapi_user_handler.erl | 9 +++++++-- 4 files changed, 22 insertions(+), 7 deletions(-) diff --git a/samples/server/petstore/erlang-server/.openapi-generator/VERSION b/samples/server/petstore/erlang-server/.openapi-generator/VERSION index d509cc92aa80..6555596f9311 100644 --- a/samples/server/petstore/erlang-server/.openapi-generator/VERSION +++ b/samples/server/petstore/erlang-server/.openapi-generator/VERSION @@ -1 +1 @@ -5.1.1-SNAPSHOT \ No newline at end of file +5.2.0-SNAPSHOT \ No newline at end of file diff --git a/samples/server/petstore/erlang-server/src/openapi_pet_handler.erl b/samples/server/petstore/erlang-server/src/openapi_pet_handler.erl index 15bbb6432fda..203cc07b28a5 100644 --- a/samples/server/petstore/erlang-server/src/openapi_pet_handler.erl +++ b/samples/server/petstore/erlang-server/src/openapi_pet_handler.erl @@ -440,7 +440,7 @@ process_response(Response, Req0, State = #state{operation_id = OperationID}) -> {stop, Req, State} end. --spec handle_request_json(cowboy_req:req(), state()) -> {cowboy_req:resp_body(), cowboy_req:req(), state()}. +-spec handle_request_json(cowboy_req:req(), state()) -> processed_response(). handle_request_json( Req0, @@ -464,7 +464,7 @@ handle_request_json( Body, ValidatorState ), - PreparedBody = jsx:encode(Body), + PreparedBody = prepare_body(Code, Body), Response = {ok, {Code, Headers, PreparedBody}}, process_response(Response, Req1, State); {error, Reason, Req1} -> @@ -472,3 +472,8 @@ handle_request_json( end. validate_headers(_, Req) -> {true, Req}. + +prepare_body(204, Body) when map_size(Body) == 0; length(Body) == 0 -> + <<>>; +prepare_body(_Code, Body) -> + jsx:encode(Body). diff --git a/samples/server/petstore/erlang-server/src/openapi_store_handler.erl b/samples/server/petstore/erlang-server/src/openapi_store_handler.erl index 579219865316..b7969837147e 100644 --- a/samples/server/petstore/erlang-server/src/openapi_store_handler.erl +++ b/samples/server/petstore/erlang-server/src/openapi_store_handler.erl @@ -235,7 +235,7 @@ process_response(Response, Req0, State = #state{operation_id = OperationID}) -> {stop, Req, State} end. --spec handle_request_json(cowboy_req:req(), state()) -> {cowboy_req:resp_body(), cowboy_req:req(), state()}. +-spec handle_request_json(cowboy_req:req(), state()) -> processed_response(). handle_request_json( Req0, @@ -259,7 +259,7 @@ handle_request_json( Body, ValidatorState ), - PreparedBody = jsx:encode(Body), + PreparedBody = prepare_body(Code, Body), Response = {ok, {Code, Headers, PreparedBody}}, process_response(Response, Req1, State); {error, Reason, Req1} -> @@ -267,3 +267,8 @@ handle_request_json( end. validate_headers(_, Req) -> {true, Req}. + +prepare_body(204, Body) when map_size(Body) == 0; length(Body) == 0 -> + <<>>; +prepare_body(_Code, Body) -> + jsx:encode(Body). diff --git a/samples/server/petstore/erlang-server/src/openapi_user_handler.erl b/samples/server/petstore/erlang-server/src/openapi_user_handler.erl index 4c71b5ebcfd0..f0d9179392c4 100644 --- a/samples/server/petstore/erlang-server/src/openapi_user_handler.erl +++ b/samples/server/petstore/erlang-server/src/openapi_user_handler.erl @@ -402,7 +402,7 @@ process_response(Response, Req0, State = #state{operation_id = OperationID}) -> {stop, Req, State} end. --spec handle_request_json(cowboy_req:req(), state()) -> {cowboy_req:resp_body(), cowboy_req:req(), state()}. +-spec handle_request_json(cowboy_req:req(), state()) -> processed_response(). handle_request_json( Req0, @@ -426,7 +426,7 @@ handle_request_json( Body, ValidatorState ), - PreparedBody = jsx:encode(Body), + PreparedBody = prepare_body(Code, Body), Response = {ok, {Code, Headers, PreparedBody}}, process_response(Response, Req1, State); {error, Reason, Req1} -> @@ -434,3 +434,8 @@ handle_request_json( end. validate_headers(_, Req) -> {true, Req}. + +prepare_body(204, Body) when map_size(Body) == 0; length(Body) == 0 -> + <<>>; +prepare_body(_Code, Body) -> + jsx:encode(Body). From 439a1a9ba2355197445d1aeb6481b6d12de3bc78 Mon Sep 17 00:00:00 2001 From: Blackclaws Date: Thu, 3 Jun 2021 03:55:47 +0200 Subject: [PATCH 03/21] Do not validate enum parameters (#9594) --- .../src/main/resources/csharp-netcore/modelGeneric.mustache | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/openapi-generator/src/main/resources/csharp-netcore/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp-netcore/modelGeneric.mustache index 3ecfa611d68b..8dbd9c424e05 100644 --- a/modules/openapi-generator/src/main/resources/csharp-netcore/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-netcore/modelGeneric.mustache @@ -300,6 +300,7 @@ {{/parent}} {{#vars}} {{#hasValidation}} + {{^isEnum}} {{#maxLength}} // {{{name}}} ({{{dataType}}}) maxLength if(this.{{{name}}} != null && this.{{{name}}}.Length > {{maxLength}}) @@ -343,6 +344,7 @@ {{/isByteArray}} {{/pattern}} + {{/isEnum}} {{/hasValidation}} {{/vars}} yield break; From 2b495fc7a3ce2d620fc7ea931955b070ffa6020e Mon Sep 17 00:00:00 2001 From: ricou13770 <84787595+ricou13770@users.noreply.github.com> Date: Thu, 3 Jun 2021 04:02:00 +0200 Subject: [PATCH 04/21] Fix module "go-server" - template "controller-api.mustache" : query.Get() must use {{baseName}} instead of {{paramName}} on boolean and default query parameters (#9580) --- .../src/main/resources/go-server/controller-api.mustache | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache index 2c6b5da8b524..0039bf4a69ce 100644 --- a/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/controller-api.mustache @@ -90,7 +90,7 @@ func (c *{{classname}}Controller) {{nickname}}(w http.ResponseWriter, r *http.Re } {{/isInteger}} {{#isBoolean}} - {{paramName}}, err := parseBoolParameter(query.Get("{{paramName}}")) + {{paramName}}, err := parseBoolParameter(query.Get("{{baseName}}")) if err != nil { w.WriteHeader(500) return @@ -99,7 +99,7 @@ func (c *{{classname}}Controller) {{nickname}}(w http.ResponseWriter, r *http.Re {{^isLong}} {{^isInteger}} {{^isBoolean}} - {{paramName}} := {{#isArray}}strings.Split({{/isArray}}query.Get("{{paramName}}"){{#isArray}}, ","){{/isArray}} + {{paramName}} := {{#isArray}}strings.Split({{/isArray}}query.Get("{{baseName}}"){{#isArray}}, ","){{/isArray}} {{/isBoolean}} {{/isInteger}} {{/isLong}} From 93880a486e9fb32aa00b70533743b507215ad3df Mon Sep 17 00:00:00 2001 From: Nikita Vakula <52108696+krjakbrjak@users.noreply.github.com> Date: Thu, 3 Jun 2021 04:13:24 +0200 Subject: [PATCH 05/21] python-fastapi improvements (#9649) * [python-fastapi] Ignore some flake8 warnings 1. Some of the "imported but not used" warnings are there because it is not easy to express what should be imported in mustache template language. These warnings are silenced in order to keep the templates morre readable. 2. Single quotes -> Double quotes (for consistency). Signed-off-by: Nikita Vakula * [python-fastapi] Added flake8 config Signed-off-by: Nikita Vakula * [python-fastapi] Set extra constraints on values It is important to set all constraints (pattern, greater than, etc.) on values of all arguments, because FastAPI can handle them automatically. Signed-off-by: Nikita Vakula * [python-fastapi] Updated samples Signed-off-by: Nikita Vakula --- .../languages/PythonFastAPIServerCodegen.java | 7 +++ .../resources/python-fastapi/.flake8.mustache | 3 + .../resources/python-fastapi/api.mustache | 8 +-- .../python-fastapi/api_test.mustache | 20 +++--- .../python-fastapi/conftest.mustache | 3 - .../endpoint_argument_definition.mustache | 2 +- .../resources/python-fastapi/model.mustache | 6 +- .../python-fastapi/security_api.mustache | 8 +-- .../server/petstore/python-fastapi/.flake8 | 3 + .../python-fastapi/.openapi-generator/FILES | 1 + .../src/openapi_server/apis/pet_api.py | 61 ++++++++----------- .../src/openapi_server/apis/store_api.py | 23 +++---- .../src/openapi_server/apis/user_api.py | 49 ++++++--------- .../src/openapi_server/models/api_response.py | 6 +- .../src/openapi_server/models/category.py | 6 +- .../src/openapi_server/models/order.py | 6 +- .../src/openapi_server/models/pet.py | 6 +- .../src/openapi_server/models/tag.py | 6 +- .../src/openapi_server/models/user.py | 6 +- .../src/openapi_server/security_api.py | 8 +-- .../petstore/python-fastapi/tests/conftest.py | 3 - 21 files changed, 112 insertions(+), 129 deletions(-) create mode 100644 modules/openapi-generator/src/main/resources/python-fastapi/.flake8.mustache create mode 100644 samples/server/petstore/python-fastapi/.flake8 diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java index 5cf315ab1357..c4d2e6f3283a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java @@ -150,6 +150,7 @@ public void processOpts() { supportingFiles.add(new SupportingFile("gitignore.mustache", "", ".gitignore")); supportingFiles.add(new SupportingFile("pyproject_toml.mustache", "", "pyproject.toml")); supportingFiles.add(new SupportingFile("setup_cfg.mustache", "", "setup.cfg")); + supportingFiles.add(new SupportingFile(".flake8.mustache", "", ".flake8")); } @Override @@ -287,4 +288,10 @@ public void postProcess() { System.out.println("# Please support his work directly via https://paypal.me/krjakbrjaki \uD83D\uDE4F #"); System.out.println("################################################################################"); } + + @Override + public String toRegularExpression(String pattern) { + String regex = super.toRegularExpression(pattern); + return StringUtils.substring(regex, 1, -1); + } } diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/.flake8.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/.flake8.mustache new file mode 100644 index 000000000000..9e008c5bb19a --- /dev/null +++ b/modules/openapi-generator/src/main/resources/python-fastapi/.flake8.mustache @@ -0,0 +1,3 @@ +[flake8] +max-line-length = 88 +exclude = .git,__pycache__,__init__.py,.mypy_cache,.pytest_cache,.venv diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/api.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/api.mustache index 21c091251ad8..04b95fb104a4 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/api.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/api.mustache @@ -1,8 +1,8 @@ # coding: utf-8 -from typing import Dict, List +from typing import Dict, List # noqa: F401 -from fastapi import ( +from fastapi import ( # noqa: F401 APIRouter, Body, Cookie, @@ -16,7 +16,7 @@ from fastapi import ( status, ) -from {{modelPackage}}.extra_models import TokenModel +from {{modelPackage}}.extra_models import TokenModel # noqa: F401 {{#imports}} {{import}} {{/imports}} @@ -53,7 +53,7 @@ async def {{operationId}}( ), {{/authMethods}} {{/hasAuthMethods}} -) -> {{#returnType}}{{.}}{{/returnType}}{{^returnType}}None{{/returnType}}: # noqa: E501 +) -> {{#returnType}}{{.}}{{/returnType}}{{^returnType}}None{{/returnType}}: {{#notes}}"""{{.}}""" ...{{/notes}}{{^notes}}...{{/notes}} {{^-last}} diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache index a3470a2323ee..248f282e8575 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache @@ -2,10 +2,11 @@ from fastapi.testclient import TestClient -import json +{{#vendorExtensions.x-skip-test}} import pytest +{{/vendorExtensions.x-skip-test}} -{{#imports}}{{import}} +{{#imports}}{{import}} # noqa: F401 {{/imports}} {{#operations}} @@ -23,24 +24,23 @@ def test_{{operationId}}(client: TestClient): {{paramName}} = {{#isContainer}}[{{/isContainer}}{{{example}}}{{#isContainer}}]{{/isContainer}} {{/bodyParam}} {{#queryParams}} - {{#-first}}params = [{{/-first}}{{^-first}} {{/-first}}("{{paramName}}", {{{example}}}){{^-last}},{{/-last}}{{#-last}}]{{/-last}} - {{/queryParams}} - headers = { {{#headerParams}} - '{{paramName}}': {{{example}}},{{/headerParams}}{{#authMethods}} - {{#isOAuth}}'Authorization': 'Bearer special-key',{{/isOAuth}}{{#isApiKey}}'{{name}}': 'special-key',{{/isApiKey}}{{#isBasicBasic}}'Authorization': 'BasicZm9vOmJhcg==',{{/isBasicBasic}}{{#isBasicBearer}}'Authorization': 'Bearer special-key',{{/isBasicBearer}}{{/authMethods}} + {{#-first}}params = [{{/-first}}("{{paramName}}", {{{example}}}){{^-last}}, {{/-last}}{{#-last}}]{{/-last}}{{/queryParams}} + headers = {{=<% %>=}}{<%#headerParams%><%={{ }}=%> + "{{paramName}}": {{{example}}},{{/headerParams}}{{#authMethods}} + {{#isOAuth}}"Authorization": "Bearer special-key",{{/isOAuth}}{{#isApiKey}}"{{name}}": "special-key",{{/isApiKey}}{{#isBasicBasic}}"Authorization": "BasicZm9vOmJhcg==",{{/isBasicBasic}}{{#isBasicBearer}}"Authorization": "Bearer special-key",{{/isBasicBearer}}{{/authMethods}} } {{#formParams}} {{#-first}} data = { {{/-first}} - '{{paramName}}': {{{example}}}{{^-last}},{{/-last}} + "{{paramName}}": {{{example}}}{{^-last}},{{/-last}} {{#-last}} } {{/-last}} {{/formParams}} response = client.request( - '{{httpMethod}}', - '{{{path}}}'{{#pathParams}}{{#-first}}.format({{/-first}}{{baseName}}={{{example}}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, + "{{httpMethod}}", + "{{{path}}}"{{#pathParams}}{{#-first}}.format({{/-first}}{{baseName}}={{{example}}}{{^-last}}, {{/-last}}{{#-last}}){{/-last}}{{/pathParams}}, headers=headers,{{#bodyParam}} json={{paramName}},{{/bodyParam}}{{#formParams}}{{#-first}} data=data,{{/-first}}{{/formParams}}{{#queryParams}}{{#-first}} diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/conftest.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/conftest.mustache index 357ea48c3ab8..e096833deba0 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/conftest.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/conftest.mustache @@ -1,6 +1,3 @@ -import contextlib -from typing import Any - import pytest from fastapi import FastAPI from fastapi.testclient import TestClient diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/endpoint_argument_definition.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/endpoint_argument_definition.mustache index 939bfda10a6b..c4bace9973d0 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/endpoint_argument_definition.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/endpoint_argument_definition.mustache @@ -1 +1 @@ -{{#isPathParam}}{{baseName}}{{/isPathParam}}{{^isPathParam}}{{paramName}}{{/isPathParam}}: {{>param_type}} = {{#isPathParam}}Path{{/isPathParam}}{{#isHeaderParam}}Header{{/isHeaderParam}}{{#isFormParam}}Form{{/isFormParam}}{{#isQueryParam}}Query{{/isQueryParam}}{{#isCookieParam}}Cookie{{/isCookieParam}}{{#isBodyParam}}Body{{/isBodyParam}}(None, description="{{description}}") +{{#isPathParam}}{{baseName}}{{/isPathParam}}{{^isPathParam}}{{paramName}}{{/isPathParam}}: {{>param_type}} = {{#isPathParam}}Path{{/isPathParam}}{{#isHeaderParam}}Header{{/isHeaderParam}}{{#isFormParam}}Form{{/isFormParam}}{{#isQueryParam}}Query{{/isQueryParam}}{{#isCookieParam}}Cookie{{/isCookieParam}}{{#isBodyParam}}Body{{/isBodyParam}}({{#defaultValue}}{{.}}{{/defaultValue}}{{^defaultValue}}None{{/defaultValue}}, description="{{description}}"{{#isLong}}{{#minimum}}, ge={{minimum}}{{/minimum}}{{#maximum}}, le={{maximum}}{{/maximum}}{{/isLong}}{{#isInteger}}{{#minimum}}, ge={{minimum}}{{/minimum}}{{#maximum}}, le={{maximum}}{{/maximum}}{{/isInteger}}{{#pattern}}, regex=r"{{pattern}}"{{/pattern}}{{#minLength}}, min_length={{minLength}}{{/minLength}}{{#maxLength}}, max_length={{maxLength}}{{/maxLength}}) \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/model.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/model.mustache index f6a15877fa4f..e56ef26d5119 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/model.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/model.mustache @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 {{#models}} {{#model}} {{#pyImports}} diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/security_api.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/security_api.mustache index 77bceb11cfa5..4fda1a8f91db 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/security_api.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/security_api.mustache @@ -2,9 +2,9 @@ from typing import List -from fastapi import APIRouter, Depends, Response, Security, status -from fastapi.openapi.models import OAuthFlowImplicit, OAuthFlows -from fastapi.security import ( +from fastapi import Depends, Security # noqa: F401 +from fastapi.openapi.models import OAuthFlowImplicit, OAuthFlows # noqa: F401 +from fastapi.security import ( # noqa: F401 HTTPAuthorizationCredentials, HTTPBasic, HTTPBasicCredentials, @@ -14,7 +14,7 @@ from fastapi.security import ( OAuth2PasswordBearer, SecurityScopes, ) -from fastapi.security.api_key import APIKey, APIKeyCookie, APIKeyHeader, APIKeyQuery +from fastapi.security.api_key import APIKeyCookie, APIKeyHeader, APIKeyQuery # noqa: F401 from {{modelPackage}}.extra_models import TokenModel diff --git a/samples/server/petstore/python-fastapi/.flake8 b/samples/server/petstore/python-fastapi/.flake8 new file mode 100644 index 000000000000..9e008c5bb19a --- /dev/null +++ b/samples/server/petstore/python-fastapi/.flake8 @@ -0,0 +1,3 @@ +[flake8] +max-line-length = 88 +exclude = .git,__pycache__,__init__.py,.mypy_cache,.pytest_cache,.venv diff --git a/samples/server/petstore/python-fastapi/.openapi-generator/FILES b/samples/server/petstore/python-fastapi/.openapi-generator/FILES index 247e0d50f673..1d9f0c531099 100644 --- a/samples/server/petstore/python-fastapi/.openapi-generator/FILES +++ b/samples/server/petstore/python-fastapi/.openapi-generator/FILES @@ -1,3 +1,4 @@ +.flake8 .gitignore Dockerfile README.md diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/apis/pet_api.py b/samples/server/petstore/python-fastapi/src/openapi_server/apis/pet_api.py index d4dfa357c303..513d49d1b7a4 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/apis/pet_api.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/apis/pet_api.py @@ -1,8 +1,8 @@ # coding: utf-8 -from typing import Dict, List +from typing import Dict, List # noqa: F401 -from fastapi import ( +from fastapi import ( # noqa: F401 APIRouter, Body, Cookie, @@ -16,7 +16,7 @@ status, ) -from openapi_server.models.extra_models import TokenModel +from openapi_server.models.extra_models import TokenModel # noqa: F401 from openapi_server.models.api_response import ApiResponse from openapi_server.models.pet import Pet from openapi_server.security_api import get_token_petstore_auth, get_token_api_key @@ -34,12 +34,11 @@ summary="Add a new pet to the store", ) async def add_pet( - pet: Pet = Body(None, description="Pet object that needs to be added to the store") -, + pet: Pet = Body(None, description="Pet object that needs to be added to the store"), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["write:pets", "read:pets"] ), -) -> Pet: # noqa: E501 +) -> Pet: ... @@ -52,14 +51,12 @@ async def add_pet( summary="Deletes a pet", ) async def delete_pet( - petId: int = Path(None, description="Pet id to delete") -, - api_key: str = Header(None, description="") -, + petId: int = Path(None, description="Pet id to delete"), + api_key: str = Header(None, description=""), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["write:pets", "read:pets"] ), -) -> None: # noqa: E501 +) -> None: ... @@ -73,12 +70,11 @@ async def delete_pet( summary="Finds Pets by status", ) async def find_pets_by_status( - status: List[str] = Query(None, description="Status values that need to be considered for filter") -, + status: List[str] = Query(None, description="Status values that need to be considered for filter"), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["read:pets"] ), -) -> List[Pet]: # noqa: E501 +) -> List[Pet]: """Multiple status values can be provided with comma separated strings""" ... @@ -93,12 +89,11 @@ async def find_pets_by_status( summary="Finds Pets by tags", ) async def find_pets_by_tags( - tags: List[str] = Query(None, description="Tags to filter by") -, + tags: List[str] = Query(None, description="Tags to filter by"), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["read:pets"] ), -) -> List[Pet]: # noqa: E501 +) -> List[Pet]: """Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.""" ... @@ -114,12 +109,11 @@ async def find_pets_by_tags( summary="Find pet by ID", ) async def get_pet_by_id( - petId: int = Path(None, description="ID of pet to return") -, + petId: int = Path(None, description="ID of pet to return"), token_api_key: TokenModel = Security( get_token_api_key ), -) -> Pet: # noqa: E501 +) -> Pet: """Returns a single pet""" ... @@ -136,12 +130,11 @@ async def get_pet_by_id( summary="Update an existing pet", ) async def update_pet( - pet: Pet = Body(None, description="Pet object that needs to be added to the store") -, + pet: Pet = Body(None, description="Pet object that needs to be added to the store"), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["write:pets", "read:pets"] ), -) -> Pet: # noqa: E501 +) -> Pet: ... @@ -154,16 +147,13 @@ async def update_pet( summary="Updates a pet in the store with form data", ) async def update_pet_with_form( - petId: int = Path(None, description="ID of pet that needs to be updated") -, - name: str = Form(None, description="Updated name of the pet") -, - status: str = Form(None, description="Updated status of the pet") -, + petId: int = Path(None, description="ID of pet that needs to be updated"), + name: str = Form(None, description="Updated name of the pet"), + status: str = Form(None, description="Updated status of the pet"), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["write:pets", "read:pets"] ), -) -> None: # noqa: E501 +) -> None: ... @@ -176,14 +166,11 @@ async def update_pet_with_form( summary="uploads an image", ) async def upload_file( - petId: int = Path(None, description="ID of pet to update") -, - additional_metadata: str = Form(None, description="Additional data to pass to server") -, - file: str = Form(None, description="file to upload") -, + petId: int = Path(None, description="ID of pet to update"), + additional_metadata: str = Form(None, description="Additional data to pass to server"), + file: str = Form(None, description="file to upload"), token_petstore_auth: TokenModel = Security( get_token_petstore_auth, scopes=["write:pets", "read:pets"] ), -) -> ApiResponse: # noqa: E501 +) -> ApiResponse: ... diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/apis/store_api.py b/samples/server/petstore/python-fastapi/src/openapi_server/apis/store_api.py index dd7a484d3dbd..208cacab6325 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/apis/store_api.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/apis/store_api.py @@ -1,8 +1,8 @@ # coding: utf-8 -from typing import Dict, List +from typing import Dict, List # noqa: F401 -from fastapi import ( +from fastapi import ( # noqa: F401 APIRouter, Body, Cookie, @@ -16,7 +16,7 @@ status, ) -from openapi_server.models.extra_models import TokenModel +from openapi_server.models.extra_models import TokenModel # noqa: F401 from openapi_server.models.order import Order from openapi_server.security_api import get_token_api_key @@ -33,9 +33,8 @@ summary="Delete purchase order by ID", ) async def delete_order( - orderId: str = Path(None, description="ID of the order that needs to be deleted") -, -) -> None: # noqa: E501 + orderId: str = Path(None, description="ID of the order that needs to be deleted"), +) -> None: """For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors""" ... @@ -52,7 +51,7 @@ async def get_inventory( token_api_key: TokenModel = Security( get_token_api_key ), -) -> Dict[str, int]: # noqa: E501 +) -> Dict[str, int]: """Returns a map of status codes to quantities""" ... @@ -68,9 +67,8 @@ async def get_inventory( summary="Find purchase order by ID", ) async def get_order_by_id( - orderId: int = Path(None, description="ID of pet that needs to be fetched") -, -) -> Order: # noqa: E501 + orderId: int = Path(None, description="ID of pet that needs to be fetched", ge=1, le=5), +) -> Order: """For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions""" ... @@ -85,7 +83,6 @@ async def get_order_by_id( summary="Place an order for a pet", ) async def place_order( - order: Order = Body(None, description="order placed for purchasing the pet") -, -) -> Order: # noqa: E501 + order: Order = Body(None, description="order placed for purchasing the pet"), +) -> Order: ... diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/apis/user_api.py b/samples/server/petstore/python-fastapi/src/openapi_server/apis/user_api.py index d6370178cd9e..8609be647d11 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/apis/user_api.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/apis/user_api.py @@ -1,8 +1,8 @@ # coding: utf-8 -from typing import Dict, List +from typing import Dict, List # noqa: F401 -from fastapi import ( +from fastapi import ( # noqa: F401 APIRouter, Body, Cookie, @@ -16,7 +16,7 @@ status, ) -from openapi_server.models.extra_models import TokenModel +from openapi_server.models.extra_models import TokenModel # noqa: F401 from openapi_server.models.user import User from openapi_server.security_api import get_token_api_key @@ -32,12 +32,11 @@ summary="Create user", ) async def create_user( - user: User = Body(None, description="Created user object") -, + user: User = Body(None, description="Created user object"), token_api_key: TokenModel = Security( get_token_api_key ), -) -> None: # noqa: E501 +) -> None: """This can only be done by the logged in user.""" ... @@ -51,12 +50,11 @@ async def create_user( summary="Creates list of users with given input array", ) async def create_users_with_array_input( - user: List[User] = Body(None, description="List of user object") -, + user: List[User] = Body(None, description="List of user object"), token_api_key: TokenModel = Security( get_token_api_key ), -) -> None: # noqa: E501 +) -> None: ... @@ -69,12 +67,11 @@ async def create_users_with_array_input( summary="Creates list of users with given input array", ) async def create_users_with_list_input( - user: List[User] = Body(None, description="List of user object") -, + user: List[User] = Body(None, description="List of user object"), token_api_key: TokenModel = Security( get_token_api_key ), -) -> None: # noqa: E501 +) -> None: ... @@ -88,12 +85,11 @@ async def create_users_with_list_input( summary="Delete user", ) async def delete_user( - username: str = Path(None, description="The name that needs to be deleted") -, + username: str = Path(None, description="The name that needs to be deleted"), token_api_key: TokenModel = Security( get_token_api_key ), -) -> None: # noqa: E501 +) -> None: """This can only be done by the logged in user.""" ... @@ -109,9 +105,8 @@ async def delete_user( summary="Get user by user name", ) async def get_user_by_name( - username: str = Path(None, description="The name that needs to be fetched. Use user1 for testing.") -, -) -> User: # noqa: E501 + username: str = Path(None, description="The name that needs to be fetched. Use user1 for testing."), +) -> User: ... @@ -125,11 +120,9 @@ async def get_user_by_name( summary="Logs user into the system", ) async def login_user( - username: str = Query(None, description="The user name for login") -, - password: str = Query(None, description="The password for login in clear text") -, -) -> str: # noqa: E501 + username: str = Query(None, description="The user name for login", regex=r"^[a-zA-Z0-9]+[a-zA-Z0-9\.\-_]*[a-zA-Z0-9]+$"), + password: str = Query(None, description="The password for login in clear text"), +) -> str: ... @@ -145,7 +138,7 @@ async def logout_user( token_api_key: TokenModel = Security( get_token_api_key ), -) -> None: # noqa: E501 +) -> None: ... @@ -159,13 +152,11 @@ async def logout_user( summary="Updated user", ) async def update_user( - username: str = Path(None, description="name that need to be deleted") -, - user: User = Body(None, description="Updated user object") -, + username: str = Path(None, description="name that need to be deleted"), + user: User = Body(None, description="Updated user object"), token_api_key: TokenModel = Security( get_token_api_key ), -) -> None: # noqa: E501 +) -> None: """This can only be done by the logged in user.""" ... diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/models/api_response.py b/samples/server/petstore/python-fastapi/src/openapi_server/models/api_response.py index 49926a6a14d8..8819c50aeeff 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/models/api_response.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/models/api_response.py @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 class ApiResponse(BaseModel): diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/models/category.py b/samples/server/petstore/python-fastapi/src/openapi_server/models/category.py index cba9aece542b..0a16035992ca 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/models/category.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/models/category.py @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 class Category(BaseModel): diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/models/order.py b/samples/server/petstore/python-fastapi/src/openapi_server/models/order.py index b129842ad2ca..64e50546a3fc 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/models/order.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/models/order.py @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 class Order(BaseModel): diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/models/pet.py b/samples/server/petstore/python-fastapi/src/openapi_server/models/pet.py index c4e8c3fa4bfe..bfaf8a909e2c 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/models/pet.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/models/pet.py @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 from openapi_server.models.category import Category from openapi_server.models.tag import Tag diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/models/tag.py b/samples/server/petstore/python-fastapi/src/openapi_server/models/tag.py index 6c2ab695415c..96d92a6ab96e 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/models/tag.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/models/tag.py @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 class Tag(BaseModel): diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/models/user.py b/samples/server/petstore/python-fastapi/src/openapi_server/models/user.py index dd173677ce9f..20bea97e57a6 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/models/user.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/models/user.py @@ -1,10 +1,10 @@ # coding: utf-8 -from datetime import date, datetime +from datetime import date, datetime # noqa: F401 -from typing import Dict, List, Optional +from typing import Dict, List, Optional # noqa: F401 -from pydantic import BaseModel, EmailStr, validator +from pydantic import BaseModel, EmailStr, validator # noqa: F401 class User(BaseModel): diff --git a/samples/server/petstore/python-fastapi/src/openapi_server/security_api.py b/samples/server/petstore/python-fastapi/src/openapi_server/security_api.py index 1c2f51e30a52..38eb60eb167a 100644 --- a/samples/server/petstore/python-fastapi/src/openapi_server/security_api.py +++ b/samples/server/petstore/python-fastapi/src/openapi_server/security_api.py @@ -2,9 +2,9 @@ from typing import List -from fastapi import APIRouter, Depends, Response, Security, status -from fastapi.openapi.models import OAuthFlowImplicit, OAuthFlows -from fastapi.security import ( +from fastapi import Depends, Security # noqa: F401 +from fastapi.openapi.models import OAuthFlowImplicit, OAuthFlows # noqa: F401 +from fastapi.security import ( # noqa: F401 HTTPAuthorizationCredentials, HTTPBasic, HTTPBasicCredentials, @@ -14,7 +14,7 @@ OAuth2PasswordBearer, SecurityScopes, ) -from fastapi.security.api_key import APIKey, APIKeyCookie, APIKeyHeader, APIKeyQuery +from fastapi.security.api_key import APIKeyCookie, APIKeyHeader, APIKeyQuery # noqa: F401 from openapi_server.models.extra_models import TokenModel diff --git a/samples/server/petstore/python-fastapi/tests/conftest.py b/samples/server/petstore/python-fastapi/tests/conftest.py index 0f1845c60412..cbde552c9c06 100644 --- a/samples/server/petstore/python-fastapi/tests/conftest.py +++ b/samples/server/petstore/python-fastapi/tests/conftest.py @@ -1,6 +1,3 @@ -import contextlib -from typing import Any - import pytest from fastapi import FastAPI from fastapi.testclient import TestClient From 972ad566fea7e033c45e217dbfcb949d90ea2cb5 Mon Sep 17 00:00:00 2001 From: Dheeraj Nalluri Date: Thu, 3 Jun 2021 00:58:53 -0500 Subject: [PATCH 06/21] [typescript-angular] Fix undefined query param (#9657) --- .../main/resources/typescript-angular/api.service.mustache | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache b/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache index 8f66fcf6f9e9..4fe3186f1adf 100644 --- a/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-angular/api.service.mustache @@ -93,11 +93,16 @@ export class {{classname}} { {{/hasSomeFormParams}} private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams { + {{#isQueryParamObjectFormatJson}} + httpParams = this.addToHttpParamsRecursive(httpParams, value, key); + {{/isQueryParamObjectFormatJson}} + {{^isQueryParamObjectFormatJson}} if (typeof value === "object" && value instanceof Date === false) { httpParams = this.addToHttpParamsRecursive(httpParams, value); } else { httpParams = this.addToHttpParamsRecursive(httpParams, value, key); } + {{/isQueryParamObjectFormatJson}} return httpParams; } From a8c4cbd14d383b353debe3692a55d8d270f30099 Mon Sep 17 00:00:00 2001 From: Armel Soro Date: Thu, 3 Jun 2021 17:07:34 +0200 Subject: [PATCH 07/21] fix(#9328): Gradle Plugin ValidateTask does not work under Gradle 7.0 (#9453) * Allow to run ValidateTask tests against Gradle 7.0 as well * Drop setters for ValidateTask properties of mutable types This is applicable to the following properties: - inputSpec - recommend Otherwise, Gradle 7.0 now returns an error when attempting to configure this task. See https://docs.gradle.org/7.0/userguide/validation_problems.html#mutable_type_with_setter * Be more specific about the versions of Gradle tested in ValidateTaskDslTest Test against the latests Gradle 5.x and 6.x versions --- .../gradle/plugin/tasks/ValidateTask.kt | 6 +-- .../src/test/kotlin/ValidateTaskDslTest.kt | 49 ++++++++++++++----- 2 files changed, 41 insertions(+), 14 deletions(-) diff --git a/modules/openapi-generator-gradle-plugin/src/main/kotlin/org/openapitools/generator/gradle/plugin/tasks/ValidateTask.kt b/modules/openapi-generator-gradle-plugin/src/main/kotlin/org/openapitools/generator/gradle/plugin/tasks/ValidateTask.kt index 3d0cbab2b064..6f3038e4e29c 100644 --- a/modules/openapi-generator-gradle-plugin/src/main/kotlin/org/openapitools/generator/gradle/plugin/tasks/ValidateTask.kt +++ b/modules/openapi-generator-gradle-plugin/src/main/kotlin/org/openapitools/generator/gradle/plugin/tasks/ValidateTask.kt @@ -56,11 +56,11 @@ import org.openapitools.codegen.validations.oas.RuleConfiguration open class ValidateTask : DefaultTask() { @get:InputFile @PathSensitive(PathSensitivity.RELATIVE) - var inputSpec = project.objects.property() + val inputSpec = project.objects.property() @Optional @Input - var recommend = project.objects.property() + val recommend = project.objects.property() @Suppress("unused") @get:Internal @@ -128,4 +128,4 @@ open class ValidateTask : DefaultTask() { out.println("Spec is valid.") } } -} \ No newline at end of file +} diff --git a/modules/openapi-generator-gradle-plugin/src/test/kotlin/ValidateTaskDslTest.kt b/modules/openapi-generator-gradle-plugin/src/test/kotlin/ValidateTaskDslTest.kt index 2b06e853192e..94ae68ab3af8 100644 --- a/modules/openapi-generator-gradle-plugin/src/test/kotlin/ValidateTaskDslTest.kt +++ b/modules/openapi-generator-gradle-plugin/src/test/kotlin/ValidateTaskDslTest.kt @@ -3,6 +3,8 @@ package org.openapitools.generator.gradle.plugin import org.gradle.testkit.runner.GradleRunner import org.gradle.testkit.runner.TaskOutcome.FAILED import org.gradle.testkit.runner.TaskOutcome.SUCCESS +import org.gradle.util.GradleVersion +import org.testng.annotations.DataProvider import org.testng.annotations.Test import java.io.File import kotlin.test.assertEquals @@ -11,8 +13,25 @@ import kotlin.test.assertTrue class ValidateTaskDslTest : TestBase() { override var temp: File = createTempDir(javaClass.simpleName) - @Test - fun `openApiValidate should fail on non-file spec`() { + @DataProvider(name = "gradle_version_provider") + fun gradleVersionProvider(): Array> = arrayOf( + arrayOf(null), // uses the version of Gradle used to build the plugin itself + arrayOf("5.6.4"), + arrayOf("6.9"), + arrayOf("7.0")) + + private fun getGradleRunner(gradleVersion: String?): GradleRunner { + val gradleRunner = GradleRunner.create() + return if (gradleVersion.isNullOrBlank()) { + //Use the current version of Gradle + gradleRunner + } else { + gradleRunner.withGradleVersion(gradleVersion) + } + } + + @Test(dataProvider = "gradle_version_provider") + fun `openApiValidate should fail on non-file spec`(gradleVersion: String?) { // Arrange withProject(""" | plugins { @@ -25,20 +44,28 @@ class ValidateTaskDslTest : TestBase() { """.trimMargin()) // Act - val result = GradleRunner.create() + val result = getGradleRunner(gradleVersion) .withProjectDir(temp) .withArguments("openApiValidate") .withPluginClasspath() .buildAndFail() // Assert - assertTrue(result.output.contains("some_location' specified for property 'inputSpec' does not exist"), "Unexpected/no message presented to the user for a spec pointing to an invalid URI.") + val gradleActualVersion = gradleVersion ?: GradleVersion.current().version + val gradleVersionParts = gradleActualVersion.split(".") + val isBeforeGradle7 = (gradleVersionParts.isEmpty() || gradleVersionParts[0].toInt() < 7) + val expectedMessage = if (isBeforeGradle7) { + "some_location' specified for property 'inputSpec' does not exist" + } else { + "An input file was expected to be present but it doesn't exist." + } + assertTrue(result.output.contains(expectedMessage), "Unexpected/no message presented to the user for a spec pointing to an invalid URI.") assertEquals(FAILED, result.task(":openApiValidate")?.outcome, "Expected a failed run, but found ${result.task(":openApiValidate")?.outcome}") } - @Test - fun `openApiValidate should succeed on valid spec`() { + @Test(dataProvider = "gradle_version_provider") + fun `openApiValidate should succeed on valid spec`(gradleVersion: String?) { // Arrange val projectFiles = mapOf( "spec.yaml" to javaClass.classLoader.getResourceAsStream("specs/petstore-v3.0.yaml") @@ -55,7 +82,7 @@ class ValidateTaskDslTest : TestBase() { """.trimMargin(), projectFiles) // Act - val result = GradleRunner.create() + val result = getGradleRunner(gradleVersion) .withProjectDir(temp) .withArguments("openApiValidate") .withPluginClasspath() @@ -67,8 +94,8 @@ class ValidateTaskDslTest : TestBase() { "Expected a successful run, but found ${result.task(":openApiValidate")?.outcome}") } - @Test - fun `openApiValidate should fail on invalid spec`() { + @Test(dataProvider = "gradle_version_provider") + fun `openApiValidate should fail on invalid spec`(gradleVersion: String?) { // Arrange val projectFiles = mapOf( "spec.yaml" to javaClass.classLoader.getResourceAsStream("specs/petstore-v3.0-invalid.yaml") @@ -84,7 +111,7 @@ class ValidateTaskDslTest : TestBase() { """.trimMargin(), projectFiles) // Act - val result = GradleRunner.create() + val result = getGradleRunner(gradleVersion) .withProjectDir(temp) .withArguments("openApiValidate") .withPluginClasspath() @@ -96,4 +123,4 @@ class ValidateTaskDslTest : TestBase() { "Expected a failed run, but found ${result.task(":openApiValidate")?.outcome}") } -} \ No newline at end of file +} From c5fefa938a7c3960d7020855b74cdf75ddc31ac7 Mon Sep 17 00:00:00 2001 From: Mike Nelson Date: Fri, 4 Jun 2021 02:03:32 -0400 Subject: [PATCH 08/21] (#8000) Insure toImportMap only returns needToImport (#9275) `toModelImportMap` only accounts for union types and not intersection types, so I've combined those cases into `splitComposedType`. For `splitComposedType` I combined `replace(" ","").split("\\|")` and `split("( [|&] )|[<>]")` into `replace(" ","").split("[|&<>]")`. I've added the `needToImport` check to `toModelImportMap`. This is the same check that happens in `addImport`. --- .../AbstractTypeScriptClientCodegen.java | 28 +++++++++++-------- .../typescript/SharedTypeScriptTest.java | 23 +++++++++++++++ 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java index 353c05d5a2e7..40dfba5e80f2 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java @@ -227,11 +227,15 @@ public void processOpts() { } @Override - public String toModelImport( String name){ + public String toModelImport(String name){ if(isUnionType(name)){ LOGGER.warn("The import is a union type. Consider using the toModelImportMap method."); return toModelImportMap(name).values().stream().collect(Collectors.joining("|")); } + if(isIntersectionType(name)){ + LOGGER.warn("The import is a intersection type. Consider using the toModelImportMap method."); + return toModelImportMap(name).values().stream().collect(Collectors.joining("&")); + } return super.toModelImport(name); } @@ -243,26 +247,28 @@ public String toModelImport( String name){ * @return Map between the fully qualified model import and the initial given name. */ @Override - public Map toModelImportMap( String name){ - if(isUnionType(name)){ - String[] names = splitUnionType(name); - return toImportMap(names); - } - return toImportMap(name); + public Map toModelImportMap(String name){ + return toImportMap(splitComposedType(name)); + } + + private String[] splitComposedType (String name) { + return name.replace(" ","").split("[|&<>]"); } private boolean isUnionType(String name){ return name.contains("|"); } - private String[] splitUnionType(String name){ - return name.replace(" ","").split("\\|"); + private boolean isIntersectionType(String name){ + return name.contains("&"); } private Map toImportMap(String... names){ Map result = Maps.newHashMap(); for(String name: names){ - result.put(toModelImport(name),name); + if(needToImport(name)){ + result.put(toModelImport(name), name); + } } return result; } @@ -707,7 +713,7 @@ protected void addImport(CodegenModel m, String type) { return; } - String[] parts = type.split("( [|&] )|[<>]"); + String[] parts = splitComposedType(type); for (String s : parts) { if (needToImport(s)) { m.imports.add(s); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/SharedTypeScriptTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/SharedTypeScriptTest.java index 9062d738689b..f4e024142a52 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/SharedTypeScriptTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/SharedTypeScriptTest.java @@ -12,6 +12,8 @@ import java.io.File; import java.io.IOException; import java.util.List; +import java.util.Map; +import java.util.HashMap; public class SharedTypeScriptTest { @Test @@ -69,4 +71,25 @@ public void oldImportsStillPresentTest() throws IOException { FileUtils.deleteDirectory(new File("src/test/resources/oldImportsStillPresentTest/")); } + + /* + #8000 + Test that primatives are not returned by toModelImportMap + */ + @Test + public void toModelImportMapTest() { + TypeScriptAxiosClientCodegen codegen = new TypeScriptAxiosClientCodegen(); + + Map types = new HashMap() {{ + put("Schema & AnotherSchema", new String[]{ "Schema", "AnotherSchema" }); + put("Schema | AnotherSchema", new String[]{ "Schema", "AnotherSchema" }); + put("Schema & object", new String[]{ "Schema" }); + put("Schema | object", new String[]{ "Schema" }); + }}; + + for (Map.Entry entry : types.entrySet()) { + String[] mapped = codegen.toModelImportMap(entry.getKey()).values().toArray(new String[0]); + Assert.assertEquals(mapped, entry.getValue()); + } + } } \ No newline at end of file From f923a0ef151ca68aabe4e3d6b7d53de53faa9415 Mon Sep 17 00:00:00 2001 From: Ayman Bagabas Date: Sun, 6 Jun 2021 10:08:14 -0400 Subject: [PATCH 09/21] Swift5 Vapor 4 client library (#9625) * [swift5] Add Vapor client library * Try to improve overall spacing (#17) * [swift5] try to remove changes in model and api * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * [swift5] update sample projects * Update samples * [swift5] vapor: return clientResponse when no default case * Update samples Co-authored-by: Bruno Coelho <4brunu@users.noreply.github.com> --- bin/configs/swift5-vapor.yaml | 12 + docs/generators/swift5.md | 2 +- .../languages/Swift5ClientCodegen.java | 73 +- .../main/resources/swift5/APIHelper.mustache | 3 +- .../src/main/resources/swift5/APIs.mustache | 16 +- .../resources/swift5/Configuration.mustache | 9 +- .../main/resources/swift5/Extensions.mustache | 46 +- .../resources/swift5/Package.swift.mustache | 10 +- .../src/main/resources/swift5/README.mustache | 9 +- .../src/main/resources/swift5/api.mustache | 135 ++- .../main/resources/swift5/api_doc.mustache | 44 + .../src/main/resources/swift5/model.mustache | 3 +- .../main/resources/swift5/modelEnum.mustache | 4 +- .../modelInlineEnumDeclaration.mustache | 4 +- .../resources/swift5/modelObject.mustache | 8 +- .../main/resources/swift5/modelOneOf.mustache | 2 +- .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesAnyType.swift | 1 + .../Models/AdditionalPropertiesArray.swift | 1 + .../Models/AdditionalPropertiesBoolean.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Models/AdditionalPropertiesInteger.swift | 1 + .../Models/AdditionalPropertiesNumber.swift | 1 + .../Models/AdditionalPropertiesObject.swift | 1 + .../Models/AdditionalPropertiesString.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../Classes/OpenAPIs/Models/BigCat.swift | 1 + .../Classes/OpenAPIs/Models/BigCatAllOf.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../Classes/OpenAPIs/Models/XmlItem.swift | 1 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../petstore/swift5/oneOf/Package.resolved | 16 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../Classes/OpenAPIs/APIs/DefaultAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Classes/OpenAPIs/Models/Apple.swift | 1 + .../Classes/OpenAPIs/Models/Banana.swift | 1 + samples/client/petstore/swift5/oneOf/pom.xml | 43 + .../petstore/swift5/oneOf/run_spmbuild.sh | 3 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../readonlyProperties/Package.resolved | 16 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../swift5/readonlyProperties/pom.xml | 43 + .../swift5/readonlyProperties/run_spmbuild.sh | 3 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../client/petstore/swift5/swift5_test_all.sh | 14 +- .../Sources/PetstoreClient/APIs.swift | 2 +- .../PetstoreClient/APIs/AnotherFakeAPI.swift | 5 +- .../Sources/PetstoreClient/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Sources/PetstoreClient/APIs/PetAPI.swift | 5 +- .../PetstoreClient/APIs/StoreAPI.swift | 5 +- .../Sources/PetstoreClient/APIs/UserAPI.swift | 5 +- .../PetstoreClient/Configuration.swift | 2 + .../Models/AdditionalPropertiesClass.swift | 1 + .../PetstoreClient/Models/Animal.swift | 1 + .../PetstoreClient/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../Models/ArrayOfNumberOnly.swift | 1 + .../PetstoreClient/Models/ArrayTest.swift | 1 + .../Models/Capitalization.swift | 1 + .../Sources/PetstoreClient/Models/Cat.swift | 1 + .../PetstoreClient/Models/CatAllOf.swift | 1 + .../PetstoreClient/Models/Category.swift | 1 + .../PetstoreClient/Models/ClassModel.swift | 1 + .../PetstoreClient/Models/Client.swift | 1 + .../Sources/PetstoreClient/Models/Dog.swift | 1 + .../PetstoreClient/Models/DogAllOf.swift | 1 + .../PetstoreClient/Models/EnumArrays.swift | 1 + .../PetstoreClient/Models/EnumTest.swift | 1 + .../Sources/PetstoreClient/Models/File.swift | 1 + .../Models/FileSchemaTestClass.swift | 1 + .../PetstoreClient/Models/FormatTest.swift | 1 + .../Models/HasOnlyReadOnly.swift | 1 + .../Sources/PetstoreClient/Models/List.swift | 1 + .../PetstoreClient/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../Models/Model200Response.swift | 1 + .../Sources/PetstoreClient/Models/Name.swift | 1 + .../PetstoreClient/Models/NumberOnly.swift | 1 + .../Sources/PetstoreClient/Models/Order.swift | 1 + .../Models/OuterComposite.swift | 1 + .../Sources/PetstoreClient/Models/Pet.swift | 1 + .../PetstoreClient/Models/ReadOnlyFirst.swift | 1 + .../PetstoreClient/Models/Return.swift | 1 + .../Models/SpecialModelName.swift | 1 + .../Models/StringBooleanMap.swift | 1 + .../Sources/PetstoreClient/Models/Tag.swift | 1 + .../Models/TypeHolderDefault.swift | 1 + .../Models/TypeHolderExample.swift | 1 + .../Sources/PetstoreClient/Models/User.swift | 1 + .../petstore/swift5/vaporLibrary/.gitignore | 63 ++ .../vaporLibrary/.openapi-generator-ignore | 23 + .../vaporLibrary/.openapi-generator/FILES | 118 +++ .../vaporLibrary/.openapi-generator/VERSION | 1 + .../contents.xcworkspacedata | 7 + .../swift5/vaporLibrary/Package.resolved | 160 ++++ .../swift5/vaporLibrary/Package.swift | 31 + .../petstore/swift5/vaporLibrary/README.md | 149 +++ .../Sources/PetstoreClient/APIs.swift | 16 + .../PetstoreClient/APIs/AnotherFakeAPI.swift | 64 ++ .../Sources/PetstoreClient/APIs/FakeAPI.swift | 886 +++++++++++++++++ .../APIs/FakeClassnameTags123API.swift | 70 ++ .../Sources/PetstoreClient/APIs/PetAPI.swift | 581 +++++++++++ .../PetstoreClient/APIs/StoreAPI.swift | 228 +++++ .../Sources/PetstoreClient/APIs/UserAPI.swift | 413 ++++++++ .../PetstoreClient/Configuration.swift | 14 + .../Sources/PetstoreClient/Extensions.swift | 131 +++ .../Models/AdditionalPropertiesAnyType.swift | 72 ++ .../Models/AdditionalPropertiesArray.swift | 72 ++ .../Models/AdditionalPropertiesBoolean.swift | 72 ++ .../Models/AdditionalPropertiesClass.swift | 103 ++ .../Models/AdditionalPropertiesInteger.swift | 72 ++ .../Models/AdditionalPropertiesNumber.swift | 72 ++ .../Models/AdditionalPropertiesObject.swift | 72 ++ .../Models/AdditionalPropertiesString.swift | 72 ++ .../PetstoreClient/Models/Animal.swift | 49 + .../PetstoreClient/Models/AnimalFarm.swift | 14 + .../PetstoreClient/Models/ApiResponse.swift | 55 ++ .../Models/ArrayOfArrayOfNumberOnly.swift | 43 + .../Models/ArrayOfNumberOnly.swift | 43 + .../PetstoreClient/Models/ArrayTest.swift | 55 ++ .../PetstoreClient/Models/BigCat.swift | 49 + .../PetstoreClient/Models/BigCatAllOf.swift | 49 + .../Models/Capitalization.swift | 74 ++ .../Sources/PetstoreClient/Models/Cat.swift | 55 ++ .../PetstoreClient/Models/CatAllOf.swift | 43 + .../PetstoreClient/Models/Category.swift | 49 + .../PetstoreClient/Models/ClassModel.swift | 44 + .../PetstoreClient/Models/Client.swift | 43 + .../Sources/PetstoreClient/Models/Dog.swift | 55 ++ .../PetstoreClient/Models/DogAllOf.swift | 43 + .../PetstoreClient/Models/EnumArrays.swift | 57 ++ .../PetstoreClient/Models/EnumClass.swift | 18 + .../PetstoreClient/Models/EnumTest.swift | 85 ++ .../Sources/PetstoreClient/Models/File.swift | 45 + .../Models/FileSchemaTestClass.swift | 49 + .../PetstoreClient/Models/FormatTest.swift | 121 +++ .../Models/HasOnlyReadOnly.swift | 49 + .../Sources/PetstoreClient/Models/List.swift | 43 + .../PetstoreClient/Models/MapTest.swift | 65 ++ ...opertiesAndAdditionalPropertiesClass.swift | 55 ++ .../Models/Model200Response.swift | 50 + .../Sources/PetstoreClient/Models/Name.swift | 62 ++ .../PetstoreClient/Models/NumberOnly.swift | 43 + .../Sources/PetstoreClient/Models/Order.swift | 79 ++ .../Models/OuterComposite.swift | 55 ++ .../PetstoreClient/Models/OuterEnum.swift | 18 + .../Sources/PetstoreClient/Models/Pet.swift | 79 ++ .../PetstoreClient/Models/ReadOnlyFirst.swift | 49 + .../PetstoreClient/Models/Return.swift | 44 + .../Models/SpecialModelName.swift | 43 + .../Models/StringBooleanMap.swift | 61 ++ .../Sources/PetstoreClient/Models/Tag.swift | 49 + .../Models/TypeHolderDefault.swift | 67 ++ .../Models/TypeHolderExample.swift | 73 ++ .../Sources/PetstoreClient/Models/User.swift | 86 ++ .../PetstoreClient/Models/XmlItem.swift | 211 ++++ .../docs/AdditionalPropertiesAnyType.md | 10 + .../docs/AdditionalPropertiesArray.md | 10 + .../docs/AdditionalPropertiesBoolean.md | 10 + .../docs/AdditionalPropertiesClass.md | 20 + .../docs/AdditionalPropertiesInteger.md | 10 + .../docs/AdditionalPropertiesNumber.md | 10 + .../docs/AdditionalPropertiesObject.md | 10 + .../docs/AdditionalPropertiesString.md | 10 + .../swift5/vaporLibrary/docs/Animal.md | 11 + .../swift5/vaporLibrary/docs/AnimalFarm.md | 9 + .../vaporLibrary/docs/AnotherFakeAPI.md | 68 ++ .../swift5/vaporLibrary/docs/ApiResponse.md | 12 + .../docs/ArrayOfArrayOfNumberOnly.md | 10 + .../vaporLibrary/docs/ArrayOfNumberOnly.md | 10 + .../swift5/vaporLibrary/docs/ArrayTest.md | 12 + .../swift5/vaporLibrary/docs/BigCat.md | 10 + .../swift5/vaporLibrary/docs/BigCatAllOf.md | 10 + .../vaporLibrary/docs/Capitalization.md | 15 + .../petstore/swift5/vaporLibrary/docs/Cat.md | 10 + .../swift5/vaporLibrary/docs/CatAllOf.md | 10 + .../swift5/vaporLibrary/docs/Category.md | 11 + .../swift5/vaporLibrary/docs/ClassModel.md | 10 + .../swift5/vaporLibrary/docs/Client.md | 10 + .../petstore/swift5/vaporLibrary/docs/Dog.md | 10 + .../swift5/vaporLibrary/docs/DogAllOf.md | 10 + .../swift5/vaporLibrary/docs/EnumArrays.md | 11 + .../swift5/vaporLibrary/docs/EnumClass.md | 9 + .../swift5/vaporLibrary/docs/EnumTest.md | 14 + .../swift5/vaporLibrary/docs/FakeAPI.md | 901 ++++++++++++++++++ .../docs/FakeClassnameTags123API.md | 68 ++ .../petstore/swift5/vaporLibrary/docs/File.md | 10 + .../vaporLibrary/docs/FileSchemaTestClass.md | 11 + .../swift5/vaporLibrary/docs/FormatTest.md | 23 + .../vaporLibrary/docs/HasOnlyReadOnly.md | 11 + .../petstore/swift5/vaporLibrary/docs/List.md | 10 + .../swift5/vaporLibrary/docs/MapTest.md | 13 + ...dPropertiesAndAdditionalPropertiesClass.md | 12 + .../vaporLibrary/docs/Model200Response.md | 11 + .../petstore/swift5/vaporLibrary/docs/Name.md | 13 + .../swift5/vaporLibrary/docs/NumberOnly.md | 10 + .../swift5/vaporLibrary/docs/Order.md | 15 + .../vaporLibrary/docs/OuterComposite.md | 12 + .../swift5/vaporLibrary/docs/OuterEnum.md | 9 + .../petstore/swift5/vaporLibrary/docs/Pet.md | 15 + .../swift5/vaporLibrary/docs/PetAPI.md | 568 +++++++++++ .../swift5/vaporLibrary/docs/ReadOnlyFirst.md | 11 + .../swift5/vaporLibrary/docs/Return.md | 10 + .../vaporLibrary/docs/SpecialModelName.md | 10 + .../swift5/vaporLibrary/docs/StoreAPI.md | 250 +++++ .../vaporLibrary/docs/StringBooleanMap.md | 9 + .../petstore/swift5/vaporLibrary/docs/Tag.md | 11 + .../vaporLibrary/docs/TypeHolderDefault.md | 14 + .../vaporLibrary/docs/TypeHolderExample.md | 15 + .../petstore/swift5/vaporLibrary/docs/User.md | 17 + .../swift5/vaporLibrary/docs/UserAPI.md | 480 ++++++++++ .../swift5/vaporLibrary/docs/XmlItem.md | 38 + .../petstore/swift5/vaporLibrary/pom.xml | 43 + .../swift5/vaporLibrary/run_spmbuild.sh | 3 + .../swift5/x-swift-hashable/Package.resolved | 4 +- .../Classes/OpenAPIs/APIs.swift | 2 +- .../OpenAPIs/APIs/AnotherFakeAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/FakeAPI.swift | 5 +- .../APIs/FakeClassnameTags123API.swift | 5 +- .../Classes/OpenAPIs/APIs/PetAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/StoreAPI.swift | 5 +- .../Classes/OpenAPIs/APIs/UserAPI.swift | 5 +- .../Classes/OpenAPIs/Configuration.swift | 1 + .../Models/AdditionalPropertiesClass.swift | 1 + .../Classes/OpenAPIs/Models/Animal.swift | 1 + .../Classes/OpenAPIs/Models/ApiResponse.swift | 1 + .../Models/ArrayOfArrayOfNumberOnly.swift | 1 + .../OpenAPIs/Models/ArrayOfNumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/ArrayTest.swift | 1 + .../OpenAPIs/Models/Capitalization.swift | 1 + .../Classes/OpenAPIs/Models/Cat.swift | 1 + .../Classes/OpenAPIs/Models/CatAllOf.swift | 1 + .../Classes/OpenAPIs/Models/Category.swift | 1 + .../Classes/OpenAPIs/Models/ClassModel.swift | 1 + .../Classes/OpenAPIs/Models/Client.swift | 1 + .../Classes/OpenAPIs/Models/Dog.swift | 1 + .../Classes/OpenAPIs/Models/DogAllOf.swift | 1 + .../Classes/OpenAPIs/Models/EnumArrays.swift | 1 + .../Classes/OpenAPIs/Models/EnumTest.swift | 1 + .../Classes/OpenAPIs/Models/File.swift | 1 + .../OpenAPIs/Models/FileSchemaTestClass.swift | 1 + .../Classes/OpenAPIs/Models/FormatTest.swift | 1 + .../OpenAPIs/Models/HasOnlyReadOnly.swift | 1 + .../Classes/OpenAPIs/Models/List.swift | 1 + .../Classes/OpenAPIs/Models/MapTest.swift | 1 + ...opertiesAndAdditionalPropertiesClass.swift | 1 + .../OpenAPIs/Models/Model200Response.swift | 1 + .../Classes/OpenAPIs/Models/Name.swift | 1 + .../Classes/OpenAPIs/Models/NumberOnly.swift | 1 + .../Classes/OpenAPIs/Models/Order.swift | 1 + .../OpenAPIs/Models/OuterComposite.swift | 1 + .../Classes/OpenAPIs/Models/Pet.swift | 1 + .../OpenAPIs/Models/ReadOnlyFirst.swift | 1 + .../Classes/OpenAPIs/Models/Return.swift | 1 + .../OpenAPIs/Models/SpecialModelName.swift | 1 + .../OpenAPIs/Models/StringBooleanMap.swift | 1 + .../Classes/OpenAPIs/Models/Tag.swift | 1 + .../OpenAPIs/Models/TypeHolderDefault.swift | 1 + .../OpenAPIs/Models/TypeHolderExample.swift | 1 + .../Classes/OpenAPIs/Models/User.swift | 1 + .../petstore/swift5/x-swift-hashable/pom.xml | 43 + .../swift5/x-swift-hashable/run_spmbuild.sh | 3 + 672 files changed, 10197 insertions(+), 152 deletions(-) create mode 100644 bin/configs/swift5-vapor.yaml create mode 100644 samples/client/petstore/swift5/oneOf/Package.resolved create mode 100644 samples/client/petstore/swift5/oneOf/pom.xml create mode 100755 samples/client/petstore/swift5/oneOf/run_spmbuild.sh create mode 100644 samples/client/petstore/swift5/readonlyProperties/Package.resolved create mode 100644 samples/client/petstore/swift5/readonlyProperties/pom.xml create mode 100755 samples/client/petstore/swift5/readonlyProperties/run_spmbuild.sh create mode 100644 samples/client/petstore/swift5/vaporLibrary/.gitignore create mode 100644 samples/client/petstore/swift5/vaporLibrary/.openapi-generator-ignore create mode 100644 samples/client/petstore/swift5/vaporLibrary/.openapi-generator/FILES create mode 100644 samples/client/petstore/swift5/vaporLibrary/.openapi-generator/VERSION create mode 100644 samples/client/petstore/swift5/vaporLibrary/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata create mode 100644 samples/client/petstore/swift5/vaporLibrary/Package.resolved create mode 100644 samples/client/petstore/swift5/vaporLibrary/Package.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/README.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/PetAPI.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/UserAPI.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Configuration.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Extensions.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesAnyType.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesArray.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesBoolean.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesInteger.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesNumber.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesObject.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesString.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Animal.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AnimalFarm.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ApiResponse.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayTest.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCat.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCatAllOf.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Capitalization.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Cat.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/CatAllOf.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Category.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ClassModel.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Client.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Dog.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/DogAllOf.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumArrays.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumClass.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumTest.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/File.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FormatTest.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/List.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MapTest.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Model200Response.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Name.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/NumberOnly.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Order.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterComposite.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterEnum.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Pet.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Return.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Tag.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/User.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/XmlItem.swift create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesAnyType.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesArray.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesBoolean.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesClass.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesInteger.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesNumber.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesObject.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesString.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Animal.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AnimalFarm.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/AnotherFakeAPI.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/ApiResponse.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfArrayOfNumberOnly.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfNumberOnly.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/ArrayTest.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/BigCat.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/BigCatAllOf.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Capitalization.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Cat.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/CatAllOf.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Category.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/ClassModel.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Client.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Dog.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/DogAllOf.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/EnumArrays.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/EnumClass.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/EnumTest.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/FakeAPI.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/FakeClassnameTags123API.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/File.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/FileSchemaTestClass.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/FormatTest.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/HasOnlyReadOnly.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/List.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/MapTest.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Model200Response.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Name.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/NumberOnly.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Order.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/OuterComposite.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/OuterEnum.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Pet.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/PetAPI.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/ReadOnlyFirst.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Return.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/SpecialModelName.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/StoreAPI.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/StringBooleanMap.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/Tag.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderDefault.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderExample.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/User.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/UserAPI.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/docs/XmlItem.md create mode 100644 samples/client/petstore/swift5/vaporLibrary/pom.xml create mode 100755 samples/client/petstore/swift5/vaporLibrary/run_spmbuild.sh create mode 100644 samples/client/petstore/swift5/x-swift-hashable/pom.xml create mode 100755 samples/client/petstore/swift5/x-swift-hashable/run_spmbuild.sh diff --git a/bin/configs/swift5-vapor.yaml b/bin/configs/swift5-vapor.yaml new file mode 100644 index 000000000000..5f1d2067969f --- /dev/null +++ b/bin/configs/swift5-vapor.yaml @@ -0,0 +1,12 @@ +generatorName: swift5 +outputDir: samples/client/petstore/swift5/vaporLibrary +library: vapor +inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml +templateDir: modules/openapi-generator/src/main/resources/swift5 +generateAliasAsModel: true +additionalProperties: + projectName: PetstoreClient + useSPMFileStructure: true + useClasses: true + useBacktickEscapes: true + mapFileBinaryToData: true diff --git a/docs/generators/swift5.md b/docs/generators/swift5.md index 51dc7529358f..96cfe8424c08 100644 --- a/docs/generators/swift5.md +++ b/docs/generators/swift5.md @@ -16,7 +16,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |hideGenerationTimestamp|Hides the generation timestamp when files are generated.| |true| |legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C#have this enabled by default).|
**true**
The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.
**false**
The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.
|true| |lenientTypeCast|Accept and cast values for simple types (string->bool, string->int, int->string)| |false| -|library|Library template (sub-template) to use|
**urlsession**
[DEFAULT] HTTP client: URLSession
**alamofire**
HTTP client: Alamofire
|urlsession| +|library|Library template (sub-template) to use|
**urlsession**
[DEFAULT] HTTP client: URLSession
**alamofire**
HTTP client: Alamofire
**vapor**
HTTP client: Vapor
|urlsession| |mapFileBinaryToData|[WARNING] This option will be removed and enabled by default in the future once we've enhanced the code to work with `Data` in all the different situations. Map File and Binary to Data (default: false)| |false| |nonPublicApi|Generates code with reduced access modifiers; allows embedding elsewhere without exposing non-public API calls to consumers.(default: false)| |null| |objcCompatible|Add additional properties and methods for Objective-C compatibility (default: false)| |null| diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java index f06bbd057c61..bf7dfd78d89d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java @@ -70,6 +70,7 @@ public class Swift5ClientCodegen extends DefaultCodegen implements CodegenConfig public static final String MAP_FILE_BINARY_TO_DATA = "mapFileBinaryToData"; protected static final String LIBRARY_ALAMOFIRE = "alamofire"; protected static final String LIBRARY_URLSESSION = "urlsession"; + protected static final String LIBRARY_VAPOR = "vapor"; protected static final String RESPONSE_LIBRARY_PROMISE_KIT = "PromiseKit"; protected static final String RESPONSE_LIBRARY_RX_SWIFT = "RxSwift"; protected static final String RESPONSE_LIBRARY_RESULT = "Result"; @@ -297,6 +298,7 @@ public Swift5ClientCodegen() { supportedLibraries.put(LIBRARY_URLSESSION, "[DEFAULT] HTTP client: URLSession"); supportedLibraries.put(LIBRARY_ALAMOFIRE, "HTTP client: Alamofire"); + supportedLibraries.put(LIBRARY_VAPOR, "HTTP client: Vapor"); CliOption libraryOption = new CliOption(CodegenConstants.LIBRARY, "Library template (sub-template) to use"); libraryOption.setEnum(supportedLibraries); @@ -499,57 +501,59 @@ public void processOpts() { additionalProperties.put("apiDocPath", apiDocPath); additionalProperties.put("modelDocPath", modelDocPath); - supportingFiles.add(new SupportingFile("Podspec.mustache", - "", - projectName + ".podspec")); - supportingFiles.add(new SupportingFile("Cartfile.mustache", - "", - "Cartfile")); + if (!getLibrary().equals(LIBRARY_VAPOR)) { + supportingFiles.add(new SupportingFile("Podspec.mustache", + "", + projectName + ".podspec")); + supportingFiles.add(new SupportingFile("Cartfile.mustache", + "", + "Cartfile")); + supportingFiles.add(new SupportingFile("CodableHelper.mustache", + sourceFolder, + "CodableHelper.swift")); + supportingFiles.add(new SupportingFile("OpenISO8601DateFormatter.mustache", + sourceFolder, + "OpenISO8601DateFormatter.swift")); + supportingFiles.add(new SupportingFile("JSONDataEncoding.mustache", + sourceFolder, + "JSONDataEncoding.swift")); + supportingFiles.add(new SupportingFile("JSONEncodingHelper.mustache", + sourceFolder, + "JSONEncodingHelper.swift")); + supportingFiles.add(new SupportingFile("git_push.sh.mustache", + "", + "git_push.sh")); + supportingFiles.add(new SupportingFile("SynchronizedDictionary.mustache", + sourceFolder, + "SynchronizedDictionary.swift")); + supportingFiles.add(new SupportingFile("XcodeGen.mustache", + "", + "project.yml")); + supportingFiles.add(new SupportingFile("APIHelper.mustache", + sourceFolder, + "APIHelper.swift")); + supportingFiles.add(new SupportingFile("Models.mustache", + sourceFolder, + "Models.swift")); + } supportingFiles.add(new SupportingFile("Package.swift.mustache", "", "Package.swift")); - supportingFiles.add(new SupportingFile("APIHelper.mustache", - sourceFolder, - "APIHelper.swift")); supportingFiles.add(new SupportingFile("Configuration.mustache", sourceFolder, "Configuration.swift")); supportingFiles.add(new SupportingFile("Extensions.mustache", sourceFolder, "Extensions.swift")); - supportingFiles.add(new SupportingFile("Models.mustache", - sourceFolder, - "Models.swift")); supportingFiles.add(new SupportingFile("APIs.mustache", sourceFolder, "APIs.swift")); - supportingFiles.add(new SupportingFile("CodableHelper.mustache", - sourceFolder, - "CodableHelper.swift")); - supportingFiles.add(new SupportingFile("OpenISO8601DateFormatter.mustache", - sourceFolder, - "OpenISO8601DateFormatter.swift")); - supportingFiles.add(new SupportingFile("JSONDataEncoding.mustache", - sourceFolder, - "JSONDataEncoding.swift")); - supportingFiles.add(new SupportingFile("JSONEncodingHelper.mustache", - sourceFolder, - "JSONEncodingHelper.swift")); - supportingFiles.add(new SupportingFile("git_push.sh.mustache", - "", - "git_push.sh")); - supportingFiles.add(new SupportingFile("SynchronizedDictionary.mustache", - sourceFolder, - "SynchronizedDictionary.swift")); supportingFiles.add(new SupportingFile("gitignore.mustache", "", ".gitignore")); supportingFiles.add(new SupportingFile("README.mustache", "", "README.md")); - supportingFiles.add(new SupportingFile("XcodeGen.mustache", - "", - "project.yml")); switch (getLibrary()) { case LIBRARY_ALAMOFIRE: @@ -564,6 +568,9 @@ public void processOpts() { sourceFolder, "URLSessionImplementations.swift")); break; + case LIBRARY_VAPOR: + additionalProperties.put("useVapor", true); + break; default: break; } diff --git a/modules/openapi-generator/src/main/resources/swift5/APIHelper.mustache b/modules/openapi-generator/src/main/resources/swift5/APIHelper.mustache index 94dc810006a6..e535c7df4c44 100644 --- a/modules/openapi-generator/src/main/resources/swift5/APIHelper.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/APIHelper.mustache @@ -4,7 +4,8 @@ // https://openapi-generator.tech // -import Foundation +import Foundation{{#useVapor}} +import Vapor{{/useVapor}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} struct APIHelper { {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static func rejectNil(_ source: [String: Any?]) -> [String: Any]? { diff --git a/modules/openapi-generator/src/main/resources/swift5/APIs.mustache b/modules/openapi-generator/src/main/resources/swift5/APIs.mustache index b05f06301797..f931988cf9ff 100644 --- a/modules/openapi-generator/src/main/resources/swift5/APIs.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/APIs.mustache @@ -5,18 +5,26 @@ // import Foundation +{{#useVapor}} +import Vapor +{{/useVapor}} @available(*, deprecated, renamed: "{{projectName}}") {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} typealias {{projectName}}API = {{projectName}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class {{projectName}} { {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var basePath = "{{{basePath}}}" - {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var credential: URLCredential? - {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var customHeaders: [String: String] = [:]{{#useAlamofire}} + {{#useVapor}} + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var customHeaders: HTTPHeaders = [:] + {{/useVapor}} + {{^useVapor}} + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var customHeaders: [String: String] = [:] + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var credential: URLCredential?{{#useAlamofire}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory(){{/useAlamofire}}{{#useURLSession}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory(){{/useURLSession}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var apiResponseQueue: DispatchQueue = .main -} + {{/useVapor}} +}{{^useVapor}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class RequestBuilder { var credential: URLCredential? @@ -63,4 +71,4 @@ import Foundation {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} protocol RequestBuilderFactory { func getNonDecodableBuilder() -> RequestBuilder.Type func getBuilder() -> RequestBuilder.Type -} +}{{/useVapor}} diff --git a/modules/openapi-generator/src/main/resources/swift5/Configuration.mustache b/modules/openapi-generator/src/main/resources/swift5/Configuration.mustache index a154850602e5..d6bbdc0ae264 100644 --- a/modules/openapi-generator/src/main/resources/swift5/Configuration.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/Configuration.mustache @@ -4,7 +4,8 @@ // https://openapi-generator.tech // -import Foundation +import Foundation{{#useVapor}} +import Vapor{{/useVapor}} {{#swiftUseApiNamespace}} @available(*, deprecated, renamed: "{{projectName}}.Configuration") @@ -13,11 +14,15 @@ import Foundation extension {{projectName}} { {{/swiftUseApiNamespace}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class Configuration { + {{#useVapor}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var apiClient: Vapor.Client? = nil + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var apiWrapper: (inout Vapor.ClientRequest) throws -> () = { _ in } + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var contentConfiguration = ContentConfiguration.default(){{/useVapor}}{{^useVapor}} // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") - {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ" + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"{{/useVapor}} } {{#swiftUseApiNamespace}} } + {{/swiftUseApiNamespace}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/swift5/Extensions.mustache b/modules/openapi-generator/src/main/resources/swift5/Extensions.mustache index a4d5dd4b3058..e81a205164fd 100644 --- a/modules/openapi-generator/src/main/resources/swift5/Extensions.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/Extensions.mustache @@ -8,7 +8,8 @@ import Foundation #if canImport(AnyCodable) import AnyCodable #endif{{#usePromiseKit}} -import PromiseKit{{/usePromiseKit}} +import PromiseKit{{/usePromiseKit}}{{#useVapor}} +import Vapor{{/useVapor}}{{^useVapor}} extension Bool: JSONEncodable { func encodeToJSON() -> Any { return self as Any } @@ -94,7 +95,7 @@ extension UUID: JSONEncodable { func encodeToJSON() -> Any { return self.uuidString } -}{{#generateModelAdditionalProperties}} +}{{/useVapor}}{{#generateModelAdditionalProperties}} extension String: CodingKey { @@ -180,13 +181,13 @@ extension KeyedDecodingContainerProtocol { return map } -}{{/generateModelAdditionalProperties}} +}{{/generateModelAdditionalProperties}}{{^useVapor}} extension HTTPURLResponse { var isStatusCodeSuccessful: Bool { return Array(200 ..< 300).contains(statusCode) } -}{{#usePromiseKit}} +}{{/useVapor}}{{#usePromiseKit}} extension RequestBuilder { {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} func execute() -> Promise> { @@ -201,4 +202,39 @@ extension RequestBuilder { } return deferred.promise } -}{{/usePromiseKit}} +}{{/usePromiseKit}}{{#useVapor}} + +extension UUID: Content { } + +extension URL: Content { } + +extension Bool: Content { } + +extension Set: ResponseEncodable where Element: Content { + public func encodeResponse(for request: Vapor.Request) -> EventLoopFuture { + let response = Vapor.Response() + do { + try response.content.encode(Array(self)) + } catch { + return request.eventLoop.makeFailedFuture(error) + } + return request.eventLoop.makeSucceededFuture(response) + } +} + +extension Set: RequestDecodable where Element: Content { + public static func decodeRequest(_ request: Vapor.Request) -> EventLoopFuture { + do { + let content = try request.content.decode([Element].self) + return request.eventLoop.makeSucceededFuture(Set(content)) + } catch { + return request.eventLoop.makeFailedFuture(error) + } + } +} + +extension Set: Content where Element: Content { } + +extension AnyCodable: Content {} +{{/useVapor}} + diff --git a/modules/openapi-generator/src/main/resources/swift5/Package.swift.mustache b/modules/openapi-generator/src/main/resources/swift5/Package.swift.mustache index 5dc55ffef832..5b106288b3cd 100644 --- a/modules/openapi-generator/src/main/resources/swift5/Package.swift.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/Package.swift.mustache @@ -5,10 +5,15 @@ import PackageDescription let package = Package( name: "{{projectName}}", platforms: [ + {{#useVapor}} + .macOS(.v10_15), + {{/useVapor}} + {{^useVapor}} .iOS(.v9), .macOS(.v10_11), .tvOS(.v9), .watchOS(.v3), + {{/useVapor}} ], products: [ // Products define the executables and libraries produced by a package, and make them visible to other packages. @@ -23,6 +28,9 @@ let package = Package( {{#useAlamofire}} .package(url: "https://github.com/Alamofire/Alamofire.git", from: "4.9.1"), {{/useAlamofire}} + {{#useVapor}} + .package(url: "https://github.com/vapor/vapor.git", from: "4.0.0") + {{/useVapor}} {{#usePromiseKit}} .package(url: "https://github.com/mxcl/PromiseKit.git", from: "6.15.3"), {{/usePromiseKit}} @@ -35,7 +43,7 @@ let package = Package( // Targets can depend on other targets in this package, and on products in packages which this package depends on. .target( name: "{{projectName}}", - dependencies: ["AnyCodable", {{#useAlamofire}}"Alamofire", {{/useAlamofire}}{{#usePromiseKit}}"PromiseKit", {{/usePromiseKit}}{{#useRxSwift}}"RxSwift"{{/useRxSwift}}], + dependencies: ["AnyCodable", {{#useVapor}}"Vapor", {{/useVapor}}{{#useAlamofire}}"Alamofire", {{/useAlamofire}}{{#usePromiseKit}}"PromiseKit", {{/usePromiseKit}}{{#useRxSwift}}"RxSwift"{{/useRxSwift}}], path: "{{#swiftPackagePath}}{{swiftPackagePath}}{{/swiftPackagePath}}{{^swiftPackagePath}}{{#useSPMFileStructure}}Sources/{{projectName}}{{/useSPMFileStructure}}{{^useSPMFileStructure}}{{projectName}}/Classes{{/useSPMFileStructure}}{{/swiftPackagePath}}" ), ] diff --git a/modules/openapi-generator/src/main/resources/swift5/README.mustache b/modules/openapi-generator/src/main/resources/swift5/README.mustache index 4e15bc40b0bc..2fc73bcdbc16 100644 --- a/modules/openapi-generator/src/main/resources/swift5/README.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/README.mustache @@ -19,6 +19,13 @@ For more information, please visit [{{{infoUrl}}}]({{{infoUrl}}}) ## Installation +{{#useVapor}} +Add the following entry in your Package.swift: + +> .package(path: "./{{{projectName}}}") + +{{/useVapor}} +{{^useVapor}} ### Carthage Run `carthage update` @@ -27,7 +34,7 @@ Run `carthage update` Run `pod install` -## Documentation for API Endpoints +{{/useVapor}}## Documentation for API Endpoints All URIs are relative to *{{basePath}}* diff --git a/modules/openapi-generator/src/main/resources/swift5/api.mustache b/modules/openapi-generator/src/main/resources/swift5/api.mustache index 92643fdf2686..7d84971ab983 100644 --- a/modules/openapi-generator/src/main/resources/swift5/api.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/api.mustache @@ -10,21 +10,26 @@ import PromiseKit{{/usePromiseKit}}{{#useRxSwift}} import RxSwift{{/useRxSwift}}{{#useCombine}} #if canImport(Combine) import Combine -#endif{{/useCombine}}{{#swiftUseApiNamespace}} +#endif{{/useCombine}}{{#useVapor}} +import Vapor{{/useVapor}} +#if canImport(AnyCodable) +import AnyCodable +#endif{{#swiftUseApiNamespace}} extension {{projectName}} { {{/swiftUseApiNamespace}} {{#description}} -/** {{description}} */{{/description}} +/** {{{description}}} */{{/description}} {{#objcCompatible}}@objc {{/objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class {{classname}}{{#objcCompatible}} : NSObject{{/objcCompatible}} { {{#operation}} + {{#allParams}} {{#isEnum}} /** * enum for parameter {{paramName}} */ - {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{enumName}}_{{operationId}}: {{^isContainer}}{{{dataType}}}{{/isContainer}}{{#isContainer}}String{{/isContainer}}, CaseIterable { + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{enumName}}_{{operationId}}: {{^isContainer}}{{{dataType}}}{{/isContainer}}{{#isContainer}}String{{/isContainer}}, CaseIterable{{#useVapor}}, Content{{/useVapor}} { {{#allowableValues}} {{#enumVars}} case {{name}} = {{{value}}} @@ -34,6 +39,7 @@ extension {{projectName}} { {{/isEnum}} {{/allParams}} +{{^useVapor}} {{^usePromiseKit}} {{^useRxSwift}} {{^useResult}} @@ -69,6 +75,7 @@ extension {{projectName}} { {{/useResult}} {{/useRxSwift}} {{/usePromiseKit}} +{{/useVapor}} {{#usePromiseKit}} /** {{#summary}} @@ -196,6 +203,126 @@ extension {{projectName}} { } } {{/useResult}} +{{#useVapor}} + /** + {{#summary}} + {{{summary}}} + {{/summary}} + {{httpMethod}} {{{path}}}{{#notes}} + {{{notes}}}{{/notes}}{{#subresourceOperation}} + subresourceOperation: {{subresourceOperation}}{{/subresourceOperation}}{{#defaultResponse}} + defaultResponse: {{defaultResponse}}{{/defaultResponse}} + {{#authMethods}} + - {{#isBasic}}BASIC{{/isBasic}}{{#isOAuth}}OAuth{{/isOAuth}}{{#isApiKey}}API Key{{/isApiKey}}: + - type: {{type}}{{#keyParamName}} {{keyParamName}} {{#isKeyInQuery}}(QUERY){{/isKeyInQuery}}{{#isKeyInHeaer}}(HEADER){{/isKeyInHeaer}}{{/keyParamName}} + - name: {{name}} + {{/authMethods}} + {{#hasResponseHeaders}} + - responseHeaders: [{{#responseHeaders}}{{{baseName}}}({{{dataType}}}){{^-last}}, {{/-last}}{{/responseHeaders}}] + {{/hasResponseHeaders}} + {{#externalDocs}} + - externalDocs: {{externalDocs}} + {{/externalDocs}} + {{#allParams}} + - parameter {{paramName}}: ({{#isFormParam}}form{{/isFormParam}}{{#isQueryParam}}query{{/isQueryParam}}{{#isPathParam}}path{{/isPathParam}}{{#isHeaderParam}}header{{/isHeaderParam}}{{#isBodyParam}}body{{/isBodyParam}}) {{{description}}} {{^required}}(optional{{#defaultValue}}, default to {{{.}}}{{/defaultValue}}){{/required}} + {{/allParams}} + - returns: `EventLoopFuture` of `ClientResponse` {{{description}}} + */ + {{#isDeprecated}} + @available(*, deprecated, message: "This operation is deprecated.") + {{/isDeprecated}} + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}Raw({{#allParams}}{{paramName}}: {{#isEnum}}{{#isArray}}[{{enumName}}_{{operationId}}]{{/isArray}}{{^isArray}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}headers: HTTPHeaders = {{projectName}}.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + {{^pathParams}}let{{/pathParams}}{{#pathParams}}{{#-first}}var{{/-first}}{{/pathParams}} path = "{{{path}}}"{{#pathParams}} + let {{paramName}}PreEscape = String(describing: {{#isEnum}}{{paramName}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}.rawValue{{/isContainer}}{{/isEnum}}{{^isEnum}}{{paramName}}{{/isEnum}}) + let {{paramName}}PostEscape = {{paramName}}PreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{{=<% %>=}}{<%baseName%>}<%={{ }}=%>", with: {{paramName}}PostEscape, options: .literal, range: nil){{/pathParams}} + let URLString = {{projectName}}.basePath + path + + guard let apiClient = {{#swiftUseApiNamespace}}{{projectName}}.{{/swiftUseApiNamespace}}Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.{{httpMethod}}, headers: headers, to: URI(string: URLString)) { request in + try {{#swiftUseApiNamespace}}{{projectName}}.{{/swiftUseApiNamespace}}Configuration.apiWrapper(&request) + {{#hasHeaderParams}}{{#headerParams}} + request.headers.add(name: "{{baseName}}", value: {{#isArray}}{{paramName}}{{^required}}?{{/required}}.map { $0{{#isEnum}}.rawValue{{/isEnum}}.description }.description{{/isArray}}{{^isArray}}{{#isEnum}}{{paramName}}{{^required}}?{{/required}}.rawValue.description{{/isEnum}}{{^isEnum}}{{paramName}}{{^required}}?{{/required}}.description{{/isEnum}}{{/isArray}}{{^required}} ?? ""{{/required}}) + {{/headerParams}}{{/hasHeaderParams}} + {{#hasQueryParams}}struct QueryParams: Content { + {{#queryParams}} + var {{paramName}}: {{#isEnum}}{{#isArray}}[{{enumName}}_{{operationId}}]{{/isArray}}{{^isArray}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}?{{/required}} + {{/queryParams}} + } + try request.query.encode(QueryParams({{#queryParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/queryParams}})){{/hasQueryParams}} + {{#hasBodyParam}} + {{#bodyParam}}{{#required}}{{#isBinary}}request.body = ByteBuffer(data: {{paramName}}){{/isBinary}}{{^isBinary}}{{#isFile}}request.body = ByteBuffer(data: {{paramName}}){{/isFile}}try request.content.encode({{paramName}}, using: Configuration.contentConfiguration.requireEncoder(for: {{{dataType}}}.defaultContentType)){{/isBinary}}{{/required}}{{^required}}if let body = {{paramName}} { + + {{#isBinary}}request.body = ByteBuffer(data: body){{/isBinary}}{{^isBinary}}{{#isFile}}request.body = ByteBuffer(data: body){{/isFile}}try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: {{{dataType}}}.defaultContentType)){{/isBinary}} + }{{/required}}{{/bodyParam}} + {{/hasBodyParam}} + {{#hasFormParams}}struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + {{#formParams}} + var {{paramName}}: {{#isEnum}}{{#isArray}}[{{enumName}}_{{operationId}}]{{/isArray}}{{^isArray}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}?{{/required}} + {{/formParams}} + } + try request.content.encode(FormParams({{#formParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/formParams}}), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)){{/hasFormParams}} + try beforeSend(&request) + } + } + + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}} { + {{#responses}} + case http{{code}}({{#dataType}}value: {{{dataType}}}, {{/dataType}}raw: ClientResponse) + {{/responses}} + {{^hasDefaultResponse}} + case http0(raw: ClientResponse) + {{/hasDefaultResponse}} + } + + /** + {{#summary}} + {{{summary}}} + {{/summary}} + {{httpMethod}} {{{path}}}{{#notes}} + {{{notes}}}{{/notes}}{{#subresourceOperation}} + subresourceOperation: {{subresourceOperation}}{{/subresourceOperation}}{{#defaultResponse}} + defaultResponse: {{defaultResponse}}{{/defaultResponse}} + {{#authMethods}} + - {{#isBasic}}BASIC{{/isBasic}}{{#isOAuth}}OAuth{{/isOAuth}}{{#isApiKey}}API Key{{/isApiKey}}: + - type: {{type}}{{#keyParamName}} {{keyParamName}} {{#isKeyInQuery}}(QUERY){{/isKeyInQuery}}{{#isKeyInHeaer}}(HEADER){{/isKeyInHeaer}}{{/keyParamName}} + - name: {{name}} + {{/authMethods}} + {{#hasResponseHeaders}} + - responseHeaders: [{{#responseHeaders}}{{{baseName}}}({{{dataType}}}){{^-last}}, {{/-last}}{{/responseHeaders}}] + {{/hasResponseHeaders}} + {{#externalDocs}} + - externalDocs: {{externalDocs}} + {{/externalDocs}} + {{#allParams}} + - parameter {{paramName}}: ({{#isFormParam}}form{{/isFormParam}}{{#isQueryParam}}query{{/isQueryParam}}{{#isPathParam}}path{{/isPathParam}}{{#isHeaderParam}}header{{/isHeaderParam}}{{#isBodyParam}}body{{/isBodyParam}}) {{{description}}} {{^required}}(optional{{#defaultValue}}, default to {{{.}}}{{/defaultValue}}){{/required}} + {{/allParams}} + - returns: `EventLoopFuture` of `{{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}}` {{{description}}} + */ + {{#isDeprecated}} + @available(*, deprecated, message: "This operation is deprecated.") + {{/isDeprecated}} + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isArray}}[{{enumName}}_{{operationId}}]{{/isArray}}{{^isArray}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}headers: HTTPHeaders = {{projectName}}.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture<{{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}}> { + return {{operationId}}Raw({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> {{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}} in + switch response.status.code { + {{#responses}} + {{#isDefault}}default{{/isDefault}}{{^isDefault}}case {{code}}{{/isDefault}}: + return .http{{code}}({{#dataType}}value: {{#isBinary}}Data(buffer: response.body ?? ByteBuffer()){{/isBinary}}{{^isBinary}}{{#isFile}}Data(buffer: response.body ?? ByteBuffer()){{/isFile}}{{^isFile}}try response.content.decode({{{dataType}}}.self, using: Configuration.contentConfiguration.requireDecoder(for: {{{dataType}}}.defaultContentType)){{/isFile}}{{/isBinary}}, {{/dataType}}raw: response) + {{/responses}} + {{^hasDefaultResponse}} + default: + return .http0(raw: response) + {{/hasDefaultResponse}} + } + } + } + +{{/useVapor}} +{{^useVapor}} /** {{#summary}} @@ -268,7 +395,7 @@ extension {{projectName}} { return requestBuilder.init(method: "{{httpMethod}}", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - +{{/useVapor}} {{/operation}} } {{#swiftUseApiNamespace}} diff --git a/modules/openapi-generator/src/main/resources/swift5/api_doc.mustache b/modules/openapi-generator/src/main/resources/swift5/api_doc.mustache index f57a93153c66..93b51e32535d 100644 --- a/modules/openapi-generator/src/main/resources/swift5/api_doc.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/api_doc.mustache @@ -14,7 +14,9 @@ Method | HTTP request | Description ```swift {{^usePromiseKit}} {{^useRxSwift}} +{{^useVapor}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}completion: @escaping (_ data: {{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}Void{{/returnType}}?, _ error: Error?) -> Void) +{{/useVapor}} {{/useRxSwift}} {{/usePromiseKit}} {{#usePromiseKit}} @@ -23,6 +25,9 @@ Method | HTTP request | Description {{#useRxSwift}} {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}) -> Observable<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}Void{{/returnType}}> {{/useRxSwift}} +{{#useVapor}} + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}open{{/nonPublicApi}} class func {{operationId}}({{#allParams}}{{paramName}}: {{#isEnum}}{{#isContainer}}{{{dataType}}}{{/isContainer}}{{^isContainer}}{{{datatypeWithEnum}}}_{{operationId}}{{/isContainer}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{^required}}? = nil{{/required}}{{^-last}}, {{/-last}}{{/allParams}}{{#hasParams}}, {{/hasParams}}headers: HTTPHeaders = {{projectName}}.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture<{{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}}> +{{/useVapor}} ``` {{{summary}}}{{#notes}} @@ -39,6 +44,7 @@ import {{{projectName}}} {{^usePromiseKit}} {{^useRxSwift}} +{{^useVapor}} {{#summary}} // {{{.}}} {{/summary}} @@ -52,6 +58,7 @@ import {{{projectName}}} dump(response) } } +{{/useVapor}} {{/useRxSwift}} {{/usePromiseKit}} {{#usePromiseKit}} @@ -69,6 +76,27 @@ import {{{projectName}}} {{#useRxSwift}} // TODO RxSwift sample code not yet implemented. To contribute, please open a ticket via http://github.com/OpenAPITools/openapi-generator/issues/new {{/useRxSwift}} +{{#useVapor}} +{{#summary}} +// {{{.}}} +{{/summary}} +{{classname}}.{{{operationId}}}({{#allParams}}{{paramName}}: {{paramName}}{{^-last}}, {{/-last}}{{/allParams}}).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + {{#responses}} + case .http{{code}}(let value, let raw): + {{/responses}} + {{^hasDefaultResponse}} + case .http0(let value, let raw): + {{/hasDefaultResponse}} + } + } +} +{{/useVapor}} ``` ### Parameters @@ -80,7 +108,23 @@ Name | Type | Description | Notes ### Return type +{{#useVapor}} +#### {{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}} + +```swift +{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{#lambda.titlecase}}{{operationId}}{{/lambda.titlecase}} { + {{#responses}} + case http{{code}}(value: {{#dataType}}{{dataType}}?{{/dataType}}{{^dataType}}Void?{{/dataType}}, raw: ClientResponse) + {{/responses}} + {{^hasDefaultResponse}} + case http0(value: {{#returnType}}{{returnType}}?{{/returnType}}{{^returnType}}Void?{{/returnType}}, raw: ClientResponse) + {{/hasDefaultResponse}} +} +``` +{{/useVapor}} +{{^useVapor}} {{#returnType}}{{#returnTypeIsPrimitive}}**{{{returnType}}}**{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}[**{{{returnType}}}**]({{returnBaseType}}.md){{/returnTypeIsPrimitive}}{{/returnType}}{{^returnType}}Void (empty response body){{/returnType}} +{{/useVapor}} ### Authorization diff --git a/modules/openapi-generator/src/main/resources/swift5/model.mustache b/modules/openapi-generator/src/main/resources/swift5/model.mustache index f9107398cfa3..47df79b7c7d2 100644 --- a/modules/openapi-generator/src/main/resources/swift5/model.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/model.mustache @@ -8,7 +8,8 @@ import Foundation #if canImport(AnyCodable) import AnyCodable -#endif +#endif{{#useVapor}} +import Vapor{{/useVapor}} {{#swiftUseApiNamespace}} @available(*, deprecated, renamed: "{{projectName}}.{{classname}}") diff --git a/modules/openapi-generator/src/main/resources/swift5/modelEnum.mustache b/modules/openapi-generator/src/main/resources/swift5/modelEnum.mustache index b10347d63db3..4d868682a1e3 100644 --- a/modules/openapi-generator/src/main/resources/swift5/modelEnum.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/modelEnum.mustache @@ -1,7 +1,7 @@ -{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{classname}}: {{dataType}}, Codable, CaseIterable { +{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{classname}}: {{dataType}}, {{#useVapor}}Content, Hashable{{/useVapor}}{{^useVapor}}Codable{{/useVapor}}, CaseIterable { {{#allowableValues}} {{#enumVars}} - case {{name}} = {{{value}}} + case {{{name}}} = {{{value}}} {{/enumVars}} {{/allowableValues}} } \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/swift5/modelInlineEnumDeclaration.mustache b/modules/openapi-generator/src/main/resources/swift5/modelInlineEnumDeclaration.mustache index 1c749e0b6cd9..039bae3cb73d 100644 --- a/modules/openapi-generator/src/main/resources/swift5/modelInlineEnumDeclaration.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/modelInlineEnumDeclaration.mustache @@ -1,7 +1,7 @@ - {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{enumName}}: {{^isContainer}}{{dataType}}{{/isContainer}}{{#isContainer}}String{{/isContainer}}, Codable, CaseIterable { + {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} enum {{enumName}}: {{^isContainer}}{{dataType}}{{/isContainer}}{{#isContainer}}String{{/isContainer}}, {{#useVapor}}Content, Hashable{{/useVapor}}{{^useVapor}}Codable{{/useVapor}}, CaseIterable { {{#allowableValues}} {{#enumVars}} - case {{name}} = {{{value}}} + case {{{name}}} = {{{value}}} {{/enumVars}} {{/allowableValues}} } \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/swift5/modelObject.mustache b/modules/openapi-generator/src/main/resources/swift5/modelObject.mustache index da0d44247fc0..450d95f1f765 100644 --- a/modules/openapi-generator/src/main/resources/swift5/modelObject.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/modelObject.mustache @@ -1,4 +1,4 @@ -{{^objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{#useClasses}}final class{{/useClasses}}{{^useClasses}}struct{{/useClasses}} {{classname}}: Codable{{#vendorExtensions.x-swift-hashable}}, Hashable{{/vendorExtensions.x-swift-hashable}} { +{{^objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{#useClasses}}final class{{/useClasses}}{{^useClasses}}struct{{/useClasses}} {{{classname}}}: {{#useVapor}}Content{{/useVapor}}{{^useVapor}}Codable{{/useVapor}}{{#vendorExtensions.x-swift-hashable}}, Hashable{{/vendorExtensions.x-swift-hashable}} { {{/objcCompatible}}{{#objcCompatible}}@objc {{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} class {{classname}}: NSObject, Codable { {{/objcCompatible}} @@ -9,12 +9,12 @@ {{/allVars}} {{#allVars}} {{#isEnum}} - {{#description}}/** {{description}} */ + {{#description}}/** {{{description}}} */ {{/description}}{{#deprecated}}@available(*, deprecated, message: "This property is deprecated.") {{/deprecated}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{#readonlyProperties}}private(set) {{/readonlyProperties}}var {{{name}}}: {{{datatypeWithEnum}}}{{#required}}{{#isNullable}}?{{/isNullable}}{{/required}}{{^required}}?{{/required}}{{#defaultValue}} = {{{defaultValue}}}{{/defaultValue}} {{/isEnum}} {{^isEnum}} - {{#description}}/** {{description}} */ + {{#description}}/** {{{description}}} */ {{/description}}{{#deprecated}}@available(*, deprecated, message: "This property is deprecated.") {{/deprecated}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{#readonlyProperties}}private(set) {{/readonlyProperties}}var {{{name}}}: {{{datatype}}}{{#required}}{{#isNullable}}?{{/isNullable}}{{/required}}{{^required}}?{{/required}}{{#defaultValue}} = {{{defaultValue}}}{{/defaultValue}} {{#objcCompatible}} @@ -102,4 +102,4 @@ {{/allVars}} {{#generateModelAdditionalProperties}}{{#additionalPropertiesType}}hasher.combine(additionalProperties.hashValue){{/additionalPropertiesType}}{{/generateModelAdditionalProperties}} }{{/vendorExtensions.x-swift-hashable}}{{/useClasses}}{{/objcCompatible}} -} \ No newline at end of file +} diff --git a/modules/openapi-generator/src/main/resources/swift5/modelOneOf.mustache b/modules/openapi-generator/src/main/resources/swift5/modelOneOf.mustache index 8aeddcc3c123..fae34faa975e 100644 --- a/modules/openapi-generator/src/main/resources/swift5/modelOneOf.mustache +++ b/modules/openapi-generator/src/main/resources/swift5/modelOneOf.mustache @@ -1,4 +1,4 @@ -public enum {{classname}}: Codable { +public enum {{classname}}: {{#useVapor}}Content{{/useVapor}}{{^useVapor}}Codable{{/useVapor}} { {{#oneOf}} case type{{.}}({{.}}) {{/oneOf}} diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift index 85346c2896e9..82eb3630aa6b 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = AlamofireRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 542fb6f69ba8..7d09ab30c12a 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -50,5 +54,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 9b75edc92ee6..5480213e38da 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -680,5 +684,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index fd7d845d3406..9683e0ce5b1f 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -53,5 +57,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index d7d5bdfa2eaa..8cbd15364b66 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -479,5 +483,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index c80d4286b536..a83e954ae6a9 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 542dc212bd1b..dbff6ade41cc 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -362,5 +366,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 61a478de142b..621afb93561d 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 157cca1d227b..cdd4f5335b98 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 8607cbef1a33..c365505ab9d8 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index f3f161b44c1c..226f74561811 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d62de957472a..398311278715 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 360d50d027f1..8865d76bef23 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index f0781a9cb738..71cd93bce5fe 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index d5519760387a..457e04bd475e 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8312680deb37..8caebb1c2065 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 398da60aa73b..89016ca353d8 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 03bf63e4cad1..16e69e560bdf 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 596048780439..60dbc5dc5c1c 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 4ada3ceb605a..658732a7f36f 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f6c3d287301d..82b0dedf35bf 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 0e0aad42abe6..1d8ce99539cc 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 9e44926be9b8..8c8bca49774a 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 11694b2ca59b..05dd5b1a825e 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 6aa85d8eecf9..3ca66a313590 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 114c884efc5e..a7a4b39e7207 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index cb1a7456a7df..54ed8a723c64 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 8ecdd3b02339..67e3048469fe 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 0ff74ed8400e..1e728fcdf587 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 58a0a54ca090..c79ca459217e 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 0f59769954f1..23402143f718 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index d88c94f05c95..a28f46a33ce7 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0f05482b9b7c..87ceb64bb973 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 100d6b71fed4..e2eeced4c571 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 15a4e4a15b6e..edeaccaeaa6f 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index a87ab825ea0b..ddd1186b8910 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 6426deedf637..57ba3f577c87 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 777c241bc0c0..afc2b51f8f38 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index b677523a7491..bfe9723f888f 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index f575c9df65ca..126c35c85a6a 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 341c9b4b8c2e..e58eecd960f2 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 04166af0895f..6c22fdbae7aa 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 9f3ded8fcd93..7afe359ae409 100644 --- a/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/alamofireLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index f7f14df25d33..70498ae5c837 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -9,8 +9,12 @@ import Foundation #if canImport(Combine) import Combine #endif +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -58,5 +62,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index c25873363548..90aa780acc53 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -9,8 +9,12 @@ import Foundation #if canImport(Combine) import Combine #endif +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -743,5 +747,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index 094b75647ae6..af9a24d74127 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -9,8 +9,12 @@ import Foundation #if canImport(Combine) import Combine #endif +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -61,5 +65,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index b1d495832c66..7c9683794357 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -9,8 +9,12 @@ import Foundation #if canImport(Combine) import Combine #endif +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -527,5 +531,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 9e4aa781716d..0ed144406b9b 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -9,8 +9,12 @@ import Foundation #if canImport(Combine) import Combine #endif +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -208,5 +212,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index fa260d3e83a8..c469d6ed3a18 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -9,8 +9,12 @@ import Foundation #if canImport(Combine) import Combine #endif +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -405,5 +409,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 61a478de142b..621afb93561d 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 157cca1d227b..cdd4f5335b98 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 8607cbef1a33..c365505ab9d8 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index f3f161b44c1c..226f74561811 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d62de957472a..398311278715 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 360d50d027f1..8865d76bef23 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index f0781a9cb738..71cd93bce5fe 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index d5519760387a..457e04bd475e 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8312680deb37..8caebb1c2065 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 398da60aa73b..89016ca353d8 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 03bf63e4cad1..16e69e560bdf 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 596048780439..60dbc5dc5c1c 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 4ada3ceb605a..658732a7f36f 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f6c3d287301d..82b0dedf35bf 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 0e0aad42abe6..1d8ce99539cc 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 9e44926be9b8..8c8bca49774a 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 11694b2ca59b..05dd5b1a825e 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 6aa85d8eecf9..3ca66a313590 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 114c884efc5e..a7a4b39e7207 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index cb1a7456a7df..54ed8a723c64 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 8ecdd3b02339..67e3048469fe 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 0ff74ed8400e..1e728fcdf587 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 58a0a54ca090..c79ca459217e 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 0f59769954f1..23402143f718 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index d88c94f05c95..a28f46a33ce7 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0f05482b9b7c..87ceb64bb973 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 100d6b71fed4..e2eeced4c571 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 15a4e4a15b6e..edeaccaeaa6f 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index a87ab825ea0b..ddd1186b8910 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 6426deedf637..57ba3f577c87 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 777c241bc0c0..afc2b51f8f38 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index b677523a7491..bfe9723f888f 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index f575c9df65ca..126c35c85a6a 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 341c9b4b8c2e..e58eecd960f2 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 04166af0895f..6c22fdbae7aa 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 9f3ded8fcd93..7afe359ae409 100644 --- a/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/combineLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 542fb6f69ba8..7d09ab30c12a 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -50,5 +54,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index eb6d1e67c4f5..3a25702d994a 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** creates an XmlItem @@ -779,5 +783,4 @@ open class FakeAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index fd7d845d3406..9683e0ce5b1f 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -53,5 +57,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index fa8620ba081c..e8ab4d6861a6 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -479,5 +483,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index c80d4286b536..a83e954ae6a9 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 542dc212bd1b..dbff6ade41cc 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -362,5 +366,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift index 96d07d1ef30c..07dd0c38a1fa 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesAnyType.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesAnyType: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(AnyCodable.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift index 106e4dd6de18..43a6d66cb592 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesArray.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesArray: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap([AnyCodable].self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift index bfbd7a5f20d8..a2a20a926a16 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesBoolean.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesBoolean: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 614e09633539..eb6669c105a7 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -69,3 +69,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(anytype3, forKey: .anytype3) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift index b57691746cad..0ccd9115bfd5 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesInteger.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesInteger: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift index fd6a6a52d064..06987825557b 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesNumber.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesNumber: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Double.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift index 675a07ca0c1e..848a0983a3f6 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesObject.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesObject: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap([String: AnyCodable].self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift index df5aa8b69533..7b5bd40f70f1 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesString.swift @@ -58,3 +58,4 @@ public struct AdditionalPropertiesString: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 157cca1d227b..cdd4f5335b98 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 8607cbef1a33..c365505ab9d8 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index f3f161b44c1c..226f74561811 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d62de957472a..398311278715 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 360d50d027f1..8865d76bef23 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCat.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCat.swift index 3284de5040e7..4ca3454f9bd9 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCat.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCat.swift @@ -35,3 +35,4 @@ public struct BigCat: Codable, Hashable { try container.encodeIfPresent(kind, forKey: .kind) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCatAllOf.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCatAllOf.swift index 7d2d24898493..8c6a92c8b484 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCatAllOf.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/BigCatAllOf.swift @@ -35,3 +35,4 @@ public struct BigCatAllOf: Codable, Hashable { try container.encodeIfPresent(kind, forKey: .kind) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index f0781a9cb738..71cd93bce5fe 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index d5519760387a..457e04bd475e 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8312680deb37..8caebb1c2065 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 24dd89221d0c..e880b792bbe9 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 03bf63e4cad1..16e69e560bdf 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 596048780439..60dbc5dc5c1c 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 4ada3ceb605a..658732a7f36f 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f6c3d287301d..82b0dedf35bf 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 0e0aad42abe6..1d8ce99539cc 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 9e44926be9b8..8c8bca49774a 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 11694b2ca59b..05dd5b1a825e 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 6aa85d8eecf9..3ca66a313590 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 60eafb2febe1..5dccf04e1e16 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -81,3 +81,4 @@ public struct FormatTest: Codable, Hashable { try container.encodeIfPresent(bigDecimal, forKey: .bigDecimal) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index cb1a7456a7df..54ed8a723c64 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 8ecdd3b02339..67e3048469fe 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 0ff74ed8400e..1e728fcdf587 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 58a0a54ca090..c79ca459217e 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 0f59769954f1..23402143f718 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index d88c94f05c95..a28f46a33ce7 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0f05482b9b7c..87ceb64bb973 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 100d6b71fed4..e2eeced4c571 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 15a4e4a15b6e..edeaccaeaa6f 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index 63b32ba8f11b..f3a1bc922893 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 6426deedf637..57ba3f577c87 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 777c241bc0c0..afc2b51f8f38 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index b677523a7491..bfe9723f888f 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index f575c9df65ca..126c35c85a6a 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 341c9b4b8c2e..e58eecd960f2 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 7a0b4dda2a59..23343c3c393e 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -49,3 +49,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 9f3ded8fcd93..7afe359ae409 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift index 997e2eebce5d..ae43cd286927 100644 --- a/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift +++ b/samples/client/petstore/swift5/default/PetstoreClient/Classes/OpenAPIs/Models/XmlItem.swift @@ -141,3 +141,4 @@ public struct XmlItem: Codable, Hashable { try container.encodeIfPresent(prefixNsWrappedArray, forKey: .prefixNsWrappedArray) } } + diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs.swift index 850c8fc43833..bbc07371c775 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index bf00a6fa7412..190716faed6b 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -421,5 +425,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 9d68c2def6ed..c25565f0cf8b 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 106277bbe05e..33ee8164a3ed 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -380,5 +384,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 619a45e20bb1..ff77211ec29f 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -38,3 +38,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 26ba10c456e3..0036cc7a8573 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -34,3 +34,4 @@ public struct Category: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 81d122defdf2..ccd3bea0249b 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -57,3 +57,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index 475b1d7e546b..047967197a70 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -57,3 +57,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index 6f008baf7262..555a33e6a186 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -34,3 +34,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/User.swift index f46bd7741311..4d8eeffdbf82 100644 --- a/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/deprecated/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -59,3 +59,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs.swift index e98c4bb0fbe7..a4d2c1877f1d 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ internal typealias PetstoreClientAPI = PetstoreClient internal class PetstoreClient { internal static var basePath = "http://petstore.swagger.io:80/v2" - internal static var credential: URLCredential? internal static var customHeaders: [String: String] = [:] + internal static var credential: URLCredential? internal static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() internal static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 3962e550ac49..8a124ebde97c 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif internal class AnotherFakeAPI { + /** To test special tags @@ -50,5 +54,4 @@ internal class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index b38a586bd0f2..61e43e6ec107 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif internal class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -680,5 +684,4 @@ internal class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index f746118089c4..2a7bc6d2ef82 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif internal class FakeClassnameTags123API { + /** To test class name in snake case @@ -53,5 +57,4 @@ internal class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 67a5a95b72b2..9828ee518fff 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif internal class PetAPI { + /** Add a new pet to the store @@ -479,5 +483,4 @@ internal class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 4b57f341494c..ab762a4f84c0 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif internal class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ internal class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 01b5c8c07924..a1ac6beeb229 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif internal class UserAPI { + /** Create user @@ -362,5 +366,4 @@ internal class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 3b39a978be4a..5be96e4e203b 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation internal class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 048d2223b464..731b7b76eb62 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ internal struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index cf3022b7a592..b160f8c835df 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ internal struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 3bba5d0f051b..c62ce400c81b 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ internal struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index 6600b567f54a..2fa5da894c49 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ internal struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index b9bb366249b4..4ad2ff35d21e 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ internal struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 5aab5e0237f9..e3464b693ecc 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ internal struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index cc75d775764c..042f77b8ab80 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ internal struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index e1d59e33c663..4828c445c1bc 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ internal struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8a3358a747ab..343d71d6873f 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ internal struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index cdd51a8ffbaf..df67d9bd6f1c 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ internal struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index c5561f409fca..d679cfe582af 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ internal struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index a5640b27b268..2e50c580b653 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ internal struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index fcf4077c0b13..cdf48f3a786e 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ internal struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f5cb2649406b..f2e801a399e4 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ internal struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 502b7f16fd27..950a66d752a7 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ internal struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 6ab42303c451..774198165702 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ internal struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/File.swift index c4843091f8d4..14b22772e3fa 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ internal struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 52bea1373b04..e0f8e9990a57 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ internal struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index c1eff9ffd18a..6f8b00eddf8d 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ internal struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index df1e18887c52..0ddedc17958c 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ internal struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 10956a8bf61f..0e7903fd06a1 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ internal struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index cee2c1dc24f5..748bc6781a5d 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ internal struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index ef916b0d8775..68ef87daf003 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ internal struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 6a6ff7664b9c..dad6079ddb2d 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ internal struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index 5e4345bb54a1..2a842bf54aa4 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ internal struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0a36afc7855a..36cf8d164bd1 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ internal struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index bb0eb5c601fe..45046f9a00fd 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ internal struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 3b41213b30f5..082cdebd26c7 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ internal struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index 833730ac896b..8c77a382e8f1 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ internal struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index d0a73f836f78..e8961d9d8a85 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ internal struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 9b2e502be391..7a2e2da47f87 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ internal struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index f77f26ce88c8..2c3d25c5bbbe 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ internal struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index a0f5dc1082eb..4b76e50cecef 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ internal struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index 866911641d00..810603ff0b52 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ internal struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 3b3d4c7387a0..4a71a601e1b1 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ internal struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 2ca47db911d6..71cdf9ee1eab 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ internal struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 4f1504516baf..57017c341e78 100644 --- a/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/nonPublicApi/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ internal struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 440c9b339a79..932d46d6acee 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif @objc open class AnotherFakeAPI : NSObject { + /** To test special tags @@ -50,5 +54,4 @@ import Foundation return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 4d94d2c69131..81f62a73febf 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif @objc open class FakeAPI : NSObject { + /** - parameter body: (body) Input boolean as post body (optional) @@ -680,5 +684,4 @@ import Foundation return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index 36099b5f1a35..7f3651400e47 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif @objc open class FakeClassnameTags123API : NSObject { + /** To test class name in snake case @@ -53,5 +57,4 @@ import Foundation return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 1bdfc19cd71f..8797c88211ee 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif @objc open class PetAPI : NSObject { + /** Add a new pet to the store @@ -479,5 +483,4 @@ import Foundation return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 4acac5ebd4fc..30856f73a3d6 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif @objc open class StoreAPI : NSObject { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ import Foundation return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index fb331f2a38d4..d66abcb14bf0 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif @objc open class UserAPI : NSObject { + /** Create user @@ -362,5 +366,4 @@ import Foundation return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 3b250581cc15..1421cb642ee7 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ import AnyCodable try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index c8bc6f8fd9b6..d60621e7bf6c 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ import AnyCodable try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 9feb0336458b..1b42b26535cc 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -42,3 +42,4 @@ import AnyCodable try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index acab776dfa1a..08aca8598d0b 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ import AnyCodable try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d44e23a7567e..e8114a8f45e4 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ import AnyCodable try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 2ed77dba0afd..be0dea61b912 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ import AnyCodable try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index c7c00b23f7c2..6f137adc91f6 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ import AnyCodable try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index 9f34145e79f9..60eccac9412c 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -42,3 +42,4 @@ import AnyCodable try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 32fe1b1e59fe..cce886558e8a 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -34,3 +34,4 @@ import AnyCodable try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index fd5f886af43b..c8e542ad6b52 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -38,3 +38,4 @@ import AnyCodable try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 10b0983599dd..6bc90a989bd1 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ import AnyCodable try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index c6f66fc19cb6..a3585de4f0d5 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ import AnyCodable try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index baaa824e4e14..2b060c8ad38c 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ import AnyCodable try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index 8e4ca3185812..d92db038ca42 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ import AnyCodable try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 317ec4f86281..1269cb72e27c 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ import AnyCodable try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 39f68239e4d3..066d266386bd 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ import AnyCodable try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift index b1f58093b024..b175f6370d26 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ import AnyCodable try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index c766f63637d1..24a6e66432bc 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ import AnyCodable try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 70920c84fa8c..413656ff25e6 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -102,3 +102,4 @@ import AnyCodable try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index f491a19800eb..eac4a1446161 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ import AnyCodable try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift index baad1d10fe02..f48559c0c451 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ import AnyCodable try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index b095210c3f62..68a3e128cc21 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ import AnyCodable try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index d3b667779241..1594ac4a26a9 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ import AnyCodable try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 6abc550286bb..dfae9880b135 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -39,3 +39,4 @@ import AnyCodable try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index 1544a22cda58..3b41f3cafd9f 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -52,3 +52,4 @@ import AnyCodable try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 9e5280165f9f..b828f6d3b472 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ import AnyCodable try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index d04a6cdab99a..27237e43da70 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -75,3 +75,4 @@ import AnyCodable try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 6521635743e8..bbc4536d4288 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -42,3 +42,4 @@ import AnyCodable try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index 1339931a0735..a59ef82eb801 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -60,3 +60,4 @@ import AnyCodable try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 7d3b2e5c9b3c..8aef54563320 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ import AnyCodable try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index aa7cae020161..f497fdc7e09e 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -35,3 +35,4 @@ import AnyCodable try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index c2ba68d894c6..8a5860ae0b9a 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -34,3 +34,4 @@ import AnyCodable try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index 9ca13a19d8ef..4708c93daa0d 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ import AnyCodable additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index de3f7c181c4d..6150ef4895fd 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -38,3 +38,4 @@ import AnyCodable try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 4882236d3e16..27408db6f27a 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ import AnyCodable try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 17dfc262df35..61c7c8b4fb41 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ import AnyCodable try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 8b9ef462778d..3c71f76aab0a 100644 --- a/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/objcCompatible/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -68,3 +68,4 @@ import AnyCodable try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/oneOf/Package.resolved b/samples/client/petstore/swift5/oneOf/Package.resolved new file mode 100644 index 000000000000..d384b276b4bc --- /dev/null +++ b/samples/client/petstore/swift5/oneOf/Package.resolved @@ -0,0 +1,16 @@ +{ + "object": { + "pins": [ + { + "package": "AnyCodable", + "repositoryURL": "https://github.com/Flight-School/AnyCodable", + "state": { + "branch": null, + "revision": "876d162385e9862ae8b3c8d65dc301312b040005", + "version": "0.6.0" + } + } + ] + }, + "version": 1 +} diff --git a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs.swift index 7935d8a9fa6a..ed13fa3738a5 100644 --- a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://localhost" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs/DefaultAPI.swift b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs/DefaultAPI.swift index 5e6a278c0d02..6d18703c99ef 100644 --- a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs/DefaultAPI.swift +++ b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/APIs/DefaultAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class DefaultAPI { + /** - parameter apiResponseQueue: The queue on which api response is dispatched. @@ -45,5 +49,4 @@ open class DefaultAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Apple.swift b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Apple.swift index 17495d47fd35..ee0b5786ef15 100644 --- a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Apple.swift +++ b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Apple.swift @@ -29,3 +29,4 @@ public struct Apple: Codable, Hashable { try container.encodeIfPresent(kind, forKey: .kind) } } + diff --git a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Banana.swift b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Banana.swift index c0a23db0b1c5..1ad6e976a7ea 100644 --- a/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Banana.swift +++ b/samples/client/petstore/swift5/oneOf/PetstoreClient/Classes/OpenAPIs/Models/Banana.swift @@ -29,3 +29,4 @@ public struct Banana: Codable, Hashable { try container.encodeIfPresent(count, forKey: .count) } } + diff --git a/samples/client/petstore/swift5/oneOf/pom.xml b/samples/client/petstore/swift5/oneOf/pom.xml new file mode 100644 index 000000000000..c1b201eb3b4c --- /dev/null +++ b/samples/client/petstore/swift5/oneOf/pom.xml @@ -0,0 +1,43 @@ + + 4.0.0 + io.swagger + Swift5PetstoreClientTests + pom + 1.0-SNAPSHOT + Swift5 Swagger Petstore Client + + + + maven-dependency-plugin + + + package + + copy-dependencies + + + ${project.build.directory} + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + xcodebuild-test + integration-test + + exec + + + ./run_spmbuild.sh + + + + + + + diff --git a/samples/client/petstore/swift5/oneOf/run_spmbuild.sh b/samples/client/petstore/swift5/oneOf/run_spmbuild.sh new file mode 100755 index 000000000000..1a9f585ad054 --- /dev/null +++ b/samples/client/petstore/swift5/oneOf/run_spmbuild.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +swift build && exit ${PIPESTATUS[0]} diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 72ecfdc6f768..55126ff4f11d 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -7,8 +7,12 @@ import Foundation import PromiseKit +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -53,5 +57,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 89d44314c534..23e4ba9c8f57 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -7,8 +7,12 @@ import Foundation import PromiseKit +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -705,5 +709,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index 5cd88bffeae4..52d394026e22 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -7,8 +7,12 @@ import Foundation import PromiseKit +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -56,5 +60,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 2ca6128ac8dc..eabaa59872a0 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -7,8 +7,12 @@ import Foundation import PromiseKit +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -498,5 +502,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 2a877b9fb576..8376ab9883ef 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -7,8 +7,12 @@ import Foundation import PromiseKit +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -194,5 +198,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 6b12f6a0b09b..1d9a3e6a4434 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -7,8 +7,12 @@ import Foundation import PromiseKit +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -379,5 +383,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 61a478de142b..621afb93561d 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 157cca1d227b..cdd4f5335b98 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 8607cbef1a33..c365505ab9d8 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index f3f161b44c1c..226f74561811 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d62de957472a..398311278715 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 360d50d027f1..8865d76bef23 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index f0781a9cb738..71cd93bce5fe 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index d5519760387a..457e04bd475e 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8312680deb37..8caebb1c2065 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 398da60aa73b..89016ca353d8 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 03bf63e4cad1..16e69e560bdf 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 596048780439..60dbc5dc5c1c 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 4ada3ceb605a..658732a7f36f 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f6c3d287301d..82b0dedf35bf 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 0e0aad42abe6..1d8ce99539cc 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 9e44926be9b8..8c8bca49774a 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 11694b2ca59b..05dd5b1a825e 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 6aa85d8eecf9..3ca66a313590 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 114c884efc5e..a7a4b39e7207 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index cb1a7456a7df..54ed8a723c64 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 8ecdd3b02339..67e3048469fe 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 0ff74ed8400e..1e728fcdf587 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 58a0a54ca090..c79ca459217e 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 0f59769954f1..23402143f718 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index d88c94f05c95..a28f46a33ce7 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0f05482b9b7c..87ceb64bb973 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 100d6b71fed4..e2eeced4c571 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 15a4e4a15b6e..edeaccaeaa6f 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index a87ab825ea0b..ddd1186b8910 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 6426deedf637..57ba3f577c87 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 777c241bc0c0..afc2b51f8f38 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index b677523a7491..bfe9723f888f 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index f575c9df65ca..126c35c85a6a 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 341c9b4b8c2e..e58eecd960f2 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 04166af0895f..6c22fdbae7aa 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 9f3ded8fcd93..7afe359ae409 100644 --- a/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/promisekitLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/Package.resolved b/samples/client/petstore/swift5/readonlyProperties/Package.resolved new file mode 100644 index 000000000000..d384b276b4bc --- /dev/null +++ b/samples/client/petstore/swift5/readonlyProperties/Package.resolved @@ -0,0 +1,16 @@ +{ + "object": { + "pins": [ + { + "package": "AnyCodable", + "repositoryURL": "https://github.com/Flight-School/AnyCodable", + "state": { + "branch": null, + "revision": "876d162385e9862ae8b3c8d65dc301312b040005", + "version": "0.6.0" + } + } + ] + }, + "version": 1 +} diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 542fb6f69ba8..7d09ab30c12a 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -50,5 +54,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 9b75edc92ee6..5480213e38da 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -680,5 +684,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index fd7d845d3406..9683e0ce5b1f 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -53,5 +57,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index d7d5bdfa2eaa..8cbd15364b66 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -479,5 +483,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index c80d4286b536..a83e954ae6a9 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 542dc212bd1b..dbff6ade41cc 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -362,5 +366,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 55e1a850f068..34f35d9b4c95 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 3fded4244c37..14bb2bd2fe05 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 1522485099ca..acaac402ef4b 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index d754b57dd072..d8ef19116b83 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index 261f521a2e3d..949077533e9b 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index e68cd879f6c7..6135c1556a29 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index d449c5890d1b..6353bd4d8a87 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index 3ddf9bee2fd5..834c51d91529 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 40685ac1a16d..b227089dc4fe 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index da9e51d2a512..1413c58141e6 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index c6984e27050c..73b8414f3424 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index a08ef9f5ba42..364b58f1c4e0 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index efe8988d3811..849fbfed7450 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index 1d1f8ca7db91..527edd845c46 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index d8e15faf3a39..1a79ffe95b1f 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index ca412e06fe1b..c097933904bb 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 1c9a0f33ee83..c5ebbaf2f4f8 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 50304fe594a3..c04b1dccf76c 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index bf2d4131948e..65bb0ca08429 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index ee6bd8280bdb..e8216047d6ec 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 41a0eacd2ac5..1269b40251d7 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 27e27b36d0fa..19f258d29296 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 306c8adeaa36..2dd49ab02129 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 233fa7656abf..9080e5c382f4 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index c1fda99c0c7e..0280404c0441 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 5526fc2fbf25..36be35a05339 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index c79bc3f02d3d..bda67408a9d2 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index c69f16e2a883..d8e7469f99a5 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index 46f5919b6b74..f4f7928e77e6 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 249d7691c215..6b80302150ab 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 23e8e52f6e5f..ca4883d92514 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index 8a12be510ab8..66b8f4d69ffc 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index 19103698f9a5..11a5a8548954 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index e3d44bf635f9..2af3e2f06982 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 575466ee7d57..125a63b0ed36 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index ba22b15d8487..3aa1851a5853 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 33cb2a060441..4af156b9bac9 100644 --- a/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/readonlyProperties/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/readonlyProperties/pom.xml b/samples/client/petstore/swift5/readonlyProperties/pom.xml new file mode 100644 index 000000000000..c1b201eb3b4c --- /dev/null +++ b/samples/client/petstore/swift5/readonlyProperties/pom.xml @@ -0,0 +1,43 @@ + + 4.0.0 + io.swagger + Swift5PetstoreClientTests + pom + 1.0-SNAPSHOT + Swift5 Swagger Petstore Client + + + + maven-dependency-plugin + + + package + + copy-dependencies + + + ${project.build.directory} + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + xcodebuild-test + integration-test + + exec + + + ./run_spmbuild.sh + + + + + + + diff --git a/samples/client/petstore/swift5/readonlyProperties/run_spmbuild.sh b/samples/client/petstore/swift5/readonlyProperties/run_spmbuild.sh new file mode 100755 index 000000000000..1a9f585ad054 --- /dev/null +++ b/samples/client/petstore/swift5/readonlyProperties/run_spmbuild.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +swift build && exit ${PIPESTATUS[0]} diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index f2f733281fc6..cae5f3f349a3 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -50,5 +54,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 180df7841ae7..6a9229f32eb0 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -680,5 +684,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index 161b2c3f7585..2f693b327d4a 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -53,5 +57,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index 23e7fc21b701..6dafda832a6f 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -479,5 +483,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index ccdb44bf803e..273ca0423a6e 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index ea100babfcad..62c9dd6e3cb9 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -362,5 +366,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 61a478de142b..621afb93561d 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 157cca1d227b..cdd4f5335b98 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 8607cbef1a33..c365505ab9d8 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index f3f161b44c1c..226f74561811 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d62de957472a..398311278715 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 360d50d027f1..8865d76bef23 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index f0781a9cb738..71cd93bce5fe 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index d5519760387a..457e04bd475e 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8312680deb37..8caebb1c2065 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 398da60aa73b..89016ca353d8 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 03bf63e4cad1..16e69e560bdf 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 596048780439..60dbc5dc5c1c 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 4ada3ceb605a..658732a7f36f 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f6c3d287301d..82b0dedf35bf 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 0e0aad42abe6..1d8ce99539cc 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 9e44926be9b8..8c8bca49774a 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 11694b2ca59b..05dd5b1a825e 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 6aa85d8eecf9..3ca66a313590 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 114c884efc5e..a7a4b39e7207 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index cb1a7456a7df..54ed8a723c64 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 8ecdd3b02339..67e3048469fe 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 0ff74ed8400e..1e728fcdf587 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 58a0a54ca090..c79ca459217e 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 0f59769954f1..23402143f718 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index d88c94f05c95..a28f46a33ce7 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0f05482b9b7c..87ceb64bb973 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 100d6b71fed4..e2eeced4c571 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 15a4e4a15b6e..edeaccaeaa6f 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index a87ab825ea0b..ddd1186b8910 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 6426deedf637..57ba3f577c87 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 777c241bc0c0..afc2b51f8f38 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index b677523a7491..bfe9723f888f 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index f575c9df65ca..126c35c85a6a 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable, Hashable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 341c9b4b8c2e..e58eecd960f2 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 04166af0895f..6c22fdbae7aa 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 9f3ded8fcd93..7afe359ae409 100644 --- a/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/resultLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index d46906177c87..53feaab19c95 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -7,8 +7,12 @@ import Foundation import RxSwift +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -55,5 +59,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index abf1a1b7f5de..6e93b4da9c31 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -7,8 +7,12 @@ import Foundation import RxSwift +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -729,5 +733,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index 4e4de2bab774..698c1ea36e6f 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -7,8 +7,12 @@ import Foundation import RxSwift +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -58,5 +62,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index a51e91c1f0e0..a94255d6337a 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -7,8 +7,12 @@ import Foundation import RxSwift +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -516,5 +520,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index 9343800cddb5..6a771cae237e 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -7,8 +7,12 @@ import Foundation import RxSwift +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -202,5 +206,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 2e9dac80ae32..a268b55cc452 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -7,8 +7,12 @@ import Foundation import RxSwift +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -395,5 +399,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 61a478de142b..621afb93561d 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index 157cca1d227b..cdd4f5335b98 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable, Hashable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 8607cbef1a33..c365505ab9d8 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable, Hashable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index f3f161b44c1c..226f74561811 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index d62de957472a..398311278715 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable, Hashable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 360d50d027f1..8865d76bef23 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable, Hashable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index f0781a9cb738..71cd93bce5fe 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable, Hashable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index d5519760387a..457e04bd475e 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index 8312680deb37..8caebb1c2065 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable, Hashable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 398da60aa73b..89016ca353d8 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index 761eb4f866ec..6a72957b687e 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable, Hashable { try container.encodeIfPresent(`class`, forKey: .`class`) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 596048780439..60dbc5dc5c1c 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable, Hashable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 4ada3ceb605a..658732a7f36f 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index f6c3d287301d..82b0dedf35bf 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable, Hashable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 0e0aad42abe6..1d8ce99539cc 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable, Hashable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index 9e44926be9b8..8c8bca49774a 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable, Hashable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 11694b2ca59b..05dd5b1a825e 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable, Hashable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 6aa85d8eecf9..3ca66a313590 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable, Hashable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index 114c884efc5e..a7a4b39e7207 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable, Hashable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index cb1a7456a7df..54ed8a723c64 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable, Hashable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift index 8ecdd3b02339..67e3048469fe 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable, Hashable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index 0ff74ed8400e..1e728fcdf587 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable, Hashable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 58a0a54ca090..c79ca459217e 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index e5906f844364..7d15d45c21a9 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable, Hashable { try container.encodeIfPresent(`class`, forKey: .`class`) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index d88c94f05c95..a28f46a33ce7 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable, Hashable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 0f05482b9b7c..87ceb64bb973 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable, Hashable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index 100d6b71fed4..e2eeced4c571 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable, Hashable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 15a4e4a15b6e..edeaccaeaa6f 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable, Hashable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index a87ab825ea0b..ddd1186b8910 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index 6426deedf637..57ba3f577c87 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable, Hashable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index 268ce3bfee0b..bda0c791d83d 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable, Hashable { try container.encodeIfPresent(`return`, forKey: .`return`) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index b677523a7491..bfe9723f888f 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable, Hashable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index eb3882d7c2a5..2edf881a8f08 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -22,3 +22,4 @@ public struct StringBooleanMap: Codable, Hashable { var container = encoder.container(keyedBy: CodingKeys.self) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index 341c9b4b8c2e..e58eecd960f2 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 04166af0895f..6c22fdbae7aa 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable, Hashable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift index 9f3ded8fcd93..7afe359ae409 100644 --- a/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/rxswiftLibrary/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable, Hashable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/swift5_test_all.sh b/samples/client/petstore/swift5/swift5_test_all.sh index 153b5cfbc073..0b5ef4780b50 100755 --- a/samples/client/petstore/swift5/swift5_test_all.sh +++ b/samples/client/petstore/swift5/swift5_test_all.sh @@ -6,21 +6,25 @@ DIRECTORY=`dirname $0` # example project with unit tests # temporarily commment them because they are flaky +# mvn -f $DIRECTORY/alamofireLibrary/SwaggerClientTests/pom.xml integration-test +# mvn -f $DIRECTORY/combineLibrary/SwaggerClientTests/pom.xml integration-test # mvn -f $DIRECTORY/default/SwaggerClientTests/pom.xml integration-test # mvn -f $DIRECTORY/promisekitLibrary/SwaggerClientTests/pom.xml integration-test # mvn -f $DIRECTORY/rxswiftLibrary/SwaggerClientTests/pom.xml integration-test # mvn -f $DIRECTORY/urlsessionLibrary/SwaggerClientTests/pom.xml integration-test -# mvn -f $DIRECTORY/alamofireLibrary/SwaggerClientTests/pom.xml integration-test -# mvn -f $DIRECTORY/combineLibrary/SwaggerClientTests/pom.xml integration-test # spm build +mvn -f $DIRECTORY/alamofireLibrary/pom.xml integration-test +mvn -f $DIRECTORY/combineLibrary/pom.xml integration-test mvn -f $DIRECTORY/default/pom.xml integration-test +mvn -f $DIRECTORY/deprecated/pom.xml integration-test mvn -f $DIRECTORY/nonPublicApi/pom.xml integration-test mvn -f $DIRECTORY/objcCompatible/pom.xml integration-test +mvn -f $DIRECTORY/oneOf/pom.xml integration-test mvn -f $DIRECTORY/promisekitLibrary/pom.xml integration-test +mvn -f $DIRECTORY/readonlyProperties/pom.xml integration-test mvn -f $DIRECTORY/resultLibrary/pom.xml integration-test mvn -f $DIRECTORY/rxswiftLibrary/pom.xml integration-test mvn -f $DIRECTORY/urlsessionLibrary/pom.xml integration-test -mvn -f $DIRECTORY/alamofireLibrary/pom.xml integration-test -mvn -f $DIRECTORY/combineLibrary/pom.xml integration-test -mvn -f $DIRECTORY/deprecated/pom.xml integration-test +mvn -f $DIRECTORY/vaporLibrary/pom.xml integration-test +mvn -f $DIRECTORY/x-swift-hashable/pom.xml integration-test diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift index cce6d705d431..978e6ba041cb 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift @@ -6,11 +6,15 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif extension PetstoreClient { open class AnotherFakeAPI { + /** To test special tags @@ -53,6 +57,5 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift index dbe358912cbb..3ddcead03e48 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift @@ -6,11 +6,15 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif extension PetstoreClient { open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -683,6 +687,5 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift index a8bfc8b05464..e22de1f00c84 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift @@ -6,11 +6,15 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif extension PetstoreClient { open class FakeClassnameTags123API { + /** To test class name in snake case @@ -56,6 +60,5 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/PetAPI.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/PetAPI.swift index ea664ec3af4d..52289b62b569 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/PetAPI.swift @@ -6,11 +6,15 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif extension PetstoreClient { open class PetAPI { + /** Add a new pet to the store @@ -482,6 +486,5 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift index 6c53077c654b..19993eaff1e4 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift @@ -6,11 +6,15 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif extension PetstoreClient { open class StoreAPI { + /** Delete purchase order by ID @@ -188,6 +192,5 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/UserAPI.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/UserAPI.swift index 1b09adafcfb7..9e0ae01d8718 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/APIs/UserAPI.swift @@ -6,11 +6,15 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif extension PetstoreClient { open class UserAPI { + /** Create user @@ -365,6 +369,5 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Configuration.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Configuration.swift index 2ad2048e74c3..410882590eb6 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Configuration.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Configuration.swift @@ -11,9 +11,11 @@ public typealias Configuration = PetstoreClient.Configuration extension PetstoreClient { open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") public static var dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ" } } + diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift index 1baefca59430..7f5b6a45ade1 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift @@ -50,4 +50,5 @@ public final class AdditionalPropertiesClass: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Animal.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Animal.swift index bb5768728135..24b111486dec 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Animal.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Animal.swift @@ -50,4 +50,5 @@ public final class Animal: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ApiResponse.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ApiResponse.swift index 7682a7cb7f90..d6e874cad6c1 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ApiResponse.swift @@ -56,4 +56,5 @@ public final class ApiResponse: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift index 42b106c6f61e..46175c0b05e1 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift @@ -44,4 +44,5 @@ public final class ArrayOfArrayOfNumberOnly: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift index 13a415a44694..240989ed68e7 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift @@ -44,4 +44,5 @@ public final class ArrayOfNumberOnly: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayTest.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayTest.swift index 943c193458c9..fc774738102e 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ArrayTest.swift @@ -56,4 +56,5 @@ public final class ArrayTest: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Capitalization.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Capitalization.swift index d72936f45ac4..2c3e64811a33 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Capitalization.swift @@ -75,4 +75,5 @@ public final class Capitalization: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Cat.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Cat.swift index 5ba88eae81cd..16834ea68f42 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Cat.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Cat.swift @@ -56,4 +56,5 @@ public final class Cat: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/CatAllOf.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/CatAllOf.swift index 4437f05ec8ca..15b96135e895 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/CatAllOf.swift @@ -44,4 +44,5 @@ public final class CatAllOf: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Category.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Category.swift index 4cd6f0940b06..f0427d76d287 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Category.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Category.swift @@ -50,4 +50,5 @@ public final class Category: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ClassModel.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ClassModel.swift index ebba6acf1f30..ff0539ba0b56 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ClassModel.swift @@ -45,4 +45,5 @@ public final class ClassModel: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Client.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Client.swift index d671608ac8e6..effc65251449 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Client.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Client.swift @@ -44,4 +44,5 @@ public final class Client: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Dog.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Dog.swift index a506fe020977..ccab17d02098 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Dog.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Dog.swift @@ -56,4 +56,5 @@ public final class Dog: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/DogAllOf.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/DogAllOf.swift index ea53f2f14e1f..20b02ab06b71 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/DogAllOf.swift @@ -44,4 +44,5 @@ public final class DogAllOf: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumArrays.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumArrays.swift index 82a858e12504..a1eb07aa9557 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumArrays.swift @@ -58,4 +58,5 @@ public final class EnumArrays: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumTest.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumTest.swift index dc229bc01088..4b39f2161f10 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/EnumTest.swift @@ -86,4 +86,5 @@ public final class EnumTest: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/File.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/File.swift index 0e8e00f2e4e2..ad1922e129be 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/File.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/File.swift @@ -46,4 +46,5 @@ public final class File: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift index 3eaf14887a65..523b2bab52e3 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift @@ -50,4 +50,5 @@ public final class FileSchemaTestClass: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FormatTest.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FormatTest.swift index 3becb33e171e..7ea8c7dc1ee0 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/FormatTest.swift @@ -116,4 +116,5 @@ public final class FormatTest: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift index 2eeee949b9e5..75ce3afe50de 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift @@ -50,4 +50,5 @@ public final class HasOnlyReadOnly: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/List.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/List.swift index d7bd15e4ab7a..0dbb9c9f3514 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/List.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/List.swift @@ -44,4 +44,5 @@ public final class List: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MapTest.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MapTest.swift index e1b5051c98ab..fa4d05b2b0d0 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MapTest.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MapTest.swift @@ -66,4 +66,5 @@ public final class MapTest: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index 126d5952d232..af739161a45b 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -56,4 +56,5 @@ public final class MixedPropertiesAndAdditionalPropertiesClass: Codable, Hashabl } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Model200Response.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Model200Response.swift index abec4f578a33..c029d5acbd8d 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Model200Response.swift @@ -51,4 +51,5 @@ public final class Model200Response: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Name.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Name.swift index ae67e9ce2c97..e37f05bbb5ec 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Name.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Name.swift @@ -63,4 +63,5 @@ public final class Name: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/NumberOnly.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/NumberOnly.swift index 122ba86ecf64..b375325d2526 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/NumberOnly.swift @@ -44,4 +44,5 @@ public final class NumberOnly: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Order.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Order.swift index 31979b10b855..9399d0b83f87 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Order.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Order.swift @@ -80,4 +80,5 @@ public final class Order: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/OuterComposite.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/OuterComposite.swift index 377df8fd2e0b..125a7f19c8e8 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/OuterComposite.swift @@ -56,4 +56,5 @@ public final class OuterComposite: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Pet.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Pet.swift index d93428d9bda5..7c3e1f6e58a5 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Pet.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Pet.swift @@ -80,4 +80,5 @@ public final class Pet: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift index e3a074ebcc8f..d6ff6cf50f8f 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift @@ -50,4 +50,5 @@ public final class ReadOnlyFirst: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Return.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Return.swift index f517ed557148..c7a9c35ec1c9 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Return.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Return.swift @@ -45,4 +45,5 @@ public final class Return: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift index 3b5cc1853195..1f6a989b081a 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift @@ -44,4 +44,5 @@ public final class SpecialModelName: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift index 1449e89190f2..67216302d21f 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift @@ -62,4 +62,5 @@ public final class StringBooleanMap: Codable, Hashable { hasher.combine(additionalProperties.hashValue) } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Tag.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Tag.swift index cfd84044fe2e..365ccb8b3aab 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Tag.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/Tag.swift @@ -50,4 +50,5 @@ public final class Tag: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift index 82595deb5009..3f64638c1bc6 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift @@ -68,4 +68,5 @@ public final class TypeHolderDefault: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift index 9509c507b87b..c7b480af0d07 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift @@ -68,4 +68,5 @@ public final class TypeHolderExample: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/User.swift b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/User.swift index 63b13180dcd2..3af56094d8c1 100644 --- a/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/User.swift +++ b/samples/client/petstore/swift5/urlsessionLibrary/Sources/PetstoreClient/Models/User.swift @@ -87,4 +87,5 @@ public final class User: Codable, Hashable { } } + } diff --git a/samples/client/petstore/swift5/vaporLibrary/.gitignore b/samples/client/petstore/swift5/vaporLibrary/.gitignore new file mode 100644 index 000000000000..5e5d5cebcf47 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/.gitignore @@ -0,0 +1,63 @@ +# Xcode +# +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## Build generated +build/ +DerivedData + +## Various settings +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +xcuserdata + +## Other +*.xccheckout +*.moved-aside +*.xcuserstate +*.xcscmblueprint + +## Obj-C/Swift specific +*.hmap +*.ipa + +## Playgrounds +timeline.xctimeline +playground.xcworkspace + +# Swift Package Manager +# +# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. +# Packages/ +.build/ + +# CocoaPods +# +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# +# Pods/ + +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. +# Carthage/Checkouts + +Carthage/Build + +# fastlane +# +# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the +# screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://github.com/fastlane/fastlane/blob/master/docs/Gitignore.md + +fastlane/report.xml +fastlane/screenshots diff --git a/samples/client/petstore/swift5/vaporLibrary/.openapi-generator-ignore b/samples/client/petstore/swift5/vaporLibrary/.openapi-generator-ignore new file mode 100644 index 000000000000..7484ee590a38 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/.openapi-generator-ignore @@ -0,0 +1,23 @@ +# OpenAPI Generator Ignore +# Generated by openapi-generator https://github.com/openapitools/openapi-generator + +# Use this file to prevent files from being overwritten by the generator. +# The patterns follow closely to .gitignore or .dockerignore. + +# As an example, the C# client generator defines ApiClient.cs. +# You can make changes and tell OpenAPI Generator to ignore just this file by uncommenting the following line: +#ApiClient.cs + +# You can match any string of characters against a directory, file or extension with a single asterisk (*): +#foo/*/qux +# The above matches foo/bar/qux and foo/baz/qux, but not foo/bar/baz/qux + +# You can recursively match patterns against a directory, file or extension with a double asterisk (**): +#foo/**/qux +# This matches foo/bar/qux, foo/baz/qux, and foo/bar/baz/qux + +# You can also negate patterns with an exclamation (!). +# For example, you can ignore all files in a docs folder with the file extension .md: +#docs/*.md +# Then explicitly reverse the ignore rule for a single file: +#!docs/README.md diff --git a/samples/client/petstore/swift5/vaporLibrary/.openapi-generator/FILES b/samples/client/petstore/swift5/vaporLibrary/.openapi-generator/FILES new file mode 100644 index 000000000000..ec27ad4b38e0 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/.openapi-generator/FILES @@ -0,0 +1,118 @@ +.gitignore +Package.swift +README.md +Sources/PetstoreClient/APIs.swift +Sources/PetstoreClient/APIs/AnotherFakeAPI.swift +Sources/PetstoreClient/APIs/FakeAPI.swift +Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift +Sources/PetstoreClient/APIs/PetAPI.swift +Sources/PetstoreClient/APIs/StoreAPI.swift +Sources/PetstoreClient/APIs/UserAPI.swift +Sources/PetstoreClient/Configuration.swift +Sources/PetstoreClient/Extensions.swift +Sources/PetstoreClient/Models/AdditionalPropertiesAnyType.swift +Sources/PetstoreClient/Models/AdditionalPropertiesArray.swift +Sources/PetstoreClient/Models/AdditionalPropertiesBoolean.swift +Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift +Sources/PetstoreClient/Models/AdditionalPropertiesInteger.swift +Sources/PetstoreClient/Models/AdditionalPropertiesNumber.swift +Sources/PetstoreClient/Models/AdditionalPropertiesObject.swift +Sources/PetstoreClient/Models/AdditionalPropertiesString.swift +Sources/PetstoreClient/Models/Animal.swift +Sources/PetstoreClient/Models/AnimalFarm.swift +Sources/PetstoreClient/Models/ApiResponse.swift +Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift +Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift +Sources/PetstoreClient/Models/ArrayTest.swift +Sources/PetstoreClient/Models/BigCat.swift +Sources/PetstoreClient/Models/BigCatAllOf.swift +Sources/PetstoreClient/Models/Capitalization.swift +Sources/PetstoreClient/Models/Cat.swift +Sources/PetstoreClient/Models/CatAllOf.swift +Sources/PetstoreClient/Models/Category.swift +Sources/PetstoreClient/Models/ClassModel.swift +Sources/PetstoreClient/Models/Client.swift +Sources/PetstoreClient/Models/Dog.swift +Sources/PetstoreClient/Models/DogAllOf.swift +Sources/PetstoreClient/Models/EnumArrays.swift +Sources/PetstoreClient/Models/EnumClass.swift +Sources/PetstoreClient/Models/EnumTest.swift +Sources/PetstoreClient/Models/File.swift +Sources/PetstoreClient/Models/FileSchemaTestClass.swift +Sources/PetstoreClient/Models/FormatTest.swift +Sources/PetstoreClient/Models/HasOnlyReadOnly.swift +Sources/PetstoreClient/Models/List.swift +Sources/PetstoreClient/Models/MapTest.swift +Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +Sources/PetstoreClient/Models/Model200Response.swift +Sources/PetstoreClient/Models/Name.swift +Sources/PetstoreClient/Models/NumberOnly.swift +Sources/PetstoreClient/Models/Order.swift +Sources/PetstoreClient/Models/OuterComposite.swift +Sources/PetstoreClient/Models/OuterEnum.swift +Sources/PetstoreClient/Models/Pet.swift +Sources/PetstoreClient/Models/ReadOnlyFirst.swift +Sources/PetstoreClient/Models/Return.swift +Sources/PetstoreClient/Models/SpecialModelName.swift +Sources/PetstoreClient/Models/StringBooleanMap.swift +Sources/PetstoreClient/Models/Tag.swift +Sources/PetstoreClient/Models/TypeHolderDefault.swift +Sources/PetstoreClient/Models/TypeHolderExample.swift +Sources/PetstoreClient/Models/User.swift +Sources/PetstoreClient/Models/XmlItem.swift +docs/AdditionalPropertiesAnyType.md +docs/AdditionalPropertiesArray.md +docs/AdditionalPropertiesBoolean.md +docs/AdditionalPropertiesClass.md +docs/AdditionalPropertiesInteger.md +docs/AdditionalPropertiesNumber.md +docs/AdditionalPropertiesObject.md +docs/AdditionalPropertiesString.md +docs/Animal.md +docs/AnimalFarm.md +docs/AnotherFakeAPI.md +docs/ApiResponse.md +docs/ArrayOfArrayOfNumberOnly.md +docs/ArrayOfNumberOnly.md +docs/ArrayTest.md +docs/BigCat.md +docs/BigCatAllOf.md +docs/Capitalization.md +docs/Cat.md +docs/CatAllOf.md +docs/Category.md +docs/ClassModel.md +docs/Client.md +docs/Dog.md +docs/DogAllOf.md +docs/EnumArrays.md +docs/EnumClass.md +docs/EnumTest.md +docs/FakeAPI.md +docs/FakeClassnameTags123API.md +docs/File.md +docs/FileSchemaTestClass.md +docs/FormatTest.md +docs/HasOnlyReadOnly.md +docs/List.md +docs/MapTest.md +docs/MixedPropertiesAndAdditionalPropertiesClass.md +docs/Model200Response.md +docs/Name.md +docs/NumberOnly.md +docs/Order.md +docs/OuterComposite.md +docs/OuterEnum.md +docs/Pet.md +docs/PetAPI.md +docs/ReadOnlyFirst.md +docs/Return.md +docs/SpecialModelName.md +docs/StoreAPI.md +docs/StringBooleanMap.md +docs/Tag.md +docs/TypeHolderDefault.md +docs/TypeHolderExample.md +docs/User.md +docs/UserAPI.md +docs/XmlItem.md diff --git a/samples/client/petstore/swift5/vaporLibrary/.openapi-generator/VERSION b/samples/client/petstore/swift5/vaporLibrary/.openapi-generator/VERSION new file mode 100644 index 000000000000..6555596f9311 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/.openapi-generator/VERSION @@ -0,0 +1 @@ +5.2.0-SNAPSHOT \ No newline at end of file diff --git a/samples/client/petstore/swift5/vaporLibrary/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/samples/client/petstore/swift5/vaporLibrary/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000000..919434a6254f --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/samples/client/petstore/swift5/vaporLibrary/Package.resolved b/samples/client/petstore/swift5/vaporLibrary/Package.resolved new file mode 100644 index 000000000000..8f867e0061df --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Package.resolved @@ -0,0 +1,160 @@ +{ + "object": { + "pins": [ + { + "package": "AnyCodable", + "repositoryURL": "https://github.com/Flight-School/AnyCodable", + "state": { + "branch": null, + "revision": "876d162385e9862ae8b3c8d65dc301312b040005", + "version": "0.6.0" + } + }, + { + "package": "async-http-client", + "repositoryURL": "https://github.com/swift-server/async-http-client.git", + "state": { + "branch": null, + "revision": "8ccba7328d178ac05a1a9803cf3f2c6660d2f826", + "version": "1.3.0" + } + }, + { + "package": "async-kit", + "repositoryURL": "https://github.com/vapor/async-kit.git", + "state": { + "branch": null, + "revision": "c1de408100a2f2e4ab2ea06512e8635bc1a59144", + "version": "1.3.1" + } + }, + { + "package": "console-kit", + "repositoryURL": "https://github.com/vapor/console-kit.git", + "state": { + "branch": null, + "revision": "cfe8bcd58f74ffecb4f536d8237de146b634ecd3", + "version": "4.2.6" + } + }, + { + "package": "multipart-kit", + "repositoryURL": "https://github.com/vapor/multipart-kit.git", + "state": { + "branch": null, + "revision": "2376b4949e8a1675f7c495224029498194eecf61", + "version": "4.0.3" + } + }, + { + "package": "routing-kit", + "repositoryURL": "https://github.com/vapor/routing-kit.git", + "state": { + "branch": null, + "revision": "a0801a36a6ad501d5ad6285cbcd4774de6b0a734", + "version": "4.3.0" + } + }, + { + "package": "swift-backtrace", + "repositoryURL": "https://github.com/swift-server/swift-backtrace.git", + "state": { + "branch": null, + "revision": "54a65d6391a1467a896d0d351ff2de6f469ee53c", + "version": "1.2.3" + } + }, + { + "package": "swift-crypto", + "repositoryURL": "https://github.com/apple/swift-crypto.git", + "state": { + "branch": null, + "revision": "3bea268b223651c4ab7b7b9ad62ef9b2d4143eb6", + "version": "1.1.6" + } + }, + { + "package": "swift-log", + "repositoryURL": "https://github.com/apple/swift-log.git", + "state": { + "branch": null, + "revision": "5d66f7ba25daf4f94100e7022febf3c75e37a6c7", + "version": "1.4.2" + } + }, + { + "package": "swift-metrics", + "repositoryURL": "https://github.com/apple/swift-metrics.git", + "state": { + "branch": null, + "revision": "e382458581b05839a571c578e90060fff499f101", + "version": "2.1.1" + } + }, + { + "package": "swift-nio", + "repositoryURL": "https://github.com/apple/swift-nio.git", + "state": { + "branch": null, + "revision": "d161bf658780b209c185994528e7e24376cf7283", + "version": "2.29.0" + } + }, + { + "package": "swift-nio-extras", + "repositoryURL": "https://github.com/apple/swift-nio-extras.git", + "state": { + "branch": null, + "revision": "de1c80ad1fdff1ba772bcef6b392c3ef735f39a6", + "version": "1.8.0" + } + }, + { + "package": "swift-nio-http2", + "repositoryURL": "https://github.com/apple/swift-nio-http2.git", + "state": { + "branch": null, + "revision": "e3e9024a632b40695ad5d3a85f9776a9b27a4bc6", + "version": "1.17.0" + } + }, + { + "package": "swift-nio-ssl", + "repositoryURL": "https://github.com/apple/swift-nio-ssl.git", + "state": { + "branch": null, + "revision": "6363cdf6d2fb863e82434f3c4618f4e896e37569", + "version": "2.13.1" + } + }, + { + "package": "swift-nio-transport-services", + "repositoryURL": "https://github.com/apple/swift-nio-transport-services.git", + "state": { + "branch": null, + "revision": "657537c2cf1845f8d5201ecc4e48f21f21841128", + "version": "1.10.0" + } + }, + { + "package": "vapor", + "repositoryURL": "https://github.com/vapor/vapor.git", + "state": { + "branch": null, + "revision": "bc194e3868cbd9cf3cd41392e9b10d6fad089bc4", + "version": "4.45.7" + } + }, + { + "package": "websocket-kit", + "repositoryURL": "https://github.com/vapor/websocket-kit.git", + "state": { + "branch": null, + "revision": "a2d26b3de8b3be292f3208d1c74024f76ac503da", + "version": "2.1.3" + } + } + ] + }, + "version": 1 +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Package.swift b/samples/client/petstore/swift5/vaporLibrary/Package.swift new file mode 100644 index 000000000000..3dec2555d097 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Package.swift @@ -0,0 +1,31 @@ +// swift-tools-version:5.1 + +import PackageDescription + +let package = Package( + name: "PetstoreClient", + platforms: [ + .macOS(.v10_15), + ], + products: [ + // Products define the executables and libraries produced by a package, and make them visible to other packages. + .library( + name: "PetstoreClient", + targets: ["PetstoreClient"] + ), + ], + dependencies: [ + // Dependencies declare other packages that this package depends on. + .package(url: "https://github.com/Flight-School/AnyCodable", .exact("0.6.0")), + .package(url: "https://github.com/vapor/vapor.git", from: "4.0.0") + ], + targets: [ + // Targets are the basic building blocks of a package. A target can define a module or a test suite. + // Targets can depend on other targets in this package, and on products in packages which this package depends on. + .target( + name: "PetstoreClient", + dependencies: ["AnyCodable", "Vapor", ], + path: "Sources/PetstoreClient" + ), + ] +) diff --git a/samples/client/petstore/swift5/vaporLibrary/README.md b/samples/client/petstore/swift5/vaporLibrary/README.md new file mode 100644 index 000000000000..ee3cf1af06fd --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/README.md @@ -0,0 +1,149 @@ +# Swift5 API client for PetstoreClient + +This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + +## Overview +This API client was generated by the [OpenAPI Generator](https://openapi-generator.tech) project. By using the [openapi-spec](https://github.com/OAI/OpenAPI-Specification) from a remote server, you can easily generate an API client. + +- API version: 1.0.0 +- Package version: +- Build package: org.openapitools.codegen.languages.Swift5ClientCodegen + +## Installation + +Add the following entry in your Package.swift: + +> .package(path: "./PetstoreClient") + +## Documentation for API Endpoints + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Class | Method | HTTP request | Description +------------ | ------------- | ------------- | ------------- +*AnotherFakeAPI* | [**call123testSpecialTags**](docs/AnotherFakeAPI.md#call123testspecialtags) | **PATCH** /another-fake/dummy | To test special tags +*FakeAPI* | [**createXmlItem**](docs/FakeAPI.md#createxmlitem) | **POST** /fake/create_xml_item | creates an XmlItem +*FakeAPI* | [**fakeOuterBooleanSerialize**](docs/FakeAPI.md#fakeouterbooleanserialize) | **POST** /fake/outer/boolean | +*FakeAPI* | [**fakeOuterCompositeSerialize**](docs/FakeAPI.md#fakeoutercompositeserialize) | **POST** /fake/outer/composite | +*FakeAPI* | [**fakeOuterNumberSerialize**](docs/FakeAPI.md#fakeouternumberserialize) | **POST** /fake/outer/number | +*FakeAPI* | [**fakeOuterStringSerialize**](docs/FakeAPI.md#fakeouterstringserialize) | **POST** /fake/outer/string | +*FakeAPI* | [**testBodyWithFileSchema**](docs/FakeAPI.md#testbodywithfileschema) | **PUT** /fake/body-with-file-schema | +*FakeAPI* | [**testBodyWithQueryParams**](docs/FakeAPI.md#testbodywithqueryparams) | **PUT** /fake/body-with-query-params | +*FakeAPI* | [**testClientModel**](docs/FakeAPI.md#testclientmodel) | **PATCH** /fake | To test \"client\" model +*FakeAPI* | [**testEndpointParameters**](docs/FakeAPI.md#testendpointparameters) | **POST** /fake | Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 +*FakeAPI* | [**testEnumParameters**](docs/FakeAPI.md#testenumparameters) | **GET** /fake | To test enum parameters +*FakeAPI* | [**testGroupParameters**](docs/FakeAPI.md#testgroupparameters) | **DELETE** /fake | Fake endpoint to test group parameters (optional) +*FakeAPI* | [**testInlineAdditionalProperties**](docs/FakeAPI.md#testinlineadditionalproperties) | **POST** /fake/inline-additionalProperties | test inline additionalProperties +*FakeAPI* | [**testJsonFormData**](docs/FakeAPI.md#testjsonformdata) | **GET** /fake/jsonFormData | test json serialization of form data +*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 +*PetAPI* | [**findPetsByStatus**](docs/PetAPI.md#findpetsbystatus) | **GET** /pet/findByStatus | Finds Pets by status +*PetAPI* | [**findPetsByTags**](docs/PetAPI.md#findpetsbytags) | **GET** /pet/findByTags | Finds Pets by tags +*PetAPI* | [**getPetById**](docs/PetAPI.md#getpetbyid) | **GET** /pet/{petId} | Find pet by ID +*PetAPI* | [**updatePet**](docs/PetAPI.md#updatepet) | **PUT** /pet | Update an existing pet +*PetAPI* | [**updatePetWithForm**](docs/PetAPI.md#updatepetwithform) | **POST** /pet/{petId} | Updates a pet in the store with form data +*PetAPI* | [**uploadFile**](docs/PetAPI.md#uploadfile) | **POST** /pet/{petId}/uploadImage | uploads an image +*PetAPI* | [**uploadFileWithRequiredFile**](docs/PetAPI.md#uploadfilewithrequiredfile) | **POST** /fake/{petId}/uploadImageWithRequiredFile | uploads an image (required) +*StoreAPI* | [**deleteOrder**](docs/StoreAPI.md#deleteorder) | **DELETE** /store/order/{order_id} | Delete purchase order by ID +*StoreAPI* | [**getInventory**](docs/StoreAPI.md#getinventory) | **GET** /store/inventory | Returns pet inventories by status +*StoreAPI* | [**getOrderById**](docs/StoreAPI.md#getorderbyid) | **GET** /store/order/{order_id} | Find purchase order by ID +*StoreAPI* | [**placeOrder**](docs/StoreAPI.md#placeorder) | **POST** /store/order | Place an order for a pet +*UserAPI* | [**createUser**](docs/UserAPI.md#createuser) | **POST** /user | Create user +*UserAPI* | [**createUsersWithArrayInput**](docs/UserAPI.md#createuserswitharrayinput) | **POST** /user/createWithArray | Creates list of users with given input array +*UserAPI* | [**createUsersWithListInput**](docs/UserAPI.md#createuserswithlistinput) | **POST** /user/createWithList | Creates list of users with given input array +*UserAPI* | [**deleteUser**](docs/UserAPI.md#deleteuser) | **DELETE** /user/{username} | Delete user +*UserAPI* | [**getUserByName**](docs/UserAPI.md#getuserbyname) | **GET** /user/{username} | Get user by user name +*UserAPI* | [**loginUser**](docs/UserAPI.md#loginuser) | **GET** /user/login | Logs user into the system +*UserAPI* | [**logoutUser**](docs/UserAPI.md#logoutuser) | **GET** /user/logout | Logs out current logged in user session +*UserAPI* | [**updateUser**](docs/UserAPI.md#updateuser) | **PUT** /user/{username} | Updated user + + +## Documentation For Models + + - [AdditionalPropertiesAnyType](docs/AdditionalPropertiesAnyType.md) + - [AdditionalPropertiesArray](docs/AdditionalPropertiesArray.md) + - [AdditionalPropertiesBoolean](docs/AdditionalPropertiesBoolean.md) + - [AdditionalPropertiesClass](docs/AdditionalPropertiesClass.md) + - [AdditionalPropertiesInteger](docs/AdditionalPropertiesInteger.md) + - [AdditionalPropertiesNumber](docs/AdditionalPropertiesNumber.md) + - [AdditionalPropertiesObject](docs/AdditionalPropertiesObject.md) + - [AdditionalPropertiesString](docs/AdditionalPropertiesString.md) + - [Animal](docs/Animal.md) + - [AnimalFarm](docs/AnimalFarm.md) + - [ApiResponse](docs/ApiResponse.md) + - [ArrayOfArrayOfNumberOnly](docs/ArrayOfArrayOfNumberOnly.md) + - [ArrayOfNumberOnly](docs/ArrayOfNumberOnly.md) + - [ArrayTest](docs/ArrayTest.md) + - [BigCat](docs/BigCat.md) + - [BigCatAllOf](docs/BigCatAllOf.md) + - [Capitalization](docs/Capitalization.md) + - [Cat](docs/Cat.md) + - [CatAllOf](docs/CatAllOf.md) + - [Category](docs/Category.md) + - [ClassModel](docs/ClassModel.md) + - [Client](docs/Client.md) + - [Dog](docs/Dog.md) + - [DogAllOf](docs/DogAllOf.md) + - [EnumArrays](docs/EnumArrays.md) + - [EnumClass](docs/EnumClass.md) + - [EnumTest](docs/EnumTest.md) + - [File](docs/File.md) + - [FileSchemaTestClass](docs/FileSchemaTestClass.md) + - [FormatTest](docs/FormatTest.md) + - [HasOnlyReadOnly](docs/HasOnlyReadOnly.md) + - [List](docs/List.md) + - [MapTest](docs/MapTest.md) + - [MixedPropertiesAndAdditionalPropertiesClass](docs/MixedPropertiesAndAdditionalPropertiesClass.md) + - [Model200Response](docs/Model200Response.md) + - [Name](docs/Name.md) + - [NumberOnly](docs/NumberOnly.md) + - [Order](docs/Order.md) + - [OuterComposite](docs/OuterComposite.md) + - [OuterEnum](docs/OuterEnum.md) + - [Pet](docs/Pet.md) + - [ReadOnlyFirst](docs/ReadOnlyFirst.md) + - [Return](docs/Return.md) + - [SpecialModelName](docs/SpecialModelName.md) + - [StringBooleanMap](docs/StringBooleanMap.md) + - [Tag](docs/Tag.md) + - [TypeHolderDefault](docs/TypeHolderDefault.md) + - [TypeHolderExample](docs/TypeHolderExample.md) + - [User](docs/User.md) + - [XmlItem](docs/XmlItem.md) + + +## Documentation For Authorization + + +## api_key + +- **Type**: API key +- **API key parameter name**: api_key +- **Location**: HTTP header + +## api_key_query + +- **Type**: API key +- **API key parameter name**: api_key_query +- **Location**: URL query string + +## http_basic_test + +- **Type**: HTTP basic authentication + +## petstore_auth + +- **Type**: OAuth +- **Flow**: implicit +- **Authorization URL**: http://petstore.swagger.io/api/oauth/dialog +- **Scopes**: + - **write:pets**: modify pets in your account + - **read:pets**: read your pets + + +## Author + + + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs.swift new file mode 100644 index 000000000000..975fee896fa1 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs.swift @@ -0,0 +1,16 @@ +// APIs.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor + +@available(*, deprecated, renamed: "PetstoreClient") +public typealias PetstoreClientAPI = PetstoreClient + +open class PetstoreClient { + public static var basePath = "http://petstore.swagger.io:80/v2" + public static var customHeaders: HTTPHeaders = [:] +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift new file mode 100644 index 000000000000..fa2b11dab661 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/AnotherFakeAPI.swift @@ -0,0 +1,64 @@ +// +// AnotherFakeAPI.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor +#if canImport(AnyCodable) +import AnyCodable +#endif + +open class AnotherFakeAPI { + + /** + To test special tags + PATCH /another-fake/dummy + To test special tags and operation ID starting with number + - parameter body: (body) client model + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func call123testSpecialTagsRaw(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/another-fake/dummy" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PATCH, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Client.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum Call123testSpecialTags { + case http200(value: Client, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + To test special tags + PATCH /another-fake/dummy + To test special tags and operation ID starting with number + - parameter body: (body) client model + - returns: `EventLoopFuture` of `Call123testSpecialTags` + */ + open class func call123testSpecialTags(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return call123testSpecialTagsRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> Call123testSpecialTags in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Client.self, using: Configuration.contentConfiguration.requireDecoder(for: Client.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift new file mode 100644 index 000000000000..f9216c9884e1 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeAPI.swift @@ -0,0 +1,886 @@ +// +// FakeAPI.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor +#if canImport(AnyCodable) +import AnyCodable +#endif + +open class FakeAPI { + + /** + creates an XmlItem + POST /fake/create_xml_item + this route creates an XmlItem + - parameter xmlItem: (body) XmlItem Body + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func createXmlItemRaw(xmlItem: XmlItem, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/create_xml_item" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(xmlItem, using: Configuration.contentConfiguration.requireEncoder(for: XmlItem.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum CreateXmlItem { + case http200(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + creates an XmlItem + POST /fake/create_xml_item + this route creates an XmlItem + - parameter xmlItem: (body) XmlItem Body + - returns: `EventLoopFuture` of `CreateXmlItem` + */ + open class func createXmlItem(xmlItem: XmlItem, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return createXmlItemRaw(xmlItem: xmlItem, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> CreateXmlItem in + switch response.status.code { + case 200: + return .http200(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + POST /fake/outer/boolean + Test serialization of outer boolean types + - parameter body: (body) Input boolean as post body (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func fakeOuterBooleanSerializeRaw(body: Bool? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/outer/boolean" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + if let body = body { + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Bool.defaultContentType)) + } + + try beforeSend(&request) + } + } + + public enum FakeOuterBooleanSerialize { + case http200(value: Bool, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + POST /fake/outer/boolean + Test serialization of outer boolean types + - parameter body: (body) Input boolean as post body (optional) + - returns: `EventLoopFuture` of `FakeOuterBooleanSerialize` + */ + open class func fakeOuterBooleanSerialize(body: Bool? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return fakeOuterBooleanSerializeRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> FakeOuterBooleanSerialize in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Bool.self, using: Configuration.contentConfiguration.requireDecoder(for: Bool.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + POST /fake/outer/composite + Test serialization of object with outer number type + - parameter body: (body) Input composite as post body (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func fakeOuterCompositeSerializeRaw(body: OuterComposite? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/outer/composite" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + if let body = body { + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: OuterComposite.defaultContentType)) + } + + try beforeSend(&request) + } + } + + public enum FakeOuterCompositeSerialize { + case http200(value: OuterComposite, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + POST /fake/outer/composite + Test serialization of object with outer number type + - parameter body: (body) Input composite as post body (optional) + - returns: `EventLoopFuture` of `FakeOuterCompositeSerialize` + */ + open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return fakeOuterCompositeSerializeRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> FakeOuterCompositeSerialize in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(OuterComposite.self, using: Configuration.contentConfiguration.requireDecoder(for: OuterComposite.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + POST /fake/outer/number + Test serialization of outer number types + - parameter body: (body) Input number as post body (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func fakeOuterNumberSerializeRaw(body: Double? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/outer/number" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + if let body = body { + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Double.defaultContentType)) + } + + try beforeSend(&request) + } + } + + public enum FakeOuterNumberSerialize { + case http200(value: Double, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + POST /fake/outer/number + Test serialization of outer number types + - parameter body: (body) Input number as post body (optional) + - returns: `EventLoopFuture` of `FakeOuterNumberSerialize` + */ + open class func fakeOuterNumberSerialize(body: Double? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return fakeOuterNumberSerializeRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> FakeOuterNumberSerialize in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Double.self, using: Configuration.contentConfiguration.requireDecoder(for: Double.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + POST /fake/outer/string + Test serialization of outer string types + - parameter body: (body) Input string as post body (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func fakeOuterStringSerializeRaw(body: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/outer/string" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + if let body = body { + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: String.defaultContentType)) + } + + try beforeSend(&request) + } + } + + public enum FakeOuterStringSerialize { + case http200(value: String, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + POST /fake/outer/string + Test serialization of outer string types + - parameter body: (body) Input string as post body (optional) + - returns: `EventLoopFuture` of `FakeOuterStringSerialize` + */ + open class func fakeOuterStringSerialize(body: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return fakeOuterStringSerializeRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> FakeOuterStringSerialize in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(String.self, using: Configuration.contentConfiguration.requireDecoder(for: String.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + PUT /fake/body-with-file-schema + For this test, the body for this request much reference a schema named `File`. + - parameter body: (body) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testBodyWithFileSchemaRaw(body: FileSchemaTestClass, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/body-with-file-schema" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PUT, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: FileSchemaTestClass.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum TestBodyWithFileSchema { + case http200(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + PUT /fake/body-with-file-schema + For this test, the body for this request much reference a schema named `File`. + - parameter body: (body) + - returns: `EventLoopFuture` of `TestBodyWithFileSchema` + */ + open class func testBodyWithFileSchema(body: FileSchemaTestClass, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testBodyWithFileSchemaRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestBodyWithFileSchema in + switch response.status.code { + case 200: + return .http200(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + PUT /fake/body-with-query-params + - parameter query: (query) + - parameter body: (body) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testBodyWithQueryParamsRaw(query: String, body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/body-with-query-params" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PUT, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + struct QueryParams: Content { + var query: String + } + try request.query.encode(QueryParams(query: query)) + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: User.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum TestBodyWithQueryParams { + case http200(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + PUT /fake/body-with-query-params + - parameter query: (query) + - parameter body: (body) + - returns: `EventLoopFuture` of `TestBodyWithQueryParams` + */ + open class func testBodyWithQueryParams(query: String, body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testBodyWithQueryParamsRaw(query: query, body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestBodyWithQueryParams in + switch response.status.code { + case 200: + return .http200(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + To test \"client\" model + PATCH /fake + To test \"client\" model + - parameter body: (body) client model + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testClientModelRaw(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PATCH, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Client.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum TestClientModel { + case http200(value: Client, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + To test \"client\" model + PATCH /fake + To test \"client\" model + - parameter body: (body) client model + - returns: `EventLoopFuture` of `TestClientModel` + */ + open class func testClientModel(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testClientModelRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestClientModel in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Client.self, using: Configuration.contentConfiguration.requireDecoder(for: Client.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 + POST /fake + Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 + - BASIC: + - type: http + - name: http_basic_test + - parameter number: (form) None + - parameter double: (form) None + - parameter patternWithoutDelimiter: (form) None + - parameter byte: (form) None + - parameter integer: (form) None (optional) + - parameter int32: (form) None (optional) + - parameter int64: (form) None (optional) + - parameter float: (form) None (optional) + - parameter string: (form) None (optional) + - parameter binary: (form) None (optional) + - parameter date: (form) None (optional) + - parameter dateTime: (form) None (optional) + - parameter password: (form) None (optional) + - parameter callback: (form) None (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testEndpointParametersRaw(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: Data? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + var integer: Int? + var int32: Int? + var int64: Int64? + var number: Double + var float: Float? + var double: Double + var string: String? + var patternWithoutDelimiter: String + var byte: Data + var binary: Data? + var date: Date? + var dateTime: Date? + var password: String? + var callback: String? + } + try request.content.encode(FormParams(integer: integer, int32: int32, int64: int64, number: number, float: float, double: double, string: string, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)) + try beforeSend(&request) + } + } + + public enum TestEndpointParameters { + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 + POST /fake + Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 + - BASIC: + - type: http + - name: http_basic_test + - parameter number: (form) None + - parameter double: (form) None + - parameter patternWithoutDelimiter: (form) None + - parameter byte: (form) None + - parameter integer: (form) None (optional) + - parameter int32: (form) None (optional) + - parameter int64: (form) None (optional) + - parameter float: (form) None (optional) + - parameter string: (form) None (optional) + - parameter binary: (form) None (optional) + - parameter date: (form) None (optional) + - parameter dateTime: (form) None (optional) + - parameter password: (form) None (optional) + - parameter callback: (form) None (optional) + - returns: `EventLoopFuture` of `TestEndpointParameters` + */ + 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: Data? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testEndpointParametersRaw(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, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestEndpointParameters in + switch response.status.code { + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + * enum for parameter enumHeaderStringArray + */ + public enum EnumHeaderStringArray_testEnumParameters: String, CaseIterable, Content { + case greaterThan = ">" + case dollar = "$" + } + + /** + * enum for parameter enumHeaderString + */ + public enum EnumHeaderString_testEnumParameters: String, CaseIterable, Content { + case abc = "_abc" + case efg = "-efg" + case xyz = "(xyz)" + } + + /** + * enum for parameter enumQueryStringArray + */ + public enum EnumQueryStringArray_testEnumParameters: String, CaseIterable, Content { + case greaterThan = ">" + case dollar = "$" + } + + /** + * enum for parameter enumQueryString + */ + public enum EnumQueryString_testEnumParameters: String, CaseIterable, Content { + case abc = "_abc" + case efg = "-efg" + case xyz = "(xyz)" + } + + /** + * enum for parameter enumQueryInteger + */ + public enum EnumQueryInteger_testEnumParameters: Int, CaseIterable, Content { + case _1 = 1 + case number2 = -2 + } + + /** + * enum for parameter enumQueryDouble + */ + public enum EnumQueryDouble_testEnumParameters: Double, CaseIterable, Content { + case _11 = 1.1 + case number12 = -1.2 + } + + /** + * enum for parameter enumFormStringArray + */ + public enum EnumFormStringArray_testEnumParameters: String, CaseIterable, Content { + case greaterThan = ">" + case dollar = "$" + } + + /** + * enum for parameter enumFormString + */ + public enum EnumFormString_testEnumParameters: String, CaseIterable, Content { + case abc = "_abc" + case efg = "-efg" + case xyz = "(xyz)" + } + + /** + To test enum parameters + GET /fake + To test enum parameters + - parameter enumHeaderStringArray: (header) Header parameter enum test (string array) (optional) + - parameter enumHeaderString: (header) Header parameter enum test (string) (optional, default to .efg) + - parameter enumQueryStringArray: (query) Query parameter enum test (string array) (optional) + - parameter enumQueryString: (query) Query parameter enum test (string) (optional, default to .efg) + - parameter enumQueryInteger: (query) Query parameter enum test (double) (optional) + - parameter enumQueryDouble: (query) Query parameter enum test (double) (optional) + - parameter enumFormStringArray: (form) Form parameter enum test (string array) (optional, default to .dollar) + - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .efg) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testEnumParametersRaw(enumHeaderStringArray: [EnumHeaderStringArray_testEnumParameters]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [EnumQueryStringArray_testEnumParameters]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [EnumFormStringArray_testEnumParameters]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + request.headers.add(name: "enum_header_string_array", value: enumHeaderStringArray?.map { $0.rawValue.description }.description ?? "") + + request.headers.add(name: "enum_header_string", value: enumHeaderString?.rawValue.description ?? "") + + struct QueryParams: Content { + var enumQueryStringArray: [EnumQueryStringArray_testEnumParameters]? + var enumQueryString: EnumQueryString_testEnumParameters? + var enumQueryInteger: EnumQueryInteger_testEnumParameters? + var enumQueryDouble: EnumQueryDouble_testEnumParameters? + } + try request.query.encode(QueryParams(enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble)) + struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + var enumFormStringArray: [EnumFormStringArray_testEnumParameters]? + var enumFormString: EnumFormString_testEnumParameters? + } + try request.content.encode(FormParams(enumFormStringArray: enumFormStringArray, enumFormString: enumFormString), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)) + try beforeSend(&request) + } + } + + public enum TestEnumParameters { + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + To test enum parameters + GET /fake + To test enum parameters + - parameter enumHeaderStringArray: (header) Header parameter enum test (string array) (optional) + - parameter enumHeaderString: (header) Header parameter enum test (string) (optional, default to .efg) + - parameter enumQueryStringArray: (query) Query parameter enum test (string array) (optional) + - parameter enumQueryString: (query) Query parameter enum test (string) (optional, default to .efg) + - parameter enumQueryInteger: (query) Query parameter enum test (double) (optional) + - parameter enumQueryDouble: (query) Query parameter enum test (double) (optional) + - parameter enumFormStringArray: (form) Form parameter enum test (string array) (optional, default to .dollar) + - parameter enumFormString: (form) Form parameter enum test (string) (optional, default to .efg) + - returns: `EventLoopFuture` of `TestEnumParameters` + */ + open class func testEnumParameters(enumHeaderStringArray: [EnumHeaderStringArray_testEnumParameters]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [EnumQueryStringArray_testEnumParameters]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [EnumFormStringArray_testEnumParameters]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testEnumParametersRaw(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestEnumParameters in + switch response.status.code { + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Fake endpoint to test group parameters (optional) + DELETE /fake + Fake endpoint to test group parameters (optional) + - parameter requiredStringGroup: (query) Required String in group parameters + - parameter requiredBooleanGroup: (header) Required Boolean in group parameters + - parameter requiredInt64Group: (query) Required Integer in group parameters + - parameter stringGroup: (query) String in group parameters (optional) + - parameter booleanGroup: (header) Boolean in group parameters (optional) + - parameter int64Group: (query) Integer in group parameters (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testGroupParametersRaw(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.DELETE, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + request.headers.add(name: "required_boolean_group", value: requiredBooleanGroup.description) + + request.headers.add(name: "boolean_group", value: booleanGroup?.description ?? "") + + struct QueryParams: Content { + var requiredStringGroup: Int + var requiredInt64Group: Int64 + var stringGroup: Int? + var int64Group: Int64? + } + try request.query.encode(QueryParams(requiredStringGroup: requiredStringGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, int64Group: int64Group)) + + try beforeSend(&request) + } + } + + public enum TestGroupParameters { + case http400(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Fake endpoint to test group parameters (optional) + DELETE /fake + Fake endpoint to test group parameters (optional) + - parameter requiredStringGroup: (query) Required String in group parameters + - parameter requiredBooleanGroup: (header) Required Boolean in group parameters + - parameter requiredInt64Group: (query) Required Integer in group parameters + - parameter stringGroup: (query) String in group parameters (optional) + - parameter booleanGroup: (header) Boolean in group parameters (optional) + - parameter int64Group: (query) Integer in group parameters (optional) + - returns: `EventLoopFuture` of `TestGroupParameters` + */ + open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testGroupParametersRaw(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestGroupParameters in + switch response.status.code { + case 400: + return .http400(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + test inline additionalProperties + POST /fake/inline-additionalProperties + - parameter param: (body) request body + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testInlineAdditionalPropertiesRaw(param: [String: String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/inline-additionalProperties" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(param, using: Configuration.contentConfiguration.requireEncoder(for: [String: String].defaultContentType)) + + try beforeSend(&request) + } + } + + public enum TestInlineAdditionalProperties { + case http200(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + test inline additionalProperties + POST /fake/inline-additionalProperties + - parameter param: (body) request body + - returns: `EventLoopFuture` of `TestInlineAdditionalProperties` + */ + open class func testInlineAdditionalProperties(param: [String: String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testInlineAdditionalPropertiesRaw(param: param, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestInlineAdditionalProperties in + switch response.status.code { + case 200: + return .http200(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + test json serialization of form data + GET /fake/jsonFormData + - parameter param: (form) field1 + - parameter param2: (form) field2 + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testJsonFormDataRaw(param: String, param2: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/jsonFormData" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + var param: String + var param2: String + } + try request.content.encode(FormParams(param: param, param2: param2), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)) + try beforeSend(&request) + } + } + + public enum TestJsonFormData { + case http200(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + test json serialization of form data + GET /fake/jsonFormData + - parameter param: (form) field1 + - parameter param2: (form) field2 + - returns: `EventLoopFuture` of `TestJsonFormData` + */ + open class func testJsonFormData(param: String, param2: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testJsonFormDataRaw(param: param, param2: param2, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestJsonFormData in + switch response.status.code { + case 200: + return .http200(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + 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: `EventLoopFuture` of `ClientResponse` + */ + open class func testQueryParameterCollectionFormatRaw(pipe: [String], ioutil: [String], http: [String], url: [String], context: [String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake/test-query-paramters" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PUT, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + struct QueryParams: Content { + var pipe: [String] + var ioutil: [String] + var http: [String] + var url: [String] + var context: [String] + } + try request.query.encode(QueryParams(pipe: pipe, ioutil: ioutil, http: http, url: url, context: context)) + + try beforeSend(&request) + } + } + + public enum TestQueryParameterCollectionFormat { + case http200(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + 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: `EventLoopFuture` of `TestQueryParameterCollectionFormat` + */ + open class func testQueryParameterCollectionFormat(pipe: [String], ioutil: [String], http: [String], url: [String], context: [String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testQueryParameterCollectionFormatRaw(pipe: pipe, ioutil: ioutil, http: http, url: url, context: context, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestQueryParameterCollectionFormat in + switch response.status.code { + case 200: + return .http200(raw: response) + default: + return .http0(raw: response) + } + } + } + +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift new file mode 100644 index 000000000000..0df1da56467a --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/FakeClassnameTags123API.swift @@ -0,0 +1,70 @@ +// +// FakeClassnameTags123API.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor +#if canImport(AnyCodable) +import AnyCodable +#endif + +open class FakeClassnameTags123API { + + /** + To test class name in snake case + PATCH /fake_classname_test + To test class name in snake case + - API Key: + - type: apiKey api_key_query (QUERY) + - name: api_key_query + - parameter body: (body) client model + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func testClassnameRaw(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/fake_classname_test" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PATCH, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Client.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum TestClassname { + case http200(value: Client, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + To test class name in snake case + PATCH /fake_classname_test + To test class name in snake case + - API Key: + - type: apiKey api_key_query (QUERY) + - name: api_key_query + - parameter body: (body) client model + - returns: `EventLoopFuture` of `TestClassname` + */ + open class func testClassname(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return testClassnameRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> TestClassname in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Client.self, using: Configuration.contentConfiguration.requireDecoder(for: Client.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/PetAPI.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/PetAPI.swift new file mode 100644 index 000000000000..c38aad023319 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/PetAPI.swift @@ -0,0 +1,581 @@ +// +// PetAPI.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor +#if canImport(AnyCodable) +import AnyCodable +#endif + +open class PetAPI { + + /** + Add a new pet to the store + POST /pet + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter body: (body) Pet object that needs to be added to the store + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func addPetRaw(body: Pet, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/pet" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Pet.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum AddPet { + case http200(raw: ClientResponse) + case http405(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Add a new pet to the store + POST /pet + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter body: (body) Pet object that needs to be added to the store + - returns: `EventLoopFuture` of `AddPet` + */ + open class func addPet(body: Pet, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return addPetRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> AddPet in + switch response.status.code { + case 200: + return .http200(raw: response) + case 405: + return .http405(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Deletes a pet + DELETE /pet/{petId} + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) Pet id to delete + - parameter apiKey: (header) (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func deletePetRaw(petId: Int64, apiKey: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/pet/{petId}" + let petIdPreEscape = String(describing: petId) + let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.DELETE, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + request.headers.add(name: "api_key", value: apiKey?.description ?? "") + + + + try beforeSend(&request) + } + } + + public enum DeletePet { + case http200(raw: ClientResponse) + case http400(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Deletes a pet + DELETE /pet/{petId} + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) Pet id to delete + - parameter apiKey: (header) (optional) + - returns: `EventLoopFuture` of `DeletePet` + */ + open class func deletePet(petId: Int64, apiKey: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return deletePetRaw(petId: petId, apiKey: apiKey, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> DeletePet in + switch response.status.code { + case 200: + return .http200(raw: response) + case 400: + return .http400(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + * enum for parameter status + */ + public enum Status_findPetsByStatus: String, CaseIterable, Content { + case available = "available" + case pending = "pending" + case sold = "sold" + } + + /** + Finds Pets by status + GET /pet/findByStatus + Multiple status values can be provided with comma separated strings + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter status: (query) Status values that need to be considered for filter + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func findPetsByStatusRaw(status: [Status_findPetsByStatus], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/pet/findByStatus" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + struct QueryParams: Content { + var status: [Status_findPetsByStatus] + } + try request.query.encode(QueryParams(status: status)) + + try beforeSend(&request) + } + } + + public enum FindPetsByStatus { + case http200(value: [Pet], raw: ClientResponse) + case http400(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Finds Pets by status + GET /pet/findByStatus + Multiple status values can be provided with comma separated strings + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter status: (query) Status values that need to be considered for filter + - returns: `EventLoopFuture` of `FindPetsByStatus` + */ + open class func findPetsByStatus(status: [Status_findPetsByStatus], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return findPetsByStatusRaw(status: status, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> FindPetsByStatus in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode([Pet].self, using: Configuration.contentConfiguration.requireDecoder(for: [Pet].defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Finds Pets by tags + GET /pet/findByTags + Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter tags: (query) Tags to filter by + - returns: `EventLoopFuture` of `ClientResponse` + */ + @available(*, deprecated, message: "This operation is deprecated.") + open class func findPetsByTagsRaw(tags: Set, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/pet/findByTags" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + struct QueryParams: Content { + var tags: Set + } + try request.query.encode(QueryParams(tags: tags)) + + try beforeSend(&request) + } + } + + public enum FindPetsByTags { + case http200(value: Set, raw: ClientResponse) + case http400(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Finds Pets by tags + GET /pet/findByTags + Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter tags: (query) Tags to filter by + - returns: `EventLoopFuture` of `FindPetsByTags` + */ + @available(*, deprecated, message: "This operation is deprecated.") + open class func findPetsByTags(tags: Set, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return findPetsByTagsRaw(tags: tags, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> FindPetsByTags in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Set.self, using: Configuration.contentConfiguration.requireDecoder(for: Set.defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Find pet by ID + GET /pet/{petId} + Returns a single pet + - API Key: + - type: apiKey api_key + - name: api_key + - parameter petId: (path) ID of pet to return + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func getPetByIdRaw(petId: Int64, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/pet/{petId}" + let petIdPreEscape = String(describing: petId) + let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum GetPetById { + case http200(value: Pet, raw: ClientResponse) + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Find pet by ID + GET /pet/{petId} + Returns a single pet + - API Key: + - type: apiKey api_key + - name: api_key + - parameter petId: (path) ID of pet to return + - returns: `EventLoopFuture` of `GetPetById` + */ + open class func getPetById(petId: Int64, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return getPetByIdRaw(petId: petId, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> GetPetById in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Pet.self, using: Configuration.contentConfiguration.requireDecoder(for: Pet.defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Update an existing pet + PUT /pet + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter body: (body) Pet object that needs to be added to the store + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func updatePetRaw(body: Pet, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/pet" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PUT, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Pet.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum UpdatePet { + case http200(raw: ClientResponse) + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http405(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Update an existing pet + PUT /pet + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter body: (body) Pet object that needs to be added to the store + - returns: `EventLoopFuture` of `UpdatePet` + */ + open class func updatePet(body: Pet, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return updatePetRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> UpdatePet in + switch response.status.code { + case 200: + return .http200(raw: response) + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + case 405: + return .http405(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Updates a pet in the store with form data + POST /pet/{petId} + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) ID of pet that needs to be updated + - parameter name: (form) Updated name of the pet (optional) + - parameter status: (form) Updated status of the pet (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func updatePetWithFormRaw(petId: Int64, name: String? = nil, status: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/pet/{petId}" + let petIdPreEscape = String(describing: petId) + let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + var name: String? + var status: String? + } + try request.content.encode(FormParams(name: name, status: status), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)) + try beforeSend(&request) + } + } + + public enum UpdatePetWithForm { + case http405(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Updates a pet in the store with form data + POST /pet/{petId} + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) ID of pet that needs to be updated + - parameter name: (form) Updated name of the pet (optional) + - parameter status: (form) Updated status of the pet (optional) + - returns: `EventLoopFuture` of `UpdatePetWithForm` + */ + open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return updatePetWithFormRaw(petId: petId, name: name, status: status, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> UpdatePetWithForm in + switch response.status.code { + case 405: + return .http405(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + uploads an image + POST /pet/{petId}/uploadImage + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) ID of pet to update + - parameter additionalMetadata: (form) Additional data to pass to server (optional) + - parameter file: (form) file to upload (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func uploadFileRaw(petId: Int64, additionalMetadata: String? = nil, file: Data? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/pet/{petId}/uploadImage" + let petIdPreEscape = String(describing: petId) + let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + var additionalMetadata: String? + var file: Data? + } + try request.content.encode(FormParams(additionalMetadata: additionalMetadata, file: file), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)) + try beforeSend(&request) + } + } + + public enum UploadFile { + case http200(value: ApiResponse, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + uploads an image + POST /pet/{petId}/uploadImage + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) ID of pet to update + - parameter additionalMetadata: (form) Additional data to pass to server (optional) + - parameter file: (form) file to upload (optional) + - returns: `EventLoopFuture` of `UploadFile` + */ + open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: Data? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return uploadFileRaw(petId: petId, additionalMetadata: additionalMetadata, file: file, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> UploadFile in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(ApiResponse.self, using: Configuration.contentConfiguration.requireDecoder(for: ApiResponse.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + uploads an image (required) + POST /fake/{petId}/uploadImageWithRequiredFile + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) ID of pet to update + - parameter requiredFile: (form) file to upload + - parameter additionalMetadata: (form) Additional data to pass to server (optional) + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func uploadFileWithRequiredFileRaw(petId: Int64, requiredFile: Data, additionalMetadata: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/fake/{petId}/uploadImageWithRequiredFile" + let petIdPreEscape = String(describing: petId) + let petIdPostEscape = petIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{petId}", with: petIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + struct FormParams: Content { + static let defaultContentType = Vapor.HTTPMediaType.formData + var additionalMetadata: String? + var requiredFile: Data + } + try request.content.encode(FormParams(additionalMetadata: additionalMetadata, requiredFile: requiredFile), using: Configuration.contentConfiguration.requireEncoder(for: FormParams.defaultContentType)) + try beforeSend(&request) + } + } + + public enum UploadFileWithRequiredFile { + case http200(value: ApiResponse, raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + uploads an image (required) + POST /fake/{petId}/uploadImageWithRequiredFile + - OAuth: + - type: oauth2 + - name: petstore_auth + - parameter petId: (path) ID of pet to update + - parameter requiredFile: (form) file to upload + - parameter additionalMetadata: (form) Additional data to pass to server (optional) + - returns: `EventLoopFuture` of `UploadFileWithRequiredFile` + */ + open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: Data, additionalMetadata: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return uploadFileWithRequiredFileRaw(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> UploadFileWithRequiredFile in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(ApiResponse.self, using: Configuration.contentConfiguration.requireDecoder(for: ApiResponse.defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift new file mode 100644 index 000000000000..e4c2f8020b7d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/StoreAPI.swift @@ -0,0 +1,228 @@ +// +// StoreAPI.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor +#if canImport(AnyCodable) +import AnyCodable +#endif + +open class StoreAPI { + + /** + Delete purchase order by ID + DELETE /store/order/{order_id} + For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors + - parameter orderId: (path) ID of the order that needs to be deleted + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func deleteOrderRaw(orderId: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/store/order/{order_id}" + let orderIdPreEscape = String(describing: orderId) + let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.DELETE, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum DeleteOrder { + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Delete purchase order by ID + DELETE /store/order/{order_id} + For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors + - parameter orderId: (path) ID of the order that needs to be deleted + - returns: `EventLoopFuture` of `DeleteOrder` + */ + open class func deleteOrder(orderId: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return deleteOrderRaw(orderId: orderId, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> DeleteOrder in + switch response.status.code { + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Returns pet inventories by status + GET /store/inventory + Returns a map of status codes to quantities + - API Key: + - type: apiKey api_key + - name: api_key + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func getInventoryRaw(headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/store/inventory" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum GetInventory { + case http200(value: [String: Int], raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Returns pet inventories by status + GET /store/inventory + Returns a map of status codes to quantities + - API Key: + - type: apiKey api_key + - name: api_key + - returns: `EventLoopFuture` of `GetInventory` + */ + open class func getInventory(headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return getInventoryRaw(headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> GetInventory in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode([String: Int].self, using: Configuration.contentConfiguration.requireDecoder(for: [String: Int].defaultContentType)), raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Find purchase order by ID + GET /store/order/{order_id} + For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions + - parameter orderId: (path) ID of pet that needs to be fetched + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func getOrderByIdRaw(orderId: Int64, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/store/order/{order_id}" + let orderIdPreEscape = String(describing: orderId) + let orderIdPostEscape = orderIdPreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{order_id}", with: orderIdPostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum GetOrderById { + case http200(value: Order, raw: ClientResponse) + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Find purchase order by ID + GET /store/order/{order_id} + For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions + - parameter orderId: (path) ID of pet that needs to be fetched + - returns: `EventLoopFuture` of `GetOrderById` + */ + open class func getOrderById(orderId: Int64, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return getOrderByIdRaw(orderId: orderId, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> GetOrderById in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Order.self, using: Configuration.contentConfiguration.requireDecoder(for: Order.defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Place an order for a pet + POST /store/order + - parameter body: (body) order placed for purchasing the pet + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func placeOrderRaw(body: Order, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/store/order" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: Order.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum PlaceOrder { + case http200(value: Order, raw: ClientResponse) + case http400(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Place an order for a pet + POST /store/order + - parameter body: (body) order placed for purchasing the pet + - returns: `EventLoopFuture` of `PlaceOrder` + */ + open class func placeOrder(body: Order, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return placeOrderRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> PlaceOrder in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(Order.self, using: Configuration.contentConfiguration.requireDecoder(for: Order.defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + default: + return .http0(raw: response) + } + } + } + +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/UserAPI.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/UserAPI.swift new file mode 100644 index 000000000000..b8eb7f4d5767 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/APIs/UserAPI.swift @@ -0,0 +1,413 @@ +// +// UserAPI.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor +#if canImport(AnyCodable) +import AnyCodable +#endif + +open class UserAPI { + + /** + Create user + POST /user + This can only be done by the logged in user. + - parameter body: (body) Created user object + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func createUserRaw(body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/user" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: User.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum CreateUser { + case http0(raw: ClientResponse) + } + + /** + Create user + POST /user + This can only be done by the logged in user. + - parameter body: (body) Created user object + - returns: `EventLoopFuture` of `CreateUser` + */ + open class func createUser(body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return createUserRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> CreateUser in + switch response.status.code { + default: + return .http0(raw: response) + } + } + } + + + /** + Creates list of users with given input array + POST /user/createWithArray + - parameter body: (body) List of user object + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func createUsersWithArrayInputRaw(body: [User], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/user/createWithArray" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: [User].defaultContentType)) + + try beforeSend(&request) + } + } + + public enum CreateUsersWithArrayInput { + case http0(raw: ClientResponse) + } + + /** + Creates list of users with given input array + POST /user/createWithArray + - parameter body: (body) List of user object + - returns: `EventLoopFuture` of `CreateUsersWithArrayInput` + */ + open class func createUsersWithArrayInput(body: [User], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return createUsersWithArrayInputRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> CreateUsersWithArrayInput in + switch response.status.code { + default: + return .http0(raw: response) + } + } + } + + + /** + Creates list of users with given input array + POST /user/createWithList + - parameter body: (body) List of user object + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func createUsersWithListInputRaw(body: [User], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/user/createWithList" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.POST, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: [User].defaultContentType)) + + try beforeSend(&request) + } + } + + public enum CreateUsersWithListInput { + case http0(raw: ClientResponse) + } + + /** + Creates list of users with given input array + POST /user/createWithList + - parameter body: (body) List of user object + - returns: `EventLoopFuture` of `CreateUsersWithListInput` + */ + open class func createUsersWithListInput(body: [User], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return createUsersWithListInputRaw(body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> CreateUsersWithListInput in + switch response.status.code { + default: + return .http0(raw: response) + } + } + } + + + /** + Delete user + DELETE /user/{username} + This can only be done by the logged in user. + - parameter username: (path) The name that needs to be deleted + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func deleteUserRaw(username: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/user/{username}" + let usernamePreEscape = String(describing: username) + let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.DELETE, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum DeleteUser { + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Delete user + DELETE /user/{username} + This can only be done by the logged in user. + - parameter username: (path) The name that needs to be deleted + - returns: `EventLoopFuture` of `DeleteUser` + */ + open class func deleteUser(username: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return deleteUserRaw(username: username, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> DeleteUser in + switch response.status.code { + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Get user by user name + GET /user/{username} + - parameter username: (path) The name that needs to be fetched. Use user1 for testing. + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func getUserByNameRaw(username: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/user/{username}" + let usernamePreEscape = String(describing: username) + let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum GetUserByName { + case http200(value: User, raw: ClientResponse) + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Get user by user name + GET /user/{username} + - parameter username: (path) The name that needs to be fetched. Use user1 for testing. + - returns: `EventLoopFuture` of `GetUserByName` + */ + open class func getUserByName(username: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return getUserByNameRaw(username: username, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> GetUserByName in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(User.self, using: Configuration.contentConfiguration.requireDecoder(for: User.defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Logs user into the system + GET /user/login + - responseHeaders: [X-Rate-Limit(Int), X-Expires-After(Date)] + - parameter username: (query) The user name for login + - parameter password: (query) The password for login in clear text + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func loginUserRaw(username: String, password: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/user/login" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + struct QueryParams: Content { + var username: String + var password: String + } + try request.query.encode(QueryParams(username: username, password: password)) + + try beforeSend(&request) + } + } + + public enum LoginUser { + case http200(value: String, raw: ClientResponse) + case http400(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Logs user into the system + GET /user/login + - responseHeaders: [X-Rate-Limit(Int), X-Expires-After(Date)] + - parameter username: (query) The user name for login + - parameter password: (query) The password for login in clear text + - returns: `EventLoopFuture` of `LoginUser` + */ + open class func loginUser(username: String, password: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return loginUserRaw(username: username, password: password, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> LoginUser in + switch response.status.code { + case 200: + return .http200(value: try response.content.decode(String.self, using: Configuration.contentConfiguration.requireDecoder(for: String.defaultContentType)), raw: response) + case 400: + return .http400(raw: response) + default: + return .http0(raw: response) + } + } + } + + + /** + Logs out current logged in user session + GET /user/logout + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func logoutUserRaw(headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + let path = "/user/logout" + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.GET, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + + try beforeSend(&request) + } + } + + public enum LogoutUser { + case http0(raw: ClientResponse) + } + + /** + Logs out current logged in user session + GET /user/logout + - returns: `EventLoopFuture` of `LogoutUser` + */ + open class func logoutUser(headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return logoutUserRaw(headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> LogoutUser in + switch response.status.code { + default: + return .http0(raw: response) + } + } + } + + + /** + Updated user + PUT /user/{username} + This can only be done by the logged in user. + - parameter username: (path) name that need to be deleted + - parameter body: (body) Updated user object + - returns: `EventLoopFuture` of `ClientResponse` + */ + open class func updateUserRaw(username: String, body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + var path = "/user/{username}" + let usernamePreEscape = String(describing: username) + let usernamePostEscape = usernamePreEscape.addingPercentEncoding(withAllowedCharacters: .urlPathAllowed) ?? "" + path = path.replacingOccurrences(of: "{username}", with: usernamePostEscape, options: .literal, range: nil) + let URLString = PetstoreClient.basePath + path + + guard let apiClient = Configuration.apiClient else { + fatalError("Configuration.apiClient is not set.") + } + + return apiClient.send(.PUT, headers: headers, to: URI(string: URLString)) { request in + try Configuration.apiWrapper(&request) + + + try request.content.encode(body, using: Configuration.contentConfiguration.requireEncoder(for: User.defaultContentType)) + + try beforeSend(&request) + } + } + + public enum UpdateUser { + case http400(raw: ClientResponse) + case http404(raw: ClientResponse) + case http0(raw: ClientResponse) + } + + /** + Updated user + PUT /user/{username} + This can only be done by the logged in user. + - parameter username: (path) name that need to be deleted + - parameter body: (body) Updated user object + - returns: `EventLoopFuture` of `UpdateUser` + */ + open class func updateUser(username: String, body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture { + return updateUserRaw(username: username, body: body, headers: headers, beforeSend: beforeSend).flatMapThrowing { response -> UpdateUser in + switch response.status.code { + case 400: + return .http400(raw: response) + case 404: + return .http404(raw: response) + default: + return .http0(raw: response) + } + } + } + +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Configuration.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Configuration.swift new file mode 100644 index 000000000000..db8707ad7a7f --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Configuration.swift @@ -0,0 +1,14 @@ +// Configuration.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +import Vapor + +open class Configuration { + public static var apiClient: Vapor.Client? = nil + public static var apiWrapper: (inout Vapor.ClientRequest) throws -> () = { _ in } + public static var contentConfiguration = ContentConfiguration.default() +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Extensions.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Extensions.swift new file mode 100644 index 000000000000..b212303ae1d2 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Extensions.swift @@ -0,0 +1,131 @@ +// Extensions.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +extension String: CodingKey { + + public var stringValue: String { + return self + } + + public init?(stringValue: String) { + self.init(stringLiteral: stringValue) + } + + public var intValue: Int? { + return nil + } + + public init?(intValue: Int) { + return nil + } + +} + +extension KeyedEncodingContainerProtocol { + + public mutating func encodeArray(_ values: [T], forKey key: Self.Key) throws where T: Encodable { + var arrayContainer = nestedUnkeyedContainer(forKey: key) + try arrayContainer.encode(contentsOf: values) + } + + public mutating func encodeArrayIfPresent(_ values: [T]?, forKey key: Self.Key) throws where T: Encodable { + if let values = values { + try encodeArray(values, forKey: key) + } + } + + public mutating func encodeMap(_ pairs: [Self.Key: T]) throws where T: Encodable { + for (key, value) in pairs { + try encode(value, forKey: key) + } + } + + public mutating func encodeMapIfPresent(_ pairs: [Self.Key: T]?) throws where T: Encodable { + if let pairs = pairs { + try encodeMap(pairs) + } + } + +} + +extension KeyedDecodingContainerProtocol { + + public func decodeArray(_ type: T.Type, forKey key: Self.Key) throws -> [T] where T: Decodable { + var tmpArray = [T]() + + var nestedContainer = try nestedUnkeyedContainer(forKey: key) + while !nestedContainer.isAtEnd { + let arrayValue = try nestedContainer.decode(T.self) + tmpArray.append(arrayValue) + } + + return tmpArray + } + + public func decodeArrayIfPresent(_ type: T.Type, forKey key: Self.Key) throws -> [T]? where T: Decodable { + var tmpArray: [T]? + + if contains(key) { + tmpArray = try decodeArray(T.self, forKey: key) + } + + return tmpArray + } + + public func decodeMap(_ type: T.Type, excludedKeys: Set) throws -> [Self.Key: T] where T: Decodable { + var map: [Self.Key: T] = [:] + + for key in allKeys { + if !excludedKeys.contains(key) { + let value = try decode(T.self, forKey: key) + map[key] = value + } + } + + return map + } + +} + +extension UUID: Content { } + +extension URL: Content { } + +extension Bool: Content { } + +extension Set: ResponseEncodable where Element: Content { + public func encodeResponse(for request: Vapor.Request) -> EventLoopFuture { + let response = Vapor.Response() + do { + try response.content.encode(Array(self)) + } catch { + return request.eventLoop.makeFailedFuture(error) + } + return request.eventLoop.makeSucceededFuture(response) + } +} + +extension Set: RequestDecodable where Element: Content { + public static func decodeRequest(_ request: Vapor.Request) -> EventLoopFuture { + do { + let content = try request.content.decode([Element].self) + return request.eventLoop.makeSucceededFuture(Set(content)) + } catch { + return request.eventLoop.makeFailedFuture(error) + } + } +} + +extension Set: Content where Element: Content { } + +extension AnyCodable: Content {} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesAnyType.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesAnyType.swift new file mode 100644 index 000000000000..2f18010d2372 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesAnyType.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesAnyType.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesAnyType: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: AnyCodable] = [:] + + public subscript(key: String) -> AnyCodable? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap(AnyCodable.self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesAnyType, rhs: AdditionalPropertiesAnyType) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesArray.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesArray.swift new file mode 100644 index 000000000000..d590cb3a390d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesArray.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesArray.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesArray: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: [AnyCodable]] = [:] + + public subscript(key: String) -> [AnyCodable]? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap([AnyCodable].self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesArray, rhs: AdditionalPropertiesArray) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesBoolean.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesBoolean.swift new file mode 100644 index 000000000000..8dc293a604e5 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesBoolean.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesBoolean.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesBoolean: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: Bool] = [:] + + public subscript(key: String) -> Bool? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesBoolean, rhs: AdditionalPropertiesBoolean) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift new file mode 100644 index 000000000000..de9ef459a056 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesClass.swift @@ -0,0 +1,103 @@ +// +// AdditionalPropertiesClass.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesClass: Content, Hashable { + + public var mapString: [String: String]? + public var mapNumber: [String: Double]? + public var mapInteger: [String: Int]? + public var mapBoolean: [String: Bool]? + public var mapArrayInteger: [String: [Int]]? + public var mapArrayAnytype: [String: [AnyCodable]]? + public var mapMapString: [String: [String: String]]? + public var mapMapAnytype: [String: [String: AnyCodable]]? + public var anytype1: AnyCodable? + public var anytype2: AnyCodable? + public var anytype3: AnyCodable? + + public init(mapString: [String: String]? = nil, mapNumber: [String: Double]? = nil, mapInteger: [String: Int]? = nil, mapBoolean: [String: Bool]? = nil, mapArrayInteger: [String: [Int]]? = nil, mapArrayAnytype: [String: [AnyCodable]]? = nil, mapMapString: [String: [String: String]]? = nil, mapMapAnytype: [String: [String: AnyCodable]]? = nil, anytype1: AnyCodable? = nil, anytype2: AnyCodable? = nil, anytype3: AnyCodable? = nil) { + self.mapString = mapString + self.mapNumber = mapNumber + self.mapInteger = mapInteger + self.mapBoolean = mapBoolean + self.mapArrayInteger = mapArrayInteger + self.mapArrayAnytype = mapArrayAnytype + self.mapMapString = mapMapString + self.mapMapAnytype = mapMapAnytype + self.anytype1 = anytype1 + self.anytype2 = anytype2 + self.anytype3 = anytype3 + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case mapString = "map_string" + case mapNumber = "map_number" + case mapInteger = "map_integer" + case mapBoolean = "map_boolean" + case mapArrayInteger = "map_array_integer" + case mapArrayAnytype = "map_array_anytype" + case mapMapString = "map_map_string" + case mapMapAnytype = "map_map_anytype" + case anytype1 = "anytype_1" + case anytype2 = "anytype_2" + case anytype3 = "anytype_3" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(mapString, forKey: .mapString) + try container.encodeIfPresent(mapNumber, forKey: .mapNumber) + try container.encodeIfPresent(mapInteger, forKey: .mapInteger) + try container.encodeIfPresent(mapBoolean, forKey: .mapBoolean) + try container.encodeIfPresent(mapArrayInteger, forKey: .mapArrayInteger) + try container.encodeIfPresent(mapArrayAnytype, forKey: .mapArrayAnytype) + try container.encodeIfPresent(mapMapString, forKey: .mapMapString) + try container.encodeIfPresent(mapMapAnytype, forKey: .mapMapAnytype) + try container.encodeIfPresent(anytype1, forKey: .anytype1) + try container.encodeIfPresent(anytype2, forKey: .anytype2) + try container.encodeIfPresent(anytype3, forKey: .anytype3) + } + + public static func == (lhs: AdditionalPropertiesClass, rhs: AdditionalPropertiesClass) -> Bool { + lhs.mapString == rhs.mapString && + lhs.mapNumber == rhs.mapNumber && + lhs.mapInteger == rhs.mapInteger && + lhs.mapBoolean == rhs.mapBoolean && + lhs.mapArrayInteger == rhs.mapArrayInteger && + lhs.mapArrayAnytype == rhs.mapArrayAnytype && + lhs.mapMapString == rhs.mapMapString && + lhs.mapMapAnytype == rhs.mapMapAnytype && + lhs.anytype1 == rhs.anytype1 && + lhs.anytype2 == rhs.anytype2 && + lhs.anytype3 == rhs.anytype3 + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(mapString?.hashValue) + hasher.combine(mapNumber?.hashValue) + hasher.combine(mapInteger?.hashValue) + hasher.combine(mapBoolean?.hashValue) + hasher.combine(mapArrayInteger?.hashValue) + hasher.combine(mapArrayAnytype?.hashValue) + hasher.combine(mapMapString?.hashValue) + hasher.combine(mapMapAnytype?.hashValue) + hasher.combine(anytype1?.hashValue) + hasher.combine(anytype2?.hashValue) + hasher.combine(anytype3?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesInteger.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesInteger.swift new file mode 100644 index 000000000000..5a7c412958ac --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesInteger.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesInteger.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesInteger: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: Int] = [:] + + public subscript(key: String) -> Int? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap(Int.self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesInteger, rhs: AdditionalPropertiesInteger) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesNumber.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesNumber.swift new file mode 100644 index 000000000000..259b29dae57d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesNumber.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesNumber.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesNumber: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: Double] = [:] + + public subscript(key: String) -> Double? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap(Double.self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesNumber, rhs: AdditionalPropertiesNumber) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesObject.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesObject.swift new file mode 100644 index 000000000000..c8c0052c00c6 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesObject.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesObject.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesObject: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: [String: AnyCodable]] = [:] + + public subscript(key: String) -> [String: AnyCodable]? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap([String: AnyCodable].self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesObject, rhs: AdditionalPropertiesObject) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesString.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesString.swift new file mode 100644 index 000000000000..13456e89d1ba --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AdditionalPropertiesString.swift @@ -0,0 +1,72 @@ +// +// AdditionalPropertiesString.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class AdditionalPropertiesString: Content, Hashable { + + public var name: String? + + public init(name: String? = nil) { + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + } + + public var additionalProperties: [String: String] = [:] + + public subscript(key: String) -> String? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + name = try container.decodeIfPresent(String.self, forKey: .name) + var nonAdditionalPropertyKeys = Set() + nonAdditionalPropertyKeys.insert("name") + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap(String.self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: AdditionalPropertiesString, rhs: AdditionalPropertiesString) -> Bool { + lhs.name == rhs.name + && lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Animal.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Animal.swift new file mode 100644 index 000000000000..344d5b13b1fd --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Animal.swift @@ -0,0 +1,49 @@ +// +// Animal.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Animal: Content, Hashable { + + public var className: String + public var color: String? = "red" + + public init(className: String, color: String? = "red") { + self.className = className + self.color = color + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case className + case color + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(className, forKey: .className) + try container.encodeIfPresent(color, forKey: .color) + } + + public static func == (lhs: Animal, rhs: Animal) -> Bool { + lhs.className == rhs.className && + lhs.color == rhs.color + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(className.hashValue) + hasher.combine(color?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AnimalFarm.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AnimalFarm.swift new file mode 100644 index 000000000000..1b3a286f0891 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/AnimalFarm.swift @@ -0,0 +1,14 @@ +// +// AnimalFarm.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public typealias AnimalFarm = [Animal] diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ApiResponse.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ApiResponse.swift new file mode 100644 index 000000000000..4323130668ec --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ApiResponse.swift @@ -0,0 +1,55 @@ +// +// ApiResponse.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class ApiResponse: Content, Hashable { + + public var code: Int? + public var type: String? + public var message: String? + + public init(code: Int? = nil, type: String? = nil, message: String? = nil) { + self.code = code + self.type = type + self.message = message + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case code + case type + case message + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(code, forKey: .code) + try container.encodeIfPresent(type, forKey: .type) + try container.encodeIfPresent(message, forKey: .message) + } + + public static func == (lhs: ApiResponse, rhs: ApiResponse) -> Bool { + lhs.code == rhs.code && + lhs.type == rhs.type && + lhs.message == rhs.message + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(code?.hashValue) + hasher.combine(type?.hashValue) + hasher.combine(message?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift new file mode 100644 index 000000000000..cd3669774bf7 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfArrayOfNumberOnly.swift @@ -0,0 +1,43 @@ +// +// ArrayOfArrayOfNumberOnly.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class ArrayOfArrayOfNumberOnly: Content, Hashable { + + public var arrayArrayNumber: [[Double]]? + + public init(arrayArrayNumber: [[Double]]? = nil) { + self.arrayArrayNumber = arrayArrayNumber + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case arrayArrayNumber = "ArrayArrayNumber" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) + } + + public static func == (lhs: ArrayOfArrayOfNumberOnly, rhs: ArrayOfArrayOfNumberOnly) -> Bool { + lhs.arrayArrayNumber == rhs.arrayArrayNumber + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(arrayArrayNumber?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift new file mode 100644 index 000000000000..e222fdd2adb7 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayOfNumberOnly.swift @@ -0,0 +1,43 @@ +// +// ArrayOfNumberOnly.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class ArrayOfNumberOnly: Content, Hashable { + + public var arrayNumber: [Double]? + + public init(arrayNumber: [Double]? = nil) { + self.arrayNumber = arrayNumber + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case arrayNumber = "ArrayNumber" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) + } + + public static func == (lhs: ArrayOfNumberOnly, rhs: ArrayOfNumberOnly) -> Bool { + lhs.arrayNumber == rhs.arrayNumber + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(arrayNumber?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayTest.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayTest.swift new file mode 100644 index 000000000000..87d4e0b8239d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ArrayTest.swift @@ -0,0 +1,55 @@ +// +// ArrayTest.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class ArrayTest: Content, Hashable { + + public var arrayOfString: [String]? + public var arrayArrayOfInteger: [[Int64]]? + public var arrayArrayOfModel: [[ReadOnlyFirst]]? + + public init(arrayOfString: [String]? = nil, arrayArrayOfInteger: [[Int64]]? = nil, arrayArrayOfModel: [[ReadOnlyFirst]]? = nil) { + self.arrayOfString = arrayOfString + self.arrayArrayOfInteger = arrayArrayOfInteger + self.arrayArrayOfModel = arrayArrayOfModel + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case arrayOfString = "array_of_string" + case arrayArrayOfInteger = "array_array_of_integer" + case arrayArrayOfModel = "array_array_of_model" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(arrayOfString, forKey: .arrayOfString) + try container.encodeIfPresent(arrayArrayOfInteger, forKey: .arrayArrayOfInteger) + try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) + } + + public static func == (lhs: ArrayTest, rhs: ArrayTest) -> Bool { + lhs.arrayOfString == rhs.arrayOfString && + lhs.arrayArrayOfInteger == rhs.arrayArrayOfInteger && + lhs.arrayArrayOfModel == rhs.arrayArrayOfModel + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(arrayOfString?.hashValue) + hasher.combine(arrayArrayOfInteger?.hashValue) + hasher.combine(arrayArrayOfModel?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCat.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCat.swift new file mode 100644 index 000000000000..f68dcec1d655 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCat.swift @@ -0,0 +1,49 @@ +// +// BigCat.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class BigCat: Content, Hashable { + + public enum Kind: String, Content, Hashable, CaseIterable { + case lions = "lions" + case tigers = "tigers" + case leopards = "leopards" + case jaguars = "jaguars" + } + public var kind: Kind? + + public init(kind: Kind? = nil) { + self.kind = kind + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case kind + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(kind, forKey: .kind) + } + + public static func == (lhs: BigCat, rhs: BigCat) -> Bool { + lhs.kind == rhs.kind + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(kind?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCatAllOf.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCatAllOf.swift new file mode 100644 index 000000000000..0945e87ed9ce --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/BigCatAllOf.swift @@ -0,0 +1,49 @@ +// +// BigCatAllOf.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class BigCatAllOf: Content, Hashable { + + public enum Kind: String, Content, Hashable, CaseIterable { + case lions = "lions" + case tigers = "tigers" + case leopards = "leopards" + case jaguars = "jaguars" + } + public var kind: Kind? + + public init(kind: Kind? = nil) { + self.kind = kind + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case kind + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(kind, forKey: .kind) + } + + public static func == (lhs: BigCatAllOf, rhs: BigCatAllOf) -> Bool { + lhs.kind == rhs.kind + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(kind?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Capitalization.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Capitalization.swift new file mode 100644 index 000000000000..3cc1d9d4cf36 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Capitalization.swift @@ -0,0 +1,74 @@ +// +// Capitalization.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Capitalization: Content, Hashable { + + public var smallCamel: String? + public var capitalCamel: String? + public var smallSnake: String? + public var capitalSnake: String? + public var sCAETHFlowPoints: String? + /** Name of the pet */ + public var ATT_NAME: String? + + public init(smallCamel: String? = nil, capitalCamel: String? = nil, smallSnake: String? = nil, capitalSnake: String? = nil, sCAETHFlowPoints: String? = nil, ATT_NAME: String? = nil) { + self.smallCamel = smallCamel + self.capitalCamel = capitalCamel + self.smallSnake = smallSnake + self.capitalSnake = capitalSnake + self.sCAETHFlowPoints = sCAETHFlowPoints + self.ATT_NAME = ATT_NAME + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case smallCamel + case capitalCamel = "CapitalCamel" + case smallSnake = "small_Snake" + case capitalSnake = "Capital_Snake" + case sCAETHFlowPoints = "SCA_ETH_Flow_Points" + case ATT_NAME + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(smallCamel, forKey: .smallCamel) + try container.encodeIfPresent(capitalCamel, forKey: .capitalCamel) + try container.encodeIfPresent(smallSnake, forKey: .smallSnake) + try container.encodeIfPresent(capitalSnake, forKey: .capitalSnake) + try container.encodeIfPresent(sCAETHFlowPoints, forKey: .sCAETHFlowPoints) + try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) + } + + public static func == (lhs: Capitalization, rhs: Capitalization) -> Bool { + lhs.smallCamel == rhs.smallCamel && + lhs.capitalCamel == rhs.capitalCamel && + lhs.smallSnake == rhs.smallSnake && + lhs.capitalSnake == rhs.capitalSnake && + lhs.sCAETHFlowPoints == rhs.sCAETHFlowPoints && + lhs.ATT_NAME == rhs.ATT_NAME + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(smallCamel?.hashValue) + hasher.combine(capitalCamel?.hashValue) + hasher.combine(smallSnake?.hashValue) + hasher.combine(capitalSnake?.hashValue) + hasher.combine(sCAETHFlowPoints?.hashValue) + hasher.combine(ATT_NAME?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Cat.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Cat.swift new file mode 100644 index 000000000000..6c0d6f303c54 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Cat.swift @@ -0,0 +1,55 @@ +// +// Cat.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Cat: Content, Hashable { + + public var className: String + public var color: String? = "red" + public var declawed: Bool? + + public init(className: String, color: String? = "red", declawed: Bool? = nil) { + self.className = className + self.color = color + self.declawed = declawed + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case className + case color + case declawed + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(className, forKey: .className) + try container.encodeIfPresent(color, forKey: .color) + try container.encodeIfPresent(declawed, forKey: .declawed) + } + + public static func == (lhs: Cat, rhs: Cat) -> Bool { + lhs.className == rhs.className && + lhs.color == rhs.color && + lhs.declawed == rhs.declawed + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(className.hashValue) + hasher.combine(color?.hashValue) + hasher.combine(declawed?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/CatAllOf.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/CatAllOf.swift new file mode 100644 index 000000000000..2cfbd9fd02d1 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/CatAllOf.swift @@ -0,0 +1,43 @@ +// +// CatAllOf.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class CatAllOf: Content, Hashable { + + public var declawed: Bool? + + public init(declawed: Bool? = nil) { + self.declawed = declawed + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case declawed + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(declawed, forKey: .declawed) + } + + public static func == (lhs: CatAllOf, rhs: CatAllOf) -> Bool { + lhs.declawed == rhs.declawed + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(declawed?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Category.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Category.swift new file mode 100644 index 000000000000..ca2a487b438a --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Category.swift @@ -0,0 +1,49 @@ +// +// Category.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Category: Content, Hashable { + + public var id: Int64? + public var name: String = "default-name" + + public init(id: Int64? = nil, name: String = "default-name") { + self.id = id + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case id + case name + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(id, forKey: .id) + try container.encode(name, forKey: .name) + } + + public static func == (lhs: Category, rhs: Category) -> Bool { + lhs.id == rhs.id && + lhs.name == rhs.name + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(id?.hashValue) + hasher.combine(name.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ClassModel.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ClassModel.swift new file mode 100644 index 000000000000..a50bdf9ffd13 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ClassModel.swift @@ -0,0 +1,44 @@ +// +// ClassModel.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +/** Model for testing model with \"_class\" property */ +public final class ClassModel: Content, Hashable { + + public var `class`: String? + + public init(`class`: String? = nil) { + self.`class` = `class` + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case `class` = "_class" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(`class`, forKey: .`class`) + } + + public static func == (lhs: ClassModel, rhs: ClassModel) -> Bool { + lhs.`class` == rhs.`class` + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(`class`?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Client.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Client.swift new file mode 100644 index 000000000000..1ac630b90e9c --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Client.swift @@ -0,0 +1,43 @@ +// +// Client.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Client: Content, Hashable { + + public var client: String? + + public init(client: String? = nil) { + self.client = client + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case client + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(client, forKey: .client) + } + + public static func == (lhs: Client, rhs: Client) -> Bool { + lhs.client == rhs.client + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(client?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Dog.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Dog.swift new file mode 100644 index 000000000000..71a8002b7540 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Dog.swift @@ -0,0 +1,55 @@ +// +// Dog.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Dog: Content, Hashable { + + public var className: String + public var color: String? = "red" + public var breed: String? + + public init(className: String, color: String? = "red", breed: String? = nil) { + self.className = className + self.color = color + self.breed = breed + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case className + case color + case breed + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(className, forKey: .className) + try container.encodeIfPresent(color, forKey: .color) + try container.encodeIfPresent(breed, forKey: .breed) + } + + public static func == (lhs: Dog, rhs: Dog) -> Bool { + lhs.className == rhs.className && + lhs.color == rhs.color && + lhs.breed == rhs.breed + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(className.hashValue) + hasher.combine(color?.hashValue) + hasher.combine(breed?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/DogAllOf.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/DogAllOf.swift new file mode 100644 index 000000000000..69352b02b132 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/DogAllOf.swift @@ -0,0 +1,43 @@ +// +// DogAllOf.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class DogAllOf: Content, Hashable { + + public var breed: String? + + public init(breed: String? = nil) { + self.breed = breed + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case breed + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(breed, forKey: .breed) + } + + public static func == (lhs: DogAllOf, rhs: DogAllOf) -> Bool { + lhs.breed == rhs.breed + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(breed?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumArrays.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumArrays.swift new file mode 100644 index 000000000000..0b2b8c32844a --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumArrays.swift @@ -0,0 +1,57 @@ +// +// EnumArrays.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class EnumArrays: Content, Hashable { + + public enum JustSymbol: String, Content, Hashable, CaseIterable { + case greaterThanOrEqualTo = ">=" + case dollar = "$" + } + public enum ArrayEnum: String, Content, Hashable, CaseIterable { + case fish = "fish" + case crab = "crab" + } + public var justSymbol: JustSymbol? + public var arrayEnum: [ArrayEnum]? + + public init(justSymbol: JustSymbol? = nil, arrayEnum: [ArrayEnum]? = nil) { + self.justSymbol = justSymbol + self.arrayEnum = arrayEnum + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case justSymbol = "just_symbol" + case arrayEnum = "array_enum" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(justSymbol, forKey: .justSymbol) + try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) + } + + public static func == (lhs: EnumArrays, rhs: EnumArrays) -> Bool { + lhs.justSymbol == rhs.justSymbol && + lhs.arrayEnum == rhs.arrayEnum + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(justSymbol?.hashValue) + hasher.combine(arrayEnum?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumClass.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumClass.swift new file mode 100644 index 000000000000..26c121d15435 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumClass.swift @@ -0,0 +1,18 @@ +// +// EnumClass.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public enum EnumClass: String, Content, Hashable, CaseIterable { + case abc = "_abc" + case efg = "-efg" + case xyz = "(xyz)" +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumTest.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumTest.swift new file mode 100644 index 000000000000..044d121b9f3f --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/EnumTest.swift @@ -0,0 +1,85 @@ +// +// EnumTest.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class EnumTest: Content, Hashable { + + public enum EnumString: String, Content, Hashable, CaseIterable { + case upper = "UPPER" + case lower = "lower" + case empty = "" + } + public enum EnumStringRequired: String, Content, Hashable, CaseIterable { + case upper = "UPPER" + case lower = "lower" + case empty = "" + } + public enum EnumInteger: Int, Content, Hashable, CaseIterable { + case _1 = 1 + case number1 = -1 + } + public enum EnumNumber: Double, Content, Hashable, CaseIterable { + case _11 = 1.1 + case number12 = -1.2 + } + public var enumString: EnumString? + public var enumStringRequired: EnumStringRequired + public var enumInteger: EnumInteger? + public var enumNumber: EnumNumber? + public var outerEnum: OuterEnum? + + public init(enumString: EnumString? = nil, enumStringRequired: EnumStringRequired, enumInteger: EnumInteger? = nil, enumNumber: EnumNumber? = nil, outerEnum: OuterEnum? = nil) { + self.enumString = enumString + self.enumStringRequired = enumStringRequired + self.enumInteger = enumInteger + self.enumNumber = enumNumber + self.outerEnum = outerEnum + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case enumString = "enum_string" + case enumStringRequired = "enum_string_required" + case enumInteger = "enum_integer" + case enumNumber = "enum_number" + case outerEnum + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(enumString, forKey: .enumString) + try container.encode(enumStringRequired, forKey: .enumStringRequired) + try container.encodeIfPresent(enumInteger, forKey: .enumInteger) + try container.encodeIfPresent(enumNumber, forKey: .enumNumber) + try container.encodeIfPresent(outerEnum, forKey: .outerEnum) + } + + public static func == (lhs: EnumTest, rhs: EnumTest) -> Bool { + lhs.enumString == rhs.enumString && + lhs.enumStringRequired == rhs.enumStringRequired && + lhs.enumInteger == rhs.enumInteger && + lhs.enumNumber == rhs.enumNumber && + lhs.outerEnum == rhs.outerEnum + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(enumString?.hashValue) + hasher.combine(enumStringRequired.hashValue) + hasher.combine(enumInteger?.hashValue) + hasher.combine(enumNumber?.hashValue) + hasher.combine(outerEnum?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/File.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/File.swift new file mode 100644 index 000000000000..d75058029433 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/File.swift @@ -0,0 +1,45 @@ +// +// File.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +/** Must be named `File` for test. */ +public final class File: Content, Hashable { + + /** Test capitalization */ + public var sourceURI: String? + + public init(sourceURI: String? = nil) { + self.sourceURI = sourceURI + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case sourceURI + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(sourceURI, forKey: .sourceURI) + } + + public static func == (lhs: File, rhs: File) -> Bool { + lhs.sourceURI == rhs.sourceURI + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(sourceURI?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift new file mode 100644 index 000000000000..c2426485fe60 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FileSchemaTestClass.swift @@ -0,0 +1,49 @@ +// +// FileSchemaTestClass.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class FileSchemaTestClass: Content, Hashable { + + public var file: File? + public var files: [File]? + + public init(file: File? = nil, files: [File]? = nil) { + self.file = file + self.files = files + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case file + case files + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(file, forKey: .file) + try container.encodeIfPresent(files, forKey: .files) + } + + public static func == (lhs: FileSchemaTestClass, rhs: FileSchemaTestClass) -> Bool { + lhs.file == rhs.file && + lhs.files == rhs.files + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(file?.hashValue) + hasher.combine(files?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FormatTest.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FormatTest.swift new file mode 100644 index 000000000000..dfdf6ae588cd --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/FormatTest.swift @@ -0,0 +1,121 @@ +// +// FormatTest.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class FormatTest: Content, Hashable { + + public var integer: Int? + public var int32: Int? + public var int64: Int64? + public var number: Double + public var float: Float? + public var double: Double? + public var string: String? + public var byte: Data + public var binary: Data? + public var date: Date + public var dateTime: Date? + public var uuid: UUID? + public var password: String + public var bigDecimal: Decimal? + + public init(integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, number: Double, float: Float? = nil, double: Double? = nil, string: String? = nil, byte: Data, binary: Data? = nil, date: Date, dateTime: Date? = nil, uuid: UUID? = nil, password: String, bigDecimal: Decimal? = nil) { + self.integer = integer + self.int32 = int32 + self.int64 = int64 + self.number = number + self.float = float + self.double = double + self.string = string + self.byte = byte + self.binary = binary + self.date = date + self.dateTime = dateTime + self.uuid = uuid + self.password = password + self.bigDecimal = bigDecimal + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case integer + case int32 + case int64 + case number + case float + case double + case string + case byte + case binary + case date + case dateTime + case uuid + case password + case bigDecimal = "BigDecimal" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(integer, forKey: .integer) + try container.encodeIfPresent(int32, forKey: .int32) + try container.encodeIfPresent(int64, forKey: .int64) + try container.encode(number, forKey: .number) + try container.encodeIfPresent(float, forKey: .float) + try container.encodeIfPresent(double, forKey: .double) + try container.encodeIfPresent(string, forKey: .string) + try container.encode(byte, forKey: .byte) + try container.encodeIfPresent(binary, forKey: .binary) + try container.encode(date, forKey: .date) + try container.encodeIfPresent(dateTime, forKey: .dateTime) + try container.encodeIfPresent(uuid, forKey: .uuid) + try container.encode(password, forKey: .password) + try container.encodeIfPresent(bigDecimal, forKey: .bigDecimal) + } + + public static func == (lhs: FormatTest, rhs: FormatTest) -> Bool { + lhs.integer == rhs.integer && + lhs.int32 == rhs.int32 && + lhs.int64 == rhs.int64 && + lhs.number == rhs.number && + lhs.float == rhs.float && + lhs.double == rhs.double && + lhs.string == rhs.string && + lhs.byte == rhs.byte && + lhs.binary == rhs.binary && + lhs.date == rhs.date && + lhs.dateTime == rhs.dateTime && + lhs.uuid == rhs.uuid && + lhs.password == rhs.password && + lhs.bigDecimal == rhs.bigDecimal + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(integer?.hashValue) + hasher.combine(int32?.hashValue) + hasher.combine(int64?.hashValue) + hasher.combine(number.hashValue) + hasher.combine(float?.hashValue) + hasher.combine(double?.hashValue) + hasher.combine(string?.hashValue) + hasher.combine(byte.hashValue) + hasher.combine(binary?.hashValue) + hasher.combine(date.hashValue) + hasher.combine(dateTime?.hashValue) + hasher.combine(uuid?.hashValue) + hasher.combine(password.hashValue) + hasher.combine(bigDecimal?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift new file mode 100644 index 000000000000..fd0e1532b04a --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/HasOnlyReadOnly.swift @@ -0,0 +1,49 @@ +// +// HasOnlyReadOnly.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class HasOnlyReadOnly: Content, Hashable { + + public var bar: String? + public var foo: String? + + public init(bar: String? = nil, foo: String? = nil) { + self.bar = bar + self.foo = foo + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case bar + case foo + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(bar, forKey: .bar) + try container.encodeIfPresent(foo, forKey: .foo) + } + + public static func == (lhs: HasOnlyReadOnly, rhs: HasOnlyReadOnly) -> Bool { + lhs.bar == rhs.bar && + lhs.foo == rhs.foo + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(bar?.hashValue) + hasher.combine(foo?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/List.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/List.swift new file mode 100644 index 000000000000..fd15761ab8a3 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/List.swift @@ -0,0 +1,43 @@ +// +// List.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class List: Content, Hashable { + + public var _123list: String? + + public init(_123list: String? = nil) { + self._123list = _123list + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case _123list = "123-list" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(_123list, forKey: ._123list) + } + + public static func == (lhs: List, rhs: List) -> Bool { + lhs._123list == rhs._123list + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(_123list?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MapTest.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MapTest.swift new file mode 100644 index 000000000000..2726af8cb65d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MapTest.swift @@ -0,0 +1,65 @@ +// +// MapTest.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class MapTest: Content, Hashable { + + public enum MapOfEnumString: String, Content, Hashable, CaseIterable { + case upper = "UPPER" + case lower = "lower" + } + public var mapMapOfString: [String: [String: String]]? + public var mapOfEnumString: [String: String]? + public var directMap: [String: Bool]? + public var indirectMap: StringBooleanMap? + + public init(mapMapOfString: [String: [String: String]]? = nil, mapOfEnumString: [String: String]? = nil, directMap: [String: Bool]? = nil, indirectMap: StringBooleanMap? = nil) { + self.mapMapOfString = mapMapOfString + self.mapOfEnumString = mapOfEnumString + self.directMap = directMap + self.indirectMap = indirectMap + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case mapMapOfString = "map_map_of_string" + case mapOfEnumString = "map_of_enum_string" + case directMap = "direct_map" + case indirectMap = "indirect_map" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(mapMapOfString, forKey: .mapMapOfString) + try container.encodeIfPresent(mapOfEnumString, forKey: .mapOfEnumString) + try container.encodeIfPresent(directMap, forKey: .directMap) + try container.encodeIfPresent(indirectMap, forKey: .indirectMap) + } + + public static func == (lhs: MapTest, rhs: MapTest) -> Bool { + lhs.mapMapOfString == rhs.mapMapOfString && + lhs.mapOfEnumString == rhs.mapOfEnumString && + lhs.directMap == rhs.directMap && + lhs.indirectMap == rhs.indirectMap + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(mapMapOfString?.hashValue) + hasher.combine(mapOfEnumString?.hashValue) + hasher.combine(directMap?.hashValue) + hasher.combine(indirectMap?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift new file mode 100644 index 000000000000..a98efe737a21 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -0,0 +1,55 @@ +// +// MixedPropertiesAndAdditionalPropertiesClass.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class MixedPropertiesAndAdditionalPropertiesClass: Content, Hashable { + + public var uuid: UUID? + public var dateTime: Date? + public var map: [String: Animal]? + + public init(uuid: UUID? = nil, dateTime: Date? = nil, map: [String: Animal]? = nil) { + self.uuid = uuid + self.dateTime = dateTime + self.map = map + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case uuid + case dateTime + case map + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(uuid, forKey: .uuid) + try container.encodeIfPresent(dateTime, forKey: .dateTime) + try container.encodeIfPresent(map, forKey: .map) + } + + public static func == (lhs: MixedPropertiesAndAdditionalPropertiesClass, rhs: MixedPropertiesAndAdditionalPropertiesClass) -> Bool { + lhs.uuid == rhs.uuid && + lhs.dateTime == rhs.dateTime && + lhs.map == rhs.map + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(uuid?.hashValue) + hasher.combine(dateTime?.hashValue) + hasher.combine(map?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Model200Response.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Model200Response.swift new file mode 100644 index 000000000000..1c9c61547008 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Model200Response.swift @@ -0,0 +1,50 @@ +// +// Model200Response.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +/** Model for testing model name starting with number */ +public final class Model200Response: Content, Hashable { + + public var name: Int? + public var `class`: String? + + public init(name: Int? = nil, `class`: String? = nil) { + self.name = name + self.`class` = `class` + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + case `class` = "class" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(name, forKey: .name) + try container.encodeIfPresent(`class`, forKey: .`class`) + } + + public static func == (lhs: Model200Response, rhs: Model200Response) -> Bool { + lhs.name == rhs.name && + lhs.`class` == rhs.`class` + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name?.hashValue) + hasher.combine(`class`?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Name.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Name.swift new file mode 100644 index 000000000000..86a8d6bbe83e --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Name.swift @@ -0,0 +1,62 @@ +// +// Name.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +/** Model for testing model name same as property name */ +public final class Name: Content, Hashable { + + public var name: Int + public var snakeCase: Int? + public var property: String? + public var _123number: Int? + + public init(name: Int, snakeCase: Int? = nil, property: String? = nil, _123number: Int? = nil) { + self.name = name + self.snakeCase = snakeCase + self.property = property + self._123number = _123number + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case name + case snakeCase = "snake_case" + case property + case _123number = "123Number" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(name, forKey: .name) + try container.encodeIfPresent(snakeCase, forKey: .snakeCase) + try container.encodeIfPresent(property, forKey: .property) + try container.encodeIfPresent(_123number, forKey: ._123number) + } + + public static func == (lhs: Name, rhs: Name) -> Bool { + lhs.name == rhs.name && + lhs.snakeCase == rhs.snakeCase && + lhs.property == rhs.property && + lhs._123number == rhs._123number + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(name.hashValue) + hasher.combine(snakeCase?.hashValue) + hasher.combine(property?.hashValue) + hasher.combine(_123number?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/NumberOnly.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/NumberOnly.swift new file mode 100644 index 000000000000..b88d51e3b129 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/NumberOnly.swift @@ -0,0 +1,43 @@ +// +// NumberOnly.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class NumberOnly: Content, Hashable { + + public var justNumber: Double? + + public init(justNumber: Double? = nil) { + self.justNumber = justNumber + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case justNumber = "JustNumber" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(justNumber, forKey: .justNumber) + } + + public static func == (lhs: NumberOnly, rhs: NumberOnly) -> Bool { + lhs.justNumber == rhs.justNumber + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(justNumber?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Order.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Order.swift new file mode 100644 index 000000000000..7a7b357cd46e --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Order.swift @@ -0,0 +1,79 @@ +// +// Order.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Order: Content, Hashable { + + public enum Status: String, Content, Hashable, CaseIterable { + case placed = "placed" + case approved = "approved" + case delivered = "delivered" + } + public var id: Int64? + public var petId: Int64? + public var quantity: Int? + public var shipDate: Date? + /** Order Status */ + public var status: Status? + public var complete: Bool? = false + + public init(id: Int64? = nil, petId: Int64? = nil, quantity: Int? = nil, shipDate: Date? = nil, status: Status? = nil, complete: Bool? = false) { + self.id = id + self.petId = petId + self.quantity = quantity + self.shipDate = shipDate + self.status = status + self.complete = complete + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case id + case petId + case quantity + case shipDate + case status + case complete + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(id, forKey: .id) + try container.encodeIfPresent(petId, forKey: .petId) + try container.encodeIfPresent(quantity, forKey: .quantity) + try container.encodeIfPresent(shipDate, forKey: .shipDate) + try container.encodeIfPresent(status, forKey: .status) + try container.encodeIfPresent(complete, forKey: .complete) + } + + public static func == (lhs: Order, rhs: Order) -> Bool { + lhs.id == rhs.id && + lhs.petId == rhs.petId && + lhs.quantity == rhs.quantity && + lhs.shipDate == rhs.shipDate && + lhs.status == rhs.status && + lhs.complete == rhs.complete + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(id?.hashValue) + hasher.combine(petId?.hashValue) + hasher.combine(quantity?.hashValue) + hasher.combine(shipDate?.hashValue) + hasher.combine(status?.hashValue) + hasher.combine(complete?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterComposite.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterComposite.swift new file mode 100644 index 000000000000..7fd8d9254a69 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterComposite.swift @@ -0,0 +1,55 @@ +// +// OuterComposite.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class OuterComposite: Content, Hashable { + + public var myNumber: Double? + public var myString: String? + public var myBoolean: Bool? + + public init(myNumber: Double? = nil, myString: String? = nil, myBoolean: Bool? = nil) { + self.myNumber = myNumber + self.myString = myString + self.myBoolean = myBoolean + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case myNumber = "my_number" + case myString = "my_string" + case myBoolean = "my_boolean" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(myNumber, forKey: .myNumber) + try container.encodeIfPresent(myString, forKey: .myString) + try container.encodeIfPresent(myBoolean, forKey: .myBoolean) + } + + public static func == (lhs: OuterComposite, rhs: OuterComposite) -> Bool { + lhs.myNumber == rhs.myNumber && + lhs.myString == rhs.myString && + lhs.myBoolean == rhs.myBoolean + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(myNumber?.hashValue) + hasher.combine(myString?.hashValue) + hasher.combine(myBoolean?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterEnum.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterEnum.swift new file mode 100644 index 000000000000..3ea0e73af37d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/OuterEnum.swift @@ -0,0 +1,18 @@ +// +// OuterEnum.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public enum OuterEnum: String, Content, Hashable, CaseIterable { + case placed = "placed" + case approved = "approved" + case delivered = "delivered" +} diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Pet.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Pet.swift new file mode 100644 index 000000000000..90481c91eced --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Pet.swift @@ -0,0 +1,79 @@ +// +// Pet.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Pet: Content, Hashable { + + public enum Status: String, Content, Hashable, CaseIterable { + case available = "available" + case pending = "pending" + case sold = "sold" + } + public var id: Int64? + public var category: Category? + public var name: String + public var photoUrls: Set + public var tags: [Tag]? + /** pet status in the store */ + public var status: Status? + + public init(id: Int64? = nil, category: Category? = nil, name: String, photoUrls: Set, tags: [Tag]? = nil, status: Status? = nil) { + self.id = id + self.category = category + self.name = name + self.photoUrls = photoUrls + self.tags = tags + self.status = status + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case id + case category + case name + case photoUrls + case tags + case status + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(id, forKey: .id) + try container.encodeIfPresent(category, forKey: .category) + try container.encode(name, forKey: .name) + try container.encode(photoUrls, forKey: .photoUrls) + try container.encodeIfPresent(tags, forKey: .tags) + try container.encodeIfPresent(status, forKey: .status) + } + + public static func == (lhs: Pet, rhs: Pet) -> Bool { + lhs.id == rhs.id && + lhs.category == rhs.category && + lhs.name == rhs.name && + lhs.photoUrls == rhs.photoUrls && + lhs.tags == rhs.tags && + lhs.status == rhs.status + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(id?.hashValue) + hasher.combine(category?.hashValue) + hasher.combine(name.hashValue) + hasher.combine(photoUrls.hashValue) + hasher.combine(tags?.hashValue) + hasher.combine(status?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift new file mode 100644 index 000000000000..05402ceb4d70 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/ReadOnlyFirst.swift @@ -0,0 +1,49 @@ +// +// ReadOnlyFirst.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class ReadOnlyFirst: Content, Hashable { + + public var bar: String? + public var baz: String? + + public init(bar: String? = nil, baz: String? = nil) { + self.bar = bar + self.baz = baz + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case bar + case baz + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(bar, forKey: .bar) + try container.encodeIfPresent(baz, forKey: .baz) + } + + public static func == (lhs: ReadOnlyFirst, rhs: ReadOnlyFirst) -> Bool { + lhs.bar == rhs.bar && + lhs.baz == rhs.baz + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(bar?.hashValue) + hasher.combine(baz?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Return.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Return.swift new file mode 100644 index 000000000000..05e4d06219ae --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Return.swift @@ -0,0 +1,44 @@ +// +// Return.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +/** Model for testing reserved words */ +public final class Return: Content, Hashable { + + public var `return`: Int? + + public init(`return`: Int? = nil) { + self.`return` = `return` + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case `return` = "return" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(`return`, forKey: .`return`) + } + + public static func == (lhs: Return, rhs: Return) -> Bool { + lhs.`return` == rhs.`return` + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(`return`?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift new file mode 100644 index 000000000000..8ad4aa608ea5 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/SpecialModelName.swift @@ -0,0 +1,43 @@ +// +// SpecialModelName.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class SpecialModelName: Content, Hashable { + + public var specialPropertyName: Int64? + + public init(specialPropertyName: Int64? = nil) { + self.specialPropertyName = specialPropertyName + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case specialPropertyName = "$special[property.name]" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) + } + + public static func == (lhs: SpecialModelName, rhs: SpecialModelName) -> Bool { + lhs.specialPropertyName == rhs.specialPropertyName + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(specialPropertyName?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift new file mode 100644 index 000000000000..59d76476f8bd --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/StringBooleanMap.swift @@ -0,0 +1,61 @@ +// +// StringBooleanMap.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class StringBooleanMap: Content, Hashable { + + + public enum CodingKeys: CodingKey, CaseIterable { + } + + public var additionalProperties: [String: Bool] = [:] + + public subscript(key: String) -> Bool? { + get { + if let value = additionalProperties[key] { + return value + } + return nil + } + + set { + additionalProperties[key] = newValue + } + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + var additionalPropertiesContainer = encoder.container(keyedBy: String.self) + try additionalPropertiesContainer.encodeMap(additionalProperties) + } + + // Decodable protocol methods + + public init(from decoder: Decoder) throws { + let container = try decoder.container(keyedBy: CodingKeys.self) + + var nonAdditionalPropertyKeys = Set() + let additionalPropertiesContainer = try decoder.container(keyedBy: String.self) + additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) + } + + public static func == (lhs: StringBooleanMap, rhs: StringBooleanMap) -> Bool { + lhs.additionalProperties == rhs.additionalProperties + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(additionalProperties.hashValue) + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Tag.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Tag.swift new file mode 100644 index 000000000000..b6ec1244243d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/Tag.swift @@ -0,0 +1,49 @@ +// +// Tag.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class Tag: Content, Hashable { + + public var id: Int64? + public var name: String? + + public init(id: Int64? = nil, name: String? = nil) { + self.id = id + self.name = name + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case id + case name + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(id, forKey: .id) + try container.encodeIfPresent(name, forKey: .name) + } + + public static func == (lhs: Tag, rhs: Tag) -> Bool { + lhs.id == rhs.id && + lhs.name == rhs.name + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(id?.hashValue) + hasher.combine(name?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift new file mode 100644 index 000000000000..f0d5c3ad3132 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderDefault.swift @@ -0,0 +1,67 @@ +// +// TypeHolderDefault.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class TypeHolderDefault: Content, Hashable { + + public var stringItem: String = "what" + public var numberItem: Double + public var integerItem: Int + public var boolItem: Bool = true + public var arrayItem: [Int] + + public init(stringItem: String = "what", numberItem: Double, integerItem: Int, boolItem: Bool = true, arrayItem: [Int]) { + self.stringItem = stringItem + self.numberItem = numberItem + self.integerItem = integerItem + self.boolItem = boolItem + self.arrayItem = arrayItem + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case stringItem = "string_item" + case numberItem = "number_item" + case integerItem = "integer_item" + case boolItem = "bool_item" + case arrayItem = "array_item" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(stringItem, forKey: .stringItem) + try container.encode(numberItem, forKey: .numberItem) + try container.encode(integerItem, forKey: .integerItem) + try container.encode(boolItem, forKey: .boolItem) + try container.encode(arrayItem, forKey: .arrayItem) + } + + public static func == (lhs: TypeHolderDefault, rhs: TypeHolderDefault) -> Bool { + lhs.stringItem == rhs.stringItem && + lhs.numberItem == rhs.numberItem && + lhs.integerItem == rhs.integerItem && + lhs.boolItem == rhs.boolItem && + lhs.arrayItem == rhs.arrayItem + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(stringItem.hashValue) + hasher.combine(numberItem.hashValue) + hasher.combine(integerItem.hashValue) + hasher.combine(boolItem.hashValue) + hasher.combine(arrayItem.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift new file mode 100644 index 000000000000..cdefaad66d26 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/TypeHolderExample.swift @@ -0,0 +1,73 @@ +// +// TypeHolderExample.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class TypeHolderExample: Content, Hashable { + + 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, 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 + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case stringItem = "string_item" + case numberItem = "number_item" + case floatItem = "float_item" + case integerItem = "integer_item" + case boolItem = "bool_item" + case arrayItem = "array_item" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encode(stringItem, forKey: .stringItem) + try container.encode(numberItem, forKey: .numberItem) + try container.encode(floatItem, forKey: .floatItem) + try container.encode(integerItem, forKey: .integerItem) + try container.encode(boolItem, forKey: .boolItem) + try container.encode(arrayItem, forKey: .arrayItem) + } + + public static func == (lhs: TypeHolderExample, rhs: TypeHolderExample) -> Bool { + lhs.stringItem == rhs.stringItem && + lhs.numberItem == rhs.numberItem && + lhs.floatItem == rhs.floatItem && + lhs.integerItem == rhs.integerItem && + lhs.boolItem == rhs.boolItem && + lhs.arrayItem == rhs.arrayItem + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(stringItem.hashValue) + hasher.combine(numberItem.hashValue) + hasher.combine(floatItem.hashValue) + hasher.combine(integerItem.hashValue) + hasher.combine(boolItem.hashValue) + hasher.combine(arrayItem.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/User.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/User.swift new file mode 100644 index 000000000000..47e3f6fbcb30 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/User.swift @@ -0,0 +1,86 @@ +// +// User.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class User: Content, Hashable { + + public var id: Int64? + public var username: String? + public var firstName: String? + public var lastName: String? + public var email: String? + public var password: String? + public var phone: String? + /** User Status */ + public var userStatus: Int? + + public init(id: Int64? = nil, username: String? = nil, firstName: String? = nil, lastName: String? = nil, email: String? = nil, password: String? = nil, phone: String? = nil, userStatus: Int? = nil) { + self.id = id + self.username = username + self.firstName = firstName + self.lastName = lastName + self.email = email + self.password = password + self.phone = phone + self.userStatus = userStatus + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case id + case username + case firstName + case lastName + case email + case password + case phone + case userStatus + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(id, forKey: .id) + try container.encodeIfPresent(username, forKey: .username) + try container.encodeIfPresent(firstName, forKey: .firstName) + try container.encodeIfPresent(lastName, forKey: .lastName) + try container.encodeIfPresent(email, forKey: .email) + try container.encodeIfPresent(password, forKey: .password) + try container.encodeIfPresent(phone, forKey: .phone) + try container.encodeIfPresent(userStatus, forKey: .userStatus) + } + + public static func == (lhs: User, rhs: User) -> Bool { + lhs.id == rhs.id && + lhs.username == rhs.username && + lhs.firstName == rhs.firstName && + lhs.lastName == rhs.lastName && + lhs.email == rhs.email && + lhs.password == rhs.password && + lhs.phone == rhs.phone && + lhs.userStatus == rhs.userStatus + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(id?.hashValue) + hasher.combine(username?.hashValue) + hasher.combine(firstName?.hashValue) + hasher.combine(lastName?.hashValue) + hasher.combine(email?.hashValue) + hasher.combine(password?.hashValue) + hasher.combine(phone?.hashValue) + hasher.combine(userStatus?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/XmlItem.swift b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/XmlItem.swift new file mode 100644 index 000000000000..85003560b375 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/Sources/PetstoreClient/Models/XmlItem.swift @@ -0,0 +1,211 @@ +// +// XmlItem.swift +// +// Generated by openapi-generator +// https://openapi-generator.tech +// + +import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif +import Vapor + +public final class XmlItem: Content, Hashable { + + public var attributeString: String? + public var attributeNumber: Double? + public var attributeInteger: Int? + public var attributeBoolean: Bool? + public var wrappedArray: [Int]? + public var nameString: String? + public var nameNumber: Double? + public var nameInteger: Int? + public var nameBoolean: Bool? + public var nameArray: [Int]? + public var nameWrappedArray: [Int]? + public var prefixString: String? + public var prefixNumber: Double? + public var prefixInteger: Int? + public var prefixBoolean: Bool? + public var prefixArray: [Int]? + public var prefixWrappedArray: [Int]? + public var namespaceString: String? + public var namespaceNumber: Double? + public var namespaceInteger: Int? + public var namespaceBoolean: Bool? + public var namespaceArray: [Int]? + public var namespaceWrappedArray: [Int]? + public var prefixNsString: String? + public var prefixNsNumber: Double? + public var prefixNsInteger: Int? + public var prefixNsBoolean: Bool? + public var prefixNsArray: [Int]? + public var prefixNsWrappedArray: [Int]? + + public init(attributeString: String? = nil, attributeNumber: Double? = nil, attributeInteger: Int? = nil, attributeBoolean: Bool? = nil, wrappedArray: [Int]? = nil, nameString: String? = nil, nameNumber: Double? = nil, nameInteger: Int? = nil, nameBoolean: Bool? = nil, nameArray: [Int]? = nil, nameWrappedArray: [Int]? = nil, prefixString: String? = nil, prefixNumber: Double? = nil, prefixInteger: Int? = nil, prefixBoolean: Bool? = nil, prefixArray: [Int]? = nil, prefixWrappedArray: [Int]? = nil, namespaceString: String? = nil, namespaceNumber: Double? = nil, namespaceInteger: Int? = nil, namespaceBoolean: Bool? = nil, namespaceArray: [Int]? = nil, namespaceWrappedArray: [Int]? = nil, prefixNsString: String? = nil, prefixNsNumber: Double? = nil, prefixNsInteger: Int? = nil, prefixNsBoolean: Bool? = nil, prefixNsArray: [Int]? = nil, prefixNsWrappedArray: [Int]? = nil) { + self.attributeString = attributeString + self.attributeNumber = attributeNumber + self.attributeInteger = attributeInteger + self.attributeBoolean = attributeBoolean + self.wrappedArray = wrappedArray + self.nameString = nameString + self.nameNumber = nameNumber + self.nameInteger = nameInteger + self.nameBoolean = nameBoolean + self.nameArray = nameArray + self.nameWrappedArray = nameWrappedArray + self.prefixString = prefixString + self.prefixNumber = prefixNumber + self.prefixInteger = prefixInteger + self.prefixBoolean = prefixBoolean + self.prefixArray = prefixArray + self.prefixWrappedArray = prefixWrappedArray + self.namespaceString = namespaceString + self.namespaceNumber = namespaceNumber + self.namespaceInteger = namespaceInteger + self.namespaceBoolean = namespaceBoolean + self.namespaceArray = namespaceArray + self.namespaceWrappedArray = namespaceWrappedArray + self.prefixNsString = prefixNsString + self.prefixNsNumber = prefixNsNumber + self.prefixNsInteger = prefixNsInteger + self.prefixNsBoolean = prefixNsBoolean + self.prefixNsArray = prefixNsArray + self.prefixNsWrappedArray = prefixNsWrappedArray + } + + public enum CodingKeys: String, CodingKey, CaseIterable { + case attributeString = "attribute_string" + case attributeNumber = "attribute_number" + case attributeInteger = "attribute_integer" + case attributeBoolean = "attribute_boolean" + case wrappedArray = "wrapped_array" + case nameString = "name_string" + case nameNumber = "name_number" + case nameInteger = "name_integer" + case nameBoolean = "name_boolean" + case nameArray = "name_array" + case nameWrappedArray = "name_wrapped_array" + case prefixString = "prefix_string" + case prefixNumber = "prefix_number" + case prefixInteger = "prefix_integer" + case prefixBoolean = "prefix_boolean" + case prefixArray = "prefix_array" + case prefixWrappedArray = "prefix_wrapped_array" + case namespaceString = "namespace_string" + case namespaceNumber = "namespace_number" + case namespaceInteger = "namespace_integer" + case namespaceBoolean = "namespace_boolean" + case namespaceArray = "namespace_array" + case namespaceWrappedArray = "namespace_wrapped_array" + case prefixNsString = "prefix_ns_string" + case prefixNsNumber = "prefix_ns_number" + case prefixNsInteger = "prefix_ns_integer" + case prefixNsBoolean = "prefix_ns_boolean" + case prefixNsArray = "prefix_ns_array" + case prefixNsWrappedArray = "prefix_ns_wrapped_array" + } + + // Encodable protocol methods + + public func encode(to encoder: Encoder) throws { + var container = encoder.container(keyedBy: CodingKeys.self) + try container.encodeIfPresent(attributeString, forKey: .attributeString) + try container.encodeIfPresent(attributeNumber, forKey: .attributeNumber) + try container.encodeIfPresent(attributeInteger, forKey: .attributeInteger) + try container.encodeIfPresent(attributeBoolean, forKey: .attributeBoolean) + try container.encodeIfPresent(wrappedArray, forKey: .wrappedArray) + try container.encodeIfPresent(nameString, forKey: .nameString) + try container.encodeIfPresent(nameNumber, forKey: .nameNumber) + try container.encodeIfPresent(nameInteger, forKey: .nameInteger) + try container.encodeIfPresent(nameBoolean, forKey: .nameBoolean) + try container.encodeIfPresent(nameArray, forKey: .nameArray) + try container.encodeIfPresent(nameWrappedArray, forKey: .nameWrappedArray) + try container.encodeIfPresent(prefixString, forKey: .prefixString) + try container.encodeIfPresent(prefixNumber, forKey: .prefixNumber) + try container.encodeIfPresent(prefixInteger, forKey: .prefixInteger) + try container.encodeIfPresent(prefixBoolean, forKey: .prefixBoolean) + try container.encodeIfPresent(prefixArray, forKey: .prefixArray) + try container.encodeIfPresent(prefixWrappedArray, forKey: .prefixWrappedArray) + try container.encodeIfPresent(namespaceString, forKey: .namespaceString) + try container.encodeIfPresent(namespaceNumber, forKey: .namespaceNumber) + try container.encodeIfPresent(namespaceInteger, forKey: .namespaceInteger) + try container.encodeIfPresent(namespaceBoolean, forKey: .namespaceBoolean) + try container.encodeIfPresent(namespaceArray, forKey: .namespaceArray) + try container.encodeIfPresent(namespaceWrappedArray, forKey: .namespaceWrappedArray) + try container.encodeIfPresent(prefixNsString, forKey: .prefixNsString) + try container.encodeIfPresent(prefixNsNumber, forKey: .prefixNsNumber) + try container.encodeIfPresent(prefixNsInteger, forKey: .prefixNsInteger) + try container.encodeIfPresent(prefixNsBoolean, forKey: .prefixNsBoolean) + try container.encodeIfPresent(prefixNsArray, forKey: .prefixNsArray) + try container.encodeIfPresent(prefixNsWrappedArray, forKey: .prefixNsWrappedArray) + } + + public static func == (lhs: XmlItem, rhs: XmlItem) -> Bool { + lhs.attributeString == rhs.attributeString && + lhs.attributeNumber == rhs.attributeNumber && + lhs.attributeInteger == rhs.attributeInteger && + lhs.attributeBoolean == rhs.attributeBoolean && + lhs.wrappedArray == rhs.wrappedArray && + lhs.nameString == rhs.nameString && + lhs.nameNumber == rhs.nameNumber && + lhs.nameInteger == rhs.nameInteger && + lhs.nameBoolean == rhs.nameBoolean && + lhs.nameArray == rhs.nameArray && + lhs.nameWrappedArray == rhs.nameWrappedArray && + lhs.prefixString == rhs.prefixString && + lhs.prefixNumber == rhs.prefixNumber && + lhs.prefixInteger == rhs.prefixInteger && + lhs.prefixBoolean == rhs.prefixBoolean && + lhs.prefixArray == rhs.prefixArray && + lhs.prefixWrappedArray == rhs.prefixWrappedArray && + lhs.namespaceString == rhs.namespaceString && + lhs.namespaceNumber == rhs.namespaceNumber && + lhs.namespaceInteger == rhs.namespaceInteger && + lhs.namespaceBoolean == rhs.namespaceBoolean && + lhs.namespaceArray == rhs.namespaceArray && + lhs.namespaceWrappedArray == rhs.namespaceWrappedArray && + lhs.prefixNsString == rhs.prefixNsString && + lhs.prefixNsNumber == rhs.prefixNsNumber && + lhs.prefixNsInteger == rhs.prefixNsInteger && + lhs.prefixNsBoolean == rhs.prefixNsBoolean && + lhs.prefixNsArray == rhs.prefixNsArray && + lhs.prefixNsWrappedArray == rhs.prefixNsWrappedArray + + } + + public func hash(into hasher: inout Hasher) { + hasher.combine(attributeString?.hashValue) + hasher.combine(attributeNumber?.hashValue) + hasher.combine(attributeInteger?.hashValue) + hasher.combine(attributeBoolean?.hashValue) + hasher.combine(wrappedArray?.hashValue) + hasher.combine(nameString?.hashValue) + hasher.combine(nameNumber?.hashValue) + hasher.combine(nameInteger?.hashValue) + hasher.combine(nameBoolean?.hashValue) + hasher.combine(nameArray?.hashValue) + hasher.combine(nameWrappedArray?.hashValue) + hasher.combine(prefixString?.hashValue) + hasher.combine(prefixNumber?.hashValue) + hasher.combine(prefixInteger?.hashValue) + hasher.combine(prefixBoolean?.hashValue) + hasher.combine(prefixArray?.hashValue) + hasher.combine(prefixWrappedArray?.hashValue) + hasher.combine(namespaceString?.hashValue) + hasher.combine(namespaceNumber?.hashValue) + hasher.combine(namespaceInteger?.hashValue) + hasher.combine(namespaceBoolean?.hashValue) + hasher.combine(namespaceArray?.hashValue) + hasher.combine(namespaceWrappedArray?.hashValue) + hasher.combine(prefixNsString?.hashValue) + hasher.combine(prefixNsNumber?.hashValue) + hasher.combine(prefixNsInteger?.hashValue) + hasher.combine(prefixNsBoolean?.hashValue) + hasher.combine(prefixNsArray?.hashValue) + hasher.combine(prefixNsWrappedArray?.hashValue) + + } +} + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesAnyType.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesAnyType.md new file mode 100644 index 000000000000..bae60ab148f2 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesAnyType.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesAnyType + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesArray.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesArray.md new file mode 100644 index 000000000000..a371b5e28f32 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesArray.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesArray + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesBoolean.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesBoolean.md new file mode 100644 index 000000000000..d5f0d6da11ee --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesBoolean.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesBoolean + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesClass.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesClass.md new file mode 100644 index 000000000000..1cffcdd84841 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesClass.md @@ -0,0 +1,20 @@ +# AdditionalPropertiesClass + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**mapString** | **[String: String]** | | [optional] +**mapNumber** | **[String: Double]** | | [optional] +**mapInteger** | **[String: Int]** | | [optional] +**mapBoolean** | **[String: Bool]** | | [optional] +**mapArrayInteger** | [String: [Int]] | | [optional] +**mapArrayAnytype** | [String: [AnyCodable]] | | [optional] +**mapMapString** | [String: [String: String]] | | [optional] +**mapMapAnytype** | [String: [String: AnyCodable]] | | [optional] +**anytype1** | [**AnyCodable**](.md) | | [optional] +**anytype2** | [**AnyCodable**](.md) | | [optional] +**anytype3** | [**AnyCodable**](.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesInteger.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesInteger.md new file mode 100644 index 000000000000..629293abdfe9 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesInteger.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesInteger + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesNumber.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesNumber.md new file mode 100644 index 000000000000..65adfe78137c --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesNumber.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesNumber + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesObject.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesObject.md new file mode 100644 index 000000000000..99d69b7aae6a --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesObject.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesObject + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesString.md b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesString.md new file mode 100644 index 000000000000..5bb8122887c4 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AdditionalPropertiesString.md @@ -0,0 +1,10 @@ +# AdditionalPropertiesString + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Animal.md b/samples/client/petstore/swift5/vaporLibrary/docs/Animal.md new file mode 100644 index 000000000000..69c601455cd8 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Animal.md @@ -0,0 +1,11 @@ +# Animal + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**className** | **String** | | +**color** | **String** | | [optional] [default to "red"] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AnimalFarm.md b/samples/client/petstore/swift5/vaporLibrary/docs/AnimalFarm.md new file mode 100644 index 000000000000..df6bab21dae8 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AnimalFarm.md @@ -0,0 +1,9 @@ +# AnimalFarm + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/AnotherFakeAPI.md b/samples/client/petstore/swift5/vaporLibrary/docs/AnotherFakeAPI.md new file mode 100644 index 000000000000..1e71f1db8719 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/AnotherFakeAPI.md @@ -0,0 +1,68 @@ +# AnotherFakeAPI + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**call123testSpecialTags**](AnotherFakeAPI.md#call123testspecialtags) | **PATCH** /another-fake/dummy | To test special tags + + +# **call123testSpecialTags** +```swift + open class func call123testSpecialTags(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +To test special tags + +To test special tags and operation ID starting with number + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = Client(client: "client_example") // Client | client model + +// To test special tags +AnotherFakeAPI.call123testSpecialTags(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**Client**](Client.md) | client model | + +### Return type + +#### Call123testSpecialTags + +```swift +public enum Call123testSpecialTags { + case http200(value: Client?, raw: ClientResponse) + case http0(value: Client?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/ApiResponse.md b/samples/client/petstore/swift5/vaporLibrary/docs/ApiResponse.md new file mode 100644 index 000000000000..c6d9768fe9bf --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/ApiResponse.md @@ -0,0 +1,12 @@ +# ApiResponse + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**code** | **Int** | | [optional] +**type** | **String** | | [optional] +**message** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfArrayOfNumberOnly.md b/samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfArrayOfNumberOnly.md new file mode 100644 index 000000000000..c6fceff5e08d --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfArrayOfNumberOnly.md @@ -0,0 +1,10 @@ +# ArrayOfArrayOfNumberOnly + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**arrayArrayNumber** | [[Double]] | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfNumberOnly.md b/samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfNumberOnly.md new file mode 100644 index 000000000000..f09f8fa6f70f --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/ArrayOfNumberOnly.md @@ -0,0 +1,10 @@ +# ArrayOfNumberOnly + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**arrayNumber** | **[Double]** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/ArrayTest.md b/samples/client/petstore/swift5/vaporLibrary/docs/ArrayTest.md new file mode 100644 index 000000000000..bf416b8330cc --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/ArrayTest.md @@ -0,0 +1,12 @@ +# ArrayTest + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**arrayOfString** | **[String]** | | [optional] +**arrayArrayOfInteger** | [[Int64]] | | [optional] +**arrayArrayOfModel** | [[ReadOnlyFirst]] | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/BigCat.md b/samples/client/petstore/swift5/vaporLibrary/docs/BigCat.md new file mode 100644 index 000000000000..cd904c7381a2 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/BigCat.md @@ -0,0 +1,10 @@ +# BigCat + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**kind** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/BigCatAllOf.md b/samples/client/petstore/swift5/vaporLibrary/docs/BigCatAllOf.md new file mode 100644 index 000000000000..20da4caf5d01 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/BigCatAllOf.md @@ -0,0 +1,10 @@ +# BigCatAllOf + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**kind** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Capitalization.md b/samples/client/petstore/swift5/vaporLibrary/docs/Capitalization.md new file mode 100644 index 000000000000..95374216c773 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Capitalization.md @@ -0,0 +1,15 @@ +# Capitalization + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**smallCamel** | **String** | | [optional] +**capitalCamel** | **String** | | [optional] +**smallSnake** | **String** | | [optional] +**capitalSnake** | **String** | | [optional] +**sCAETHFlowPoints** | **String** | | [optional] +**ATT_NAME** | **String** | Name of the pet | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Cat.md b/samples/client/petstore/swift5/vaporLibrary/docs/Cat.md new file mode 100644 index 000000000000..fb5949b15761 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Cat.md @@ -0,0 +1,10 @@ +# Cat + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**declawed** | **Bool** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/CatAllOf.md b/samples/client/petstore/swift5/vaporLibrary/docs/CatAllOf.md new file mode 100644 index 000000000000..79789be61c01 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/CatAllOf.md @@ -0,0 +1,10 @@ +# CatAllOf + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**declawed** | **Bool** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Category.md b/samples/client/petstore/swift5/vaporLibrary/docs/Category.md new file mode 100644 index 000000000000..5ca5408c0f96 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Category.md @@ -0,0 +1,11 @@ +# Category + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **Int64** | | [optional] +**name** | **String** | | [default to "default-name"] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/ClassModel.md b/samples/client/petstore/swift5/vaporLibrary/docs/ClassModel.md new file mode 100644 index 000000000000..60989bb6b64e --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/ClassModel.md @@ -0,0 +1,10 @@ +# ClassModel + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**`class`** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Client.md b/samples/client/petstore/swift5/vaporLibrary/docs/Client.md new file mode 100644 index 000000000000..0de1b238c36f --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Client.md @@ -0,0 +1,10 @@ +# Client + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**client** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Dog.md b/samples/client/petstore/swift5/vaporLibrary/docs/Dog.md new file mode 100644 index 000000000000..4824786da049 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Dog.md @@ -0,0 +1,10 @@ +# Dog + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**breed** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/DogAllOf.md b/samples/client/petstore/swift5/vaporLibrary/docs/DogAllOf.md new file mode 100644 index 000000000000..9302ef52e938 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/DogAllOf.md @@ -0,0 +1,10 @@ +# DogAllOf + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**breed** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/EnumArrays.md b/samples/client/petstore/swift5/vaporLibrary/docs/EnumArrays.md new file mode 100644 index 000000000000..b9a9807d3c8e --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/EnumArrays.md @@ -0,0 +1,11 @@ +# EnumArrays + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**justSymbol** | **String** | | [optional] +**arrayEnum** | **[String]** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/EnumClass.md b/samples/client/petstore/swift5/vaporLibrary/docs/EnumClass.md new file mode 100644 index 000000000000..67f017becd0c --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/EnumClass.md @@ -0,0 +1,9 @@ +# EnumClass + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/EnumTest.md b/samples/client/petstore/swift5/vaporLibrary/docs/EnumTest.md new file mode 100644 index 000000000000..bc9b036dd769 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/EnumTest.md @@ -0,0 +1,14 @@ +# EnumTest + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**enumString** | **String** | | [optional] +**enumStringRequired** | **String** | | +**enumInteger** | **Int** | | [optional] +**enumNumber** | **Double** | | [optional] +**outerEnum** | [**OuterEnum**](OuterEnum.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/FakeAPI.md b/samples/client/petstore/swift5/vaporLibrary/docs/FakeAPI.md new file mode 100644 index 000000000000..1883af3085ca --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/FakeAPI.md @@ -0,0 +1,901 @@ +# FakeAPI + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**createXmlItem**](FakeAPI.md#createxmlitem) | **POST** /fake/create_xml_item | creates an XmlItem +[**fakeOuterBooleanSerialize**](FakeAPI.md#fakeouterbooleanserialize) | **POST** /fake/outer/boolean | +[**fakeOuterCompositeSerialize**](FakeAPI.md#fakeoutercompositeserialize) | **POST** /fake/outer/composite | +[**fakeOuterNumberSerialize**](FakeAPI.md#fakeouternumberserialize) | **POST** /fake/outer/number | +[**fakeOuterStringSerialize**](FakeAPI.md#fakeouterstringserialize) | **POST** /fake/outer/string | +[**testBodyWithFileSchema**](FakeAPI.md#testbodywithfileschema) | **PUT** /fake/body-with-file-schema | +[**testBodyWithQueryParams**](FakeAPI.md#testbodywithqueryparams) | **PUT** /fake/body-with-query-params | +[**testClientModel**](FakeAPI.md#testclientmodel) | **PATCH** /fake | To test \"client\" model +[**testEndpointParameters**](FakeAPI.md#testendpointparameters) | **POST** /fake | Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 +[**testEnumParameters**](FakeAPI.md#testenumparameters) | **GET** /fake | To test enum parameters +[**testGroupParameters**](FakeAPI.md#testgroupparameters) | **DELETE** /fake | Fake endpoint to test group parameters (optional) +[**testInlineAdditionalProperties**](FakeAPI.md#testinlineadditionalproperties) | **POST** /fake/inline-additionalProperties | test inline additionalProperties +[**testJsonFormData**](FakeAPI.md#testjsonformdata) | **GET** /fake/jsonFormData | test json serialization of form data +[**testQueryParameterCollectionFormat**](FakeAPI.md#testqueryparametercollectionformat) | **PUT** /fake/test-query-paramters | + + +# **createXmlItem** +```swift + open class func createXmlItem(xmlItem: XmlItem, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +creates an XmlItem + +this route creates an XmlItem + +### 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 xmlItem = XmlItem(attributeString: "attributeString_example", attributeNumber: 123, attributeInteger: 123, attributeBoolean: true, wrappedArray: [123], nameString: "nameString_example", nameNumber: 123, nameInteger: 123, nameBoolean: true, nameArray: [123], nameWrappedArray: [123], prefixString: "prefixString_example", prefixNumber: 123, prefixInteger: 123, prefixBoolean: true, prefixArray: [123], prefixWrappedArray: [123], namespaceString: "namespaceString_example", namespaceNumber: 123, namespaceInteger: 123, namespaceBoolean: true, namespaceArray: [123], namespaceWrappedArray: [123], prefixNsString: "prefixNsString_example", prefixNsNumber: 123, prefixNsInteger: 123, prefixNsBoolean: true, prefixNsArray: [123], prefixNsWrappedArray: [123]) // XmlItem | XmlItem Body + +// creates an XmlItem +FakeAPI.createXmlItem(xmlItem: xmlItem).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **xmlItem** | [**XmlItem**](XmlItem.md) | XmlItem Body | + +### Return type + +#### CreateXmlItem + +```swift +public enum CreateXmlItem { + case http200(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **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 + - **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) + +# **fakeOuterBooleanSerialize** +```swift + open class func fakeOuterBooleanSerialize(body: Bool? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +Test serialization of outer boolean types + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = true // Bool | Input boolean as post body (optional) + +FakeAPI.fakeOuterBooleanSerialize(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | **Bool** | Input boolean as post body | [optional] + +### Return type + +#### FakeOuterBooleanSerialize + +```swift +public enum FakeOuterBooleanSerialize { + case http200(value: Bool?, raw: ClientResponse) + case http0(value: Bool?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: */* + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **fakeOuterCompositeSerialize** +```swift + open class func fakeOuterCompositeSerialize(body: OuterComposite? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +Test serialization of object with outer number type + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = OuterComposite(myNumber: 123, myString: "myString_example", myBoolean: false) // OuterComposite | Input composite as post body (optional) + +FakeAPI.fakeOuterCompositeSerialize(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**OuterComposite**](OuterComposite.md) | Input composite as post body | [optional] + +### Return type + +#### FakeOuterCompositeSerialize + +```swift +public enum FakeOuterCompositeSerialize { + case http200(value: OuterComposite?, raw: ClientResponse) + case http0(value: OuterComposite?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: */* + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **fakeOuterNumberSerialize** +```swift + open class func fakeOuterNumberSerialize(body: Double? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +Test serialization of outer number types + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = 987 // Double | Input number as post body (optional) + +FakeAPI.fakeOuterNumberSerialize(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | **Double** | Input number as post body | [optional] + +### Return type + +#### FakeOuterNumberSerialize + +```swift +public enum FakeOuterNumberSerialize { + case http200(value: Double?, raw: ClientResponse) + case http0(value: Double?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: */* + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **fakeOuterStringSerialize** +```swift + open class func fakeOuterStringSerialize(body: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +Test serialization of outer string types + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = "body_example" // String | Input string as post body (optional) + +FakeAPI.fakeOuterStringSerialize(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | **String** | Input string as post body | [optional] + +### Return type + +#### FakeOuterStringSerialize + +```swift +public enum FakeOuterStringSerialize { + case http200(value: String?, raw: ClientResponse) + case http0(value: String?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: */* + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testBodyWithFileSchema** +```swift + open class func testBodyWithFileSchema(body: FileSchemaTestClass, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +For this test, the body for this request much reference a schema named `File`. + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = FileSchemaTestClass(file: File(sourceURI: "sourceURI_example"), files: [nil]) // FileSchemaTestClass | + +FakeAPI.testBodyWithFileSchema(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**FileSchemaTestClass**](FileSchemaTestClass.md) | | + +### Return type + +#### TestBodyWithFileSchema + +```swift +public enum TestBodyWithFileSchema { + case http200(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testBodyWithQueryParams** +```swift + open class func testBodyWithQueryParams(query: String, body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let query = "query_example" // String | +let body = User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123) // User | + +FakeAPI.testBodyWithQueryParams(query: query, body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **query** | **String** | | + **body** | [**User**](User.md) | | + +### Return type + +#### TestBodyWithQueryParams + +```swift +public enum TestBodyWithQueryParams { + case http200(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testClientModel** +```swift + open class func testClientModel(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +To test \"client\" model + +To test \"client\" model + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = Client(client: "client_example") // Client | client model + +// To test \"client\" model +FakeAPI.testClientModel(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**Client**](Client.md) | client model | + +### Return type + +#### TestClientModel + +```swift +public enum TestClientModel { + case http200(value: Client?, raw: ClientResponse) + case http0(value: Client?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testEndpointParameters** +```swift + open class func testEndpointParameters(number: Double, double: Double, patternWithoutDelimiter: String, byte: Data, integer: Int? = nil, int32: Int? = nil, int64: Int64? = nil, float: Float? = nil, string: String? = nil, binary: Data? = nil, date: Date? = nil, dateTime: Date? = nil, password: String? = nil, callback: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 + +Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let number = 987 // Double | None +let double = 987 // Double | None +let patternWithoutDelimiter = "patternWithoutDelimiter_example" // String | None +let byte = Data([9, 8, 7]) // Data | None +let integer = 987 // Int | None (optional) +let int32 = 987 // Int | None (optional) +let int64 = 987 // Int64 | None (optional) +let float = 987 // Float | None (optional) +let string = "string_example" // String | None (optional) +let binary = Data([9, 8, 7]) // Data | None (optional) +let date = Date() // Date | None (optional) +let dateTime = Date() // Date | None (optional) +let password = "password_example" // String | None (optional) +let callback = "callback_example" // String | None (optional) + +// Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트 +FakeAPI.testEndpointParameters(number: number, double: double, patternWithoutDelimiter: patternWithoutDelimiter, byte: byte, integer: integer, int32: int32, int64: int64, float: float, string: string, binary: binary, date: date, dateTime: dateTime, password: password, callback: callback).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **number** | **Double** | None | + **double** | **Double** | None | + **patternWithoutDelimiter** | **String** | None | + **byte** | **Data** | None | + **integer** | **Int** | None | [optional] + **int32** | **Int** | None | [optional] + **int64** | **Int64** | None | [optional] + **float** | **Float** | None | [optional] + **string** | **String** | None | [optional] + **binary** | **Data** | None | [optional] + **date** | **Date** | None | [optional] + **dateTime** | **Date** | None | [optional] + **password** | **String** | None | [optional] + **callback** | **String** | None | [optional] + +### Return type + +#### TestEndpointParameters + +```swift +public enum TestEndpointParameters { + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +[http_basic_test](../README.md#http_basic_test) + +### HTTP request headers + + - **Content-Type**: application/x-www-form-urlencoded + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testEnumParameters** +```swift + open class func testEnumParameters(enumHeaderStringArray: [String]? = nil, enumHeaderString: EnumHeaderString_testEnumParameters? = nil, enumQueryStringArray: [String]? = nil, enumQueryString: EnumQueryString_testEnumParameters? = nil, enumQueryInteger: EnumQueryInteger_testEnumParameters? = nil, enumQueryDouble: EnumQueryDouble_testEnumParameters? = nil, enumFormStringArray: [String]? = nil, enumFormString: EnumFormString_testEnumParameters? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +To test enum parameters + +To test enum parameters + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let enumHeaderStringArray = ["enumHeaderStringArray_example"] // [String] | Header parameter enum test (string array) (optional) +let enumHeaderString = "enumHeaderString_example" // String | Header parameter enum test (string) (optional) (default to .efg) +let enumQueryStringArray = ["enumQueryStringArray_example"] // [String] | Query parameter enum test (string array) (optional) +let enumQueryString = "enumQueryString_example" // String | Query parameter enum test (string) (optional) (default to .efg) +let enumQueryInteger = 987 // Int | Query parameter enum test (double) (optional) +let enumQueryDouble = 987 // Double | Query parameter enum test (double) (optional) +let enumFormStringArray = ["inner_example"] // [String] | Form parameter enum test (string array) (optional) (default to .dollar) +let enumFormString = "enumFormString_example" // String | Form parameter enum test (string) (optional) (default to .efg) + +// To test enum parameters +FakeAPI.testEnumParameters(enumHeaderStringArray: enumHeaderStringArray, enumHeaderString: enumHeaderString, enumQueryStringArray: enumQueryStringArray, enumQueryString: enumQueryString, enumQueryInteger: enumQueryInteger, enumQueryDouble: enumQueryDouble, enumFormStringArray: enumFormStringArray, enumFormString: enumFormString).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **enumHeaderStringArray** | [**[String]**](String.md) | Header parameter enum test (string array) | [optional] + **enumHeaderString** | **String** | Header parameter enum test (string) | [optional] [default to .efg] + **enumQueryStringArray** | [**[String]**](String.md) | Query parameter enum test (string array) | [optional] + **enumQueryString** | **String** | Query parameter enum test (string) | [optional] [default to .efg] + **enumQueryInteger** | **Int** | Query parameter enum test (double) | [optional] + **enumQueryDouble** | **Double** | Query parameter enum test (double) | [optional] + **enumFormStringArray** | [**[String]**](String.md) | Form parameter enum test (string array) | [optional] [default to .dollar] + **enumFormString** | **String** | Form parameter enum test (string) | [optional] [default to .efg] + +### Return type + +#### TestEnumParameters + +```swift +public enum TestEnumParameters { + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/x-www-form-urlencoded + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testGroupParameters** +```swift + open class func testGroupParameters(requiredStringGroup: Int, requiredBooleanGroup: Bool, requiredInt64Group: Int64, stringGroup: Int? = nil, booleanGroup: Bool? = nil, int64Group: Int64? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Fake endpoint to test group parameters (optional) + +Fake endpoint to test group parameters (optional) + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let requiredStringGroup = 987 // Int | Required String in group parameters +let requiredBooleanGroup = true // Bool | Required Boolean in group parameters +let requiredInt64Group = 987 // Int64 | Required Integer in group parameters +let stringGroup = 987 // Int | String in group parameters (optional) +let booleanGroup = true // Bool | Boolean in group parameters (optional) +let int64Group = 987 // Int64 | Integer in group parameters (optional) + +// Fake endpoint to test group parameters (optional) +FakeAPI.testGroupParameters(requiredStringGroup: requiredStringGroup, requiredBooleanGroup: requiredBooleanGroup, requiredInt64Group: requiredInt64Group, stringGroup: stringGroup, booleanGroup: booleanGroup, int64Group: int64Group).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http400(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **requiredStringGroup** | **Int** | Required String in group parameters | + **requiredBooleanGroup** | **Bool** | Required Boolean in group parameters | + **requiredInt64Group** | **Int64** | Required Integer in group parameters | + **stringGroup** | **Int** | String in group parameters | [optional] + **booleanGroup** | **Bool** | Boolean in group parameters | [optional] + **int64Group** | **Int64** | Integer in group parameters | [optional] + +### Return type + +#### TestGroupParameters + +```swift +public enum TestGroupParameters { + case http400(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testInlineAdditionalProperties** +```swift + open class func testInlineAdditionalProperties(param: [String: String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +test inline additionalProperties + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let param = "TODO" // [String: String] | request body + +// test inline additionalProperties +FakeAPI.testInlineAdditionalProperties(param: param).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **param** | [**[String: String]**](String.md) | request body | + +### Return type + +#### TestInlineAdditionalProperties + +```swift +public enum TestInlineAdditionalProperties { + case http200(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testJsonFormData** +```swift + open class func testJsonFormData(param: String, param2: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +test json serialization of form data + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let param = "param_example" // String | field1 +let param2 = "param2_example" // String | field2 + +// test json serialization of form data +FakeAPI.testJsonFormData(param: param, param2: param2).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **param** | **String** | field1 | + **param2** | **String** | field2 | + +### Return type + +#### TestJsonFormData + +```swift +public enum TestJsonFormData { + case http200(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/x-www-form-urlencoded + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **testQueryParameterCollectionFormat** +```swift + open class func testQueryParameterCollectionFormat(pipe: [String], ioutil: [String], http: [String], url: [String], context: [String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + + + +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).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### 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 + +#### TestQueryParameterCollectionFormat + +```swift +public enum TestQueryParameterCollectionFormat { + case http200(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/FakeClassnameTags123API.md b/samples/client/petstore/swift5/vaporLibrary/docs/FakeClassnameTags123API.md new file mode 100644 index 000000000000..1aebe78f145c --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/FakeClassnameTags123API.md @@ -0,0 +1,68 @@ +# FakeClassnameTags123API + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**testClassname**](FakeClassnameTags123API.md#testclassname) | **PATCH** /fake_classname_test | To test class name in snake case + + +# **testClassname** +```swift + open class func testClassname(body: Client, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +To test class name in snake case + +To test class name in snake case + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = Client(client: "client_example") // Client | client model + +// To test class name in snake case +FakeClassnameTags123API.testClassname(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**Client**](Client.md) | client model | + +### Return type + +#### TestClassname + +```swift +public enum TestClassname { + case http200(value: Client?, raw: ClientResponse) + case http0(value: Client?, raw: ClientResponse) +} +``` + +### Authorization + +[api_key_query](../README.md#api_key_query) + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/File.md b/samples/client/petstore/swift5/vaporLibrary/docs/File.md new file mode 100644 index 000000000000..3edfef17b794 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/File.md @@ -0,0 +1,10 @@ +# File + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**sourceURI** | **String** | Test capitalization | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/FileSchemaTestClass.md b/samples/client/petstore/swift5/vaporLibrary/docs/FileSchemaTestClass.md new file mode 100644 index 000000000000..afdacc60b2c3 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/FileSchemaTestClass.md @@ -0,0 +1,11 @@ +# FileSchemaTestClass + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**file** | [**File**](File.md) | | [optional] +**files** | [File] | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/FormatTest.md b/samples/client/petstore/swift5/vaporLibrary/docs/FormatTest.md new file mode 100644 index 000000000000..6e6c67b2a4ff --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/FormatTest.md @@ -0,0 +1,23 @@ +# FormatTest + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**integer** | **Int** | | [optional] +**int32** | **Int** | | [optional] +**int64** | **Int64** | | [optional] +**number** | **Double** | | +**float** | **Float** | | [optional] +**double** | **Double** | | [optional] +**string** | **String** | | [optional] +**byte** | **Data** | | +**binary** | **Data** | | [optional] +**date** | **Date** | | +**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/swift5/vaporLibrary/docs/HasOnlyReadOnly.md b/samples/client/petstore/swift5/vaporLibrary/docs/HasOnlyReadOnly.md new file mode 100644 index 000000000000..57b6e3a17e67 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/HasOnlyReadOnly.md @@ -0,0 +1,11 @@ +# HasOnlyReadOnly + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**bar** | **String** | | [optional] [readonly] +**foo** | **String** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/List.md b/samples/client/petstore/swift5/vaporLibrary/docs/List.md new file mode 100644 index 000000000000..b77718302edf --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/List.md @@ -0,0 +1,10 @@ +# List + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**_123list** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/MapTest.md b/samples/client/petstore/swift5/vaporLibrary/docs/MapTest.md new file mode 100644 index 000000000000..73f9e0d50acf --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/MapTest.md @@ -0,0 +1,13 @@ +# MapTest + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**mapMapOfString** | [String: [String: String]] | | [optional] +**mapOfEnumString** | **[String: String]** | | [optional] +**directMap** | **[String: Bool]** | | [optional] +**indirectMap** | [**StringBooleanMap**](StringBooleanMap.md) | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md b/samples/client/petstore/swift5/vaporLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md new file mode 100644 index 000000000000..3fdfd03f0e31 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/MixedPropertiesAndAdditionalPropertiesClass.md @@ -0,0 +1,12 @@ +# MixedPropertiesAndAdditionalPropertiesClass + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**uuid** | **UUID** | | [optional] +**dateTime** | **Date** | | [optional] +**map** | [String: Animal] | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Model200Response.md b/samples/client/petstore/swift5/vaporLibrary/docs/Model200Response.md new file mode 100644 index 000000000000..e064d9d01117 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Model200Response.md @@ -0,0 +1,11 @@ +# Model200Response + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **Int** | | [optional] +**`class`** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Name.md b/samples/client/petstore/swift5/vaporLibrary/docs/Name.md new file mode 100644 index 000000000000..f7b180292cd6 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Name.md @@ -0,0 +1,13 @@ +# Name + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**name** | **Int** | | +**snakeCase** | **Int** | | [optional] [readonly] +**property** | **String** | | [optional] +**_123number** | **Int** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/NumberOnly.md b/samples/client/petstore/swift5/vaporLibrary/docs/NumberOnly.md new file mode 100644 index 000000000000..72bd361168b5 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/NumberOnly.md @@ -0,0 +1,10 @@ +# NumberOnly + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**justNumber** | **Double** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Order.md b/samples/client/petstore/swift5/vaporLibrary/docs/Order.md new file mode 100644 index 000000000000..15487f01175c --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Order.md @@ -0,0 +1,15 @@ +# Order + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **Int64** | | [optional] +**petId** | **Int64** | | [optional] +**quantity** | **Int** | | [optional] +**shipDate** | **Date** | | [optional] +**status** | **String** | Order Status | [optional] +**complete** | **Bool** | | [optional] [default to false] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/OuterComposite.md b/samples/client/petstore/swift5/vaporLibrary/docs/OuterComposite.md new file mode 100644 index 000000000000..d6b3583bc3ff --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/OuterComposite.md @@ -0,0 +1,12 @@ +# OuterComposite + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**myNumber** | **Double** | | [optional] +**myString** | **String** | | [optional] +**myBoolean** | **Bool** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/OuterEnum.md b/samples/client/petstore/swift5/vaporLibrary/docs/OuterEnum.md new file mode 100644 index 000000000000..06d413b01680 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/OuterEnum.md @@ -0,0 +1,9 @@ +# OuterEnum + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Pet.md b/samples/client/petstore/swift5/vaporLibrary/docs/Pet.md new file mode 100644 index 000000000000..36e8e4884394 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Pet.md @@ -0,0 +1,15 @@ +# Pet + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **Int64** | | [optional] +**category** | [**Category**](Category.md) | | [optional] +**name** | **String** | | +**photoUrls** | **Set** | | +**tags** | [Tag] | | [optional] +**status** | **String** | pet status in the store | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/PetAPI.md b/samples/client/petstore/swift5/vaporLibrary/docs/PetAPI.md new file mode 100644 index 000000000000..88f6a3770380 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/PetAPI.md @@ -0,0 +1,568 @@ +# PetAPI + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**addPet**](PetAPI.md#addpet) | **POST** /pet | Add a new pet to the store +[**deletePet**](PetAPI.md#deletepet) | **DELETE** /pet/{petId} | Deletes a pet +[**findPetsByStatus**](PetAPI.md#findpetsbystatus) | **GET** /pet/findByStatus | Finds Pets by status +[**findPetsByTags**](PetAPI.md#findpetsbytags) | **GET** /pet/findByTags | Finds Pets by tags +[**getPetById**](PetAPI.md#getpetbyid) | **GET** /pet/{petId} | Find pet by ID +[**updatePet**](PetAPI.md#updatepet) | **PUT** /pet | Update an existing pet +[**updatePetWithForm**](PetAPI.md#updatepetwithform) | **POST** /pet/{petId} | Updates a pet in the store with form data +[**uploadFile**](PetAPI.md#uploadfile) | **POST** /pet/{petId}/uploadImage | uploads an image +[**uploadFileWithRequiredFile**](PetAPI.md#uploadfilewithrequiredfile) | **POST** /fake/{petId}/uploadImageWithRequiredFile | uploads an image (required) + + +# **addPet** +```swift + open class func addPet(body: Pet, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Add a new pet to the store + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = Pet(id: 123, category: Category(id: 123, name: "name_example"), name: "name_example", photoUrls: ["photoUrls_example"], tags: [Tag(id: 123, name: "name_example")], status: "status_example") // Pet | Pet object that needs to be added to the store + +// Add a new pet to the store +PetAPI.addPet(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http405(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**Pet**](Pet.md) | Pet object that needs to be added to the store | + +### Return type + +#### AddPet + +```swift +public enum AddPet { + case http200(value: Void?, raw: ClientResponse) + case http405(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: application/json, application/xml + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **deletePet** +```swift + open class func deletePet(petId: Int64, apiKey: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Deletes a pet + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let petId = 987 // Int64 | Pet id to delete +let apiKey = "apiKey_example" // String | (optional) + +// Deletes a pet +PetAPI.deletePet(petId: petId, apiKey: apiKey).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **petId** | **Int64** | Pet id to delete | + **apiKey** | **String** | | [optional] + +### Return type + +#### DeletePet + +```swift +public enum DeletePet { + case http200(value: Void?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **findPetsByStatus** +```swift + open class func findPetsByStatus(status: [String], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Finds Pets by status + +Multiple status values can be provided with comma separated strings + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let status = ["status_example"] // [String] | Status values that need to be considered for filter + +// Finds Pets by status +PetAPI.findPetsByStatus(status: status).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **status** | [**[String]**](String.md) | Status values that need to be considered for filter | + +### Return type + +#### FindPetsByStatus + +```swift +public enum FindPetsByStatus { + case http200(value: [Pet]?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http0(value: [Pet]?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **findPetsByTags** +```swift + open class func findPetsByTags(tags: Set, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Finds Pets by tags + +Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let tags = ["inner_example"] // Set | Tags to filter by + +// Finds Pets by tags +PetAPI.findPetsByTags(tags: tags).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **tags** | [**Set<String>**](String.md) | Tags to filter by | + +### Return type + +#### FindPetsByTags + +```swift +public enum FindPetsByTags { + case http200(value: Set<Pet>?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http0(value: Set<Pet>?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **getPetById** +```swift + open class func getPetById(petId: Int64, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Find pet by ID + +Returns a single pet + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let petId = 987 // Int64 | ID of pet to return + +// Find pet by ID +PetAPI.getPetById(petId: petId).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **petId** | **Int64** | ID of pet to return | + +### Return type + +#### GetPetById + +```swift +public enum GetPetById { + case http200(value: Pet?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Pet?, raw: ClientResponse) +} +``` + +### Authorization + +[api_key](../README.md#api_key) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **updatePet** +```swift + open class func updatePet(body: Pet, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Update an existing pet + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = Pet(id: 123, category: Category(id: 123, name: "name_example"), name: "name_example", photoUrls: ["photoUrls_example"], tags: [Tag(id: 123, name: "name_example")], status: "status_example") // Pet | Pet object that needs to be added to the store + +// Update an existing pet +PetAPI.updatePet(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http405(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**Pet**](Pet.md) | Pet object that needs to be added to the store | + +### Return type + +#### UpdatePet + +```swift +public enum UpdatePet { + case http200(value: Void?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http405(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: application/json, application/xml + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **updatePetWithForm** +```swift + open class func updatePetWithForm(petId: Int64, name: String? = nil, status: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Updates a pet in the store with form data + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let petId = 987 // Int64 | ID of pet that needs to be updated +let name = "name_example" // String | Updated name of the pet (optional) +let status = "status_example" // String | Updated status of the pet (optional) + +// Updates a pet in the store with form data +PetAPI.updatePetWithForm(petId: petId, name: name, status: status).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http405(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **petId** | **Int64** | ID of pet that needs to be updated | + **name** | **String** | Updated name of the pet | [optional] + **status** | **String** | Updated status of the pet | [optional] + +### Return type + +#### UpdatePetWithForm + +```swift +public enum UpdatePetWithForm { + case http405(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: application/x-www-form-urlencoded + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **uploadFile** +```swift + open class func uploadFile(petId: Int64, additionalMetadata: String? = nil, file: Data? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +uploads an image + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let petId = 987 // Int64 | ID of pet to update +let additionalMetadata = "additionalMetadata_example" // String | Additional data to pass to server (optional) +let file = Data([9, 8, 7]) // Data | file to upload (optional) + +// uploads an image +PetAPI.uploadFile(petId: petId, additionalMetadata: additionalMetadata, file: file).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **petId** | **Int64** | ID of pet to update | + **additionalMetadata** | **String** | Additional data to pass to server | [optional] + **file** | **Data** | file to upload | [optional] + +### Return type + +#### UploadFile + +```swift +public enum UploadFile { + case http200(value: ApiResponse?, raw: ClientResponse) + case http0(value: ApiResponse?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: multipart/form-data + - **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **uploadFileWithRequiredFile** +```swift + open class func uploadFileWithRequiredFile(petId: Int64, requiredFile: Data, additionalMetadata: String? = nil, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +uploads an image (required) + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let petId = 987 // Int64 | ID of pet to update +let requiredFile = Data([9, 8, 7]) // Data | file to upload +let additionalMetadata = "additionalMetadata_example" // String | Additional data to pass to server (optional) + +// uploads an image (required) +PetAPI.uploadFileWithRequiredFile(petId: petId, requiredFile: requiredFile, additionalMetadata: additionalMetadata).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **petId** | **Int64** | ID of pet to update | + **requiredFile** | **Data** | file to upload | + **additionalMetadata** | **String** | Additional data to pass to server | [optional] + +### Return type + +#### UploadFileWithRequiredFile + +```swift +public enum UploadFileWithRequiredFile { + case http200(value: ApiResponse?, raw: ClientResponse) + case http0(value: ApiResponse?, raw: ClientResponse) +} +``` + +### Authorization + +[petstore_auth](../README.md#petstore_auth) + +### HTTP request headers + + - **Content-Type**: multipart/form-data + - **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/ReadOnlyFirst.md b/samples/client/petstore/swift5/vaporLibrary/docs/ReadOnlyFirst.md new file mode 100644 index 000000000000..ed537b87598b --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/ReadOnlyFirst.md @@ -0,0 +1,11 @@ +# ReadOnlyFirst + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**bar** | **String** | | [optional] [readonly] +**baz** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Return.md b/samples/client/petstore/swift5/vaporLibrary/docs/Return.md new file mode 100644 index 000000000000..e310b15bb5b7 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Return.md @@ -0,0 +1,10 @@ +# Return + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**`return`** | **Int** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/SpecialModelName.md b/samples/client/petstore/swift5/vaporLibrary/docs/SpecialModelName.md new file mode 100644 index 000000000000..3ec27a38c2ac --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/SpecialModelName.md @@ -0,0 +1,10 @@ +# SpecialModelName + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**specialPropertyName** | **Int64** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/StoreAPI.md b/samples/client/petstore/swift5/vaporLibrary/docs/StoreAPI.md new file mode 100644 index 000000000000..d5d5e28833ff --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/StoreAPI.md @@ -0,0 +1,250 @@ +# StoreAPI + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**deleteOrder**](StoreAPI.md#deleteorder) | **DELETE** /store/order/{order_id} | Delete purchase order by ID +[**getInventory**](StoreAPI.md#getinventory) | **GET** /store/inventory | Returns pet inventories by status +[**getOrderById**](StoreAPI.md#getorderbyid) | **GET** /store/order/{order_id} | Find purchase order by ID +[**placeOrder**](StoreAPI.md#placeorder) | **POST** /store/order | Place an order for a pet + + +# **deleteOrder** +```swift + open class func deleteOrder(orderId: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Delete purchase order by ID + +For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let orderId = "orderId_example" // String | ID of the order that needs to be deleted + +// Delete purchase order by ID +StoreAPI.deleteOrder(orderId: orderId).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **orderId** | **String** | ID of the order that needs to be deleted | + +### Return type + +#### DeleteOrder + +```swift +public enum DeleteOrder { + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **getInventory** +```swift + open class func getInventory(headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Returns pet inventories by status + +Returns a map of status codes to quantities + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + + +// Returns pet inventories by status +StoreAPI.getInventory().whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters +This endpoint does not need any parameter. + +### Return type + +#### GetInventory + +```swift +public enum GetInventory { + case http200(value: [String: Int]?, raw: ClientResponse) + case http0(value: [String: Int]?, raw: ClientResponse) +} +``` + +### Authorization + +[api_key](../README.md#api_key) + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **getOrderById** +```swift + open class func getOrderById(orderId: Int64, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Find purchase order by ID + +For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let orderId = 987 // Int64 | ID of pet that needs to be fetched + +// Find purchase order by ID +StoreAPI.getOrderById(orderId: orderId).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **orderId** | **Int64** | ID of pet that needs to be fetched | + +### Return type + +#### GetOrderById + +```swift +public enum GetOrderById { + case http200(value: Order?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Order?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **placeOrder** +```swift + open class func placeOrder(body: Order, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Place an order for a pet + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = Order(id: 123, petId: 123, quantity: 123, shipDate: Date(), status: "status_example", complete: false) // Order | order placed for purchasing the pet + +// Place an order for a pet +StoreAPI.placeOrder(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**Order**](Order.md) | order placed for purchasing the pet | + +### Return type + +#### PlaceOrder + +```swift +public enum PlaceOrder { + case http200(value: Order?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http0(value: Order?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/StringBooleanMap.md b/samples/client/petstore/swift5/vaporLibrary/docs/StringBooleanMap.md new file mode 100644 index 000000000000..7abf11ec68b1 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/StringBooleanMap.md @@ -0,0 +1,9 @@ +# StringBooleanMap + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/Tag.md b/samples/client/petstore/swift5/vaporLibrary/docs/Tag.md new file mode 100644 index 000000000000..ff4ac8aa4519 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/Tag.md @@ -0,0 +1,11 @@ +# Tag + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **Int64** | | [optional] +**name** | **String** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderDefault.md b/samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderDefault.md new file mode 100644 index 000000000000..5161394bdc3e --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderDefault.md @@ -0,0 +1,14 @@ +# TypeHolderDefault + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**stringItem** | **String** | | [default to "what"] +**numberItem** | **Double** | | +**integerItem** | **Int** | | +**boolItem** | **Bool** | | [default to true] +**arrayItem** | **[Int]** | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderExample.md b/samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderExample.md new file mode 100644 index 000000000000..c0530dc0e5b6 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/TypeHolderExample.md @@ -0,0 +1,15 @@ +# TypeHolderExample + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**stringItem** | **String** | | +**numberItem** | **Double** | | +**floatItem** | **Float** | | +**integerItem** | **Int** | | +**boolItem** | **Bool** | | +**arrayItem** | **[Int]** | | + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/User.md b/samples/client/petstore/swift5/vaporLibrary/docs/User.md new file mode 100644 index 000000000000..5a439de0ff95 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/User.md @@ -0,0 +1,17 @@ +# User + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**id** | **Int64** | | [optional] +**username** | **String** | | [optional] +**firstName** | **String** | | [optional] +**lastName** | **String** | | [optional] +**email** | **String** | | [optional] +**password** | **String** | | [optional] +**phone** | **String** | | [optional] +**userStatus** | **Int** | User Status | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/UserAPI.md b/samples/client/petstore/swift5/vaporLibrary/docs/UserAPI.md new file mode 100644 index 000000000000..1d6e94e04315 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/UserAPI.md @@ -0,0 +1,480 @@ +# UserAPI + +All URIs are relative to *http://petstore.swagger.io:80/v2* + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**createUser**](UserAPI.md#createuser) | **POST** /user | Create user +[**createUsersWithArrayInput**](UserAPI.md#createuserswitharrayinput) | **POST** /user/createWithArray | Creates list of users with given input array +[**createUsersWithListInput**](UserAPI.md#createuserswithlistinput) | **POST** /user/createWithList | Creates list of users with given input array +[**deleteUser**](UserAPI.md#deleteuser) | **DELETE** /user/{username} | Delete user +[**getUserByName**](UserAPI.md#getuserbyname) | **GET** /user/{username} | Get user by user name +[**loginUser**](UserAPI.md#loginuser) | **GET** /user/login | Logs user into the system +[**logoutUser**](UserAPI.md#logoutuser) | **GET** /user/logout | Logs out current logged in user session +[**updateUser**](UserAPI.md#updateuser) | **PUT** /user/{username} | Updated user + + +# **createUser** +```swift + open class func createUser(body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Create user + +This can only be done by the logged in user. + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123) // User | Created user object + +// Create user +UserAPI.createUser(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**User**](User.md) | Created user object | + +### Return type + +#### CreateUser + +```swift +public enum CreateUser { + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **createUsersWithArrayInput** +```swift + open class func createUsersWithArrayInput(body: [User], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Creates list of users with given input array + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = [User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123)] // [User] | List of user object + +// Creates list of users with given input array +UserAPI.createUsersWithArrayInput(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**[User]**](User.md) | List of user object | + +### Return type + +#### CreateUsersWithArrayInput + +```swift +public enum CreateUsersWithArrayInput { + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **createUsersWithListInput** +```swift + open class func createUsersWithListInput(body: [User], headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Creates list of users with given input array + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let body = [User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123)] // [User] | List of user object + +// Creates list of users with given input array +UserAPI.createUsersWithListInput(body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **body** | [**[User]**](User.md) | List of user object | + +### Return type + +#### CreateUsersWithListInput + +```swift +public enum CreateUsersWithListInput { + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **deleteUser** +```swift + open class func deleteUser(username: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Delete user + +This can only be done by the logged in user. + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let username = "username_example" // String | The name that needs to be deleted + +// Delete user +UserAPI.deleteUser(username: username).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **username** | **String** | The name that needs to be deleted | + +### Return type + +#### DeleteUser + +```swift +public enum DeleteUser { + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **getUserByName** +```swift + open class func getUserByName(username: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Get user by user name + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let username = "username_example" // String | The name that needs to be fetched. Use user1 for testing. + +// Get user by user name +UserAPI.getUserByName(username: username).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **username** | **String** | The name that needs to be fetched. Use user1 for testing. | + +### Return type + +#### GetUserByName + +```swift +public enum GetUserByName { + case http200(value: User?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: User?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **loginUser** +```swift + open class func loginUser(username: String, password: String, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Logs user into the system + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let username = "username_example" // String | The user name for login +let password = "password_example" // String | The password for login in clear text + +// Logs user into the system +UserAPI.loginUser(username: username, password: password).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http200(let value, let raw): + case .http400(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **username** | **String** | The user name for login | + **password** | **String** | The password for login in clear text | + +### Return type + +#### LoginUser + +```swift +public enum LoginUser { + case http200(value: String?, raw: ClientResponse) + case http400(value: Void?, raw: ClientResponse) + case http0(value: String?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/xml, application/json + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **logoutUser** +```swift + open class func logoutUser(headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Logs out current logged in user session + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + + +// Logs out current logged in user session +UserAPI.logoutUser().whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http0(let value, let raw): + } + } +} +``` + +### Parameters +This endpoint does not need any parameter. + +### Return type + +#### LogoutUser + +```swift +public enum LogoutUser { + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **updateUser** +```swift + open class func updateUser(username: String, body: User, headers: HTTPHeaders = PetstoreClient.customHeaders, beforeSend: (inout ClientRequest) throws -> () = { _ in }) -> EventLoopFuture +``` + +Updated user + +This can only be done by the logged in user. + +### Example +```swift +// The following code samples are still beta. For any issue, please report via http://github.com/OpenAPITools/openapi-generator/issues/new +import PetstoreClient + +let username = "username_example" // String | name that need to be deleted +let body = User(id: 123, username: "username_example", firstName: "firstName_example", lastName: "lastName_example", email: "email_example", password: "password_example", phone: "phone_example", userStatus: 123) // User | Updated user object + +// Updated user +UserAPI.updateUser(username: username, body: body).whenComplete { result in + switch result { + case .failure(let error): + // process error + case .success(let response): + switch response { + // process decoded response value or raw ClientResponse + case .http400(let value, let raw): + case .http404(let value, let raw): + case .http0(let value, let raw): + } + } +} +``` + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **username** | **String** | name that need to be deleted | + **body** | [**User**](User.md) | Updated user object | + +### Return type + +#### UpdateUser + +```swift +public enum UpdateUser { + case http400(value: Void?, raw: ClientResponse) + case http404(value: Void?, raw: ClientResponse) + case http0(value: Void?, raw: ClientResponse) +} +``` + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: Not defined + +[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/swift5/vaporLibrary/docs/XmlItem.md b/samples/client/petstore/swift5/vaporLibrary/docs/XmlItem.md new file mode 100644 index 000000000000..1a4eb4e9c836 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/docs/XmlItem.md @@ -0,0 +1,38 @@ +# XmlItem + +## Properties +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**attributeString** | **String** | | [optional] +**attributeNumber** | **Double** | | [optional] +**attributeInteger** | **Int** | | [optional] +**attributeBoolean** | **Bool** | | [optional] +**wrappedArray** | **[Int]** | | [optional] +**nameString** | **String** | | [optional] +**nameNumber** | **Double** | | [optional] +**nameInteger** | **Int** | | [optional] +**nameBoolean** | **Bool** | | [optional] +**nameArray** | **[Int]** | | [optional] +**nameWrappedArray** | **[Int]** | | [optional] +**prefixString** | **String** | | [optional] +**prefixNumber** | **Double** | | [optional] +**prefixInteger** | **Int** | | [optional] +**prefixBoolean** | **Bool** | | [optional] +**prefixArray** | **[Int]** | | [optional] +**prefixWrappedArray** | **[Int]** | | [optional] +**namespaceString** | **String** | | [optional] +**namespaceNumber** | **Double** | | [optional] +**namespaceInteger** | **Int** | | [optional] +**namespaceBoolean** | **Bool** | | [optional] +**namespaceArray** | **[Int]** | | [optional] +**namespaceWrappedArray** | **[Int]** | | [optional] +**prefixNsString** | **String** | | [optional] +**prefixNsNumber** | **Double** | | [optional] +**prefixNsInteger** | **Int** | | [optional] +**prefixNsBoolean** | **Bool** | | [optional] +**prefixNsArray** | **[Int]** | | [optional] +**prefixNsWrappedArray** | **[Int]** | | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + + diff --git a/samples/client/petstore/swift5/vaporLibrary/pom.xml b/samples/client/petstore/swift5/vaporLibrary/pom.xml new file mode 100644 index 000000000000..c1b201eb3b4c --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/pom.xml @@ -0,0 +1,43 @@ + + 4.0.0 + io.swagger + Swift5PetstoreClientTests + pom + 1.0-SNAPSHOT + Swift5 Swagger Petstore Client + + + + maven-dependency-plugin + + + package + + copy-dependencies + + + ${project.build.directory} + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + xcodebuild-test + integration-test + + exec + + + ./run_spmbuild.sh + + + + + + + diff --git a/samples/client/petstore/swift5/vaporLibrary/run_spmbuild.sh b/samples/client/petstore/swift5/vaporLibrary/run_spmbuild.sh new file mode 100755 index 000000000000..1a9f585ad054 --- /dev/null +++ b/samples/client/petstore/swift5/vaporLibrary/run_spmbuild.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +swift build && exit ${PIPESTATUS[0]} diff --git a/samples/client/petstore/swift5/x-swift-hashable/Package.resolved b/samples/client/petstore/swift5/x-swift-hashable/Package.resolved index 85bb93ced12f..d384b276b4bc 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/Package.resolved +++ b/samples/client/petstore/swift5/x-swift-hashable/Package.resolved @@ -6,8 +6,8 @@ "repositoryURL": "https://github.com/Flight-School/AnyCodable", "state": { "branch": null, - "revision": "38b05fc9f86501ef8018aa90cf3d83bd97f74067", - "version": "0.4.0" + "revision": "876d162385e9862ae8b3c8d65dc301312b040005", + "version": "0.6.0" } } ] diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs.swift index 01bc6ff0d8d0..941c61b713a0 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs.swift @@ -11,8 +11,8 @@ public typealias PetstoreClientAPI = PetstoreClient open class PetstoreClient { public static var basePath = "http://petstore.swagger.io:80/v2" - public static var credential: URLCredential? public static var customHeaders: [String: String] = [:] + public static var credential: URLCredential? public static var requestBuilderFactory: RequestBuilderFactory = URLSessionRequestBuilderFactory() public static var apiResponseQueue: DispatchQueue = .main } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift index 542fb6f69ba8..7d09ab30c12a 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/AnotherFakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class AnotherFakeAPI { + /** To test special tags @@ -50,5 +54,4 @@ open class AnotherFakeAPI { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift index 9b75edc92ee6..5480213e38da 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeAPI { + /** - parameter body: (body) Input boolean as post body (optional) @@ -680,5 +684,4 @@ open class FakeAPI { return requestBuilder.init(method: "GET", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift index fd7d845d3406..9683e0ce5b1f 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/FakeClassnameTags123API.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class FakeClassnameTags123API { + /** To test class name in snake case @@ -53,5 +57,4 @@ open class FakeClassnameTags123API { return requestBuilder.init(method: "PATCH", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift index d7d5bdfa2eaa..8cbd15364b66 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/PetAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class PetAPI { + /** Add a new pet to the store @@ -479,5 +483,4 @@ open class PetAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift index c80d4286b536..a83e954ae6a9 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/StoreAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class StoreAPI { + /** Delete purchase order by ID @@ -185,5 +189,4 @@ open class StoreAPI { return requestBuilder.init(method: "POST", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift index 542dc212bd1b..dbff6ade41cc 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/APIs/UserAPI.swift @@ -6,8 +6,12 @@ // import Foundation +#if canImport(AnyCodable) +import AnyCodable +#endif open class UserAPI { + /** Create user @@ -362,5 +366,4 @@ open class UserAPI { return requestBuilder.init(method: "PUT", URLString: (urlComponents?.string ?? URLString), parameters: parameters, headers: headerParameters) } - } diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Configuration.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Configuration.swift index 18edabbed782..8fb053318894 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Configuration.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Configuration.swift @@ -7,6 +7,7 @@ import Foundation open class Configuration { + // This value is used to configure the date formatter that is used to serialize dates into JSON format. // You must set it prior to encoding any dates, and it will only be read once. @available(*, unavailable, message: "To set a different date format, use CodableHelper.dateFormatter instead.") diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift index 9080af3e9608..e760b2005634 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/AdditionalPropertiesClass.swift @@ -33,3 +33,4 @@ public struct AdditionalPropertiesClass: Codable { try container.encodeIfPresent(mapMapString, forKey: .mapMapString) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift index c26cc3b6a8d7..fb1a2df615d3 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Animal.swift @@ -33,3 +33,4 @@ public struct Animal: Codable { try container.encodeIfPresent(color, forKey: .color) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift index 7d81a45adbed..4ee097de054b 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ApiResponse.swift @@ -37,3 +37,4 @@ public struct ApiResponse: Codable { try container.encodeIfPresent(message, forKey: .message) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift index d25598464fbe..6f3ceb17753d 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfArrayOfNumberOnly: Codable { try container.encodeIfPresent(arrayArrayNumber, forKey: .arrayArrayNumber) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift index 1d28ec680cc5..eb9892beb2b8 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayOfNumberOnly.swift @@ -29,3 +29,4 @@ public struct ArrayOfNumberOnly: Codable { try container.encodeIfPresent(arrayNumber, forKey: .arrayNumber) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift index 6f1028d15077..76aad66ec825 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ArrayTest.swift @@ -37,3 +37,4 @@ public struct ArrayTest: Codable { try container.encodeIfPresent(arrayArrayOfModel, forKey: .arrayArrayOfModel) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift index 74ec197ecda2..d06bb38d2d1e 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Capitalization.swift @@ -50,3 +50,4 @@ public struct Capitalization: Codable { try container.encodeIfPresent(ATT_NAME, forKey: .ATT_NAME) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift index 8645c52b44f7..7a394aca88db 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Cat.swift @@ -37,3 +37,4 @@ public struct Cat: Codable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift index ed986d32cc6e..679eda93b89a 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/CatAllOf.swift @@ -29,3 +29,4 @@ public struct CatAllOf: Codable { try container.encodeIfPresent(declawed, forKey: .declawed) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Category.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Category.swift index 398da60aa73b..89016ca353d8 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Category.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Category.swift @@ -33,3 +33,4 @@ public struct Category: Codable, Hashable { try container.encode(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift index c38e0db828f6..bc4e56c01ae1 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ClassModel.swift @@ -30,3 +30,4 @@ public struct ClassModel: Codable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Client.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Client.swift index 170939891b6a..f1c50e5b8b9a 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Client.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Client.swift @@ -29,3 +29,4 @@ public struct Client: Codable { try container.encodeIfPresent(client, forKey: .client) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift index 57ed7a20a3c1..55c387c28ae1 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Dog.swift @@ -37,3 +37,4 @@ public struct Dog: Codable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift index 5be7f8b08ca1..b86ba8ccf8f4 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/DogAllOf.swift @@ -29,3 +29,4 @@ public struct DogAllOf: Codable { try container.encodeIfPresent(breed, forKey: .breed) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift index 67c2e914a2ec..edd583c8a292 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumArrays.swift @@ -41,3 +41,4 @@ public struct EnumArrays: Codable { try container.encodeIfPresent(arrayEnum, forKey: .arrayEnum) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift index a70a595f214b..4ae75032cfc9 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/EnumTest.swift @@ -63,3 +63,4 @@ public struct EnumTest: Codable { try container.encodeIfPresent(outerEnum, forKey: .outerEnum) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/File.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/File.swift index 69e3da33b3f6..d6513e0df749 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/File.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/File.swift @@ -31,3 +31,4 @@ public struct File: Codable { try container.encodeIfPresent(sourceURI, forKey: .sourceURI) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift index 68387be7c4ca..d707e2ff2e24 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FileSchemaTestClass.swift @@ -33,3 +33,4 @@ public struct FileSchemaTestClass: Codable { try container.encodeIfPresent(files, forKey: .files) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift index fcbb5c3f7be6..cbf0050081e7 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/FormatTest.swift @@ -77,3 +77,4 @@ public struct FormatTest: Codable { try container.encode(password, forKey: .password) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift index 42fe810e04a1..9185cd673a86 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/HasOnlyReadOnly.swift @@ -33,3 +33,4 @@ public struct HasOnlyReadOnly: Codable { try container.encodeIfPresent(foo, forKey: .foo) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/List.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/List.swift index e5c7ec7f3d63..6568fe28f34e 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/List.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/List.swift @@ -29,3 +29,4 @@ public struct List: Codable { try container.encodeIfPresent(_123list, forKey: ._123list) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift index c1d8412cda0c..eb9634803b33 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MapTest.swift @@ -45,3 +45,4 @@ public struct MapTest: Codable { try container.encodeIfPresent(indirectMap, forKey: .indirectMap) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift index e2b084551587..4d171a58c804 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/MixedPropertiesAndAdditionalPropertiesClass.swift @@ -37,3 +37,4 @@ public struct MixedPropertiesAndAdditionalPropertiesClass: Codable { try container.encodeIfPresent(map, forKey: .map) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift index 3e02e71a66fc..24a07e862b87 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Model200Response.swift @@ -34,3 +34,4 @@ public struct Model200Response: Codable { try container.encodeIfPresent(_class, forKey: ._class) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Name.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Name.swift index 9cef79be16ce..15308075d9a6 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Name.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Name.swift @@ -42,3 +42,4 @@ public struct Name: Codable { try container.encodeIfPresent(_123number, forKey: ._123number) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift index 9da0be0af2bf..555b1beda1d3 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/NumberOnly.swift @@ -29,3 +29,4 @@ public struct NumberOnly: Codable { try container.encodeIfPresent(justNumber, forKey: .justNumber) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Order.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Order.swift index adde2ac76243..be133bc42ad1 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Order.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Order.swift @@ -55,3 +55,4 @@ public struct Order: Codable { try container.encodeIfPresent(complete, forKey: .complete) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift index 0a520ef9ae79..6e555ae9e1e7 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/OuterComposite.swift @@ -37,3 +37,4 @@ public struct OuterComposite: Codable { try container.encodeIfPresent(myBoolean, forKey: .myBoolean) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift index a87ab825ea0b..ddd1186b8910 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Pet.swift @@ -55,3 +55,4 @@ public struct Pet: Codable, Hashable { try container.encodeIfPresent(status, forKey: .status) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift index eeaf9625e38a..b4cd35ad2964 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/ReadOnlyFirst.swift @@ -33,3 +33,4 @@ public struct ReadOnlyFirst: Codable { try container.encodeIfPresent(baz, forKey: .baz) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Return.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Return.swift index b1abd5c64859..f12d1c17fdc5 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Return.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Return.swift @@ -30,3 +30,4 @@ public struct Return: Codable { try container.encodeIfPresent(_return, forKey: ._return) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift index 65d9147f3e62..f797e4064530 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/SpecialModelName.swift @@ -29,3 +29,4 @@ public struct SpecialModelName: Codable { try container.encodeIfPresent(specialPropertyName, forKey: .specialPropertyName) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift index 9494292aaef9..1ef2bd41c793 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/StringBooleanMap.swift @@ -49,3 +49,4 @@ public struct StringBooleanMap: Codable { additionalProperties = try additionalPropertiesContainer.decodeMap(Bool.self, excludedKeys: nonAdditionalPropertyKeys) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift index cd5acc827db7..07b826264f36 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/Tag.swift @@ -33,3 +33,4 @@ public struct Tag: Codable, Hashable { try container.encodeIfPresent(name, forKey: .name) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift index ac7d4626df75..dcf87b413ab0 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderDefault.swift @@ -45,3 +45,4 @@ public struct TypeHolderDefault: Codable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift index 2de070c49279..634f2d551682 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/TypeHolderExample.swift @@ -45,3 +45,4 @@ public struct TypeHolderExample: Codable { try container.encode(arrayItem, forKey: .arrayItem) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/User.swift b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/User.swift index c25aec1dc049..bad75dea179f 100644 --- a/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/User.swift +++ b/samples/client/petstore/swift5/x-swift-hashable/PetstoreClient/Classes/OpenAPIs/Models/User.swift @@ -58,3 +58,4 @@ public struct User: Codable { try container.encodeIfPresent(userStatus, forKey: .userStatus) } } + diff --git a/samples/client/petstore/swift5/x-swift-hashable/pom.xml b/samples/client/petstore/swift5/x-swift-hashable/pom.xml new file mode 100644 index 000000000000..c1b201eb3b4c --- /dev/null +++ b/samples/client/petstore/swift5/x-swift-hashable/pom.xml @@ -0,0 +1,43 @@ + + 4.0.0 + io.swagger + Swift5PetstoreClientTests + pom + 1.0-SNAPSHOT + Swift5 Swagger Petstore Client + + + + maven-dependency-plugin + + + package + + copy-dependencies + + + ${project.build.directory} + + + + + + org.codehaus.mojo + exec-maven-plugin + 1.2.1 + + + xcodebuild-test + integration-test + + exec + + + ./run_spmbuild.sh + + + + + + + diff --git a/samples/client/petstore/swift5/x-swift-hashable/run_spmbuild.sh b/samples/client/petstore/swift5/x-swift-hashable/run_spmbuild.sh new file mode 100755 index 000000000000..1a9f585ad054 --- /dev/null +++ b/samples/client/petstore/swift5/x-swift-hashable/run_spmbuild.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +swift build && exit ${PIPESTATUS[0]} From fdbf02764d144ff1469ce3905dff5b19352b6447 Mon Sep 17 00:00:00 2001 From: Peter Leibiger Date: Mon, 7 Jun 2021 03:49:59 +0200 Subject: [PATCH 10/21] [dart][dart-dio] Add support for query collection parameter format (#9635) * [dart][dart-dio] Add support for query collection parameter format * add support for collectionFormat in query parameters and www-url-encoded content * add tests * remove empty query parameter maps from generated code * closes #6681 * closes #9522 * closes #8271 (the last remaining parts) * Fix formatting --- .../languages/DartDioNextClientCodegen.java | 4 +- .../resources/dart/libraries/dio/api.mustache | 18 ++- .../dart/libraries/dio/api_util.mustache | 28 ---- .../built_value/api_util.mustache | 75 +++++++++++ .../built_value/query_param.mustache | 1 + .../built_value/serialize.mustache | 13 +- .../lib/src/api/another_fake_api.dart | 5 - .../lib/src/api/default_api.dart | 4 - .../lib/src/api/fake_api.dart | 125 +++++------------- .../src/api/fake_classname_tags123_api.dart | 5 - .../lib/src/api/pet_api.dart | 41 +----- .../lib/src/api/store_api.dart | 17 --- .../lib/src/api/user_api.dart | 37 +----- .../lib/src/api_util.dart | 49 ++++++- .../test/api/fake_api_test.dart | 21 ++- .../test/api/pet_api_test.dart | 12 +- .../test/matcher/list_param_matcher.dart | 20 +++ 17 files changed, 233 insertions(+), 242 deletions(-) delete mode 100644 modules/openapi-generator/src/main/resources/dart/libraries/dio/api_util.mustache create mode 100644 modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/api_util.mustache create mode 100644 modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/query_param.mustache create mode 100644 samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/matcher/list_param_matcher.dart diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioNextClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioNextClientCodegen.java index 6b7beaeaea2e..6557d7cad3e7 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioNextClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/DartDioNextClientCodegen.java @@ -153,7 +153,6 @@ public void processOpts() { final String srcFolder = libFolder + File.separator + "src"; supportingFiles.add(new SupportingFile("api_client.mustache", srcFolder, "api.dart")); - supportingFiles.add(new SupportingFile("api_util.mustache", srcFolder, "api_util.dart")); final String authFolder = srcFolder + File.separator + "auth"; supportingFiles.add(new SupportingFile("auth/api_key_auth.mustache", authFolder, "api_key_auth.dart")); @@ -177,6 +176,7 @@ private void configureSerializationLibrary(String srcFolder) { private void configureSerializationLibraryBuiltValue(String srcFolder) { supportingFiles.add(new SupportingFile("serialization/built_value/serializers.mustache", srcFolder, "serializers.dart")); + supportingFiles.add(new SupportingFile("serialization/built_value/api_util.mustache", srcFolder, "api_util.dart")); typeMapping.put("Array", "BuiltList"); typeMapping.put("array", "BuiltList"); @@ -339,7 +339,7 @@ public Map postProcessOperationsWithModels(Map o } resultImports.addAll(rewriteImports(op.imports, false)); - if (op.getHasFormParams()) { + if (op.getHasFormParams() || op.getHasQueryParams()) { resultImports.add("package:" + pubName + "/src/api_util.dart"); } diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/api.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/api.mustache index 5182266d24b9..cdfe8be4dd8f 100644 --- a/modules/openapi-generator/src/main/resources/dart/libraries/dio/api.mustache +++ b/modules/openapi-generator/src/main/resources/dart/libraries/dio/api.mustache @@ -83,14 +83,13 @@ class {{classname}} { },{{#hasConsumes}} contentType: '{{#prioritizedContentTypes}}{{#-first}}{{{mediaType}}}{{/-first}}{{/prioritizedContentTypes}}',{{/hasConsumes}} validateStatus: validateStatus, - ); + );{{#hasQueryParams}} final _queryParameters = { {{#queryParams}} - {{^required}}{{^isNullable}}if ({{{paramName}}} != null) {{/isNullable}}{{/required}}r'{{baseName}}': {{paramName}}, + {{^required}}{{^isNullable}}if ({{{paramName}}} != null) {{/isNullable}}{{/required}}r'{{baseName}}': {{#useBuiltValue}}{{>serialization/built_value/query_param}}{{/useBuiltValue}}, {{/queryParams}} - }; - {{#hasBodyOrFormParams}} + };{{/hasQueryParams}}{{#hasBodyOrFormParams}} dynamic _bodyData; @@ -100,20 +99,19 @@ class {{classname}} { throw DioError( requestOptions: _options.compose( _dio.options, - _path, - queryParameters: _queryParameters, + _path,{{#hasQueryParams}} + queryParameters: _queryParameters,{{/hasQueryParams}} ), type: DioErrorType.other, error: error, )..stackTrace = stackTrace; - } - {{/hasBodyOrFormParams}} + }{{/hasBodyOrFormParams}} final _response = await _dio.request( _path,{{#hasBodyOrFormParams}} data: _bodyData,{{/hasBodyOrFormParams}} - options: _options, - queryParameters: _queryParameters, + options: _options,{{#hasQueryParams}} + queryParameters: _queryParameters,{{/hasQueryParams}} cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_util.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_util.mustache deleted file mode 100644 index 4cdc6bcea3c5..000000000000 --- a/modules/openapi-generator/src/main/resources/dart/libraries/dio/api_util.mustache +++ /dev/null @@ -1,28 +0,0 @@ -{{>header}} -import 'dart:convert'; - -import 'package:built_collection/built_collection.dart'; -import 'package:built_value/serializer.dart'; - -/// Format the given form parameter object into something that Dio can handle. -/// Returns primitive or String. -/// Returns List/Map if the value is BuildList/BuiltMap. -dynamic encodeFormParameter(Serializers serializers, dynamic value, FullType type) { - if (value == null) { - return ''; - } - if (value is String || value is num || value is bool) { - return value; - } - final serialized = serializers.serialize( - value as Object, - specifiedType: type, - ); - if (serialized is String) { - return serialized; - } - if (value is BuiltList || value is BuiltMap) { - return serialized; - } - return json.encode(serialized); -} diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/api_util.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/api_util.mustache new file mode 100644 index 000000000000..fb5ab08aeda0 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/api_util.mustache @@ -0,0 +1,75 @@ +{{>header}} +import 'dart:convert'; +import 'dart:typed_data'; + +import 'package:built_collection/built_collection.dart'; +import 'package:built_value/serializer.dart'; +import 'package:dio/dio.dart'; +import 'package:dio/src/parameter.dart'; + +/// Format the given form parameter object into something that Dio can handle. +/// Returns primitive or String. +/// Returns List/Map if the value is BuildList/BuiltMap. +dynamic encodeFormParameter(Serializers serializers, dynamic value, FullType type) { + if (value == null) { + return ''; + } + if (value is String || value is num || value is bool) { + return value; + } + final serialized = serializers.serialize( + value as Object, + specifiedType: type, + ); + if (serialized is String) { + return serialized; + } + if (value is BuiltList || value is BuiltSet || value is BuiltMap) { + return serialized; + } + return json.encode(serialized); +} + +dynamic encodeQueryParameter( + Serializers serializers, + dynamic value, + FullType type, +) { + if (value == null) { + return ''; + } + if (value is String || value is num || value is bool) { + return value; + } + if (value is Uint8List) { + // Currently not sure how to serialize this + return value; + } + final serialized = serializers.serialize( + value as Object, + specifiedType: type, + ); + if (serialized == null) { + return ''; + } + if (serialized is String) { + return serialized; + } + return serialized; +} + +ListParam encodeCollectionQueryParameter( + Serializers serializers, + dynamic value, + FullType type, { + ListFormat format = ListFormat.multi, +}) { + final serialized = serializers.serialize( + value as Object, + specifiedType: type, + ); + if (value is BuiltList || value is BuiltSet) { + return ListParam(List.of((serialized as Iterable).cast()), format); + } + throw ArgumentError('Invalid value passed to encodeCollectionQueryParameter'); +} diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/query_param.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/query_param.mustache new file mode 100644 index 000000000000..3a27e77225e2 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/query_param.mustache @@ -0,0 +1 @@ +{{#isContainer}}encodeCollectionQueryParameter<{{{baseType}}}>{{/isContainer}}{{^isContainer}}encodeQueryParameter{{/isContainer}}(_serializers, {{{paramName}}}, const FullType({{^isContainer}}{{{dataType}}}){{/isContainer}}{{#isContainer}}Built{{#isMap}}Map{{/isMap}}{{#isArray}}{{#uniqueItems}}Set{{/uniqueItems}}{{^uniqueItems}}List{{/uniqueItems}}{{/isArray}}, [{{#isMap}}FullType(String), {{/isMap}}FullType({{{baseType}}})]), format: ListFormat.{{collectionFormat}}{{/isContainer}}) \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/serialize.mustache b/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/serialize.mustache index 03d38c93878d..60dcd1773ba0 100644 --- a/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/serialize.mustache +++ b/modules/openapi-generator/src/main/resources/dart/libraries/dio/serialization/built_value/serialize.mustache @@ -1,9 +1,18 @@ {{#hasFormParams}} - _bodyData = {{#isMultipart}}FormData.fromMap({{/isMultipart}}{ + {{#isMultipart}} + _bodyData = FormData.fromMap({ {{#formParams}} {{^required}}{{^isNullable}}if ({{{paramName}}} != null) {{/isNullable}}{{/required}}r'{{{baseName}}}': {{#isFile}}{{{paramName}}}{{/isFile}}{{^isFile}}encodeFormParameter(_serializers, {{{paramName}}}, const FullType({{^isContainer}}{{{baseType}}}{{/isContainer}}{{#isContainer}}Built{{#isMap}}Map{{/isMap}}{{#isArray}}{{#uniqueItems}}Set{{/uniqueItems}}{{^uniqueItems}}List{{/uniqueItems}}{{/isArray}}, [{{#isMap}}FullType(String), {{/isMap}}FullType({{{baseType}}})]{{/isContainer}})){{/isFile}}, {{/formParams}} - }{{#isMultipart}}){{/isMultipart}}; + }); + {{/isMultipart}} + {{^isMultipart}} + _bodyData = { + {{#formParams}} + {{^required}}{{^isNullable}}if ({{{paramName}}} != null) {{/isNullable}}{{/required}}r'{{{baseName}}}': {{>serialization/built_value/query_param}}, + {{/formParams}} + }; + {{/isMultipart}} {{/hasFormParams}} {{#bodyParam}} {{#isPrimitiveType}} diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/another_fake_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/another_fake_api.dart index 4d0e1366d063..45709153344b 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/another_fake_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/another_fake_api.dart @@ -54,9 +54,6 @@ class AnotherFakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -68,7 +65,6 @@ class AnotherFakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -79,7 +75,6 @@ class AnotherFakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/default_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/default_api.dart index 3a46c9a2048e..7ad2d45db758 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/default_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/default_api.dart @@ -51,13 +51,9 @@ class DefaultApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_api.dart index 20e4483e544b..fbc60334177c 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_api.dart @@ -61,13 +61,9 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -151,7 +147,7 @@ class FakeApi { ); final _queryParameters = { - if (query1 != null) r'query_1': query1, + if (query1 != null) r'query_1': encodeQueryParameter(_serializers, query1, const FullType(String)), }; dynamic _bodyData; @@ -222,9 +218,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -235,7 +228,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -246,7 +238,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -315,9 +306,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -329,7 +317,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -340,7 +327,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -413,9 +399,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -426,7 +409,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -437,7 +419,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -506,9 +487,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -519,7 +497,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -530,7 +507,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -599,9 +575,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -613,7 +586,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -624,7 +596,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -697,9 +668,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -710,7 +678,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -721,7 +688,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -767,9 +733,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -781,7 +744,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -792,7 +754,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -841,7 +802,7 @@ class FakeApi { ); final _queryParameters = { - r'query': query, + r'query': encodeQueryParameter(_serializers, query, const FullType(String)), }; dynamic _bodyData; @@ -912,9 +873,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -926,7 +884,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -937,7 +894,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -1041,27 +997,24 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { _bodyData = { - if (integer != null) r'integer': encodeFormParameter(_serializers, integer, const FullType(int)), - if (int32 != null) r'int32': encodeFormParameter(_serializers, int32, const FullType(int)), - if (int64 != null) r'int64': encodeFormParameter(_serializers, int64, const FullType(int)), - r'number': encodeFormParameter(_serializers, number, const FullType(num)), - if (float != null) r'float': encodeFormParameter(_serializers, float, const FullType(double)), - r'double': encodeFormParameter(_serializers, double_, const FullType(double)), - if (string != null) r'string': encodeFormParameter(_serializers, string, const FullType(String)), - r'pattern_without_delimiter': encodeFormParameter(_serializers, patternWithoutDelimiter, const FullType(String)), - r'byte': encodeFormParameter(_serializers, byte, const FullType(String)), - if (binary != null) r'binary': binary, - if (date != null) r'date': encodeFormParameter(_serializers, date, const FullType(Date)), - if (dateTime != null) r'dateTime': encodeFormParameter(_serializers, dateTime, const FullType(DateTime)), - if (password != null) r'password': encodeFormParameter(_serializers, password, const FullType(String)), - if (callback != null) r'callback': encodeFormParameter(_serializers, callback, const FullType(String)), + if (integer != null) r'integer': encodeQueryParameter(_serializers, integer, const FullType(int)), + if (int32 != null) r'int32': encodeQueryParameter(_serializers, int32, const FullType(int)), + if (int64 != null) r'int64': encodeQueryParameter(_serializers, int64, const FullType(int)), + r'number': encodeQueryParameter(_serializers, number, const FullType(num)), + if (float != null) r'float': encodeQueryParameter(_serializers, float, const FullType(double)), + r'double': encodeQueryParameter(_serializers, double_, const FullType(double)), + if (string != null) r'string': encodeQueryParameter(_serializers, string, const FullType(String)), + r'pattern_without_delimiter': encodeQueryParameter(_serializers, patternWithoutDelimiter, const FullType(String)), + r'byte': encodeQueryParameter(_serializers, byte, const FullType(String)), + if (binary != null) r'binary': encodeQueryParameter(_serializers, binary, const FullType(Uint8List)), + if (date != null) r'date': encodeQueryParameter(_serializers, date, const FullType(Date)), + if (dateTime != null) r'dateTime': encodeQueryParameter(_serializers, dateTime, const FullType(DateTime)), + if (password != null) r'password': encodeQueryParameter(_serializers, password, const FullType(String)), + if (callback != null) r'callback': encodeQueryParameter(_serializers, callback, const FullType(String)), }; } catch(error, stackTrace) { @@ -1069,7 +1022,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -1080,7 +1032,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -1143,18 +1094,18 @@ class FakeApi { ); final _queryParameters = { - if (enumQueryStringArray != null) r'enum_query_string_array': enumQueryStringArray, - if (enumQueryString != null) r'enum_query_string': enumQueryString, - if (enumQueryInteger != null) r'enum_query_integer': enumQueryInteger, - if (enumQueryDouble != null) r'enum_query_double': enumQueryDouble, + if (enumQueryStringArray != null) r'enum_query_string_array': encodeCollectionQueryParameter(_serializers, enumQueryStringArray, const FullType(BuiltList, [FullType(String)]), format: ListFormat.multi), + if (enumQueryString != null) r'enum_query_string': encodeQueryParameter(_serializers, enumQueryString, const FullType(String)), + if (enumQueryInteger != null) r'enum_query_integer': encodeQueryParameter(_serializers, enumQueryInteger, const FullType(int)), + if (enumQueryDouble != null) r'enum_query_double': encodeQueryParameter(_serializers, enumQueryDouble, const FullType(double)), }; dynamic _bodyData; try { _bodyData = { - if (enumFormStringArray != null) r'enum_form_string_array': encodeFormParameter(_serializers, enumFormStringArray, const FullType(BuiltList, [FullType(String)])), - if (enumFormString != null) r'enum_form_string': encodeFormParameter(_serializers, enumFormString, const FullType(String)), + if (enumFormStringArray != null) r'enum_form_string_array': encodeCollectionQueryParameter(_serializers, enumFormStringArray, const FullType(BuiltList, [FullType(String)]), format: ListFormat.csv), + if (enumFormString != null) r'enum_form_string': encodeQueryParameter(_serializers, enumFormString, const FullType(String)), }; } catch(error, stackTrace) { @@ -1236,10 +1187,10 @@ class FakeApi { ); final _queryParameters = { - r'required_string_group': requiredStringGroup, - r'required_int64_group': requiredInt64Group, - if (stringGroup != null) r'string_group': stringGroup, - if (int64Group != null) r'int64_group': int64Group, + r'required_string_group': encodeQueryParameter(_serializers, requiredStringGroup, const FullType(int)), + r'required_int64_group': encodeQueryParameter(_serializers, requiredInt64Group, const FullType(int)), + if (stringGroup != null) r'string_group': encodeQueryParameter(_serializers, stringGroup, const FullType(int)), + if (int64Group != null) r'int64_group': encodeQueryParameter(_serializers, int64Group, const FullType(int)), }; final _response = await _dio.request( @@ -1291,9 +1242,6 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -1305,7 +1253,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -1316,7 +1263,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -1364,15 +1310,12 @@ class FakeApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { _bodyData = { - r'param': encodeFormParameter(_serializers, param, const FullType(String)), - r'param2': encodeFormParameter(_serializers, param2, const FullType(String)), + r'param': encodeQueryParameter(_serializers, param, const FullType(String)), + r'param2': encodeQueryParameter(_serializers, param2, const FullType(String)), }; } catch(error, stackTrace) { @@ -1380,7 +1323,6 @@ class FakeApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -1391,7 +1333,6 @@ class FakeApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -1445,11 +1386,11 @@ class FakeApi { ); final _queryParameters = { - r'pipe': pipe, - r'ioutil': ioutil, - r'http': http, - r'url': url, - r'context': context, + r'pipe': encodeCollectionQueryParameter(_serializers, pipe, const FullType(BuiltList, [FullType(String)]), format: ListFormat.pipes), + r'ioutil': encodeCollectionQueryParameter(_serializers, ioutil, const FullType(BuiltList, [FullType(String)]), format: ListFormat.csv), + r'http': encodeCollectionQueryParameter(_serializers, http, const FullType(BuiltList, [FullType(String)]), format: ListFormat.ssv), + r'url': encodeCollectionQueryParameter(_serializers, url, const FullType(BuiltList, [FullType(String)]), format: ListFormat.csv), + r'context': encodeCollectionQueryParameter(_serializers, context, const FullType(BuiltList, [FullType(String)]), format: ListFormat.multi), }; final _response = await _dio.request( diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_classname_tags123_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_classname_tags123_api.dart index e48c38c96ba6..96329ea11f23 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_classname_tags123_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/fake_classname_tags123_api.dart @@ -61,9 +61,6 @@ class FakeClassnameTags123Api { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -75,7 +72,6 @@ class FakeClassnameTags123Api { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -86,7 +82,6 @@ class FakeClassnameTags123Api { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/pet_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/pet_api.dart index be1d9d27924d..1dedc0456eb2 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/pet_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/pet_api.dart @@ -62,9 +62,6 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -76,7 +73,6 @@ class PetApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -87,7 +83,6 @@ class PetApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -140,13 +135,9 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -197,7 +188,7 @@ class PetApi { ); final _queryParameters = { - r'status': status, + r'status': encodeCollectionQueryParameter(_serializers, status, const FullType(BuiltList, [FullType(String)]), format: ListFormat.csv), }; final _response = await _dio.request( @@ -282,7 +273,7 @@ class PetApi { ); final _queryParameters = { - r'tags': tags, + r'tags': encodeCollectionQueryParameter(_serializers, tags, const FullType(BuiltSet, [FullType(String)]), format: ListFormat.csv), }; final _response = await _dio.request( @@ -367,13 +358,9 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -451,9 +438,6 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -465,7 +449,6 @@ class PetApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -476,7 +459,6 @@ class PetApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -531,15 +513,12 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { _bodyData = { - if (name != null) r'name': encodeFormParameter(_serializers, name, const FullType(String)), - if (status != null) r'status': encodeFormParameter(_serializers, status, const FullType(String)), + if (name != null) r'name': encodeQueryParameter(_serializers, name, const FullType(String)), + if (status != null) r'status': encodeQueryParameter(_serializers, status, const FullType(String)), }; } catch(error, stackTrace) { @@ -547,7 +526,6 @@ class PetApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -558,7 +536,6 @@ class PetApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -613,9 +590,6 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -629,7 +603,6 @@ class PetApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -640,7 +613,6 @@ class PetApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -722,9 +694,6 @@ class PetApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -738,7 +707,6 @@ class PetApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -749,7 +717,6 @@ class PetApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/store_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/store_api.dart index 24c4bd7a55c8..93d5ccbe97cc 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/store_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/store_api.dart @@ -54,13 +54,9 @@ class StoreApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -110,13 +106,9 @@ class StoreApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -188,13 +180,9 @@ class StoreApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -267,9 +255,6 @@ class StoreApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -281,7 +266,6 @@ class StoreApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -292,7 +276,6 @@ class StoreApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/user_api.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/user_api.dart index a05524844039..6faaed6336d1 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/user_api.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api/user_api.dart @@ -8,6 +8,7 @@ import 'package:built_value/serializer.dart'; import 'package:dio/dio.dart'; import 'package:built_collection/built_collection.dart'; +import 'package:openapi/src/api_util.dart'; import 'package:openapi/src/model/user.dart'; class UserApi { @@ -55,9 +56,6 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -69,7 +67,6 @@ class UserApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -80,7 +77,6 @@ class UserApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -126,9 +122,6 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -140,7 +133,6 @@ class UserApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -151,7 +143,6 @@ class UserApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -197,9 +188,6 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -211,7 +199,6 @@ class UserApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -222,7 +209,6 @@ class UserApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -267,13 +253,9 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -318,13 +300,9 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -399,8 +377,8 @@ class UserApi { ); final _queryParameters = { - r'username': username, - r'password': password, + r'username': encodeQueryParameter(_serializers, username, const FullType(String)), + r'password': encodeQueryParameter(_serializers, password, const FullType(String)), }; final _response = await _dio.request( @@ -472,13 +450,9 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - final _response = await _dio.request( _path, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, @@ -526,9 +500,6 @@ class UserApi { validateStatus: validateStatus, ); - final _queryParameters = { - }; - dynamic _bodyData; try { @@ -540,7 +511,6 @@ class UserApi { requestOptions: _options.compose( _dio.options, _path, - queryParameters: _queryParameters, ), type: DioErrorType.other, error: error, @@ -551,7 +521,6 @@ class UserApi { _path, data: _bodyData, options: _options, - queryParameters: _queryParameters, cancelToken: cancelToken, onSendProgress: onSendProgress, onReceiveProgress: onReceiveProgress, diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api_util.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api_util.dart index ca7832e36930..09b9ba88fd94 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api_util.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake/lib/src/api_util.dart @@ -3,9 +3,12 @@ // import 'dart:convert'; +import 'dart:typed_data'; import 'package:built_collection/built_collection.dart'; import 'package:built_value/serializer.dart'; +import 'package:dio/dio.dart'; +import 'package:dio/src/parameter.dart'; /// Format the given form parameter object into something that Dio can handle. /// Returns primitive or String. @@ -24,8 +27,52 @@ dynamic encodeFormParameter(Serializers serializers, dynamic value, FullType typ if (serialized is String) { return serialized; } - if (value is BuiltList || value is BuiltMap) { + if (value is BuiltList || value is BuiltSet || value is BuiltMap) { return serialized; } return json.encode(serialized); } + +dynamic encodeQueryParameter( + Serializers serializers, + dynamic value, + FullType type, +) { + if (value == null) { + return ''; + } + if (value is String || value is num || value is bool) { + return value; + } + if (value is Uint8List) { + // Currently not sure how to serialize this + return value; + } + final serialized = serializers.serialize( + value as Object, + specifiedType: type, + ); + if (serialized == null) { + return ''; + } + if (serialized is String) { + return serialized; + } + return serialized; +} + +ListParam encodeCollectionQueryParameter( + Serializers serializers, + dynamic value, + FullType type, { + ListFormat format = ListFormat.multi, +}) { + final serialized = serializers.serialize( + value as Object, + specifiedType: type, + ); + if (value is BuiltList || value is BuiltSet) { + return ListParam(List.of((serialized as Iterable).cast()), format); + } + throw ArgumentError('Invalid value passed to encodeCollectionQueryParameter'); +} diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/fake_api_test.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/fake_api_test.dart index 9330474d4992..180815a69f1b 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/fake_api_test.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/fake_api_test.dart @@ -2,10 +2,13 @@ import 'dart:typed_data'; import 'package:built_collection/built_collection.dart'; import 'package:dio/dio.dart'; +import 'package:dio/src/parameter.dart'; import 'package:http_mock_adapter/http_mock_adapter.dart'; import 'package:openapi/openapi.dart'; import 'package:test/test.dart'; +import '../matcher/list_param_matcher.dart'; + void main() { Openapi client; DioAdapter server; @@ -97,7 +100,20 @@ void main() { (request) => request.reply(200, null), data: { 'enum_form_string': 'formString', - 'enum_form_string_array': '[foo, bar]', + 'enum_form_string_array': ListParamMatcher( + expected: ListParam( + ['foo', 'bar'], + ListFormat.csv, + ), + ), + }, + queryParameters: { + 'enum_query_string_array': ListParamMatcher( + expected: ListParam( + ['a', 'b', 'c'], + ListFormat.multi, + ), + ), }, headers: { 'content-type': 'application/x-www-form-urlencoded', @@ -105,6 +121,9 @@ void main() { ); final response = await client.getFakeApi().testEnumParameters( + enumQueryStringArray: ListBuilder( + ['a', 'b', 'c'], + ).build(), enumFormString: 'formString', enumFormStringArray: ListBuilder( ['foo', 'bar'], diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/pet_api_test.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/pet_api_test.dart index 6b52fdce13ed..1ae3964851de 100644 --- a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/pet_api_test.dart +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/api/pet_api_test.dart @@ -1,11 +1,13 @@ import 'package:built_collection/built_collection.dart'; import 'package:dio/dio.dart'; +import 'package:dio/src/parameter.dart'; import 'package:http_mock_adapter/http_mock_adapter.dart'; import 'package:http_parser/http_parser.dart'; import 'package:openapi/openapi.dart'; import 'package:test/test.dart'; import '../matcher/form_data_matcher.dart'; +import '../matcher/list_param_matcher.dart'; void main() { const photo1 = 'https://localhost/photo1.jpg'; @@ -195,10 +197,12 @@ void main() { request: Request( method: RequestMethods.get, queryParameters: { - 'status': [ - 'available', - 'sold', - ], + 'status': ListParamMatcher( + expected: ListParam( + ['available', 'sold'], + ListFormat.csv, + ), + ), }, headers: { Headers.contentTypeHeader: Matchers.pattern('application/json'), diff --git a/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/matcher/list_param_matcher.dart b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/matcher/list_param_matcher.dart new file mode 100644 index 000000000000..649ef67cceca --- /dev/null +++ b/samples/openapi3/client/petstore/dart-dio-next/petstore_client_lib_fake_tests/test/matcher/list_param_matcher.dart @@ -0,0 +1,20 @@ +import 'package:dio/src/parameter.dart'; +import 'package:meta/meta.dart'; +import 'package:collection/collection.dart'; +import 'package:http_mock_adapter/src/matchers/matcher.dart'; + +class ListParamMatcher extends Matcher { + final ListParam expected; + + const ListParamMatcher({@required this.expected}); + + @override + bool matches(dynamic actual) { + return actual is ListParam && + ListEquality().equals( + actual.value, + expected.value, + ) && + actual.format == expected.format; + } +} From 8c268c9578eea512186be83f7362477eaa0874a4 Mon Sep 17 00:00:00 2001 From: Bruno Coelho <4brunu@users.noreply.github.com> Date: Mon, 7 Jun 2021 03:46:52 +0100 Subject: [PATCH 11/21] [swift][client] make swift 5 generator stable (#9666) --- .../org/openapitools/codegen/languages/Swift5ClientCodegen.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java index bf7dfd78d89d..e8b4ecb4fe80 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/Swift5ClientCodegen.java @@ -103,7 +103,7 @@ public Swift5ClientCodegen() { this.useOneOfInterfaces = true; generatorMetadata = GeneratorMetadata.newBuilder(generatorMetadata) - .stability(Stability.BETA) + .stability(Stability.STABLE) .build(); outputFolder = "generated-code" + File.separator + "swift"; From 088bca15809df8d3d3a3aa341ae285087b6a5e7c Mon Sep 17 00:00:00 2001 From: William Cheng Date: Mon, 7 Jun 2021 11:55:26 +0800 Subject: [PATCH 12/21] [python][fastapi] various minor improvements (#9672) * fix python fastapi tests, update readme, add CI test * update FILES * use virtualenv * fix pom.xml * skip flake8 --- .../languages/PythonFastAPIServerCodegen.java | 2 +- .../resources/python-fastapi/README.mustache | 15 ++- .../python-fastapi/api_test.mustache | 3 +- pom.xml | 1 + .../server/petstore/python-fastapi/README.md | 15 ++- .../server/petstore/python-fastapi/pom.xml | 43 +++++++ .../petstore/python-fastapi/test_python3.sh | 33 ++++++ .../python-fastapi/tests/test_pet_api.py | 110 ++++++++++-------- .../python-fastapi/tests/test_store_api.py | 46 ++++---- .../python-fastapi/tests/test_user_api.py | 98 +++++++++------- 10 files changed, 246 insertions(+), 120 deletions(-) create mode 100644 samples/server/petstore/python-fastapi/pom.xml create mode 100755 samples/server/petstore/python-fastapi/test_python3.sh diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java index c4d2e6f3283a..6ee1131973e9 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PythonFastAPIServerCodegen.java @@ -285,7 +285,7 @@ public void postProcess() { System.out.println("# https://opencollective.com/openapi_generator/donate #"); System.out.println("# #"); System.out.println("# This generator's contributed by Nikita Vakula (https://github.com/krjakbrjak)#"); - System.out.println("# Please support his work directly via https://paypal.me/krjakbrjaki \uD83D\uDE4F #"); + System.out.println("# Please support his work directly via https://paypal.me/krjakbrjak \uD83D\uDE4F #"); System.out.println("################################################################################"); } diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/README.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/README.mustache index 6528c7920266..ae8428952fdd 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/README.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/README.mustache @@ -16,9 +16,9 @@ Python >= 3.6 To run the server, please execute the following from the root directory: -``` - pip3 install -r requirements.txt - uvicorn main:app --host 0.0.0.0 --port {{serverPort}} +```bash +pip3 install -r requirements.txt +uvicorn main:app --host 0.0.0.0 --port {{serverPort}} ``` and open your browser at `http://localhost:{{serverPort}}/docs/` to see the docs. @@ -30,3 +30,12 @@ To run the server on a Docker container, please execute the following from the r ```bash docker-compose up --build ``` + +## Tests + +To run the tests: + +```bash +pip3 install pytest +PYTHONPATH=src pytest tests +``` diff --git a/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache b/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache index 248f282e8575..5a81aa32c604 100644 --- a/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache +++ b/modules/openapi-generator/src/main/resources/python-fastapi/api_test.mustache @@ -47,7 +47,8 @@ def test_{{operationId}}(client: TestClient): params=params,{{/-first}}{{/queryParams}} ) - assert response.status_code == 200 + # uncomment below to assert the status code of the HTTP response + #assert response.status_code == 200 {{/operation}} {{/operations}} diff --git a/pom.xml b/pom.xml index b968a4769008..5a8c00165ef0 100644 --- a/pom.xml +++ b/pom.xml @@ -1187,6 +1187,7 @@ samples/server/petstore/python-aiohttp samples/server/petstore/python-aiohttp-srclayout + samples/server/petstore/python-fastapi samples/server/petstore/python-flask + + org.jetbrains.kotlin + kotlin-stdlib + ${kotlin.version} + @@ -229,7 +236,7 @@ 2.7 1.0.0 4.8.1 - 1.3.50 + 1.5.10 1.8 1.8.0 2.2 From 9099b43cd8121b7716cf52b9a593951d41a56b9c Mon Sep 17 00:00:00 2001 From: Gabriel Castro Date: Mon, 7 Jun 2021 00:44:49 -0400 Subject: [PATCH 15/21] bump swagger-parser-version to v2.0.26 to close #9086 (#9631) * bump swagger-parser-version to v2.0.26 * add tests for #9086 --- .../codegen/yaml/YamlGeneratorTest.java | 33 +++++++++++++++ .../src/test/resources/2_0/issue_9086.yaml | 34 ++++++++++++++++ .../resources/2_0/issue_9086_expected.yaml | 40 +++++++++++++++++++ pom.xml | 2 +- 4 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 modules/openapi-generator/src/test/resources/2_0/issue_9086.yaml create mode 100644 modules/openapi-generator/src/test/resources/2_0/issue_9086_expected.yaml diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/yaml/YamlGeneratorTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/yaml/YamlGeneratorTest.java index c264a8a251c3..cc4e74ade5dd 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/yaml/YamlGeneratorTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/yaml/YamlGeneratorTest.java @@ -17,6 +17,7 @@ package org.openapitools.codegen.yaml; +import io.swagger.v3.oas.models.OpenAPI; import org.openapitools.codegen.ClientOptInput; import org.openapitools.codegen.DefaultGenerator; import org.openapitools.codegen.TestUtils; @@ -85,4 +86,36 @@ public void testGeneratePingOtherOutputFile() throws Exception { output.deleteOnExit(); } + + @Test + public void testIssue9086() throws Exception { + Map properties = new HashMap<>(); + properties.put(OpenAPIYamlGenerator.OUTPUT_NAME, "issue_9086.yaml"); + + File output = Files.createTempDirectory("issue_9086").toFile(); + output.deleteOnExit(); + + final CodegenConfigurator configurator = new CodegenConfigurator() + .setGeneratorName("openapi-yaml") + .setAdditionalProperties(properties) + .setInputSpec("src/test/resources/2_0/issue_9086.yaml") + .setOutputDir(output.getAbsolutePath().replace("\\", "/")); + + final ClientOptInput clientOptInput = configurator.toClientOptInput(); + DefaultGenerator generator = new DefaultGenerator(); + List files = generator.opts(clientOptInput).generate(); + Assert.assertEquals(files.size(), 5); + TestUtils.ensureContainsFile(files, output, "issue_9086.yaml"); + + TestUtils.ensureContainsFile(files, output, "README.md"); + TestUtils.ensureContainsFile(files, output, ".openapi-generator-ignore"); + TestUtils.ensureContainsFile(files, output, ".openapi-generator/FILES"); + TestUtils.ensureContainsFile(files, output, ".openapi-generator/VERSION"); + + OpenAPI generated = TestUtils.parseSpec(new File(output, "issue_9086.yaml").getPath()); + OpenAPI expected = TestUtils.parseSpec("src/test/resources/2_0/issue_9086_expected.yaml"); + + // use #toString because the equals methods is a little stricter than necessary for this test + Assert.assertEquals(expected.toString(), generated.toString()); + } } diff --git a/modules/openapi-generator/src/test/resources/2_0/issue_9086.yaml b/modules/openapi-generator/src/test/resources/2_0/issue_9086.yaml new file mode 100644 index 000000000000..3210031ade33 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/2_0/issue_9086.yaml @@ -0,0 +1,34 @@ +swagger: '2.0' +info: + title: 'Buggy Api' + version: '1.0' +consumes: + - application/json +paths: + /foo/bar: + post: + responses: + '200': + description: ok + schema: + type: object + additionalProperties: false + properties: + n: + type: number + example: 1.23 + /foo/bar2: + post: + responses: + '200': + description: ok + schema: + $ref: '#/definitions/bar2' +definitions: + bar2: + type: object + additionalProperties: false + properties: + n: + type: number + example: 4.56 diff --git a/modules/openapi-generator/src/test/resources/2_0/issue_9086_expected.yaml b/modules/openapi-generator/src/test/resources/2_0/issue_9086_expected.yaml new file mode 100644 index 000000000000..cce682ee0536 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/2_0/issue_9086_expected.yaml @@ -0,0 +1,40 @@ +openapi: 3.0.1 +info: + title: 'Buggy Api' + version: '1.0' +paths: + /foo/bar: + post: + responses: + '200': + description: ok + content: + '*/*': + schema: + $ref: '#/components/schemas/inline_response_200' + + /foo/bar2: + post: + responses: + '200': + description: ok + content: + '*/*': + schema: + $ref: '#/components/schemas/bar2' +components: + schemas: + bar2: + type: object + example: { n: 4.56 } + properties: + n: + type: number + example: 4.56 + inline_response_200: + type: object + example: { n: 1.23 } + properties: + n: + type: number + example: 1.23 diff --git a/pom.xml b/pom.xml index 5a8c00165ef0..a78fee85d3c4 100644 --- a/pom.xml +++ b/pom.xml @@ -1576,7 +1576,7 @@ 1.8 2.1.2 io.swagger.parser.v3 - 2.0.24 + 2.0.26 3.3.1 2.4 1.2 From 2d5199f80f6df34a8edf4f6c78b7463e3a80c864 Mon Sep 17 00:00:00 2001 From: cal Date: Mon, 7 Jun 2021 08:24:18 +0200 Subject: [PATCH 16/21] [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9665) AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor: Replaces a string concatenation as parameter of a logger method by a string template followed by objects. For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor For erefactor see https://github.com/cal101/erefactor --- .../codegen/languages/BashClientCodegen.java | 10 +++++----- .../codegen/languages/CLibcurlClientCodegen.java | 15 ++++++++------- .../codegen/languages/CSharpClientCodegen.java | 14 +++++++------- .../languages/CSharpNancyFXServerCodegen.java | 2 +- .../languages/CSharpNetCoreClientCodegen.java | 9 +++++---- .../codegen/languages/CrystalClientCodegen.java | 13 +++++++------ .../codegen/languages/ElixirClientCodegen.java | 11 ++++++----- .../codegen/languages/ElmClientCodegen.java | 2 +- .../codegen/languages/ErlangClientCodegen.java | 2 +- .../codegen/languages/ErlangProperCodegen.java | 2 +- .../codegen/languages/ErlangServerCodegen.java | 2 +- .../codegen/languages/FlashClientCodegen.java | 4 ++-- .../languages/FsharpGiraffeServerCodegen.java | 2 +- .../languages/HaskellHttpClientCodegen.java | 7 +++---- .../codegen/languages/HaskellServantCodegen.java | 7 +++---- .../codegen/languages/JavaClientCodegen.java | 10 ++++++---- .../languages/JavascriptApolloClientCodegen.java | 13 +++++++------ .../languages/JavascriptClientCodegen.java | 13 +++++++------ .../JavascriptClosureAngularClientCodegen.java | 4 ++-- .../codegen/languages/KotlinServerCodegen.java | 2 +- 20 files changed, 75 insertions(+), 69 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java index ea212c92f183..214f98ea3b35 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/BashClientCodegen.java @@ -497,7 +497,7 @@ public CodegenParameter fromParameter(Parameter param, Set imports) { } else if ("pipes".equals(p.collectionFormat)) { p.vendorExtensions.put("x-codegen-collection-pipes", true); } else { - LOGGER.warn("Unsupported collection format in Bash generator: " + p.collectionFormat); + LOGGER.warn("Unsupported collection format in Bash generator: {}", p.collectionFormat); } } } @@ -778,7 +778,7 @@ public void setParameterExampleValue(CodegenParameter p) { } else if ("array".equalsIgnoreCase(type) || "map".equalsIgnoreCase(type)) { // skip map/array as it will be handled below } else { - LOGGER.warn("Type " + type + " not handled properly in setParameterExampleValue"); + LOGGER.warn("Type {} not handled properly in setParameterExampleValue", type); } if (example == null) { @@ -802,20 +802,20 @@ public String toOperationId(String operationId) { // rename to empty_method_name_1 (e.g.) if method name is empty if (StringUtils.isEmpty(operationId)) { operationId = camelize("empty_method_name_" + emptyMethodNameCounter++, true); - LOGGER.warn("Empty method name (operationId) found. Renamed to " + operationId); + LOGGER.warn("Empty method name (operationId) found. Renamed to {}", operationId); return operationId; } // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = underscore("call" + camelize(operationId)); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java index 78c6e2507e55..4c7a0c741609 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CLibcurlClientCodegen.java @@ -519,7 +519,7 @@ public String toExampleValue(Schema schema) { } else if (ModelUtils.isObjectSchema(schema)) { return null; // models are managed at moustache level } else { - LOGGER.warn("Type " + schema.getType() + " not handled properly in toExampleValue"); + LOGGER.warn("Type {} not handled properly in toExampleValue", schema.getType()); } if (ModelUtils.isStringSchema(schema)) { @@ -593,13 +593,14 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String modelName = camelize("Model" + name); - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -719,21 +720,21 @@ public String toOperationId(String operationId) { // rename to empty_method_name_1 (e.g.) if method name is empty if (StringUtils.isEmpty(operationId)) { operationId = camelize("empty_method_name_" + emptyMethodNameCounter++); - LOGGER.warn("Empty method name (operationId) found. Renamed to " + operationId); + LOGGER.warn("Empty method name (operationId) found. Renamed to {}", operationId); return operationId; } // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize(sanitizeName("call_" + operationId), true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { String newOperationId = camelize(sanitizeName("call_" + operationId), true); - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } @@ -889,7 +890,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); 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 052868899f2c..6f93f3294c90 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 @@ -311,7 +311,7 @@ public void processOpts() { LOGGER.warn(".NET Standard 1.3 support has been DEPRECATED in this generator. Please use `csharp-netcore` generator instead."); additionalProperties.put(MCS_NET_VERSION_KEY, "4.6-api"); if (additionalProperties.containsKey("supportsUWP")) { - LOGGER.warn(".NET " + NETSTANDARD + " generator does not support UWP."); + LOGGER.warn(".NET {} generator does not support UWP.", NETSTANDARD); additionalProperties.remove("supportsUWP"); } @@ -332,7 +332,7 @@ public void processOpts() { } else if (NET40.equals(this.targetFramework)) { additionalProperties.put(MCS_NET_VERSION_KEY, "4"); if (additionalProperties.containsKey(CodegenConstants.SUPPORTS_ASYNC)) { - LOGGER.warn(".NET " + NET40 + " generator does not support async."); + LOGGER.warn(".NET {} generator does not support async.", NET40); additionalProperties.remove(CodegenConstants.SUPPORTS_ASYNC); } @@ -350,13 +350,13 @@ public void processOpts() { if (additionalProperties.containsKey(CodegenConstants.GENERATE_PROPERTY_CHANGED)) { if (NET35.equals(targetFramework)) { - LOGGER.warn(CodegenConstants.GENERATE_PROPERTY_CHANGED + " is only supported by generated code for .NET 4+."); + LOGGER.warn("{} is only supported by generated code for .NET 4+.", CodegenConstants.GENERATE_PROPERTY_CHANGED); additionalProperties.remove(CodegenConstants.GENERATE_PROPERTY_CHANGED); } else if (NETSTANDARD.equals(targetFramework)) { - LOGGER.warn(CodegenConstants.GENERATE_PROPERTY_CHANGED + " is not supported in .NET Standard generated code."); + LOGGER.warn("{} is not supported in .NET Standard generated code.", CodegenConstants.GENERATE_PROPERTY_CHANGED); additionalProperties.remove(CodegenConstants.GENERATE_PROPERTY_CHANGED); } else if (Boolean.TRUE.equals(netCoreProjectFileFlag)) { - LOGGER.warn(CodegenConstants.GENERATE_PROPERTY_CHANGED + " is not supported in .NET Core csproj project format."); + LOGGER.warn("{} is not supported in .NET Core csproj project format.", CodegenConstants.GENERATE_PROPERTY_CHANGED); additionalProperties.remove(CodegenConstants.GENERATE_PROPERTY_CHANGED); } else { setGeneratePropertyChanged(convertPropertyToBooleanAndWriteBack(CodegenConstants.GENERATE_PROPERTY_CHANGED)); @@ -714,7 +714,7 @@ public void postProcessEmitDefaultValue(Map vendorExtensions) { public void setTargetFramework(String dotnetFramework) { if (!frameworks.containsKey(dotnetFramework)) { - LOGGER.warn("Invalid .NET framework version, defaulting to " + this.targetFramework); + LOGGER.warn("Invalid .NET framework version, defaulting to {}", this.targetFramework); } else { this.targetFramework = dotnetFramework; } @@ -758,7 +758,7 @@ public void setTargetFramework(String dotnetFramework) { break; } - LOGGER.info("Generating code for .NET Framework " + this.targetFramework); + LOGGER.info("Generating code for .NET Framework {}", this.targetFramework); } private CodegenModel reconcileInlineEnums(CodegenModel codegenModel, CodegenModel parentCodegenModel) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNancyFXServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNancyFXServerCodegen.java index 74db8d4ca2de..a99243ab3593 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNancyFXServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpNancyFXServerCodegen.java @@ -268,7 +268,7 @@ public Map postProcessAllModels(final Map models } private void postProcessParentModels(final Map models) { - LOGGER.debug("Processing parents: " + parentModels); + LOGGER.debug("Processing parents: {}", parentModels); for (final String parent : parentModels) { final CodegenModel parentModel = ModelUtils.getModelByName(parent, models); if (parentModel != null) { 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 356c6a895b05..2b0a5fe068dc 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 @@ -639,7 +639,7 @@ public void processOpts() { } if (additionalProperties.containsKey(CodegenConstants.GENERATE_PROPERTY_CHANGED)) { - LOGGER.warn(CodegenConstants.GENERATE_PROPERTY_CHANGED + " is not supported in the .NET Standard generator."); + LOGGER.warn("{} is not supported in the .NET Standard generator.", CodegenConstants.GENERATE_PROPERTY_CHANGED); additionalProperties.remove(CodegenConstants.GENERATE_PROPERTY_CHANGED); } @@ -789,7 +789,7 @@ public void setTargetFramework(String dotnetFramework) { } else { this.targetFramework = dotnetFramework; } - LOGGER.info("Generating code for .NET Framework " + this.targetFramework); + LOGGER.info("Generating code for .NET Framework {}", this.targetFramework); } public void setTargetFramework(List strategies) { @@ -804,7 +804,7 @@ public void setTargetFramework(List strategies) { } this.targetFramework = strategies.stream().map(p -> p.name) .collect(Collectors.joining(";")); - LOGGER.info("Generating code for .NET Framework " + this.targetFramework); + LOGGER.info("Generating code for .NET Framework {}", this.targetFramework); } public void setTestTargetFramework(String testTargetFramework) { @@ -1026,7 +1026,8 @@ protected void configureAdditionalProperties(final Map propertie properties.put(NET_STANDARD, this.isNetStandard); if (properties.containsKey(SUPPORTS_UWP)) { - LOGGER.warn(".NET " + this.name + " generator does not support the UWP option. Use the csharp generator instead."); + LOGGER.warn(".NET {} generator does not support the UWP option. Use the csharp generator instead.", + this.name); properties.remove(SUPPORTS_UWP); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java index c092a8b5acdd..65083f706940 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CrystalClientCodegen.java @@ -363,13 +363,14 @@ public String toModelName(final String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(modelName)) { modelName = camelize("Model" + modelName); - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } // model name starts with number if (modelName.matches("^\\d.*")) { - LOGGER.warn(modelName + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + modelName)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", modelName, + camelize("model_" + modelName)); modelName = "model_" + modelName; // e.g. 200Response => Model200Response (after camelize) } @@ -482,20 +483,20 @@ public String toOperationId(String operationId) { // rename to empty_method_name_1 (e.g.) if method name is empty if (StringUtils.isEmpty(operationId)) { operationId = underscore("empty_method_name_" + emptyMethodNameCounter++); - LOGGER.warn("Empty method name (operationId) found. Renamed to " + operationId); + LOGGER.warn("Empty method name (operationId) found. Renamed to {}", operationId); return operationId; } // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = underscore("call_" + operationId); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } @@ -881,7 +882,7 @@ public void postProcessFile(File file, String fileType) { } LOGGER.error("Error running the command ({}). Exit value: {}, Error output: {}", command, exitValue, sb.toString()); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java index 51ce18efe45a..78c1235c9df6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElixirClientCodegen.java @@ -449,13 +449,14 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -471,13 +472,13 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); return underscore(sanitizeName("call_" + operationId)); } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } @@ -602,7 +603,7 @@ public String codeMappingKey() { return code; } - LOGGER.warn("Unknown HTTP status code: " + this.code); + LOGGER.warn("Unknown HTTP status code: {}", this.code); return "\"" + code + "\""; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElmClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElmClientCodegen.java index e7aaf1a3695e..ba89d67819c3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElmClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ElmClientCodegen.java @@ -188,7 +188,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java index 00013976a9ba..231d1136b772 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangClientCodegen.java @@ -300,7 +300,7 @@ public String toApiFilename(String name) { public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. if if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId)).replaceAll("\\.", "_")); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId)).replaceAll("\\.", "_")); operationId = "call_" + operationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java index 9e9c1186a25b..40947a5e9582 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangProperCodegen.java @@ -359,7 +359,7 @@ public String toApiFilename(String name) { public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId)).replaceAll("\\.", "_")); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId)).replaceAll("\\.", "_")); operationId = "call_" + operationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangServerCodegen.java index 117a8aed937e..b1cda784a5a8 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ErlangServerCodegen.java @@ -256,7 +256,7 @@ public String toModelName(String name) { public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FlashClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FlashClientCodegen.java index 89a5a2ae69a2..8f2d6ce052e0 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FlashClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/FlashClientCodegen.java @@ -327,7 +327,7 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } @@ -377,7 +377,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } 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 b62591c1d0e3..3764f2c4b724 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 @@ -262,7 +262,7 @@ protected void processOperation(CodegenOperation operation) { String original = operation.path; operation.path = operation.path.replace("?", "/"); if (!original.equals(operation.path)) { - LOGGER.warn("Normalized " + original + " to " + operation.path + ". Please verify generated source."); + LOGGER.warn("Normalized {} to {}. Please verify generated source.", original, operation.path); } } 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 8b264bf325f6..497634d1d9f5 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 @@ -655,8 +655,7 @@ public String toInstantiationType(Schema p) { Schema additionalProperties2 = getAdditionalProperties(p); String type = additionalProperties2.getType(); if (null == type) { - LOGGER.error("No Type defined for Additional Schema " + additionalProperties2 + "\n" // - + "\tIn Schema: " + p); + LOGGER.error("No Type defined for Additional Schema {}\n\tIn Schema: {}", additionalProperties2, p); } String inner = getSchemaType(additionalProperties2); return "(Map.Map Text " + inner + ")"; @@ -693,7 +692,7 @@ public void addOperationToGroup(String tag, String resourcePath, Operation opera counter++; } if (!op.operationId.equals(uniqueName)) { - LOGGER.warn("generated unique operationId `" + uniqueName + "`"); + LOGGER.warn("generated unique operationId `{}`", uniqueName); } op.operationId = uniqueName; op.operationIdLowerCase = uniqueName.toLowerCase(Locale.ROOT); @@ -1455,7 +1454,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); 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 cefd7cebde8c..e19e4d024a27 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 @@ -388,7 +388,7 @@ public String getTypeDeclaration(Schema p) { @Override public String getSchemaType(Schema p) { String schemaType = super.getSchemaType(p); - LOGGER.debug("debugging OpenAPI type: " + p.getType() + ", " + p.getFormat() + " => " + schemaType); + LOGGER.debug("debugging OpenAPI type: {}, {} => {}", p.getType(), p.getFormat(), schemaType); String type = null; if (typeMapping.containsKey(schemaType)) { type = typeMapping.get(schemaType); @@ -411,8 +411,7 @@ public String toInstantiationType(Schema p) { Schema additionalProperties2 = getAdditionalProperties(p); String type = additionalProperties2.getType(); if (null == type) { - LOGGER.error("No Type defined for Additional Property " + additionalProperties2 + "\n" // - + "\tIn Property: " + p); + LOGGER.error("No Type defined for Additional Property {}\n\tIn Property: {}", additionalProperties2, p); } String inner = getSchemaType(additionalProperties2); return "(Map.Map Text " + inner + ")"; @@ -692,7 +691,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java index f82aba5b2842..4fa28b3cb5f1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavaClientCodegen.java @@ -468,7 +468,7 @@ public void processOpts() { } else if (REST_ASSURED.equals(getLibrary())) { if (getSerializationLibrary() == null) { - LOGGER.info("No serializationLibrary configured, using '" + SERIALIZATION_LIBRARY_GSON + "' as fallback"); + LOGGER.info("No serializationLibrary configured, using '{}' as fallback", SERIALIZATION_LIBRARY_GSON); setSerializationLibrary(SERIALIZATION_LIBRARY_GSON); } if (SERIALIZATION_LIBRARY_JACKSON.equals(getSerializationLibrary())) { @@ -496,7 +496,7 @@ public void processOpts() { supportingFiles.add(new SupportingFile("kumuluzee.beans.xml.mustache", "src/main/resources/META-INF", "beans.xml")); } } else { - LOGGER.error("Unknown library option (-l/--library): " + getLibrary()); + LOGGER.error("Unknown library option (-l/--library): {}", getLibrary()); } if (usePlayWS) { @@ -553,7 +553,7 @@ public void processOpts() { } if (getSerializationLibrary() == null) { - LOGGER.info("No serializationLibrary configured, using '" + SERIALIZATION_LIBRARY_GSON + "' as fallback"); + LOGGER.info("No serializationLibrary configured, using '{}' as fallback", SERIALIZATION_LIBRARY_GSON); setSerializationLibrary(SERIALIZATION_LIBRARY_GSON); } switch (getSerializationLibrary()) { @@ -997,7 +997,9 @@ public void setSerializationLibrary(String serializationLibrary) { public void forceSerializationLibrary(String serializationLibrary) { if ((this.serializationLibrary != null) && !this.serializationLibrary.equalsIgnoreCase(serializationLibrary)) { - LOGGER.warn("The configured serializationLibrary '" + this.serializationLibrary + "', is not supported by the library: '" + getLibrary() + "', switching back to: " + serializationLibrary); + LOGGER.warn( + "The configured serializationLibrary '{}', is not supported by the library: '{}', switching back to: {}", + this.serializationLibrary, getLibrary(), serializationLibrary); } setSerializationLibrary(serializationLibrary); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java index 058d544f52a9..3023ff6ab2ee 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptApolloClientCodegen.java @@ -528,14 +528,15 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String modelName = "Model" + name; - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } // model name starts with number if (name.matches("^\\d.*")) { String modelName = "Model" + name; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -780,7 +781,7 @@ public String getSchemaType(Schema p) { type = openAPIType; } if (null == type) { - LOGGER.error("No Type defined for Schema " + p); + LOGGER.error("No Type defined for Schema {}", p); } return toModelName(type); } @@ -797,14 +798,14 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } @@ -1134,7 +1135,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); // Restore interrupted state 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 2f7a34e18189..71a93675a0d3 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 @@ -584,14 +584,15 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String modelName = "Model" + name; - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } // model name starts with number if (name.matches("^\\d.*")) { String modelName = "Model" + name; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -836,7 +837,7 @@ public String getSchemaType(Schema p) { type = openAPIType; } if (null == type) { - LOGGER.error("No Type defined for Schema " + p); + LOGGER.error("No Type defined for Schema {}", p); } return toModelName(type); } @@ -853,14 +854,14 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } @@ -1219,7 +1220,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); // Restore interrupted state diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClosureAngularClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClosureAngularClientCodegen.java index 751d75e4f217..5b8bf164a60b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClosureAngularClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/JavascriptClosureAngularClientCodegen.java @@ -203,7 +203,7 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } @@ -298,7 +298,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java index 0c182417c943..c5063d991858 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerCodegen.java @@ -189,7 +189,7 @@ public void processOpts() { if (StringUtils.isEmpty(library)) { this.setLibrary(DEFAULT_LIBRARY); additionalProperties.put(CodegenConstants.LIBRARY, DEFAULT_LIBRARY); - LOGGER.info("`library` option is empty. Default to " + DEFAULT_LIBRARY); + LOGGER.info("`library` option is empty. Default to {}", DEFAULT_LIBRARY); } if (additionalProperties.containsKey(Constants.AUTOMATIC_HEAD_REQUESTS)) { From 19f57184779567e263f7219df6a926cafd7bb79b Mon Sep 17 00:00:00 2001 From: cal Date: Mon, 7 Jun 2021 08:25:30 +0200 Subject: [PATCH 17/21] [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9664) AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor: Replaces a string concatenation as parameter of a logger method by a string template followed by objects. For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor For erefactor see https://github.com/cal101/erefactor --- .../codegen/online/service/Generator.java | 2 +- .../openapitools/codegen/DefaultCodegen.java | 31 +++++++++++++------ .../codegen/examples/ExampleGenerator.java | 4 +-- .../codegen/languages/AbstractAdaCodegen.java | 10 +++--- .../languages/AbstractApexCodegen.java | 13 ++++---- .../languages/AbstractCSharpCodegen.java | 11 ++++--- .../codegen/languages/AbstractCppCodegen.java | 4 +-- .../languages/AbstractEiffelCodegen.java | 15 +++++---- .../languages/AbstractFSharpCodegen.java | 11 ++++--- .../codegen/languages/AbstractGoCodegen.java | 23 +++++++------- .../languages/AbstractGraphQLCodegen.java | 7 +++-- .../languages/AbstractJavaCodegen.java | 18 ++++++----- .../languages/AbstractKotlinCodegen.java | 11 ++++--- .../codegen/languages/AbstractPhpCodegen.java | 18 ++++++----- .../AbstractPythonConnexionServerCodegen.java | 29 +++++++++++------ .../languages/AbstractScalaCodegen.java | 9 +++--- .../AbstractTypeScriptClientCodegen.java | 10 +++--- .../languages/AndroidClientCodegen.java | 7 +++-- .../AsciidocDocumentationCodegen.java | 14 ++++----- .../languages/AspNetCoreServerCodegen.java | 29 ++++++++++------- 20 files changed, 159 insertions(+), 117 deletions(-) diff --git a/modules/openapi-generator-online/src/main/java/org/openapitools/codegen/online/service/Generator.java b/modules/openapi-generator-online/src/main/java/org/openapitools/codegen/online/service/Generator.java index be21b970d7a3..7cf052e30836 100644 --- a/modules/openapi-generator-online/src/main/java/org/openapitools/codegen/online/service/Generator.java +++ b/modules/openapi-generator-online/src/main/java/org/openapitools/codegen/online/service/Generator.java @@ -153,7 +153,7 @@ private static String generate(String language, GeneratorInput opts, Type type) List files = new DefaultGenerator().opts(clientOptInput).generate(); if (files.size() > 0) { List filesToAdd = new ArrayList<>(); - LOGGER.debug("adding to " + outputFolder); + LOGGER.debug("adding to {}", outputFolder); filesToAdd.add(new File(outputFolder)); ZipUtil zip = new ZipUtil(); zip.compressFiles(filesToAdd, outputFilename); 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 c26a4df1362e..f6972cb575fc 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 @@ -2711,14 +2711,18 @@ private CodegenProperty discriminatorFound(String composedSchemaName, Schema sc, String modelName = ModelUtils.getSimpleRef(oneOf.get$ref()); CodegenProperty thisCp = discriminatorFound(composedSchemaName, oneOf, discPropName, openAPI); if (thisCp == null) { - LOGGER.warn("'" + composedSchemaName + "' defines discriminator '" + discPropName + "', but the referenced OneOf schema '" + modelName + "' is missing " + discPropName); + LOGGER.warn( + "'{}' defines discriminator '{}', but the referenced OneOf schema '{}' is missing {}", + composedSchemaName, discPropName, modelName, discPropName); } if (cp.dataType == null) { cp = thisCp; continue; } if (cp != thisCp) { - LOGGER.warn("'" + composedSchemaName + "' defines discriminator '" + discPropName + "', but the OneOf schema '" + modelName + "' has a different " + discPropName + " definition than the prior OneOf schema's. Make sure the " + discPropName + " type and required values are the same"); + LOGGER.warn( + "'{}' defines discriminator '{}', but the OneOf schema '{}' has a different {} definition than the prior OneOf schema's. Make sure the {} type and required values are the same", + composedSchemaName, discPropName, modelName, discPropName, discPropName); } } return cp; @@ -2730,14 +2734,18 @@ private CodegenProperty discriminatorFound(String composedSchemaName, Schema sc, String modelName = ModelUtils.getSimpleRef(anyOf.get$ref()); CodegenProperty thisCp = discriminatorFound(composedSchemaName, anyOf, discPropName, openAPI); if (thisCp == null) { - LOGGER.warn("'" + composedSchemaName + "' defines discriminator '" + discPropName + "', but the referenced AnyOf schema '" + modelName + "' is missing " + discPropName); + LOGGER.warn( + "'{}' defines discriminator '{}', but the referenced AnyOf schema '{}' is missing {}", + composedSchemaName, discPropName, modelName, discPropName); } if (cp.dataType == null) { cp = thisCp; continue; } if (cp != thisCp) { - LOGGER.warn("'" + composedSchemaName + "' defines discriminator '" + discPropName + "', but the AnyOf schema '" + modelName + "' has a different " + discPropName + " definition than the prior AnyOf schema's. Make sure the " + discPropName + " type and required values are the same"); + LOGGER.warn( + "'{}' defines discriminator '{}', but the AnyOf schema '{}' has a different {} definition than the prior AnyOf schema's. Make sure the {} type and required values are the same", + composedSchemaName, discPropName, modelName, discPropName, discPropName); } } return cp; @@ -2875,7 +2883,9 @@ protected List getOneOfAnyOfDescendants(String composedSchemaName, // schemas also has inline composed schemas // Note: if it is only inline one level, then the inline model resolver will move it into its own // schema and make it a $ref schema in the oneOf/anyOf location - LOGGER.warn("Invalid inline schema defined in oneOf/anyOf in '" + composedSchemaName + "'. Per the OpenApi spec, for this case when a composed schema defines a discriminator, the oneOf/anyOf schemas must use $ref. Change this inline definition to a $ref definition"); + LOGGER.warn( + "Invalid inline schema defined in oneOf/anyOf in '{}'. Per the OpenApi spec, for this case when a composed schema defines a discriminator, the oneOf/anyOf schemas must use $ref. Change this inline definition to a $ref definition", + composedSchemaName); } CodegenProperty df = discriminatorFound(composedSchemaName, sc, discPropName, openAPI); String modelName = ModelUtils.getSimpleRef(ref); @@ -2895,7 +2905,8 @@ protected List getOneOfAnyOfDescendants(String composedSchemaName, msgSuffix += spacer + "invalid optional definition of " + discPropName + ", include it in required"; } } - LOGGER.warn("'" + composedSchemaName + "' defines discriminator '" + discPropName + "', but the referenced schema '" + modelName + "' is incorrect. " + msgSuffix); + LOGGER.warn("'{}' defines discriminator '{}', but the referenced schema '{}' is incorrect. {}", + composedSchemaName, discPropName, modelName, msgSuffix); } MappedModel mm = new MappedModel(modelName, toModelName(modelName)); descendentSchemas.add(mm); @@ -4436,7 +4447,9 @@ public CodegenParameter fromParameter(Parameter parameter, Set imports) }).collect(Collectors.toList()); } else { - LOGGER.warn("No object schema found for deepObject parameter" + codegenParameter + " deepObject won't have specific properties"); + LOGGER.warn( + "No object schema found for deepObject parameter{} deepObject won't have specific properties", + codegenParameter); } } @@ -4728,7 +4741,7 @@ public void addOperationToGroup(String tag, String resourcePath, Operation opera } } if (!co.operationId.equals(uniqueName)) { - LOGGER.warn("generated unique operationId `" + uniqueName + "`"); + LOGGER.warn("generated unique operationId `{}`", uniqueName); } co.operationId = uniqueName; co.operationIdLowerCase = uniqueName.toLowerCase(Locale.ROOT); @@ -4883,7 +4896,7 @@ private void addVars(IJsonSchemaValidationProperties m, List va final String key = entry.getKey(); final Schema prop = entry.getValue(); if (prop == null) { - LOGGER.warn("Please report the issue. There shouldn't be null property for " + key); + LOGGER.warn("Please report the issue. There shouldn't be null property for {}", key); } else { final CodegenProperty cp = fromProperty(key, prop); cp.required = mandatory.contains(key); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java index 0c4f9ad726d3..e699a252719b 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/examples/ExampleGenerator.java @@ -204,7 +204,7 @@ private List> generate(Object example, List mediaTyp output.add(kv); } else if (mediaType.startsWith(MIME_TYPE_XML)) { // TODO - LOGGER.warn("XML example value of (array/primitive) is not handled at the moment: " + example); + LOGGER.warn("XML example value of (array/primitive) is not handled at the moment: {}", example); } } } @@ -296,7 +296,7 @@ private Object resolvePropertyToExample(String propertyName, String mediaType, S LOGGER.debug("URI or URL format, without default or enum, generating random one."); return "http://example.com/aeiou"; } - LOGGER.debug("No values found, using property name " + propertyName + " as example"); + LOGGER.debug("No values found, using property name {} as example", propertyName); return propertyName; } else if (!StringUtils.isEmpty(property.get$ref())) { // model String simpleName = ModelUtils.getSimpleRef(property.get$ref()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractAdaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractAdaCodegen.java index 309ae0357fcf..f6374d6d9463 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractAdaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractAdaCodegen.java @@ -220,7 +220,7 @@ public String toFilename(String name) { protected String toAdaIdentifier(String name, String prefix) { // We cannot use reserved keywords for identifiers if (isReservedWord(name)) { - LOGGER.warn("Identifier '" + name + "' is a reserved word, renamed to " + prefix + name); + LOGGER.warn("Identifier '{}' is a reserved word, renamed to {}{}", name, prefix, name); name = prefix + name; } StringBuilder result = new StringBuilder(); @@ -287,20 +287,22 @@ public String toModelName(final String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String modelName = "Model_" + result; - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } // model name starts with number if (result.matches("^\\d.*")) { String modelName = "Model_" + result; // e.g. 200Response => Model_200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } if (languageSpecificPrimitives.contains(result)) { String modelName = "Model_" + result; - LOGGER.warn(name + " (model name matches existing language type) cannot be used as a model name. Renamed to " + modelName); + LOGGER.warn("{} (model name matches existing language type) cannot be used as a model name. Renamed to {}", + name, modelName); return modelName; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java index f2a577ca899e..2b27370900ee 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractApexCodegen.java @@ -162,14 +162,15 @@ public String toModelName(final String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(camelizedName)) { final String modelName = "Model" + camelizedName; - LOGGER.warn(camelizedName + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", camelizedName, modelName); return modelName; } // model name starts with number if (camelizedName.matches("^\\d.*")) { final String modelName = "Model" + camelizedName; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -188,7 +189,7 @@ public String getTypeDeclaration(Schema p) { ArraySchema ap = (ArraySchema) p; Schema inner = ap.getItems(); if (inner == null) { - LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined"); + LOGGER.warn("{}(array property) does not have a proper inner type defined", ap.getName()); // TODO maybe better defaulting to StringProperty than returning null return null; } @@ -197,7 +198,7 @@ public String getTypeDeclaration(Schema p) { Schema inner = getAdditionalProperties(p); if (inner == null) { - LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined"); + LOGGER.warn("{}(map property) does not have a proper inner type defined", p.getName()); // TODO maybe better defaulting to StringProperty than returning null return null; } @@ -408,7 +409,7 @@ public String getSchemaType(Schema p) { } if (null == schemaType) { - LOGGER.error("No Type defined for Property " + p); + LOGGER.error("No Type defined for Property {}", p); } return toModelName(schemaType); } @@ -425,7 +426,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } 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 eb263b34c378..883f6cb078b2 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 @@ -789,13 +789,13 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } @@ -1032,13 +1032,14 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -1267,7 +1268,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); 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 71f0757d91cb..24dabafd7cf7 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 @@ -237,7 +237,7 @@ public String escapeReservedWord(String name) { @Override public String toOperationId(String operationId) { if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + escapeReservedWord(operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, escapeReservedWord(operationId)); return escapeReservedWord(operationId); } return sanitizeName(super.toOperationId(operationId)); @@ -329,7 +329,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractEiffelCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractEiffelCodegen.java index 945f73249209..d0554f2646d1 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractEiffelCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractEiffelCodegen.java @@ -192,22 +192,22 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after // camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " - + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response // (after camelize) } // model name starts with _ if (name.startsWith("_")) { - LOGGER.warn(name + " (model name starts with _) cannot be used as model name. Renamed to " - + ("model" + name)); + LOGGER.warn("{} (model name starts with _) cannot be used as model name. Renamed to {}", name, + "model" + name); name = "model" + name; // e.g. 200Response => Model200Response // (after camelize) } @@ -344,8 +344,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " - + camelize("call_" + operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize("call_" + operationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } @@ -609,7 +608,7 @@ public String toEiffelFeatureStyle(String operationId) { @Override protected void updatePropertyForArray(CodegenProperty property, CodegenProperty innerProperty) { if (innerProperty == null) { - LOGGER.warn("skipping invalid array property " + Json.pretty(property)); + LOGGER.warn("skipping invalid array property {}", Json.pretty(property)); return; } property.dataFormat = innerProperty.dataFormat; 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 0dc4e1126a75..d33738bd824d 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 @@ -628,13 +628,13 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } @@ -900,13 +900,14 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -1121,7 +1122,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); 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 cee83d467c84..c4dd2d451686 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 @@ -202,7 +202,7 @@ public String toVarName(String name) { // for reserved word append _ if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as variable name. Renamed to " + escapeReservedWord(name)); + LOGGER.warn("{} (reserved word) cannot be used as variable name. Renamed to {}", name, escapeReservedWord(name)); name = escapeReservedWord(name); } @@ -234,7 +234,7 @@ public String toParamName(String name) { // really should just be a letter, e.g. "p Person"), but we'll get // around to that some other time... Maybe. if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as parameter name. Renamed to " + name + "_"); + LOGGER.warn("{} (reserved word) cannot be used as parameter name. Renamed to {}_", name, name); name = name + "_"; } @@ -269,7 +269,8 @@ public String toModelFilename(String name) { name = toModel("model_" + name); if (isReservedFilename(name)) { - LOGGER.warn(name + ".go with suffix (reserved word) cannot be used as filename. Renamed to " + name + "_.go"); + LOGGER.warn("{}.go with suffix (reserved word) cannot be used as filename. Renamed to {}_.go", name, + name); name += "_"; } return name; @@ -292,14 +293,14 @@ public String toModel(String name, boolean doUnderscore) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " - + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -317,7 +318,8 @@ public String toApiFilename(String name) { // e.g. PetApi.go => pet_api.go api = "api_" + underscore(api); if (isReservedFilename(api)) { - LOGGER.warn(name + ".go with suffix (reserved word) cannot be used as filename. Renamed to " + api + "_.go"); + LOGGER.warn("{}.go with suffix (reserved word) cannot be used as filename. Renamed to {}_.go", name, + api); api += "_"; } apiName = api; @@ -441,14 +443,13 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " - + camelize("call_" + sanitizedOperationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize("call_" + sanitizedOperationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } // operationId starts with a number if (sanitizedOperationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + camelize("call_" + sanitizedOperationId)); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, camelize("call_" + sanitizedOperationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } @@ -831,7 +832,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGraphQLCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGraphQLCodegen.java index 5246963a8b17..c5a04049af0d 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGraphQLCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractGraphQLCodegen.java @@ -193,13 +193,14 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -317,7 +318,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore("call_" + operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore("call_" + operationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } 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 0ef7bc8d8438..320da10803f3 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 @@ -313,13 +313,14 @@ public void processOpts() { String derivedInvokerPackage = deriveInvokerPackageName((String) additionalProperties.get(CodegenConstants.API_PACKAGE)); this.additionalProperties.put(CodegenConstants.INVOKER_PACKAGE, derivedInvokerPackage); this.setInvokerPackage((String) additionalProperties.get(CodegenConstants.INVOKER_PACKAGE)); - LOGGER.info("Invoker Package Name, originally not set, is now derived from api package name: " + derivedInvokerPackage); + LOGGER.info("Invoker Package Name, originally not set, is now derived from api package name: {}", derivedInvokerPackage); } else if (additionalProperties.containsKey(CodegenConstants.MODEL_PACKAGE)) { // guess from model package String derivedInvokerPackage = deriveInvokerPackageName((String) additionalProperties.get(CodegenConstants.MODEL_PACKAGE)); this.additionalProperties.put(CodegenConstants.INVOKER_PACKAGE, derivedInvokerPackage); this.setInvokerPackage((String) additionalProperties.get(CodegenConstants.INVOKER_PACKAGE)); - LOGGER.info("Invoker Package Name, originally not set, is now derived from model package name: " + derivedInvokerPackage); + LOGGER.info("Invoker Package Name, originally not set, is now derived from model package name: {}", + derivedInvokerPackage); } else { //not set, use default to be passed to template additionalProperties.put(CodegenConstants.INVOKER_PACKAGE, invokerPackage); @@ -786,14 +787,15 @@ public String toModelName(final String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(camelizedName)) { final String modelName = "Model" + camelizedName; - LOGGER.warn(camelizedName + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", camelizedName, modelName); return modelName; } // model name starts with number if (camelizedName.matches("^\\d.*")) { final String modelName = "Model" + camelizedName; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -1140,7 +1142,7 @@ public String getSchemaType(Schema p) { } if (null == openAPIType) { - LOGGER.error("No Type defined for Schema " + p); + LOGGER.error("No Type defined for Schema {}", p); } return toModelName(openAPIType); } @@ -1157,7 +1159,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } @@ -1284,7 +1286,7 @@ public void preprocessOpenAPI(OpenAPI openAPI) { continue; } for (Operation operation : path.readOperations()) { - LOGGER.info("Processing operation " + operation.getOperationId()); + LOGGER.info("Processing operation {}", operation.getOperationId()); if (hasBodyParameter(openAPI, operation) || hasFormParameter(openAPI, operation)) { String defaultContentType = hasFormParameter(openAPI, operation) ? "application/x-www-form-urlencoded" : "application/json"; List consumes = new ArrayList<>(getConsumesInfo(openAPI, operation)); @@ -1838,7 +1840,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); 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 e3d4204a8d60..c681aaf51cb9 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 @@ -421,7 +421,7 @@ public void processOpts() { } if (additionalProperties.containsKey(CodegenConstants.INVOKER_PACKAGE)) { - LOGGER.warn(CodegenConstants.INVOKER_PACKAGE + " with " + this.getName() + " generator is ignored. Use " + CodegenConstants.PACKAGE_NAME + "."); + LOGGER.warn("{} with {} generator is ignored. Use {}.", CodegenConstants.INVOKER_PACKAGE, this.getName(), CodegenConstants.PACKAGE_NAME); } if (additionalProperties.containsKey(CodegenConstants.SERIALIZABLE_MODEL)) { @@ -624,14 +624,15 @@ public String toModelName(final String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(modifiedName)) { final String modelName = "Model" + modifiedName; - LOGGER.warn(modifiedName + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", modifiedName, modelName); return modelName; } // model name starts with number if (modifiedName.matches("^\\d.*")) { final String modelName = "Model" + modifiedName; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -655,7 +656,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } @@ -890,7 +891,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java index 115e945d6aca..4e1f571a709a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPhpCodegen.java @@ -295,14 +295,15 @@ public String getTypeDeclaration(Schema p) { ArraySchema ap = (ArraySchema) p; Schema inner = ap.getItems(); if (inner == null) { - LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined.Default to string"); + LOGGER.warn("{}(array property) does not have a proper inner type defined.Default to string", + ap.getName()); inner = new StringSchema().description("TODO default missing array inner type to string"); } return getTypeDeclaration(inner) + "[]"; } else if (ModelUtils.isMapSchema(p)) { Schema inner = getAdditionalProperties(p); if (inner == null) { - LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined. Default to string"); + LOGGER.warn("{}(map property) does not have a proper inner type defined. Default to string", p.getName()); inner = new StringSchema().description("TODO default missing map inner type to string"); } return getSchemaType(p) + ""; @@ -408,13 +409,14 @@ private String toGenericName(String name) { // model name cannot use reserved keyword if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -492,13 +494,13 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId), true)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId), true)); operationId = "call_" + operationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId), true)); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId), true)); operationId = "call_" + operationId; } @@ -590,7 +592,7 @@ public void setParameterExampleValue(CodegenParameter p) { // type is a model class, e.g. User example = "new " + getTypeDeclaration(type) + "()"; } else { - LOGGER.warn("Type " + type + " not handled properly in setParameterExampleValue"); + LOGGER.warn("Type {} not handled properly in setParameterExampleValue", type); } if (example == null) { @@ -747,7 +749,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java index df60913e61e4..2e04cd2d3e6e 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractPythonConnexionServerCodegen.java @@ -343,7 +343,9 @@ public void preprocessOpenAPI(OpenAPI openAPI) { fixedPath += "/" + token; } if (!fixedPath.equals(pathname)) { - LOGGER.warn("Path '" + pathname + "' is not consistant with Python variable names. It will be replaced by '" + fixedPath + "'"); + LOGGER.warn( + "Path '{}' is not consistant with Python variable names. It will be replaced by '{}'", + pathname, fixedPath); paths.remove(pathname); path.addExtension("x-python-connexion-openapi-name", pathname); paths.put(fixedPath, path); @@ -373,12 +375,14 @@ public void preprocessOpenAPI(OpenAPI openAPI) { String swaggerParameterName = parameter.getName(); String pythonParameterName = this.toParamName(swaggerParameterName); if (!swaggerParameterName.equals(pythonParameterName)) { - LOGGER.warn("Parameter name '" + swaggerParameterName + "' is not consistant with Python variable names. It will be replaced by '" + pythonParameterName + "'"); + LOGGER.warn( + "Parameter name '{}' is not consistant with Python variable names. It will be replaced by '{}'", + swaggerParameterName, pythonParameterName); parameter.addExtension("x-python-connexion-openapi-name", swaggerParameterName); parameter.setName(pythonParameterName); } if (swaggerParameterName.isEmpty()) { - LOGGER.error("Missing parameter name in " + pathname + "." + parameter.getIn()); + LOGGER.error("Missing parameter name in {}.{}", pathname, parameter.getIn()); } } } @@ -435,13 +439,13 @@ private void addSecurityExtensions(OpenAPI openAPI) { } break; case OPENIDCONNECT: - LOGGER.warn("Security type " + securityScheme.getType().toString() + " is not supported by connextion yet"); + LOGGER.warn("Security type {} is not supported by connextion yet", securityScheme.getType().toString()); case OAUTH2: addSecurityExtension(securityScheme, "x-tokenInfoFunc", baseFunctionName + "info_from_" + securityName); addSecurityExtension(securityScheme, "x-scopeValidateFunc", baseFunctionName + "validate_scope_" + securityName); break; default: - LOGGER.warn("Unknown security type " + securityScheme.getType().toString()); + LOGGER.warn("Unknown security type {}", securityScheme.getType().toString()); } } } @@ -498,7 +502,9 @@ public Map postProcessSupportingFileData(Map obj // Get and remove the (temporary) vendor extension String openapiPathname = (String) pathExtensions.remove("x-python-connexion-openapi-name"); if (openapiPathname != null && !openapiPathname.equals(pythonPathname)) { - LOGGER.info("Path '" + pythonPathname + "' is not consistant with the original OpenAPI definition. It will be replaced back by '" + openapiPathname + "'"); + LOGGER.info( + "Path '{}' is not consistant with the original OpenAPI definition. It will be replaced back by '{}'", + pythonPathname, openapiPathname); paths.remove(pythonPathname); paths.put(openapiPathname, path); } @@ -517,13 +523,18 @@ public Map postProcessSupportingFileData(Map obj if (swaggerParameterName != null) { String pythonParameterName = parameter.getName(); if (!swaggerParameterName.equals(pythonParameterName)) { - LOGGER.info("Reverting name of parameter '" + pythonParameterName + "' of operation '" + operation.getOperationId() + "' back to '" + swaggerParameterName + "'"); + LOGGER.info( + "Reverting name of parameter '{}' of operation '{}' back to '{}'", + pythonParameterName, operation.getOperationId(), swaggerParameterName); parameter.setName(swaggerParameterName); } else { - LOGGER.debug("Name of parameter '" + pythonParameterName + "' of operation '" + operation.getOperationId() + "' was unchanged."); + LOGGER.debug("Name of parameter '{}' of operation '{}' was unchanged.", + pythonParameterName, operation.getOperationId()); } } else { - LOGGER.debug("x-python-connexion-openapi-name was not set on parameter '" + parameter.getName() + "' of operation '" + operation.getOperationId() + "'"); + LOGGER.debug( + "x-python-connexion-openapi-name was not set on parameter '{}' of operation '{}'", + parameter.getName(), operation.getOperationId()); } } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractScalaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractScalaCodegen.java index 7ceb98d917e1..7b7aef86da9e 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractScalaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractScalaCodegen.java @@ -461,14 +461,15 @@ public String toModelName(final String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(camelizedName)) { final String modelName = "Model" + camelizedName; - LOGGER.warn(camelizedName + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", camelizedName, modelName); return modelName; } // model name starts with number if (name.matches("^\\d.*")) { final String modelName = "Model" + camelizedName; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -531,7 +532,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); @@ -553,7 +554,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java index 40dfba5e80f2..d0f44116f573 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java @@ -390,20 +390,22 @@ protected String toTypescriptTypeName(final String name, String safePrefix) { // this is unlikely to happen, because we have just camelized the name, while reserved words are usually all lowcase if (isReservedWord(sanName)) { String modelName = safePrefix + sanName; - LOGGER.warn(sanName + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", sanName, modelName); return modelName; } // model name starts with number if (sanName.matches("^\\d.*")) { String modelName = safePrefix + sanName; // e.g. 200Response => Model200Response - LOGGER.warn(sanName + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", sanName, + modelName); return modelName; } if (languageSpecificPrimitives.contains(sanName)) { String modelName = safePrefix + sanName; - LOGGER.warn(sanName + " (model name matches existing language type) cannot be used as a model name. Renamed to " + modelName); + LOGGER.warn("{} (model name matches existing language type) cannot be used as a model name. Renamed to {}", + sanName, modelName); return modelName; } @@ -860,7 +862,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java index 2fa04946c816..d3ead4fc86d7 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AndroidClientCodegen.java @@ -301,14 +301,15 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String modelName = "Model" + name; - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } // model name starts with number if (name.matches("^\\d.*")) { String modelName = "Model" + name; // e.g. 200Response => Model200Response (after camelize) - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + modelName); return modelName; } @@ -398,7 +399,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = camelize("call_" + operationId, true); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AsciidocDocumentationCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AsciidocDocumentationCodegen.java index 6c2dd4ac4340..83c32409a8a4 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AsciidocDocumentationCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AsciidocDocumentationCodegen.java @@ -89,10 +89,10 @@ public void execute(final Template.Fragment frag, final Writer out) throws IOExc String includeStatement = "include::{" + attributePathReference + "}" + escapeCurlyBrackets(relativeFileName) + "[opts=optional]"; if (Files.isRegularFile(filePathToInclude)) { - LOGGER.debug("including " + ++includeCount + ". file into markup from: " + filePathToInclude.toString()); + LOGGER.debug("including {}. file into markup from: {}", ++includeCount, filePathToInclude.toString()); out.write("\n" + includeStatement + "\n"); } else { - LOGGER.debug(++notFoundCount + ". file not found, skip include for: " + filePathToInclude.toString()); + LOGGER.debug("{}. file not found, skip include for: {}", ++notFoundCount, filePathToInclude.toString()); out.write("\n// markup not found, no " + includeStatement + "\n"); } } @@ -140,10 +140,10 @@ public void execute(final Template.Fragment frag, final Writer out) throws IOExc final Path filePathToLinkTo = Paths.get(basePath, relativeFileName).toAbsolutePath(); if (Files.isRegularFile(filePathToLinkTo)) { - LOGGER.debug("linking " + ++linkedCount + ". file into markup from: " + filePathToLinkTo.toString()); + LOGGER.debug("linking {}. file into markup from: {}", ++linkedCount, filePathToLinkTo.toString()); out.write("\n" + linkName + " link:" + relativeFileName + "[]\n"); } else { - LOGGER.debug(++notFoundLinkCount + ". file not found, skip link for: " + filePathToLinkTo.toString()); + LOGGER.debug("{}. file not found, skip link for: {}", ++notFoundLinkCount, filePathToLinkTo.toString()); out.write("\n// file not found, no " + linkName + " link :" + relativeFileName + "[]\n"); } } @@ -324,8 +324,7 @@ public void processOpts() { String specDir = this.additionalProperties.get(SPEC_DIR) + ""; if (!Files.isDirectory(Paths.get(specDir))) { - LOGGER.warn("base part for include markup lambda not found: " + specDir + " as " - + Paths.get(specDir).toAbsolutePath()); + LOGGER.warn("base part for include markup lambda not found: {} as {}", specDir, Paths.get(specDir).toAbsolutePath()); } this.includeSpecMarkupLambda = new IncludeMarkupLambda(SPEC_DIR,specDir); @@ -333,8 +332,7 @@ public void processOpts() { String snippetDir = this.additionalProperties.get(SNIPPET_DIR) + ""; if (!Files.isDirectory(Paths.get(snippetDir))) { - LOGGER.warn("base part for include markup lambda not found: " + snippetDir + " as " - + Paths.get(snippetDir).toAbsolutePath()); + LOGGER.warn("base part for include markup lambda not found: {} as {}", snippetDir, Paths.get(snippetDir).toAbsolutePath()); } this.includeSnippetMarkupLambda = new IncludeMarkupLambda(SNIPPET_DIR,snippetDir); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AspNetCoreServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AspNetCoreServerCodegen.java index 141cd952bdec..ca50b0ff1f4c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AspNetCoreServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AspNetCoreServerCodegen.java @@ -443,7 +443,7 @@ protected void processOperation(CodegenOperation operation) { String original = operation.path; operation.path = operation.path.replace("?", "/"); if (!original.equals(operation.path)) { - LOGGER.warn("Normalized " + original + " to " + operation.path + ". Please verify generated source."); + LOGGER.warn("Normalized {} to {}. Please verify generated source.", original, operation.path); } } @@ -567,7 +567,7 @@ private void setClassModifier() { if ("abstract".equals(classModifier.getOptValue())) { operationModifier.setOptValue(classModifier.getOptValue()); additionalProperties.put(OPERATION_MODIFIER, operationModifier.getOptValue()); - LOGGER.warn("classModifier is " + classModifier.getOptValue() + " so forcing operatonModifier to " + operationModifier.getOptValue()); + LOGGER.warn("classModifier is {} so forcing operatonModifier to {}", classModifier.getOptValue(), operationModifier.getOptValue()); } } @@ -578,7 +578,7 @@ private void setOperationModifier() { if ("abstract".equals(operationModifier.getOptValue())) { generateBody = false; additionalProperties.put(GENERATE_BODY, generateBody); - LOGGER.warn("operationModifier is " + operationModifier.getOptValue() + " so forcing generateBody to " + generateBody); + LOGGER.warn("operationModifier is {} so forcing generateBody to {}", operationModifier.getOptValue(), generateBody); } else if (additionalProperties.containsKey(GENERATE_BODY)) { generateBody = convertPropertyToBooleanAndWriteBack(GENERATE_BODY); } else { @@ -593,7 +593,7 @@ private void setModelClassModifier() { if (isLibrary) { modelClassModifier.setOptValue(""); additionalProperties.put(MODEL_CLASS_MODIFIER, modelClassModifier.getOptValue()); - LOGGER.warn("buildTarget is " + buildTarget.getOptValue() + " so removing any modelClassModifier "); + LOGGER.warn("buildTarget is {} so removing any modelClassModifier ", buildTarget.getOptValue()); } } @@ -622,7 +622,7 @@ private void setAspnetCoreVersion(String packageFolder) { // default, do nothing compatibilityVersion = "Version_" + aspnetCoreVersion.getOptValue().replace(".", "_"); } - LOGGER.info("ASP.NET core version: " + aspnetCoreVersion.getOptValue()); + LOGGER.info("ASP.NET core version: {}", aspnetCoreVersion.getOptValue()); if(!additionalProperties.containsKey(CodegenConstants.TEMPLATE_DIR)){ templateDir = embeddedTemplateDir = "aspnetcore" + File.separator + determineTemplateVersion(aspnetCoreVersion.getOptValue()); } @@ -660,7 +660,8 @@ private void setUseSwashbuckle() { private void setNullableReferenceTypes() { if (additionalProperties.containsKey(NULLABLE_REFERENCE_TYPES)) { if (aspnetCoreVersion.getOptValue().startsWith("2.")) { - LOGGER.warn("Nullable annotation are not supported in ASP.NET core version 2. Setting " + NULLABLE_REFERENCE_TYPES + " to false"); + LOGGER.warn("Nullable annotation are not supported in ASP.NET core version 2. Setting {} to false", + NULLABLE_REFERENCE_TYPES); additionalProperties.put(NULLABLE_REFERENCE_TYPES, false); } else { nullableReferenceTypes = convertPropertyToBooleanAndWriteBack(NULLABLE_REFERENCE_TYPES); @@ -683,12 +684,16 @@ private void setOperationIsAsync() { private void setIsFramework() { if (aspnetCoreVersion.getOptValue().startsWith("3.")) {// default, do nothing - LOGGER.warn("ASP.NET core version is " + aspnetCoreVersion.getOptValue() + " so changing to use frameworkReference instead of packageReference "); + LOGGER.warn( + "ASP.NET core version is {} so changing to use frameworkReference instead of packageReference ", + aspnetCoreVersion.getOptValue()); useFrameworkReference = true; additionalProperties.put(USE_FRAMEWORK_REFERENCE, useFrameworkReference); additionalProperties.put(TARGET_FRAMEWORK, "netcoreapp" + aspnetCoreVersion.getOptValue()); } else if (aspnetCoreVersion.getOptValue().startsWith("5.")) {// default, do nothing - LOGGER.warn("ASP.NET core version is " + aspnetCoreVersion.getOptValue() + " so changing to use frameworkReference instead of packageReference "); + LOGGER.warn( + "ASP.NET core version is {} so changing to use frameworkReference instead of packageReference ", + aspnetCoreVersion.getOptValue()); useFrameworkReference = true; additionalProperties.put(USE_FRAMEWORK_REFERENCE, useFrameworkReference); additionalProperties.put(TARGET_FRAMEWORK, "net5.0"); @@ -705,7 +710,7 @@ private void setIsFramework() { private void setUseNewtonsoft() { if (aspnetCoreVersion.getOptValue().startsWith("2.")) { LOGGER.warn("ASP.NET core version 2.X support has been deprecated. Please use ASP.NET core version 3.1 instead"); - LOGGER.warn("ASP.NET core version is " + aspnetCoreVersion.getOptValue() + " so staying on default json library."); + LOGGER.warn("ASP.NET core version is {} so staying on default json library.", aspnetCoreVersion.getOptValue()); useNewtonsoft = false; additionalProperties.put(USE_NEWTONSOFT, useNewtonsoft); } else { @@ -719,7 +724,7 @@ private void setUseNewtonsoft() { private void setUseEndpointRouting() { if (aspnetCoreVersion.getOptValue().startsWith("3.") || aspnetCoreVersion.getOptValue().startsWith("5.")) { - LOGGER.warn("ASP.NET core version is " + aspnetCoreVersion.getOptValue() + " so switching to old style endpoint routing."); + LOGGER.warn("ASP.NET core version is {} so switching to old style endpoint routing.", aspnetCoreVersion.getOptValue()); useDefaultRouting = false; additionalProperties.put(USE_DEFAULT_ROUTING, useDefaultRouting); } else { @@ -735,12 +740,12 @@ private void setSwashbuckleVersion() { setCliOption(swashbuckleVersion); if (aspnetCoreVersion.getOptValue().startsWith("3.") || aspnetCoreVersion.getOptValue().startsWith("5.")) { - LOGGER.warn("ASP.NET core version is " + aspnetCoreVersion.getOptValue() + " so changing default Swashbuckle version to 5.0.0."); + LOGGER.warn("ASP.NET core version is {} so changing default Swashbuckle version to 5.0.0.", aspnetCoreVersion.getOptValue()); swashbuckleVersion.setOptValue("5.0.0"); additionalProperties.put(SWASHBUCKLE_VERSION, swashbuckleVersion.getOptValue()); } else { // default, do nothing - LOGGER.info("Swashbuckle version: " + swashbuckleVersion.getOptValue()); + LOGGER.info("Swashbuckle version: {}", swashbuckleVersion.getOptValue()); } } } From 3cbc5a8f93543af5a5d1e3482e5ab67d6174362e Mon Sep 17 00:00:00 2001 From: cal Date: Mon, 7 Jun 2021 08:26:56 +0200 Subject: [PATCH 18/21] [cleanup] erefactor/AutoRefactor - Log parameters rather than log message (#9133) AutoRefactor cleanup 'LogParametersRatherThanLogMessage' applied by erefactor: Replaces a string concatenation as parameter of a logger method by a string template followed by objects. For AutoRefactor see https://github.com/JnRouvignac/AutoRefactor For erefactor see https://github.com/cal101/erefactor --- .../KotlinServerDeprecatedCodegen.java | 2 +- .../languages/KotlinSpringServerCodegen.java | 2 +- .../codegen/languages/KtormSchemaCodegen.java | 27 +++--- .../codegen/languages/LuaClientCodegen.java | 7 +- .../codegen/languages/MysqlSchemaCodegen.java | 85 ++++++++++++------- .../codegen/languages/NimClientCodegen.java | 2 +- .../languages/NodeJSExpressServerCodegen.java | 2 +- .../codegen/languages/OCamlClientCodegen.java | 14 +-- .../codegen/languages/ObjcClientCodegen.java | 7 +- .../codegen/languages/OpenAPIGenerator.java | 2 +- .../codegen/languages/PerlClientCodegen.java | 13 +-- .../languages/PhpSlim4ServerCodegen.java | 7 +- .../languages/PowerShellClientCodegen.java | 22 +++-- .../languages/ProtobufSchemaCodegen.java | 7 +- .../languages/PythonClientCodegen.java | 8 +- .../codegen/languages/RClientCodegen.java | 11 +-- .../codegen/languages/RubyClientCodegen.java | 11 +-- .../languages/RubyOnRailsServerCodegen.java | 4 +- .../languages/RubySinatraServerCodegen.java | 4 +- .../codegen/languages/RustClientCodegen.java | 12 +-- 20 files changed, 152 insertions(+), 97 deletions(-) diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerDeprecatedCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerDeprecatedCodegen.java index 84cee1d2aa97..5c5ec533dedf 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerDeprecatedCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinServerDeprecatedCodegen.java @@ -183,7 +183,7 @@ public void processOpts() { if (StringUtils.isEmpty(library)) { this.setLibrary(DEFAULT_LIBRARY); additionalProperties.put(CodegenConstants.LIBRARY, DEFAULT_LIBRARY); - LOGGER.info("`library` option is empty. Default to " + DEFAULT_LIBRARY); + LOGGER.info("`library` option is empty. Default to {}", DEFAULT_LIBRARY); } if (additionalProperties.containsKey(Constants.AUTOMATIC_HEAD_REQUESTS)) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java index cdaae2afe679..4af648fbac4f 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KotlinSpringServerCodegen.java @@ -303,7 +303,7 @@ public void processOpts() { this.setBasePackage((String) additionalProperties.get(CodegenConstants.INVOKER_PACKAGE)); this.setInvokerPackage((String) additionalProperties.get(CodegenConstants.INVOKER_PACKAGE)); additionalProperties.put(BASE_PACKAGE, basePackage); - LOGGER.info("Set base package to invoker package (" + basePackage + ")"); + LOGGER.info("Set base package to invoker package ({})", basePackage); } if (additionalProperties.containsKey(BASE_PACKAGE)) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KtormSchemaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KtormSchemaCodegen.java index 979d6e34207f..043b4d64cc42 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KtormSchemaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/KtormSchemaCodegen.java @@ -301,7 +301,7 @@ public Map postProcessModels(Map objs) { if (modelVendorExtensions.containsKey(VENDOR_EXTENSION_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + modelName + "' model, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' model, autogeneration skipped", modelName); } else { modelVendorExtensions.put(VENDOR_EXTENSION_SCHEMA, ktormSchema); ktormSchema.put("tableDefinition", tableDefinition); @@ -359,7 +359,7 @@ public void postProcessModelProperty(CodegenModel model, CodegenProperty propert if (vendorExtensions.containsKey(VENDOR_EXTENSION_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -688,7 +688,8 @@ public void processNullAndDefault(CodegenModel model, CodegenProperty property, try { columnDefinition.put("colDefault", toColumnTypeDefault(defaultValue, dataType, dataFormat)); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to data type which doesn't support default value"); + LOGGER.warn("Property '{}' of model '{}' mapped to data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -985,7 +986,7 @@ private Map toColumnTypeDefault(String defaultValue, String data public String toDatabaseName(String name) { String identifier = toIdentifier(name, databaseNamePrefix, databaseNameSuffix); if (identifier.length() > IDENTIFIER_MAX_LENGTH) { - LOGGER.warn("Database name too long. Name '" + name + "' will be truncated"); + LOGGER.warn("Database name too long. Name '{}' will be truncated", name); identifier = identifier.substring(0, IDENTIFIER_MAX_LENGTH); } return identifier; @@ -1004,7 +1005,7 @@ public String toTableName(String name) { identifier = underscore(identifier); } if (identifier.length() > IDENTIFIER_MAX_LENGTH) { - LOGGER.warn("Table name too long. Name '" + name + "' will be truncated"); + LOGGER.warn("Table name too long. Name '{}' will be truncated", name); identifier = identifier.substring(0, IDENTIFIER_MAX_LENGTH); } return identifier; @@ -1023,7 +1024,7 @@ public String toColumnName(String name) { identifier = underscore(identifier); } if (identifier.length() > IDENTIFIER_MAX_LENGTH) { - LOGGER.warn("Column name too long. Name '" + name + "' will be truncated"); + LOGGER.warn("Column name too long. Name '{}' will be truncated", name); identifier = identifier.substring(0, IDENTIFIER_MAX_LENGTH); } return identifier; @@ -1042,13 +1043,13 @@ public String toIdentifier(String name, String prefix, String suffix) { String escapedName = escapeQuotedIdentifier(name); // Database, table, and column names cannot end with space characters. if (escapedName.matches(".*\\s$")) { - LOGGER.warn("Database, table, and column names cannot end with space characters. Check '" + name + "' name"); + LOGGER.warn("Database, table, and column names cannot end with space characters. Check '{}' name", name); escapedName = escapedName.replaceAll("\\s+$", ""); } // Identifiers may begin with a digit but unless quoted may not consist solely of digits. if (escapedName.matches("^\\d+$")) { - LOGGER.warn("Database, table, and column names cannot consist solely of digits. Check '" + name + "' name"); + LOGGER.warn("Database, table, and column names cannot consist solely of digits. Check '{}' name", name); escapedName = prefix + escapedName + suffix; } @@ -1074,7 +1075,8 @@ public String escapeQuotedIdentifier(String identifier) { Pattern regexp = Pattern.compile("[^0-9a-zA-z$_\\x0080-\\xFFFF]"); Matcher matcher = regexp.matcher(identifier); if (matcher.find()) { - LOGGER.warn("Identifier '" + identifier + "' contains unsafe characters out of [0-9,a-z,A-Z$_] and U+0080..U+FFFF range"); + LOGGER.warn("Identifier '{}' contains unsafe characters out of [0-9,a-z,A-Z$_] and U+0080..U+FFFF range", + identifier); identifier = identifier.replaceAll("[^0-9a-zA-z$_\\x0080-\\xFFFF]", ""); } return identifier; @@ -1106,7 +1108,9 @@ public String escapeUnsafeCharacters(String input) { public void setDefaultDatabaseName(String databaseName) { String escapedName = toDatabaseName(databaseName); if (!escapedName.equals(databaseName)) { - LOGGER.error("Invalid database name. '" + databaseName + "' cannot be used as identifier. Escaped value '" + escapedName + "' will be used instead."); + LOGGER.error( + "Invalid database name. '{}' cannot be used as identifier. Escaped value '{}' will be used instead.", + databaseName, escapedName); } this.defaultDatabaseName = escapedName; } @@ -1152,7 +1156,8 @@ public void setIdentifierNamingConvention(String naming) { this.identifierNamingConvention = naming; break; default: - LOGGER.warn("\"" + naming + "\" is invalid \"identifierNamingConvention\" argument. Current \"" + this.identifierNamingConvention + "\" used instead."); + LOGGER.warn("\"{}\" is invalid \"identifierNamingConvention\" argument. Current \"{}\" used instead.", + naming, this.identifierNamingConvention); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/LuaClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/LuaClientCodegen.java index 819dcf6bf440..41aae956c97c 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/LuaClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/LuaClientCodegen.java @@ -281,13 +281,14 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -409,7 +410,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore("call_" + operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore("call_" + operationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java index abc3b4e657ee..fa217e1635fa 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/MysqlSchemaCodegen.java @@ -274,7 +274,7 @@ public Map postProcessModels(Map objs) { if (modelVendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + modelName + "' model, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' model, autogeneration skipped", modelName); } else { modelVendorExtensions.put(VENDOR_EXTENSION_MYSQL_SCHEMA, mysqlSchema); mysqlSchema.put("tableDefinition", tableDefinition); @@ -345,7 +345,7 @@ public void processIntegerTypeProperty(CodegenModel model, CodegenProperty prope if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -364,7 +364,9 @@ public void processIntegerTypeProperty(CodegenModel model, CodegenProperty prope List enumValues = (List) allowableValues.get("values"); for (int i = 0; i < enumValues.size(); i++) { if (i > ENUM_MAX_ELEMENTS - 1) { - LOGGER.warn("ENUM column can have maximum of " + ENUM_MAX_ELEMENTS.toString() + " distinct elements, following value will be skipped: " + (String) enumValues.get(i)); + LOGGER.warn( + "ENUM column can have maximum of {} distinct elements, following value will be skipped: {}", + ENUM_MAX_ELEMENTS.toString(), (String) enumValues.get(i)); break; } String value = String.valueOf(enumValues.get(i)); @@ -395,7 +397,9 @@ public void processIntegerTypeProperty(CodegenModel model, CodegenProperty prope try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -432,7 +436,7 @@ public void processDecimalTypeProperty(CodegenModel model, CodegenProperty prope if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -451,7 +455,9 @@ public void processDecimalTypeProperty(CodegenModel model, CodegenProperty prope List enumValues = (List) allowableValues.get("values"); for (int i = 0; i < enumValues.size(); i++) { if (i > ENUM_MAX_ELEMENTS - 1) { - LOGGER.warn("ENUM column can have maximum of " + ENUM_MAX_ELEMENTS.toString() + " distinct elements, following value will be skipped: " + (String) enumValues.get(i)); + LOGGER.warn( + "ENUM column can have maximum of {} distinct elements, following value will be skipped: {}", + ENUM_MAX_ELEMENTS.toString(), (String) enumValues.get(i)); break; } String value = String.valueOf(enumValues.get(i)); @@ -481,7 +487,9 @@ public void processDecimalTypeProperty(CodegenModel model, CodegenProperty prope try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -510,7 +518,7 @@ public void processBooleanTypeProperty(CodegenModel model, CodegenProperty prope if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -534,7 +542,9 @@ public void processBooleanTypeProperty(CodegenModel model, CodegenProperty prope try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -568,7 +578,7 @@ public void processStringTypeProperty(CodegenModel model, CodegenProperty proper if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -589,7 +599,9 @@ public void processStringTypeProperty(CodegenModel model, CodegenProperty proper columnDefinition.put("colDataTypeArguments", columnDataTypeArguments); for (int i = 0; i < enumValues.size(); i++) { if (i > ENUM_MAX_ELEMENTS - 1) { - LOGGER.warn("ENUM column can have maximum of " + ENUM_MAX_ELEMENTS.toString() + " distinct elements, following value will be skipped: " + (String) enumValues.get(i)); + LOGGER.warn( + "ENUM column can have maximum of {} distinct elements, following value will be skipped: {}", + ENUM_MAX_ELEMENTS.toString(), (String) enumValues.get(i)); break; } String value = String.valueOf(enumValues.get(i)); @@ -613,7 +625,9 @@ public void processStringTypeProperty(CodegenModel model, CodegenProperty proper try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -642,7 +656,7 @@ public void processDateTypeProperty(CodegenModel model, CodegenProperty property if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -664,7 +678,9 @@ public void processDateTypeProperty(CodegenModel model, CodegenProperty property try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -693,7 +709,7 @@ public void processJsonTypeProperty(CodegenModel model, CodegenProperty property if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -718,7 +734,9 @@ public void processJsonTypeProperty(CodegenModel model, CodegenProperty property try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -747,7 +765,7 @@ public void processUnknownTypeProperty(CodegenModel model, CodegenProperty prope if (vendorExtensions.containsKey(VENDOR_EXTENSION_MYSQL_SCHEMA)) { // user already specified schema values - LOGGER.info("Found vendor extension in '" + baseName + "' property, autogeneration skipped"); + LOGGER.info("Found vendor extension in '{}' property, autogeneration skipped", baseName); return; } @@ -769,7 +787,9 @@ public void processUnknownTypeProperty(CodegenModel model, CodegenProperty prope try { columnDefinition.put("colDefault", toCodegenMysqlDataTypeDefault(defaultValue, (String) columnDefinition.get("colDataType"))); } catch (RuntimeException exception) { - LOGGER.warn("Property '" + baseName + "' of model '" + model.getName() + "' mapped to MySQL data type which doesn't support default value"); + LOGGER.warn( + "Property '{}' of model '{}' mapped to MySQL data type which doesn't support default value", + baseName, model.getName()); columnDefinition.put("colDefault", null); } } @@ -803,7 +823,7 @@ public HashMap toCodegenMysqlDataTypeArgument(Object value) { arg.put("isInteger", false); arg.put("isNumeric", true); } else { - LOGGER.warn("MySQL data type argument can be primitive type only. Class '" + value.getClass() + "' is provided"); + LOGGER.warn("MySQL data type argument can be primitive type only. Class '{}' is provided", value.getClass()); } arg.put("argumentValue", value); return arg; @@ -987,7 +1007,7 @@ public Boolean isMysqlDataType(String dataType) { public String toDatabaseName(String name) { String identifier = toMysqlIdentifier(name, databaseNamePrefix, databaseNameSuffix); if (identifier.length() > IDENTIFIER_MAX_LENGTH) { - LOGGER.warn("Database name cannot exceed 64 chars. Name '" + name + "' will be truncated"); + LOGGER.warn("Database name cannot exceed 64 chars. Name '{}' will be truncated", name); identifier = identifier.substring(0, IDENTIFIER_MAX_LENGTH); } return identifier; @@ -1006,7 +1026,7 @@ public String toTableName(String name) { identifier = underscore(identifier); } if (identifier.length() > IDENTIFIER_MAX_LENGTH) { - LOGGER.warn("Table name cannot exceed 64 chars. Name '" + name + "' will be truncated"); + LOGGER.warn("Table name cannot exceed 64 chars. Name '{}' will be truncated", name); identifier = identifier.substring(0, IDENTIFIER_MAX_LENGTH); } return identifier; @@ -1025,7 +1045,7 @@ public String toColumnName(String name) { identifier = underscore(identifier); } if (identifier.length() > IDENTIFIER_MAX_LENGTH) { - LOGGER.warn("Column name cannot exceed 64 chars. Name '" + name + "' will be truncated"); + LOGGER.warn("Column name cannot exceed 64 chars. Name '{}' will be truncated", name); identifier = identifier.substring(0, IDENTIFIER_MAX_LENGTH); } return identifier; @@ -1044,13 +1064,13 @@ public String toMysqlIdentifier(String name, String prefix, String suffix) { String escapedName = escapeMysqlQuotedIdentifier(name); // Database, table, and column names cannot end with space characters. if (escapedName.matches(".*\\s$")) { - LOGGER.warn("Database, table, and column names cannot end with space characters. Check '" + name + "' name"); + LOGGER.warn("Database, table, and column names cannot end with space characters. Check '{}' name", name); escapedName = escapedName.replaceAll("\\s+$", ""); } // Identifiers may begin with a digit but unless quoted may not consist solely of digits. if (escapedName.matches("^\\d+$")) { - LOGGER.warn("Database, table, and column names cannot consist solely of digits. Check '" + name + "' name"); + LOGGER.warn("Database, table, and column names cannot consist solely of digits. Check '{}' name", name); escapedName = prefix + escapedName + suffix; } @@ -1073,7 +1093,8 @@ public String escapeMysqlUnquotedIdentifier(String identifier) { Pattern regexp = Pattern.compile("[^0-9a-zA-z$_\\u0080-\\uFFFF]"); Matcher matcher = regexp.matcher(identifier); if (matcher.find()) { - LOGGER.warn("Identifier '" + identifier + "' contains unsafe characters out of [0-9,a-z,A-Z$_] and U+0080..U+FFFF range"); + LOGGER.warn("Identifier '{}' contains unsafe characters out of [0-9,a-z,A-Z$_] and U+0080..U+FFFF range", + identifier); identifier = identifier.replaceAll("[^0-9a-zA-z$_\\u0080-\\uFFFF]", ""); } @@ -1095,7 +1116,8 @@ public String escapeMysqlQuotedIdentifier(String identifier) { Pattern regexp = Pattern.compile("[^\\u0001-\\u007F\\u0080-\\uFFFF]"); Matcher matcher = regexp.matcher(identifier); if (matcher.find()) { - LOGGER.warn("Identifier '" + identifier + "' contains unsafe characters out of U+0001..U+007F and U+0080..U+FFFF range"); + LOGGER.warn("Identifier '{}' contains unsafe characters out of U+0001..U+007F and U+0080..U+FFFF range", + identifier); identifier = identifier.replaceAll("[^\\u0001-\\u007F\\u0080-\\uFFFF]", ""); } @@ -1107,7 +1129,9 @@ public String escapeMysqlQuotedIdentifier(String identifier) { @Override public String escapeReservedWord(String name) { - LOGGER.warn("'" + name + "' is MySQL reserved word. Do not use that word or properly escape it with backticks in mustache template"); + LOGGER.warn( + "'{}' is MySQL reserved word. Do not use that word or properly escape it with backticks in mustache template", + name); return name; } @@ -1131,7 +1155,9 @@ public String escapeUnsafeCharacters(String input) { public void setDefaultDatabaseName(String databaseName) { String escapedName = toDatabaseName(databaseName); if (!escapedName.equals(databaseName)) { - LOGGER.error("Invalid database name. '" + databaseName + "' cannot be used as MySQL identifier. Escaped value '" + escapedName + "' will be used instead."); + LOGGER.error( + "Invalid database name. '{}' cannot be used as MySQL identifier. Escaped value '{}' will be used instead.", + databaseName, escapedName); } this.defaultDatabaseName = escapedName; } @@ -1196,7 +1222,8 @@ public void setIdentifierNamingConvention(String naming) { this.identifierNamingConvention = naming; break; default: - LOGGER.warn("\"" + naming + "\" is invalid \"identifierNamingConvention\" argument. Current \"" + this.identifierNamingConvention + "\" used instead."); + LOGGER.warn("\"{}\" is invalid \"identifierNamingConvention\" argument. Current \"{}\" used instead.", + naming, this.identifierNamingConvention); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NimClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NimClientCodegen.java index ff07db2ede8f..b5ee1575bd77 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NimClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NimClientCodegen.java @@ -195,7 +195,7 @@ public void processOpts() { @Override public String escapeReservedWord(String name) { - LOGGER.warn("A reserved word \"" + name + "\" is used. Consider renaming the field name"); + LOGGER.warn("A reserved word \"{}\" is used. Consider renaming the field name", name); if (this.reservedWordsMappings().containsKey(name)) { return this.reservedWordsMappings().get(name); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java index 4e6f0a0fb9df..c7edba19de03 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/NodeJSExpressServerCodegen.java @@ -445,7 +445,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); // Restore interrupted state diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OCamlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OCamlClientCodegen.java index 5d46a4af427a..a1a7463937b6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OCamlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OCamlClientCodegen.java @@ -530,13 +530,14 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number or _ if (name.matches("^\\d.*|^_.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -578,14 +579,15 @@ public String getTypeDeclaration(Schema p) { ArraySchema ap = (ArraySchema) p; Schema inner = ap.getItems(); if (inner == null) { - LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined.Default to string"); + LOGGER.warn("{}(array property) does not have a proper inner type defined.Default to string", + ap.getName()); inner = new StringSchema().description("TODO default missing array inner type to string"); } return getTypeDeclaration(inner) + " list"; } else if (ModelUtils.isMapSchema(p)) { Schema inner = getAdditionalProperties(p); if (inner == null) { - LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined. Default to string"); + LOGGER.warn("{}(map property) does not have a proper inner type defined. Default to string", p.getName()); inner = new StringSchema().description("TODO default missing map inner type to string"); } String prefix = inner.getEnum() != null ? "Enums." : ""; @@ -637,7 +639,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId) || sanitizedOperationId.matches("^[0-9].*")) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore("call_" + operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore("call_" + operationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } @@ -814,7 +816,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java index e8735b7e380a..7ced61d9f4f9 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ObjcClientCodegen.java @@ -435,7 +435,8 @@ public boolean isDataTypeBinary(String dataType) { public String toModelName(String type) { // model name cannot use reserved keyword if (reservedWords.contains(type)) { - LOGGER.warn(type + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + type) + " before further processing"); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {} before further processing", + type, "model_" + type); type = "model_" + type; // e.g. return => ModelReturn (after camelize) } @@ -614,7 +615,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId), true)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId), true)); operationId = "call_" + operationId; } @@ -765,7 +766,7 @@ public void setParameterExampleValue(CodegenParameter p) { // e.g. [[SWGPet alloc] init example = "[[" + type + " alloc] init]"; } else { - LOGGER.warn("Example value for " + type + " not handled properly in setParameterExampleValue"); + LOGGER.warn("Example value for {} not handled properly in setParameterExampleValue", type); } if (example == null) { diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIGenerator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIGenerator.java index 9902ddb0740d..ccd3ff685d61 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIGenerator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OpenAPIGenerator.java @@ -89,7 +89,7 @@ public void processOpenAPI(OpenAPI openAPI) { try { String outputFile = outputFolder + File.separator + outputFileName; FileUtils.writeStringToFile(new File(outputFile), jsonOpenAPI, StandardCharsets.UTF_8); - LOGGER.info("wrote file to " + outputFile); + LOGGER.info("wrote file to {}", outputFile); } catch (Exception e) { LOGGER.error(e.getMessage(), e); } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java index fca307b1f661..b41bb590b361 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PerlClientCodegen.java @@ -336,13 +336,14 @@ public String toModelName(String name) { // model name cannot use reserved keyword if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -409,19 +410,19 @@ public String toOperationId(String operationId) { //rename to empty_function_name_1 (e.g.) if method name is empty if (StringUtils.isEmpty(operationId)) { operationId = underscore("empty_function_name_" + emptyFunctionNameCounter++); - LOGGER.warn("Empty method name (operationId) found. Renamed to " + operationId); + LOGGER.warn("Empty method name (operationId) found. Renamed to {}", operationId); return operationId; } // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); return underscore(sanitizeName("call_" + operationId)); } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } @@ -620,7 +621,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit code: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpSlim4ServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpSlim4ServerCodegen.java index 9105a4fe8de4..23a9de743378 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpSlim4ServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PhpSlim4ServerCodegen.java @@ -195,7 +195,9 @@ public void processOpts() { additionalProperties.put("isZendDiactoros", Boolean.TRUE); break; default: - LOGGER.warn("\"" + getPsr7Implementation() + "\" is invalid \"psr7Implementation\" codegen option. Default \"slim-psr7\" used instead."); + LOGGER.warn( + "\"{}\" is invalid \"psr7Implementation\" codegen option. Default \"slim-psr7\" used instead.", + getPsr7Implementation()); additionalProperties.put("isSlimPsr7", Boolean.TRUE); } @@ -353,7 +355,8 @@ public void setPsr7Implementation(String psr7Implementation) { break; default: this.psr7Implementation = "slim-psr7"; - LOGGER.warn("\"" + psr7Implementation + "\" is invalid \"psr7Implementation\" argument. Default \"slim-psr7\" used instead."); + LOGGER.warn("\"{}\" is invalid \"psr7Implementation\" argument. Default \"slim-psr7\" used instead.", + psr7Implementation); } } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PowerShellClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PowerShellClientCodegen.java index 0b4add676067..9eda8091fdf3 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PowerShellClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/PowerShellClientCodegen.java @@ -742,11 +742,15 @@ public void processOpts() { } if (additionalProperties.containsKey(CodegenConstants.MODEL_PACKAGE)) { - LOGGER.warn(CodegenConstants.MODEL_PACKAGE + " with " + this.getName() + " generator is ignored. Setting this value independently of " + CodegenConstants.PACKAGE_NAME + " is not currently supported."); + LOGGER.warn( + "{} with {} generator is ignored. Setting this value independently of {} is not currently supported.", + CodegenConstants.MODEL_PACKAGE, this.getName(), CodegenConstants.PACKAGE_NAME); } if (additionalProperties.containsKey(CodegenConstants.API_PACKAGE)) { - LOGGER.warn(CodegenConstants.API_PACKAGE + " with " + this.getName() + " generator is ignored. Setting this value independently of " + CodegenConstants.PACKAGE_NAME + " is not currently supported."); + LOGGER.warn( + "{} with {} generator is ignored. Setting this value independently of {} is not currently supported.", + CodegenConstants.API_PACKAGE, this.getName(), CodegenConstants.PACKAGE_NAME); } if (additionalProperties.containsKey(CodegenConstants.DISALLOW_ADDITIONAL_PROPERTIES_IF_NOT_PRESENT)) { @@ -887,13 +891,15 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word or special variable name) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word or special variable name) cannot be used as model name. Renamed to {}", + name, camelize("model_" + name)); name = camelize("model_" + name); // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = camelize("model_" + name); // e.g. 200Response => Model200Response (after camelize) } @@ -969,7 +975,8 @@ public String toParamName(String name) { // for param name reserved word or word starting with number, append _ if (paramNameReservedWords.contains(name) || name.matches("^\\d.*")) { - LOGGER.warn(name + " (reserved word or special variable name) cannot be used in naming. Renamed to " + escapeReservedWord(name)); + LOGGER.warn("{} (reserved word or special variable name) cannot be used in naming. Renamed to {}", name, + escapeReservedWord(name)); name = escapeReservedWord(name); } @@ -1100,7 +1107,8 @@ public String toVarName(String name) { // for reserved word or word starting with number, append _ if (isReservedWord(name) || name.matches("^\\d.*")) { - LOGGER.warn(name + " (reserved word or special variable name) cannot be used in naming. Renamed to " + escapeReservedWord(name)); + LOGGER.warn("{} (reserved word or special variable name) cannot be used in naming. Renamed to {}", name, + escapeReservedWord(name)); name = escapeReservedWord(name); } @@ -1310,7 +1318,7 @@ public void postProcessFile(File file, String fileType) { if (exitValue != 0) { LOGGER.error("Error running the command ({}). Exit value: {}", command, exitValue); } else { - LOGGER.info("Successfully executed: " + command); + LOGGER.info("Successfully executed: {}", command); } } catch (InterruptedException | IOException e) { LOGGER.error("Error running the command ({}). Exception: {}", command, e.getMessage()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ProtobufSchemaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ProtobufSchemaCodegen.java index e7bc5b46ef55..02a01627dd68 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ProtobufSchemaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ProtobufSchemaCodegen.java @@ -176,7 +176,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + camelize(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, camelize(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } @@ -390,13 +390,14 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } 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 a00683cbd4a0..5612b1d7b0ee 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 @@ -163,7 +163,9 @@ public void processOpts() { // 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"); + LOGGER.info( + "{} is hard coded to true in this generator. Alias models will only be generated if they contain validations or enums", + CodegenConstants.GENERATE_ALIAS_AS_MODEL); Boolean attrNoneIfUnset = false; if (additionalProperties.containsKey(CodegenConstants.PYTHON_ATTR_NONE_IF_UNSET)) { @@ -1106,7 +1108,7 @@ private String toExampleValueRecursive(String modelName, Schema schema, Object o String ref = ModelUtils.getSimpleRef(schema.get$ref()); Schema refSchema = allDefinitions.get(ref); if (null == refSchema) { - LOGGER.warn("Unable to find referenced schema " + schema.get$ref() + "\n"); + LOGGER.warn("Unable to find referenced schema {}\n", schema.get$ref()); return fullPrefix + "None" + closeChars; } String refModelName = getModelName(schema); @@ -1307,7 +1309,7 @@ private String toExampleValueRecursive(String modelName, Schema schema, Object o } return fullPrefix + closeChars; } else { - LOGGER.warn("Type " + schema.getType() + " not handled properly in toExampleValue"); + LOGGER.warn("Type {} not handled properly in toExampleValue", schema.getType()); } return example; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java index df86492ffbd8..1d441a98b2f8 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RClientCodegen.java @@ -306,13 +306,14 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + camelize("model_" + name)); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -402,7 +403,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + underscore("call_" + operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, underscore("call_" + operationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } @@ -716,7 +717,7 @@ public String constructExampleCode(CodegenParameter codegenParameter, HashMap Model200Response (after camelize) } @@ -495,20 +496,20 @@ public String toOperationId(String operationId) { // rename to empty_method_name_1 (e.g.) if method name is empty if (StringUtils.isEmpty(operationId)) { operationId = underscore("empty_method_name_" + emptyMethodNameCounter++); - LOGGER.warn("Empty method name (operationId) found. Renamed to " + operationId); + LOGGER.warn("Empty method name (operationId) found. Renamed to {}", operationId); return operationId; } // method name cannot use reserved keyword, e.g. return if (isReservedWord(operationId)) { String newOperationId = underscore("call_" + operationId); - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + newOperationId); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, newOperationId); return newOperationId; } // operationId starts with a number if (operationId.matches("^\\d.*")) { - LOGGER.warn(operationId + " (starting with a number) cannot be used as method name. Renamed to " + underscore(sanitizeName("call_" + operationId))); + LOGGER.warn("{} (starting with a number) cannot be used as method name. Renamed to {}", operationId, underscore(sanitizeName("call_" + operationId))); operationId = "call_" + operationId; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyOnRailsServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyOnRailsServerCodegen.java index 1cc82c8827b1..adcb79dc2f9e 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyOnRailsServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubyOnRailsServerCodegen.java @@ -238,7 +238,7 @@ public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String modelName = camelize("Model" + name); - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + modelName); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, modelName); return modelName; } @@ -252,7 +252,7 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { String filename = underscore("model_" + name); - LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + filename); + LOGGER.warn("{} (reserved word) cannot be used as model filename. Renamed to {}", name, filename); return filename; } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubySinatraServerCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubySinatraServerCodegen.java index c81426eb0170..1e51a349e0db 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubySinatraServerCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RubySinatraServerCodegen.java @@ -132,7 +132,7 @@ public String getSchemaType(Schema p) { public String toModelName(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + camelize("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model filename. Renamed to {}", name, camelize("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } @@ -145,7 +145,7 @@ public String toModelName(String name) { public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model filename. Renamed to " + underscore("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model filename. Renamed to {}", name, underscore("model_" + name)); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java index 2aa6d625e037..b6db793d9aef 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/RustClientCodegen.java @@ -406,13 +406,14 @@ public String toModelFilename(String name) { // model name cannot use reserved keyword, e.g. return if (isReservedWord(name)) { - LOGGER.warn(name + " (reserved word) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (reserved word) cannot be used as model name. Renamed to {}", name, "model_" + name); name = "model_" + name; // e.g. return => ModelReturn (after camelize) } // model name starts with number if (name.matches("^\\d.*")) { - LOGGER.warn(name + " (model name starts with number) cannot be used as model name. Renamed to " + ("model_" + name)); + LOGGER.warn("{} (model name starts with number) cannot be used as model name. Renamed to {}", name, + "model_" + name); name = "model_" + name; // e.g. 200Response => Model200Response (after camelize) } @@ -454,14 +455,15 @@ public String getTypeDeclaration(Schema p) { ArraySchema ap = (ArraySchema) p; Schema inner = ap.getItems(); if (inner == null) { - LOGGER.warn(ap.getName() + "(array property) does not have a proper inner type defined.Default to string"); + LOGGER.warn("{}(array property) does not have a proper inner type defined.Default to string", + ap.getName()); inner = new StringSchema().description("TODO default missing array inner type to string"); } return "Vec<" + getTypeDeclaration(inner) + ">"; } else if (ModelUtils.isMapSchema(p)) { Schema inner = getAdditionalProperties(p); if (inner == null) { - LOGGER.warn(p.getName() + "(map property) does not have a proper inner type defined. Default to string"); + LOGGER.warn("{}(map property) does not have a proper inner type defined. Default to string", p.getName()); inner = new StringSchema().description("TODO default missing map inner type to string"); } return "::std::collections::HashMap"; @@ -502,7 +504,7 @@ public String toOperationId(String operationId) { // method name cannot use reserved keyword, e.g. return if (isReservedWord(sanitizedOperationId)) { - LOGGER.warn(operationId + " (reserved word) cannot be used as method name. Renamed to " + StringUtils.underscore("call_" + operationId)); + LOGGER.warn("{} (reserved word) cannot be used as method name. Renamed to {}", operationId, StringUtils.underscore("call_" + operationId)); sanitizedOperationId = "call_" + sanitizedOperationId; } From 64ee3fe207585bbbb886fdfe6f8c611c907fb55b Mon Sep 17 00:00:00 2001 From: Georgy Ushakov Date: Mon, 7 Jun 2021 22:15:01 +0200 Subject: [PATCH 19/21] Added support for async accessToken in typescript-fetch (#9659) --- .../resources/typescript-fetch/apis.mustache | 8 +--- .../typescript-fetch/runtime.mustache | 6 +-- .../builds/default-v3.0/apis/FakeApi.ts | 2 +- .../builds/default-v3.0/apis/PetApi.ts | 48 ++++--------------- .../builds/default-v3.0/runtime.ts | 6 +-- .../builds/default/apis/PetApi.ts | 42 +++------------- .../builds/default/runtime.ts | 6 +-- .../typescript-fetch/builds/enum/runtime.ts | 6 +-- .../builds/es6-target/src/apis/PetApi.ts | 42 +++------------- .../builds/es6-target/src/runtime.ts | 6 +-- .../builds/multiple-parameters/apis/PetApi.ts | 42 +++------------- .../builds/multiple-parameters/runtime.ts | 6 +-- .../src/apis/PetApi.ts | 42 +++------------- .../src/runtime.ts | 6 +-- .../typescript-three-plus/src/apis/PetApi.ts | 42 +++------------- .../typescript-three-plus/src/runtime.ts | 6 +-- .../builds/with-interfaces/apis/PetApi.ts | 42 +++------------- .../builds/with-interfaces/runtime.ts | 6 +-- .../with-npm-version/src/apis/PetApi.ts | 42 +++------------- .../builds/with-npm-version/src/runtime.ts | 6 +-- .../without-runtime-checks/src/apis/PetApi.ts | 42 +++------------- .../without-runtime-checks/src/runtime.ts | 6 +-- 22 files changed, 100 insertions(+), 360 deletions(-) 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 8466deb2853e..851b9ce3831e 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/apis.mustache @@ -167,7 +167,7 @@ export class {{classname}} extends runtime.BaseAPI { {{#isBasicBearer}} if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; - const tokenString = typeof token === 'function' ? token("{{name}}", [{{#scopes}}"{{{scope}}}"{{^-last}}, {{/-last}}{{/scopes}}]) : token; + const tokenString = await token("{{name}}", [{{#scopes}}"{{{scope}}}"{{^-last}}, {{/-last}}{{/scopes}}]); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; @@ -192,11 +192,7 @@ export class {{classname}} extends runtime.BaseAPI { {{#isOAuth}} if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("{{name}}", [{{#scopes}}"{{{scope}}}"{{^-last}}, {{/-last}}{{/scopes}}]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("{{name}}", [{{#scopes}}"{{{scope}}}"{{^-last}}, {{/-last}}{{/scopes}}]); } {{/isOAuth}} 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 d0c29b93a755..e0498e0e316a 100644 --- a/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-fetch/runtime.mustache @@ -124,7 +124,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -164,10 +164,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } diff --git a/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/FakeApi.ts b/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/FakeApi.ts index 5985139ab238..31f05a52858a 100644 --- a/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/FakeApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/FakeApi.ts @@ -732,7 +732,7 @@ export class FakeApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; - const tokenString = typeof token === 'function' ? token("bearer_test", []) : token; + const tokenString = await token("bearer_test", []); if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; diff --git a/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/PetApi.ts index 854c14d7dcd3..198794ce8b0b 100644 --- a/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/default-v3.0/apis/PetApi.ts @@ -87,11 +87,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -130,11 +126,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -173,11 +165,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -218,11 +206,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -296,11 +280,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -335,11 +315,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -396,11 +372,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -464,11 +436,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ diff --git a/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts b/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts index cb001046c5b2..be992e2dac88 100644 --- a/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/default-v3.0/runtime.ts @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } diff --git a/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts index a219f15f7e2c..3bf150e489b6 100644 --- a/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/default/apis/PetApi.ts @@ -81,11 +81,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -124,11 +120,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -167,11 +159,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -212,11 +200,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -290,11 +274,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -329,11 +309,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -390,11 +366,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ diff --git a/samples/client/petstore/typescript-fetch/builds/default/runtime.ts b/samples/client/petstore/typescript-fetch/builds/default/runtime.ts index f7a51f623ff2..20374a38659d 100644 --- a/samples/client/petstore/typescript-fetch/builds/default/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/default/runtime.ts @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } diff --git a/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts b/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts index ccb0370bdc4a..d558d0ad7dee 100644 --- a/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/enum/runtime.ts @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } 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 a219f15f7e2c..3bf150e489b6 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 @@ -81,11 +81,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -124,11 +120,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -167,11 +159,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -212,11 +200,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -290,11 +274,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -329,11 +309,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -390,11 +366,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ 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 f7a51f623ff2..20374a38659d 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 @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts index 4c47ea2e1f10..db5971d0ad5f 100644 --- a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/apis/PetApi.ts @@ -81,11 +81,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -124,11 +120,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -167,11 +159,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -212,11 +200,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -290,11 +274,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -329,11 +309,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -390,11 +366,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ diff --git a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts index f7a51f623ff2..20374a38659d 100644 --- a/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/multiple-parameters/runtime.ts @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } 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 b98247c01daf..e2fd699fd73b 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 @@ -81,11 +81,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -124,11 +120,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -167,11 +159,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -212,11 +200,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -290,11 +274,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -329,11 +309,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -390,11 +366,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ 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 f7a51f623ff2..20374a38659d 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 @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } 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 a219f15f7e2c..3bf150e489b6 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 @@ -81,11 +81,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -124,11 +120,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -167,11 +159,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -212,11 +200,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -290,11 +274,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -329,11 +309,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -390,11 +366,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ 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 da5d9059bad3..95601f9e3076 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 @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts index d7f8f8a62fe8..f8224fdb55f1 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/apis/PetApi.ts @@ -218,11 +218,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -261,11 +257,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -304,11 +296,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -349,11 +337,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -427,11 +411,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -466,11 +446,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -527,11 +503,7 @@ export class PetApi extends runtime.BaseAPI implements PetApiInterface { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ diff --git a/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts b/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts index f7a51f623ff2..20374a38659d 100644 --- a/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/with-interfaces/runtime.ts @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } 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 a219f15f7e2c..3bf150e489b6 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 @@ -81,11 +81,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -124,11 +120,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -167,11 +159,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -212,11 +200,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -290,11 +274,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -329,11 +309,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -390,11 +366,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ 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 f7a51f623ff2..20374a38659d 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 @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } diff --git a/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/apis/PetApi.ts b/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/apis/PetApi.ts index dd0a9026b019..063d760e6ca5 100644 --- a/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/apis/PetApi.ts +++ b/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/apis/PetApi.ts @@ -77,11 +77,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -120,11 +116,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -163,11 +155,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -208,11 +196,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -286,11 +270,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const response = await this.request({ @@ -325,11 +305,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ @@ -386,11 +362,7 @@ export class PetApi extends runtime.BaseAPI { if (this.configuration && this.configuration.accessToken) { // oauth required - if (typeof this.configuration.accessToken === 'function') { - headerParameters["Authorization"] = this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); - } else { - headerParameters["Authorization"] = this.configuration.accessToken; - } + headerParameters["Authorization"] = await this.configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]); } const consumes: runtime.Consume[] = [ diff --git a/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts b/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts index f7a51f623ff2..20374a38659d 100644 --- a/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts +++ b/samples/client/petstore/typescript-fetch/builds/without-runtime-checks/src/runtime.ts @@ -135,7 +135,7 @@ export interface ConfigurationParameters { username?: string; // parameter for basic security password?: string; // parameter for basic security apiKey?: string | ((name: string) => string); // parameter for apiKey security - accessToken?: string | ((name?: string, scopes?: string[]) => string); // parameter for oauth2 security + accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string | Promise); // parameter for oauth2 security headers?: HTTPHeaders; //header params we want to use on every request credentials?: RequestCredentials; //value for the credentials param we want to use on each request } @@ -175,10 +175,10 @@ export class Configuration { return undefined; } - get accessToken(): ((name: string, scopes?: string[]) => string) | undefined { + get accessToken(): ((name?: string, scopes?: string[]) => string | Promise) | undefined { const accessToken = this.configuration.accessToken; if (accessToken) { - return typeof accessToken === 'function' ? accessToken : () => accessToken; + return typeof accessToken === 'function' ? accessToken : async () => accessToken; } return undefined; } From 7125ef43f5b24b0c0bcec064d8a1d803dfff3776 Mon Sep 17 00:00:00 2001 From: Mike Marchetti Date: Mon, 7 Jun 2021 16:17:25 -0400 Subject: [PATCH 20/21] Typescript: fix: add paramPropertyNaming (#9546) Model naming conforms to the property: modelPropertyNaming, however the parameter naming scheme is currently hardcoded to camelcase. Since the parameter names are closely tied to the model properties names, is maybe desirable to use a similar naming approach. The toParamName cannot directly use the paramPropertyNaming since that will cause issues with current generated code, since the modelPropertyNaming currently defaults to "original" A new property has been created to override this behavior, named "paramPropertyNaming", and its default is set to "camelcase". --- docs/generators/javascript-flowtyped.md | 1 + docs/generators/typescript-angular.md | 1 + .../typescript-angularjs-deprecated.md | 1 + docs/generators/typescript-aurelia.md | 1 + docs/generators/typescript-axios.md | 1 + docs/generators/typescript-fetch.md | 1 + docs/generators/typescript-inversify.md | 1 + docs/generators/typescript-jquery.md | 1 + docs/generators/typescript-nestjs.md | 1 + docs/generators/typescript-node.md | 1 + docs/generators/typescript-redux-query.md | 1 + docs/generators/typescript-rxjs.md | 1 + .../codegen/CodegenConstants.java | 5 +++ .../AbstractTypeScriptClientCodegen.java | 44 ++++++++++++++++++- ...ypeScriptAngularClientOptionsProvider.java | 2 + ...eScriptAngularJsClientOptionsProvider.java | 2 + ...ypeScriptAureliaClientOptionsProvider.java | 2 + .../TypeScriptFetchClientOptionsProvider.java | 2 + ...TypeScriptNestjsClientOptionsProvider.java | 2 + .../TypeScriptNodeClientOptionsProvider.java | 2 + .../TypeScriptAureliaClientOptionsTest.java | 1 + .../TypeScriptFetchClientOptionsTest.java | 1 + .../TypeScriptAngularClientCodegenTest.java | 27 ++++++++++++ .../TypeScriptAngularClientOptionsTest.java | 1 + .../TypeScriptAngularJsClientOptionsTest.java | 1 + .../TypeScriptNestjsClientOptionsTest.java | 1 + .../TypeScriptNodeClientOptionsTest.java | 1 + 27 files changed, 105 insertions(+), 1 deletion(-) diff --git a/docs/generators/javascript-flowtyped.md b/docs/generators/javascript-flowtyped.md index eca0bf2e0808..51ac05927d3e 100644 --- a/docs/generators/javascript-flowtyped.md +++ b/docs/generators/javascript-flowtyped.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-angular.md b/docs/generators/typescript-angular.md index 6916e3f662cc..67341026ceb5 100644 --- a/docs/generators/typescript-angular.md +++ b/docs/generators/typescript-angular.md @@ -24,6 +24,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |providedIn|Use this property to provide Injectables in wanted level (it is only valid in angular version greater or equal to 9.0.0).|
**root**
The application-level injector in most apps.
**none**
No providedIn (same as providedInRoot=false)
**any**
Provides a unique instance in each lazy loaded module while all eagerly loaded modules share one instance.
**platform**
A special singleton platform injector shared by all applications on the page.
|root| |providedInRoot|Use this property to provide Injectables in root (it is only valid in angular version greater or equal to 6.0.0). IMPORTANT: Deprecated for angular version greater or equal to 9.0.0, use **providedIn** instead.| |false| diff --git a/docs/generators/typescript-angularjs-deprecated.md b/docs/generators/typescript-angularjs-deprecated.md index 889c9fb3d2d9..9363a6958da7 100644 --- a/docs/generators/typescript-angularjs-deprecated.md +++ b/docs/generators/typescript-angularjs-deprecated.md @@ -15,6 +15,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C#have this enabled by default).|
**true**
The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.
**false**
The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.
|true| |modelPropertyNaming|Naming convention for the property: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name. Only change it if you provide your own run-time code for (de-)serialization of models| |original| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| |sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-aurelia.md b/docs/generators/typescript-aurelia.md index a1f568cfb65f..aaad28dd75bc 100644 --- a/docs/generators/typescript-aurelia.md +++ b/docs/generators/typescript-aurelia.md @@ -17,6 +17,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmName|The name under which you want to publish generated npm package. Required to generate a full package| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-axios.md b/docs/generators/typescript-axios.md index 5bddee541892..3e9f31aed5f0 100644 --- a/docs/generators/typescript-axios.md +++ b/docs/generators/typescript-axios.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url of your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-fetch.md b/docs/generators/typescript-fetch.md index 2acbe8c77413..d197da526a5b 100644 --- a/docs/generators/typescript-fetch.md +++ b/docs/generators/typescript-fetch.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prefixParameterInterfaces|Setting this property to true will generate parameter interface declarations prefixed with API class name to avoid name conflicts.| |false| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| diff --git a/docs/generators/typescript-inversify.md b/docs/generators/typescript-inversify.md index 41df5d2b2b7d..38077cb2b40a 100644 --- a/docs/generators/typescript-inversify.md +++ b/docs/generators/typescript-inversify.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-jquery.md b/docs/generators/typescript-jquery.md index 33713bf6f853..fcff7abe194b 100644 --- a/docs/generators/typescript-jquery.md +++ b/docs/generators/typescript-jquery.md @@ -19,6 +19,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-nestjs.md b/docs/generators/typescript-nestjs.md index 0697f2266f67..50e9acb16754 100644 --- a/docs/generators/typescript-nestjs.md +++ b/docs/generators/typescript-nestjs.md @@ -22,6 +22,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |serviceFileSuffix|The suffix of the file of the generated service (service<suffix>.ts).| |.service| |serviceSuffix|The suffix of the generated service.| |Service| diff --git a/docs/generators/typescript-node.md b/docs/generators/typescript-node.md index 8c755639588a..388dfd551bde 100644 --- a/docs/generators/typescript-node.md +++ b/docs/generators/typescript-node.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-redux-query.md b/docs/generators/typescript-redux-query.md index f35e028ff4b9..dd79fa1a433d 100644 --- a/docs/generators/typescript-redux-query.md +++ b/docs/generators/typescript-redux-query.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| diff --git a/docs/generators/typescript-rxjs.md b/docs/generators/typescript-rxjs.md index 05909b89bd27..509991799854 100644 --- a/docs/generators/typescript-rxjs.md +++ b/docs/generators/typescript-rxjs.md @@ -18,6 +18,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl |npmRepository|Use this property to set an url your private npmRepo in the package.json| |null| |npmVersion|The version of your npm package. If not provided, using the version from the OpenAPI specification file.| |1.0.0| |nullSafeAdditionalProps|Set to make additional properties types declare that their indexer may return undefined| |false| +|paramNaming|Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name| |camelCase| |prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false| |snapshot|When setting this property to true, the version will be suffixed with -SNAPSHOT.yyyyMMddHHmm| |false| |sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true| 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 631ff47eedbc..b8caef27e9f9 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 @@ -205,12 +205,17 @@ public class CodegenConstants { public static final String MODEL_PROPERTY_NAMING = "modelPropertyNaming"; public static final String MODEL_PROPERTY_NAMING_DESC = "Naming convention for the property: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name"; + public static final String PARAM_NAMING = "paramNaming"; + public static final String PARAM_NAMING_DESC = "Naming convention for parameters: 'camelCase', 'PascalCase', 'snake_case' and 'original', which keeps the original name"; + public static final String DOTNET_FRAMEWORK = "targetFramework"; public static final String DOTNET_FRAMEWORK_DESC = "The target .NET framework version. To target multiple frameworks, use `;` as the separator, e.g. `netstandard2.1;netcoreapp3.0`"; public static final String TEMPLATING_ENGINE = "templatingEngine"; public static final String TEMPLATING_ENGINE_DESC = "The templating engine plugin to use: \"mustache\" (default) or \"handlebars\" (beta)"; + public static enum PARAM_NAMING_TYPE {camelCase, PascalCase, snake_case, original} + public static enum MODEL_PROPERTY_NAMING_TYPE {camelCase, PascalCase, snake_case, original} public static enum ENUM_PROPERTY_NAMING_TYPE {camelCase, PascalCase, snake_case, original, UPPERCASE} diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java index d0f44116f573..c6762f1903ea 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractTypeScriptClientCodegen.java @@ -27,6 +27,7 @@ import org.apache.commons.lang3.StringUtils; import org.openapitools.codegen.CodegenConstants.ENUM_PROPERTY_NAMING_TYPE; import org.openapitools.codegen.CodegenConstants.MODEL_PROPERTY_NAMING_TYPE; +import org.openapitools.codegen.CodegenConstants.PARAM_NAMING_TYPE; import org.openapitools.codegen.*; import org.openapitools.codegen.meta.features.*; import org.openapitools.codegen.utils.ModelUtils; @@ -64,6 +65,7 @@ public abstract class AbstractTypeScriptClientCodegen extends DefaultCodegen imp protected MODEL_PROPERTY_NAMING_TYPE modelPropertyNaming = MODEL_PROPERTY_NAMING_TYPE.original; protected ENUM_PROPERTY_NAMING_TYPE enumPropertyNaming = ENUM_PROPERTY_NAMING_TYPE.PascalCase; + protected PARAM_NAMING_TYPE paramNaming = PARAM_NAMING_TYPE.camelCase; protected Boolean supportsES6 = false; protected Boolean nullSafeAdditionalProps = false; protected HashSet languageGenericTypes; @@ -175,6 +177,7 @@ public AbstractTypeScriptClientCodegen() { cliOptions.add(new CliOption(CodegenConstants.ENUM_PROPERTY_NAMING, CodegenConstants.ENUM_PROPERTY_NAMING_DESC).defaultValue(this.enumPropertyNaming.name())); cliOptions.add(new CliOption(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_DESC_WITH_WARNING).defaultValue(this.modelPropertyNaming.name())); cliOptions.add(new CliOption(CodegenConstants.SUPPORTS_ES6, CodegenConstants.SUPPORTS_ES6_DESC).defaultValue(String.valueOf(this.getSupportsES6()))); + cliOptions.add(new CliOption(CodegenConstants.PARAM_NAMING, CodegenConstants.PARAM_NAMING_DESC).defaultValue(this.paramNaming.name())); this.cliOptions.add(new CliOption(NPM_NAME, "The name under which you want to publish generated npm package." + " Required to generate a full package")); this.cliOptions.add(new CliOption(NPM_VERSION, "The version of your npm package. If not provided, using the version from the OpenAPI specification file.").defaultValue(this.getNpmVersion())); @@ -212,6 +215,10 @@ public void processOpts() { setModelPropertyNaming((String) additionalProperties.get(CodegenConstants.MODEL_PROPERTY_NAMING)); } + if (additionalProperties.containsKey(CodegenConstants.PARAM_NAMING)) { + setParamNaming((String) additionalProperties.get(CodegenConstants.PARAM_NAMING)); + } + if (additionalProperties.containsKey(CodegenConstants.SUPPORTS_ES6)) { setSupportsES6(Boolean.valueOf(additionalProperties.get(CodegenConstants.SUPPORTS_ES6).toString())); additionalProperties.put("supportsES6", getSupportsES6()); @@ -330,7 +337,7 @@ public String toParamName(String name) { name = "_u"; } - name = camelize(name, true); + name = getNameUsingParamNaming(name); name = toSafeIdentifier(name); return name; @@ -597,10 +604,45 @@ public void setModelPropertyNaming(String naming) { } } + public void setParamNaming(String naming) { + try { + paramNaming = PARAM_NAMING_TYPE.valueOf(naming); + } catch (IllegalArgumentException e) { + String values = Stream.of(PARAM_NAMING_TYPE.values()) + .map(value -> "'" + value.name() + "'") + .collect(Collectors.joining(", ")); + + String msg = String.format(Locale.ROOT, "Invalid parameter naming '%s'. Must be one of %s.", naming, values); + throw new IllegalArgumentException(msg); + } + } + public MODEL_PROPERTY_NAMING_TYPE getModelPropertyNaming() { return modelPropertyNaming; } + public PARAM_NAMING_TYPE getParamNaming() { + return paramNaming; + } + + private String getNameUsingParamNaming(String name) { + switch (getParamNaming()) { + 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 param naming '" + + name + "'. Must be 'original', 'camelCase', " + + "'PascalCase' or 'snake_case'"); + } + + } + private String getNameUsingModelPropertyNaming(String name) { switch (getModelPropertyNaming()) { case original: diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularClientOptionsProvider.java index eb8d90a468b8..aa67286b9786 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularClientOptionsProvider.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularClientOptionsProvider.java @@ -34,6 +34,7 @@ public class TypeScriptAngularClientOptionsProvider implements OptionsProvider { public static final String ENSURE_UNIQUE_PARAMS_VALUE = "true"; public static final String ENUM_PROPERTY_NAMING_VALUE = "PascalCase"; public static final String MODEL_PROPERTY_NAMING_VALUE = "camelCase"; + public static final String PARAM_NAMING_VALUE = "camelCase"; private static final String NPM_NAME = "npmName"; private static final String NPM_VERSION = "1.1.2"; private static final String NPM_REPOSITORY = "https://registry.npmjs.org"; @@ -63,6 +64,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(CodegenConstants.ENUM_PROPERTY_NAMING, ENUM_PROPERTY_NAMING_VALUE) .put(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_VALUE) + .put(CodegenConstants.PARAM_NAMING, PARAM_NAMING_VALUE) .put(CodegenConstants.SUPPORTS_ES6, SUPPORTS_ES6_VALUE) .put(AbstractTypeScriptClientCodegen.NULL_SAFE_ADDITIONAL_PROPS, NULL_SAFE_ADDITIONAL_PROPS_VALUE) .put(CodegenConstants.ENUM_NAME_SUFFIX, ENUM_NAME_SUFFIX) diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularJsClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularJsClientOptionsProvider.java index 2c56e0c1268d..1b9c8a58e174 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularJsClientOptionsProvider.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAngularJsClientOptionsProvider.java @@ -31,6 +31,7 @@ public class TypeScriptAngularJsClientOptionsProvider implements OptionsProvider public static final String SORT_MODEL_PROPERTIES_VALUE = "false"; public static final String ENSURE_UNIQUE_PARAMS_VALUE = "true"; public static final String MODEL_PROPERTY_NAMING_VALUE = "camelCase"; + public static final String PARAM_NAMING_VALUE = "camelCase"; public static final String ENUM_PROPERTY_NAMING_VALUE = "PascalCase"; public static final String ALLOW_UNICODE_IDENTIFIERS_VALUE = "false"; public static final String PREPEND_FORM_OR_BODY_PARAMETERS_VALUE = "true"; @@ -51,6 +52,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(CodegenConstants.ENUM_PROPERTY_NAMING, ENUM_PROPERTY_NAMING_VALUE) .put(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_VALUE) + .put(CodegenConstants.PARAM_NAMING, PARAM_NAMING_VALUE) .put(CodegenConstants.ALLOW_UNICODE_IDENTIFIERS, ALLOW_UNICODE_IDENTIFIERS_VALUE) .put(CodegenConstants.PREPEND_FORM_OR_BODY_PARAMETERS, PREPEND_FORM_OR_BODY_PARAMETERS_VALUE) .put(CodegenConstants.LEGACY_DISCRIMINATOR_BEHAVIOR, "true") diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAureliaClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAureliaClientOptionsProvider.java index cae9790d8dad..939a0fad979b 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAureliaClientOptionsProvider.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptAureliaClientOptionsProvider.java @@ -33,6 +33,7 @@ public class TypeScriptAureliaClientOptionsProvider implements OptionsProvider { public static final String ENUM_NAME_SUFFIX = "Enum"; public static final String ENUM_PROPERTY_NAMING_VALUE = "PascalCase"; public static final String MODEL_PROPERTY_NAMING_VALUE = "camelCase"; + public static final String PARAM_NAMING_VALUE = "camelCase"; private static final String NPM_NAME = "npmName"; private static final String NPM_VERSION = "1.0.0"; public static final String ALLOW_UNICODE_IDENTIFIERS_VALUE = "false"; @@ -51,6 +52,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(CodegenConstants.ENUM_PROPERTY_NAMING, ENUM_PROPERTY_NAMING_VALUE) .put(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_VALUE) + .put(CodegenConstants.PARAM_NAMING, PARAM_NAMING_VALUE) .put(CodegenConstants.SUPPORTS_ES6, String.valueOf(SUPPORTS_ES6_VALUE)) .put(AbstractTypeScriptClientCodegen.NULL_SAFE_ADDITIONAL_PROPS, String.valueOf(NULL_SAFE_ADDITIONAL_PROPS_VALUE)) .put(CodegenConstants.ENUM_NAME_SUFFIX, ENUM_NAME_SUFFIX) diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java index be8e06e79fe2..d4aecd9852ec 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptFetchClientOptionsProvider.java @@ -32,6 +32,7 @@ public class TypeScriptFetchClientOptionsProvider implements OptionsProvider { public static final Boolean NULL_SAFE_ADDITIONAL_PROPS_VALUE = false; public static final String ENUM_NAME_SUFFIX = "Enum"; public static final String MODEL_PROPERTY_NAMING_VALUE = "camelCase"; + public static final String PARAM_NAMING_VALUE = "camelCase"; public static final String ENUM_PROPERTY_NAMING_VALUE = "PascalCase"; private static final String NMP_NAME = "npmName"; private static final String NMP_VERSION = "1.0.0"; @@ -54,6 +55,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(CodegenConstants.ENUM_PROPERTY_NAMING, ENUM_PROPERTY_NAMING_VALUE) .put(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_VALUE) + .put(CodegenConstants.PARAM_NAMING, PARAM_NAMING_VALUE) .put(CodegenConstants.SUPPORTS_ES6, String.valueOf(SUPPORTS_ES6_VALUE)) .put(AbstractTypeScriptClientCodegen.NULL_SAFE_ADDITIONAL_PROPS, String.valueOf(NULL_SAFE_ADDITIONAL_PROPS_VALUE)) .put(CodegenConstants.ENUM_NAME_SUFFIX, ENUM_NAME_SUFFIX) diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNestjsClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNestjsClientOptionsProvider.java index ee49aa17dd84..d86f586e15c3 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNestjsClientOptionsProvider.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNestjsClientOptionsProvider.java @@ -33,6 +33,7 @@ public class TypeScriptNestjsClientOptionsProvider implements OptionsProvider { public static final String ENSURE_UNIQUE_PARAMS_VALUE = "true"; public static final String ENUM_PROPERTY_NAMING_VALUE = "PascalCase"; public static final String MODEL_PROPERTY_NAMING_VALUE = "camelCase"; + public static final String PARAM_NAMING_VALUE = "camelCase"; private static final String NMP_NAME = "npmName"; private static final String NMP_VERSION = "1.1.2"; private static final String NPM_REPOSITORY = "https://registry.npmjs.org"; @@ -59,6 +60,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(CodegenConstants.ENUM_PROPERTY_NAMING, ENUM_PROPERTY_NAMING_VALUE) .put(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_VALUE) + .put(CodegenConstants.PARAM_NAMING, PARAM_NAMING_VALUE) .put(CodegenConstants.SUPPORTS_ES6, SUPPORTS_ES6_VALUE) .put(AbstractTypeScriptClientCodegen.NULL_SAFE_ADDITIONAL_PROPS, NULL_SAFE_ADDITIONAL_PROPS_VALUE) .put(CodegenConstants.ENUM_NAME_SUFFIX, ENUM_NAME_SUFFIX) diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNodeClientOptionsProvider.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNodeClientOptionsProvider.java index 0600f14838cc..fb2b6a741dc5 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNodeClientOptionsProvider.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/options/TypeScriptNodeClientOptionsProvider.java @@ -33,6 +33,7 @@ public class TypeScriptNodeClientOptionsProvider implements OptionsProvider { public static final String SORT_MODEL_PROPERTIES_VALUE = "false"; public static final String ENSURE_UNIQUE_PARAMS_VALUE = "true"; public static final String MODEL_PROPERTY_NAMING_VALUE = "camelCase"; + public static final String PARAM_NAMING_VALUE = "camelCase"; public static final String ENUM_PROPERTY_NAMING_VALUE = "PascalCase"; public static final String NMP_NAME = "npmName"; public static final String NMP_VERSION = "1.1.2"; @@ -57,6 +58,7 @@ public Map createOptions() { .put(CodegenConstants.ENSURE_UNIQUE_PARAMS, ENSURE_UNIQUE_PARAMS_VALUE) .put(CodegenConstants.ENUM_PROPERTY_NAMING, ENUM_PROPERTY_NAMING_VALUE) .put(CodegenConstants.MODEL_PROPERTY_NAMING, MODEL_PROPERTY_NAMING_VALUE) + .put(CodegenConstants.PARAM_NAMING, PARAM_NAMING_VALUE) .put(TypeScriptAngularClientCodegen.NPM_NAME, NMP_NAME) .put(TypeScriptAngularClientCodegen.NPM_VERSION, NMP_VERSION) .put(TypeScriptAngularClientCodegen.SNAPSHOT, Boolean.FALSE.toString()) diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/aurelia/TypeScriptAureliaClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/aurelia/TypeScriptAureliaClientOptionsTest.java index c8e6a379abd8..cd247de1190c 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/aurelia/TypeScriptAureliaClientOptionsTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/aurelia/TypeScriptAureliaClientOptionsTest.java @@ -42,6 +42,7 @@ protected CodegenConfig getCodegenConfig() { protected void verifyOptions() { verify(clientCodegen).setSortParamsByRequiredFlag(Boolean.valueOf(TypeScriptAureliaClientOptionsProvider.SORT_PARAMS_VALUE)); verify(clientCodegen).setModelPropertyNaming(TypeScriptAureliaClientOptionsProvider.MODEL_PROPERTY_NAMING_VALUE); + verify(clientCodegen).setParamNaming(TypeScriptAureliaClientOptionsProvider.PARAM_NAMING_VALUE); verify(clientCodegen).setSupportsES6(TypeScriptAureliaClientOptionsProvider.SUPPORTS_ES6_VALUE); verify(clientCodegen).setPrependFormOrBodyParameters(Boolean.valueOf(TypeScriptAureliaClientOptionsProvider.PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)); } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/fetch/TypeScriptFetchClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/fetch/TypeScriptFetchClientOptionsTest.java index 6bc2631f6e60..33ef4b99bd49 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/fetch/TypeScriptFetchClientOptionsTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/fetch/TypeScriptFetchClientOptionsTest.java @@ -42,6 +42,7 @@ protected CodegenConfig getCodegenConfig() { protected void verifyOptions() { verify(clientCodegen).setSortParamsByRequiredFlag(Boolean.valueOf(TypeScriptFetchClientOptionsProvider.SORT_PARAMS_VALUE)); verify(clientCodegen).setModelPropertyNaming(TypeScriptFetchClientOptionsProvider.MODEL_PROPERTY_NAMING_VALUE); + verify(clientCodegen).setParamNaming(TypeScriptFetchClientOptionsProvider.PARAM_NAMING_VALUE); verify(clientCodegen).setSupportsES6(TypeScriptFetchClientOptionsProvider.SUPPORTS_ES6_VALUE); verify(clientCodegen).setPrependFormOrBodyParameters(Boolean.valueOf(TypeScriptFetchClientOptionsProvider.PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)); verify(clientCodegen).setTypescriptThreePlus(Boolean.valueOf(TypeScriptFetchClientOptionsProvider.TYPESCRIPT_THREE_PLUS)); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientCodegenTest.java index 059e5004ad4e..07e2216710b3 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientCodegenTest.java @@ -231,4 +231,31 @@ public void testKebabCasedModelFilenames() { Assert.assertEquals(codegen.toModelImport(modelName), "model/foo-response-links"); Assert.assertEquals(codegen.toModelFilename(modelName), "./foo-response-links"); } + + @Test + public void testToParamNaming() { + TypeScriptAngularClientCodegen codegen = new TypeScriptAngularClientCodegen(); + // unspecified option should default to camelcase + codegen.processOpts(); + Assert.assertEquals(codegen.toParamName("valid_id"), "validId"); + Assert.assertEquals(codegen.toParamName("illegal-id+"), "illegalId"); + + codegen = new TypeScriptAngularClientCodegen(); + codegen.additionalProperties().put(CodegenConstants.PARAM_NAMING, CodegenConstants.PARAM_NAMING_TYPE.original.name()); + codegen.processOpts(); + Assert.assertEquals(codegen.toParamName("valid_id"), "valid_id"); + Assert.assertEquals(codegen.toParamName("illegal-id+"), "illegal_id"); + + codegen = new TypeScriptAngularClientCodegen(); + codegen.additionalProperties().put(CodegenConstants.PARAM_NAMING, CodegenConstants.PARAM_NAMING_TYPE.snake_case.name()); + codegen.processOpts(); + Assert.assertEquals(codegen.toParamName("valid_ID"), "valid_id"); + Assert.assertEquals(codegen.toParamName("Illegal-Id+"), "illegal_id"); + + codegen = new TypeScriptAngularClientCodegen(); + codegen.additionalProperties().put(CodegenConstants.PARAM_NAMING, CodegenConstants.PARAM_NAMING_TYPE.PascalCase.name()); + codegen.processOpts(); + Assert.assertEquals(codegen.toParamName("valid_id"), "ValidId"); + Assert.assertEquals(codegen.toParamName("illegal-id+"), "IllegalId"); + } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientOptionsTest.java index 9bc5eafb1bd7..5359b81e6a52 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientOptionsTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangular/TypeScriptAngularClientOptionsTest.java @@ -46,5 +46,6 @@ protected void verifyOptions() { verify(clientCodegen).setStringEnums(Boolean.parseBoolean(TypeScriptAngularClientOptionsProvider.STRING_ENUMS_VALUE)); verify(clientCodegen).setPrependFormOrBodyParameters(Boolean.valueOf(TypeScriptAngularClientOptionsProvider.PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)); verify(clientCodegen).setQueryParamObjectFormat(TypeScriptAngularClientOptionsProvider.QUERY_PARAM_OBJECT_FORMAT_VALUE); + verify(clientCodegen).setParamNaming(TypeScriptAngularClientOptionsProvider.PARAM_NAMING_VALUE); } } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangularjs/TypeScriptAngularJsClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangularjs/TypeScriptAngularJsClientOptionsTest.java index f966d40b21cd..54710992d911 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangularjs/TypeScriptAngularJsClientOptionsTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptangularjs/TypeScriptAngularJsClientOptionsTest.java @@ -42,6 +42,7 @@ protected CodegenConfig getCodegenConfig() { protected void verifyOptions() { verify(clientCodegen).setSortParamsByRequiredFlag(Boolean.valueOf(TypeScriptAngularJsClientOptionsProvider.SORT_PARAMS_VALUE)); verify(clientCodegen).setModelPropertyNaming(TypeScriptAngularJsClientOptionsProvider.MODEL_PROPERTY_NAMING_VALUE); + verify(clientCodegen).setParamNaming(TypeScriptAngularJsClientOptionsProvider.PARAM_NAMING_VALUE); verify(clientCodegen).setSupportsES6(Boolean.valueOf(TypeScriptAngularJsClientOptionsProvider.SUPPORTS_ES6_VALUE)); verify(clientCodegen).setPrependFormOrBodyParameters(Boolean.valueOf(TypeScriptAngularJsClientOptionsProvider.PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)); } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnestjs/TypeScriptNestjsClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnestjs/TypeScriptNestjsClientOptionsTest.java index a2d137537fbe..5f2138a66c29 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnestjs/TypeScriptNestjsClientOptionsTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnestjs/TypeScriptNestjsClientOptionsTest.java @@ -42,6 +42,7 @@ protected CodegenConfig getCodegenConfig() { protected void verifyOptions() { verify(clientCodegen).setSortParamsByRequiredFlag(Boolean.valueOf(TypeScriptNestjsClientOptionsProvider.SORT_PARAMS_VALUE)); verify(clientCodegen).setModelPropertyNaming(TypeScriptNestjsClientOptionsProvider.MODEL_PROPERTY_NAMING_VALUE); + verify(clientCodegen).setParamNaming(TypeScriptNestjsClientOptionsProvider.PARAM_NAMING_VALUE); verify(clientCodegen).setSupportsES6(Boolean.valueOf(TypeScriptNestjsClientOptionsProvider.SUPPORTS_ES6_VALUE)); verify(clientCodegen).setStringEnums(Boolean.parseBoolean(TypeScriptNestjsClientOptionsProvider.STRING_ENUMS_VALUE)); verify(clientCodegen).setPrependFormOrBodyParameters(Boolean.valueOf(TypeScriptNestjsClientOptionsProvider.PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnode/TypeScriptNodeClientOptionsTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnode/TypeScriptNodeClientOptionsTest.java index bf7e05099258..414c63dd279a 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnode/TypeScriptNodeClientOptionsTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/typescript/typescriptnode/TypeScriptNodeClientOptionsTest.java @@ -42,6 +42,7 @@ protected CodegenConfig getCodegenConfig() { protected void verifyOptions() { verify(clientCodegen).setSortParamsByRequiredFlag(Boolean.valueOf(TypeScriptNodeClientOptionsProvider.SORT_PARAMS_VALUE)); verify(clientCodegen).setModelPropertyNaming(TypeScriptNodeClientOptionsProvider.MODEL_PROPERTY_NAMING_VALUE); + verify(clientCodegen).setParamNaming(TypeScriptNodeClientOptionsProvider.PARAM_NAMING_VALUE); verify(clientCodegen).setSupportsES6(Boolean.valueOf(TypeScriptNodeClientOptionsProvider.SUPPORTS_ES6_VALUE)); verify(clientCodegen).setPrependFormOrBodyParameters(Boolean.valueOf(TypeScriptNodeClientOptionsProvider.PREPEND_FORM_OR_BODY_PARAMETERS_VALUE)); } From 37b7c80c4f9b45223657fcc85c3fa3a002f54121 Mon Sep 17 00:00:00 2001 From: William Cheng Date: Tue, 8 Jun 2021 09:09:21 +0800 Subject: [PATCH 21/21] null check on $ContentTypes (#9687) --- .../src/main/resources/powershell/api_client.mustache | 4 ++++ .../powershell/src/PSPetstore/Private/PSApiClient.ps1 | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/modules/openapi-generator/src/main/resources/powershell/api_client.mustache b/modules/openapi-generator/src/main/resources/powershell/api_client.mustache index b17371ad1e37..7d45f071b1e6 100644 --- a/modules/openapi-generator/src/main/resources/powershell/api_client.mustache +++ b/modules/openapi-generator/src/main/resources/powershell/api_client.mustache @@ -211,6 +211,10 @@ function DeserializeResponse { [string[]]$ContentTypes ) + If ($ContentTypes -eq $null) { + $ContentTypes = [string[]]@() + } + If ([string]::IsNullOrEmpty($ReturnType) -and $ContentTypes.Count -eq 0) { # void response return $Response } Elseif ($ReturnType -match '\[\]$') { # array diff --git a/samples/client/petstore/powershell/src/PSPetstore/Private/PSApiClient.ps1 b/samples/client/petstore/powershell/src/PSPetstore/Private/PSApiClient.ps1 index 9223b3a93e61..09a202cee9df 100644 --- a/samples/client/petstore/powershell/src/PSPetstore/Private/PSApiClient.ps1 +++ b/samples/client/petstore/powershell/src/PSPetstore/Private/PSApiClient.ps1 @@ -198,6 +198,10 @@ function DeserializeResponse { [string[]]$ContentTypes ) + If ($ContentTypes -eq $null) { + $ContentTypes = [string[]]@() + } + If ([string]::IsNullOrEmpty($ReturnType) -and $ContentTypes.Count -eq 0) { # void response return $Response } Elseif ($ReturnType -match '\[\]$') { # array