From 65c77a500388bb21dd94fd18bd7046fbe045e8ad Mon Sep 17 00:00:00 2001 From: devhl Date: Sat, 3 May 2025 18:15:47 -0400 Subject: [PATCH 1/4] fixed duplicate property names --- .../languages/AbstractCSharpCodegen.java | 25 +- ...odels-for-testing-with-http-signature.yaml | 23 ++ .../FormModels/.openapi-generator/FILES | 4 + .../net4.7/FormModels/api/openapi.yaml | 25 ++ .../net4.7/FormModels/docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../FormModels/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../net4.7/Petstore/.openapi-generator/FILES | 4 + .../net4.7/Petstore/api/openapi.yaml | 25 ++ .../net4.7/Petstore/docs/apis/DefaultApi.md | 86 +++++ .../Petstore/docs/models/OneOfArrayRequest.md | 9 + .../net4.7/Petstore/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../FormModels/.openapi-generator/FILES | 4 + .../net4.8/FormModels/api/openapi.yaml | 25 ++ .../net4.8/FormModels/docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../FormModels/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../net4.8/Petstore/.openapi-generator/FILES | 4 + .../net4.8/Petstore/api/openapi.yaml | 25 ++ .../net4.8/Petstore/docs/apis/DefaultApi.md | 86 +++++ .../Petstore/docs/models/OneOfArrayRequest.md | 9 + .../net4.8/Petstore/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../net8/FormModels/.openapi-generator/FILES | 4 + .../net8/FormModels/api/openapi.yaml | 25 ++ .../net8/FormModels/docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../net8/FormModels/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../.openapi-generator/FILES | 4 + .../net8/NullReferenceTypes/api/openapi.yaml | 25 ++ .../docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 197 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 176 +++++++++++ .../net8/Petstore/.openapi-generator/FILES | 4 + .../net8/Petstore/api/openapi.yaml | 25 ++ .../net8/Petstore/docs/apis/DefaultApi.md | 86 +++++ .../Petstore/docs/models/OneOfArrayRequest.md | 9 + .../net8/Petstore/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../SourceGeneration/.openapi-generator/FILES | 4 + .../net8/SourceGeneration/api/openapi.yaml | 25 ++ .../SourceGeneration/docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 4 + .../Model/OneOfArrayRequest.cs | 205 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 184 +++++++++++ .../net9/FormModels/.openapi-generator/FILES | 4 + .../net9/FormModels/api/openapi.yaml | 25 ++ .../net9/FormModels/docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../net9/FormModels/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../.openapi-generator/FILES | 4 + .../net9/NullReferenceTypes/api/openapi.yaml | 25 ++ .../docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 197 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 176 +++++++++++ .../net9/Petstore/.openapi-generator/FILES | 4 + .../net9/Petstore/api/openapi.yaml | 25 ++ .../net9/Petstore/docs/apis/DefaultApi.md | 86 +++++ .../Petstore/docs/models/OneOfArrayRequest.md | 9 + .../net9/Petstore/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../SourceGeneration/.openapi-generator/FILES | 4 + .../net9/SourceGeneration/api/openapi.yaml | 25 ++ .../SourceGeneration/docs/apis/DefaultApi.md | 86 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 4 + .../Model/OneOfArrayRequest.cs | 205 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 184 +++++++++++ .../Petstore/.openapi-generator/FILES | 4 + .../standard2.0/Petstore/api/openapi.yaml | 25 ++ .../Petstore/docs/apis/DefaultApi.md | 86 +++++ .../Petstore/docs/models/OneOfArrayRequest.md | 9 + .../Petstore/docs/models/TestObject.md | 10 + .../Api/DefaultApiTests.cs | 10 + .../Model/OneOfArrayRequestTests.cs | 56 ++++ .../Model/TestObjectTests.cs | 65 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 ++++++++++++++ .../Client/HostConfiguration.cs | 2 + .../Model/OneOfArrayRequest.cs | 195 ++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ++++++++++ .../net9/Petstore/.openapi-generator/FILES | 4 + .../csharp/httpclient/net9/Petstore/README.md | 3 + .../httpclient/net9/Petstore/api/openapi.yaml | 25 ++ .../net9/Petstore/docs/DefaultApi.md | 90 ++++++ .../net9/Petstore/docs/OneOfArrayRequest.md | 9 + .../net9/Petstore/docs/TestObject.md | 10 + .../Model/OneOfArrayRequestTests.cs | 57 ++++ .../Model/TestObjectTests.cs | 66 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 149 +++++++++ .../Model/OneOfArrayRequest.cs | 296 ++++++++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 133 ++++++++ .../Petstore/.openapi-generator/FILES | 4 + .../httpclient/standard2.0/Petstore/README.md | 3 + .../standard2.0/Petstore/api/openapi.yaml | 25 ++ .../standard2.0/Petstore/docs/DefaultApi.md | 90 ++++++ .../Petstore/docs/OneOfArrayRequest.md | 9 + .../standard2.0/Petstore/docs/TestObject.md | 10 + .../Model/OneOfArrayRequestTests.cs | 57 ++++ .../Model/TestObjectTests.cs | 66 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 149 +++++++++ .../Model/OneOfArrayRequest.cs | 296 ++++++++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 133 ++++++++ .../net8/Petstore/.openapi-generator/FILES | 4 + .../csharp/restsharp/net8/Petstore/README.md | 3 + .../restsharp/net8/Petstore/api/openapi.yaml | 25 ++ .../net8/Petstore/docs/DefaultApi.md | 86 +++++ .../net8/Petstore/docs/OneOfArrayRequest.md | 9 + .../net8/Petstore/docs/TestObject.md | 10 + .../Model/OneOfArrayRequestTests.cs | 57 ++++ .../Model/TestObjectTests.cs | 66 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 179 +++++++++++ .../Model/OneOfArrayRequest.cs | 295 +++++++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 120 +++++++ .../.openapi-generator/FILES | 4 + .../ConditionalSerialization/README.md | 3 + .../ConditionalSerialization/api/openapi.yaml | 25 ++ .../docs/DefaultApi.md | 86 +++++ .../docs/OneOfArrayRequest.md | 9 + .../docs/TestObject.md | 10 + .../Model/OneOfArrayRequestTests.cs | 57 ++++ .../Model/TestObjectTests.cs | 66 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 179 +++++++++++ .../Model/OneOfArrayRequest.cs | 295 +++++++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 154 +++++++++ .../net9/Petstore/.openapi-generator/FILES | 4 + .../unityWebRequest/net9/Petstore/README.md | 3 + .../net9/Petstore/api/openapi.yaml | 25 ++ .../net9/Petstore/docs/DefaultApi.md | 86 +++++ .../net9/Petstore/docs/OneOfArrayRequest.md | 9 + .../net9/Petstore/docs/TestObject.md | 10 + .../Model/OneOfArrayRequestTests.cs | 58 ++++ .../Model/TestObjectTests.cs | 66 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 160 ++++++++++ .../Model/OneOfArrayRequest.cs | 286 +++++++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 118 +++++++ .../Petstore/.openapi-generator/FILES | 4 + .../standard2.0/Petstore/README.md | 3 + .../standard2.0/Petstore/api/openapi.yaml | 25 ++ .../standard2.0/Petstore/docs/DefaultApi.md | 86 +++++ .../Petstore/docs/OneOfArrayRequest.md | 9 + .../standard2.0/Petstore/docs/TestObject.md | 10 + .../Model/OneOfArrayRequestTests.cs | 58 ++++ .../Model/TestObjectTests.cs | 66 ++++ .../src/Org.OpenAPITools/Api/DefaultApi.cs | 160 ++++++++++ .../Model/OneOfArrayRequest.cs | 286 +++++++++++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 118 +++++++ 224 files changed, 16481 insertions(+), 5 deletions(-) create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/docs/TestObject.md create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/docs/TestObject.md create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs 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 62cec7beed39..84c47521f1d0 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 @@ -625,10 +625,11 @@ public Map postProcessAllModels(Map objs) CodegenComposedSchemas composedSchemas = model.getComposedSchemas(); if (composedSchemas != null) { + Set composedPropertyNames = new HashSet(); List allOf = composedSchemas.getAllOf(); if (allOf != null) { for (CodegenProperty property : allOf) { - property.name = patchPropertyName(model, camelize(property.baseType)); + property.name = patchPropertyName(model, camelize(property.baseType), composedPropertyNames); patchPropertyVendorExtensions(property); } } @@ -637,7 +638,7 @@ public Map postProcessAllModels(Map objs) if (anyOf != null) { removePropertiesDeclaredInComposedTypes(objs, model, anyOf); for (CodegenProperty property : anyOf) { - property.name = patchPropertyName(model, camelize(property.baseType)); + property.name = patchPropertyName(model, camelize(property.baseType), composedPropertyNames); property.isNullable = true; patchPropertyVendorExtensions(property); property.vendorExtensions.put("x-base-name", model.name.substring(model.name.lastIndexOf('_') + 1)); @@ -648,7 +649,7 @@ public Map postProcessAllModels(Map objs) if (oneOf != null) { removePropertiesDeclaredInComposedTypes(objs, model, oneOf); for (CodegenProperty property : oneOf) { - property.name = patchPropertyName(model, camelize(property.baseType)); + property.name = patchPropertyName(model, camelize(property.baseType), composedPropertyNames); property.isNullable = true; patchPropertyVendorExtensions(property); property.vendorExtensions.put("x-base-name", model.name.substring(model.name.lastIndexOf('_') + 1)); @@ -715,13 +716,27 @@ private boolean modelIsMutable(CodegenModel model, Set processed) { protected void removePropertiesDeclaredInComposedTypes(Map objs, CodegenModel model, List composedProperties) { } - private String patchPropertyName(CodegenModel model, String value) { + private String patchPropertyName(CodegenModel model, String value, Set composedPropertyNames) { String name = escapeReservedWord(model, value); if (name.startsWith(AbstractCSharpCodegen.invalidParameterNamePrefix)) { name = AbstractCSharpCodegen.invalidPropertyNamePrefix + name.substring(AbstractCSharpCodegen.invalidParameterNamePrefix.length()); } + // ensure the name we use for a composed property does not already exist as a property or composed property + // only do this if the set of composed property names was provided to ensure this method is idempotent + // we would not calling this method multiple times to result in different values + if (composedPropertyNames != null) { + String tmpName = name; + long count = model.allVars.stream().map(v -> v.name).filter(n -> n.equals(tmpName)).count() + composedPropertyNames.stream().filter(n -> n.equals(tmpName)).count(); + + if (count > 0) { + name = name + count++; + } + + composedPropertyNames.add(name); + } + return name; } @@ -753,7 +768,7 @@ protected void patchProperty(Map enumRefs, CodegenModel mo patchPropertyVendorExtensions(property); - property.name = patchPropertyName(model, property.name); + property.name = patchPropertyName(model, property.name, null); String[] nestedTypes = {"List", "Collection", "ICollection", "Dictionary"}; diff --git a/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml b/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml index 8837f52ee83f..133e50f341e9 100644 --- a/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml @@ -17,6 +17,24 @@ tags: - name: user description: Operations about user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2929,3 +2947,8 @@ components: enum: - APPROVED - MANUAL_APPROVAL_REQUIRED + TestObject: + properties: + name: + type: string + type: object diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES index 23707e233f05..9f36606fd2cb 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES @@ -81,6 +81,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -126,6 +127,7 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -246,6 +248,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -291,6 +294,7 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml index 7bfc0de5a41c..bc2116833633 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2682,6 +2694,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index d58c2e585a05..e96ffa806c85 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -969,6 +1024,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = new HttpMethod("POST"); + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index d8f7675ac704..ab40525530d9 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -119,6 +119,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -183,6 +184,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..0e60181be1e6 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES index a6635c9d8351..f6e5f3c15277 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -214,6 +216,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -245,6 +248,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index d58c2e585a05..e96ffa806c85 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -969,6 +1024,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = new HttpMethod("POST"); + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index 06a03d063867..6af31e9381ce 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -103,6 +103,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -139,6 +140,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..0e60181be1e6 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES index 23707e233f05..9f36606fd2cb 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES @@ -81,6 +81,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -126,6 +127,7 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -246,6 +248,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -291,6 +294,7 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml index 7bfc0de5a41c..bc2116833633 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2682,6 +2694,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index d58c2e585a05..e96ffa806c85 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -969,6 +1024,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = new HttpMethod("POST"); + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index d8f7675ac704..ab40525530d9 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -119,6 +119,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -183,6 +184,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..0e60181be1e6 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES index a6635c9d8351..f6e5f3c15277 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -214,6 +216,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -245,6 +248,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index d58c2e585a05..e96ffa806c85 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -969,6 +1024,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = new HttpMethod("POST"); + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index 06a03d063867..6af31e9381ce 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -103,6 +103,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -139,6 +140,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..0e60181be1e6 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES index 8062853cee64..82448d2a0bd4 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES @@ -81,6 +81,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -126,6 +127,7 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -248,6 +250,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -293,6 +296,7 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml index 7bfc0de5a41c..bc2116833633 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2682,6 +2694,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net8/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index b26e51c70f3b..14c9a2b69691 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -971,6 +1026,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 5bdfc37da5bc..e7f1cc5cfb9c 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -121,6 +121,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -185,6 +186,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..51f4ca1e2905 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES index ab28c754b4b1..3041710d2a37 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,6 +218,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -247,6 +250,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 3e6e9af57c4e..61c57dcc9fec 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default!; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs index 545c65127912..c886d851b49e 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,6 +100,29 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <?> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -179,6 +202,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -268,6 +303,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler? OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler? OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -973,6 +1028,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index 40c7bba42338..a1cf23848bcc 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,6 +107,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -143,6 +144,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..806ae443742b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,197 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List? List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List? List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List? list = default; + List? list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..c553a72c2c37 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,176 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES index ab28c754b4b1..3041710d2a37 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,6 +218,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -247,6 +250,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net8/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index b26e51c70f3b..14c9a2b69691 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -971,6 +1026,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index e6966155977a..c60be5c2f088 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -105,6 +105,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -141,6 +142,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..51f4ca1e2905 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES index ab28c754b4b1..3041710d2a37 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,6 +218,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -247,6 +250,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 3e6e9af57c4e..61c57dcc9fec 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default!; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs index 545c65127912..c886d851b49e 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,6 +100,29 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <?> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -179,6 +202,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -268,6 +303,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler? OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler? OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -973,6 +1028,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index c36bff8eface..f57e3ed523b2 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,6 +107,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -143,6 +144,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); @@ -221,6 +223,7 @@ public HostConfiguration(IServiceCollection services) new NullableShapeSerializationContext(), new NumberOnlySerializationContext(), new ObjectWithDeprecatedFieldsSerializationContext(), + new OneOfArrayRequestSerializationContext(), new OneOfStringSerializationContext(), new OrderSerializationContext(), new OuterCompositeSerializationContext(), @@ -252,6 +255,7 @@ public HostConfiguration(IServiceCollection services) new TestCollectionEndingWithWordListObjectSerializationContext(), new TestDescendantsSerializationContext(), new TestInlineFreeformAdditionalPropertiesRequestSerializationContext(), + new TestObjectSerializationContext(), new TestResultSerializationContext(), new TestResultCodeSerializationContext(), new TriangleSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..900f92f92ca5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,205 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List? List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List? List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List? list = default; + List? list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } + + /// + /// The OneOfArrayRequestSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(OneOfArrayRequest))] + public partial class OneOfArrayRequestSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..6e50e3733d74 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,184 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } + + /// + /// The TestObjectSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(TestObject))] + public partial class TestObjectSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES index 8062853cee64..82448d2a0bd4 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES @@ -81,6 +81,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -126,6 +127,7 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -248,6 +250,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -293,6 +296,7 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml index 7bfc0de5a41c..bc2116833633 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2682,6 +2694,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net9/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index b26e51c70f3b..14c9a2b69691 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -971,6 +1026,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 5bdfc37da5bc..e7f1cc5cfb9c 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -121,6 +121,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -185,6 +186,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..51f4ca1e2905 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES index ab28c754b4b1..3041710d2a37 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,6 +218,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -247,6 +250,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 3e6e9af57c4e..61c57dcc9fec 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default!; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs index 545c65127912..c886d851b49e 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,6 +100,29 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <?> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -179,6 +202,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -268,6 +303,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler? OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler? OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -973,6 +1028,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index 40c7bba42338..a1cf23848bcc 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,6 +107,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -143,6 +144,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..806ae443742b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,197 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List? List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List? List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List? list = default; + List? list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..c553a72c2c37 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,176 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES index ab28c754b4b1..3041710d2a37 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,6 +218,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -247,6 +250,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net9/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index b26e51c70f3b..14c9a2b69691 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,6 +98,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -177,6 +200,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -266,6 +301,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -971,6 +1026,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index e6966155977a..c60be5c2f088 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -105,6 +105,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -141,6 +142,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..51f4ca1e2905 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES index ab28c754b4b1..3041710d2a37 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,6 +218,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -247,6 +250,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 3e6e9af57c4e..61c57dcc9fec 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default!; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs index 545c65127912..c886d851b49e 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,6 +100,29 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <?> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -179,6 +202,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -268,6 +303,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler? OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler? OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -973,6 +1028,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index c36bff8eface..f57e3ed523b2 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,6 +107,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -143,6 +144,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); @@ -221,6 +223,7 @@ public HostConfiguration(IServiceCollection services) new NullableShapeSerializationContext(), new NumberOnlySerializationContext(), new ObjectWithDeprecatedFieldsSerializationContext(), + new OneOfArrayRequestSerializationContext(), new OneOfStringSerializationContext(), new OrderSerializationContext(), new OuterCompositeSerializationContext(), @@ -252,6 +255,7 @@ public HostConfiguration(IServiceCollection services) new TestCollectionEndingWithWordListObjectSerializationContext(), new TestDescendantsSerializationContext(), new TestInlineFreeformAdditionalPropertiesRequestSerializationContext(), + new TestObjectSerializationContext(), new TestResultSerializationContext(), new TestResultCodeSerializationContext(), new TriangleSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..900f92f92ca5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,205 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List? List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List? List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List? list = default; + List? list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } + + /// + /// The OneOfArrayRequestSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(OneOfArrayRequest))] + public partial class OneOfArrayRequestSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..6e50e3733d74 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,184 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } + + /// + /// The TestObjectSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(TestObject))] + public partial class TestObjectSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES index a6635c9d8351..f6e5f3c15277 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES @@ -73,6 +73,7 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md +docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -104,6 +105,7 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md +docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -214,6 +216,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -245,6 +248,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md index 0bdfd6af3474..c2c2ff310bc8 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 88cf05ba9ed8..22a5519b6913 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,6 +82,16 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..a296260b087b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..9b0818b2db21 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 44e664fb69b7..89509c325765 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -97,6 +97,29 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// /// /// @@ -176,6 +199,18 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + /// /// The /// @@ -265,6 +300,26 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } + /// + /// The event raised after the server response + /// + public event EventHandler OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + /// /// The event raised after the server response /// @@ -968,6 +1023,185 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = new HttpMethod("POST"); + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index 06a03d063867..6af31e9381ce 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -103,6 +103,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -139,6 +140,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..975a6574fe6d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,195 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List List1 { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List list = default; + List list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..0e60181be1e6 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,174 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES index 5885f8c71756..1ab74b29a847 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES @@ -70,6 +70,7 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md +docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -103,6 +104,7 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md +docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -204,6 +206,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -235,6 +238,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md index 0cd660848be2..df1681967cbb 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md @@ -145,6 +145,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello +*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -257,6 +258,7 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) + - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -288,6 +290,7 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) + - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md index 13db7cec8ee1..d28c23a6d477 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -273,6 +274,95 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest? oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using System.Net.Http; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + // create instances of HttpClient, HttpClientHandler to be reused later with different Api classes + HttpClient httpClient = new HttpClient(); + HttpClientHandler httpClientHandler = new HttpClientHandler(); + var apiInstance = new DefaultApi(httpClient, config, httpClientHandler); + var oneOfArrayRequest = new OneOfArrayRequest?(); // OneOfArrayRequest? | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest?**](OneOfArrayRequest?.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md new file mode 100644 index 000000000000..30d7195fdbf6 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/httpclient/net9/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/TestObject.md new file mode 100644 index 000000000000..d1ee8bbc3b32 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..30cf9734c413 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,57 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..6b90bf3807a5 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,66 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 00b6dcfecfea..7311514f5731 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -83,6 +83,27 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default); + /// + /// + /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -190,6 +211,29 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// /// /// /// Thrown when fails to make API call @@ -756,6 +800,111 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + public void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default) + { + OneOfArrayWithHttpInfo(oneOfArrayRequest); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default) + { + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + + var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + /// /// /// diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..3abd0ccb14c8 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,296 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Reflection; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] + [DataContract(Name = "oneOfArray_request")] + public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<string>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<TestObject>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + + private Object _actualInstance; + + /// + /// Gets or Sets ActualInstance + /// + public override Object ActualInstance + { + get + { + return _actualInstance; + } + set + { + if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else + { + throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); + } + } + } + + /// + /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<string> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<TestObject> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); + } + + /// + /// Converts the JSON string into an instance of OneOfArrayRequest + /// + /// JSON string + /// An instance of OneOfArrayRequest + public static OneOfArrayRequest FromJson(string jsonString) + { + OneOfArrayRequest newOneOfArrayRequest = null; + + if (string.IsNullOrEmpty(jsonString)) + { + return newOneOfArrayRequest; + } + int match = 0; + List matchedTypes = new List(); + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + if (match == 0) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); + } + else if (match > 1) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); + } + + // deserialization is considered successful at this point if no exception has been thrown. + return newOneOfArrayRequest; + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; + } + + /// + /// Returns true if OneOfArrayRequest instances are equal + /// + /// Instance of OneOfArrayRequest to be compared + /// Boolean + public bool Equals(OneOfArrayRequest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ActualInstance != null) + hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// Custom JSON converter for OneOfArrayRequest + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// To write the JSON string + /// + /// JSON writer + /// Object to be converted into a JSON string + /// JSON Serializer + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); + } + + /// + /// To convert a JSON string into an object + /// + /// JSON reader + /// Object type + /// Existing value + /// JSON Serializer + /// The object converted from the JSON string + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + switch(reader.TokenType) + { + case JsonToken.StartObject: + return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); + case JsonToken.StartArray: + return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); + default: + return null; + } + } + + /// + /// Check if the object can be converted + /// + /// Object type + /// True if the object can be converted + public override bool CanConvert(Type objectType) + { + return false; + } + } + +} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..63c7fb20fc39 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,133 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + [DataContract(Name = "TestObject")] + public partial class TestObject : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name. + public TestObject(string name = default) + { + this.Name = name; + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets Name + /// + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; + } + + /// + /// Returns true if TestObject instances are equal + /// + /// Instance of TestObject to be compared + /// Boolean + public bool Equals(TestObject input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + { + hashCode = (hashCode * 59) + this.Name.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES index 8fc05aa72028..98a3b226357f 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES @@ -70,6 +70,7 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md +docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -103,6 +104,7 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md +docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -203,6 +205,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -234,6 +237,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md index 18511c95bd16..7786061b8a88 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md @@ -133,6 +133,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello +*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -245,6 +246,7 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) + - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -276,6 +278,7 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) + - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md index 13db7cec8ee1..d6c5a82b31ed 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -273,6 +274,95 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using System.Net.Http; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + // create instances of HttpClient, HttpClientHandler to be reused later with different Api classes + HttpClient httpClient = new HttpClient(); + HttpClientHandler httpClientHandler = new HttpClientHandler(); + var apiInstance = new DefaultApi(httpClient, config, httpClientHandler); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md new file mode 100644 index 000000000000..30d7195fdbf6 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md new file mode 100644 index 000000000000..d1ee8bbc3b32 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..30cf9734c413 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,57 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..6b90bf3807a5 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,66 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 00b6dcfecfea..6c15a4a104cf 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -83,6 +83,27 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default); + /// + /// + /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -190,6 +211,29 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// /// /// /// Thrown when fails to make API call @@ -756,6 +800,111 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + public void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default) + { + OneOfArrayWithHttpInfo(oneOfArrayRequest); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default) + { + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + + var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + /// /// /// diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..3abd0ccb14c8 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,296 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Reflection; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] + [DataContract(Name = "oneOfArray_request")] + public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<string>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<TestObject>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + + private Object _actualInstance; + + /// + /// Gets or Sets ActualInstance + /// + public override Object ActualInstance + { + get + { + return _actualInstance; + } + set + { + if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else + { + throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); + } + } + } + + /// + /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<string> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<TestObject> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); + } + + /// + /// Converts the JSON string into an instance of OneOfArrayRequest + /// + /// JSON string + /// An instance of OneOfArrayRequest + public static OneOfArrayRequest FromJson(string jsonString) + { + OneOfArrayRequest newOneOfArrayRequest = null; + + if (string.IsNullOrEmpty(jsonString)) + { + return newOneOfArrayRequest; + } + int match = 0; + List matchedTypes = new List(); + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + if (match == 0) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); + } + else if (match > 1) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); + } + + // deserialization is considered successful at this point if no exception has been thrown. + return newOneOfArrayRequest; + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; + } + + /// + /// Returns true if OneOfArrayRequest instances are equal + /// + /// Instance of OneOfArrayRequest to be compared + /// Boolean + public bool Equals(OneOfArrayRequest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ActualInstance != null) + hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// Custom JSON converter for OneOfArrayRequest + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// To write the JSON string + /// + /// JSON writer + /// Object to be converted into a JSON string + /// JSON Serializer + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); + } + + /// + /// To convert a JSON string into an object + /// + /// JSON reader + /// Object type + /// Existing value + /// JSON Serializer + /// The object converted from the JSON string + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + switch(reader.TokenType) + { + case JsonToken.StartObject: + return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); + case JsonToken.StartArray: + return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); + default: + return null; + } + } + + /// + /// Check if the object can be converted + /// + /// Object type + /// True if the object can be converted + public override bool CanConvert(Type objectType) + { + return false; + } + } + +} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..63c7fb20fc39 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,133 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + [DataContract(Name = "TestObject")] + public partial class TestObject : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name. + public TestObject(string name = default) + { + this.Name = name; + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets Name + /// + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name { get; set; } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; + } + + /// + /// Returns true if TestObject instances are equal + /// + /// Instance of TestObject to be compared + /// Boolean + public bool Equals(TestObject input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + { + hashCode = (hashCode * 59) + this.Name.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES index 0ddde99ff436..22ffa214235d 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES @@ -70,6 +70,7 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md +docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -103,6 +104,7 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md +docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -206,6 +208,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -237,6 +240,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md index bfd756e161f3..ab676f4514e5 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md @@ -120,6 +120,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello +*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -232,6 +233,7 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) + - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -263,6 +265,7 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) + - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md index d9d4abc6ebbc..ba4d35362453 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest? oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest?(); // OneOfArrayRequest? | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest?**](OneOfArrayRequest?.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md new file mode 100644 index 000000000000..30d7195fdbf6 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/restsharp/net8/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/TestObject.md new file mode 100644 index 000000000000..d1ee8bbc3b32 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..30cf9734c413 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,57 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..6b90bf3807a5 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,66 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 6446a8be8118..d245878bcb2b 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -89,6 +89,29 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// + void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// ApiResponse of Object(void) + ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0); + /// + /// + /// /// Thrown when fails to make API call /// Index associated with the operation. /// List<List<RolesReportsHash>> @@ -206,6 +229,31 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// /// /// /// Thrown when fails to make API call @@ -765,6 +813,137 @@ public async System.Threading.Tasks.Task> HelloAsync(int operationInd return localVarResponse; } + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// + public void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0) + { + OneOfArrayWithHttpInfo(oneOfArrayRequest); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// ApiResponse of Object(void) + public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0) + { + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + var localVarMultipartFormData = localVarContentType == "multipart/form-data"; + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.Data = oneOfArrayRequest; + + localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; + localVarRequestOptions.OperationIndex = operationIndex; + + + // make the HTTP request + var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) + { + await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, operationIndex, cancellationToken).ConfigureAwait(false); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) + { + + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.Data = oneOfArrayRequest; + + localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; + localVarRequestOptions.OperationIndex = operationIndex; + + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + /// /// /// diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..312b8ed64356 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,295 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Reflection; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] + [DataContract(Name = "oneOfArray_request")] + public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<string>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<TestObject>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + + private Object _actualInstance; + + /// + /// Gets or Sets ActualInstance + /// + public override Object ActualInstance + { + get + { + return _actualInstance; + } + set + { + if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else + { + throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); + } + } + } + + /// + /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<string> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<TestObject> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); + } + + /// + /// Converts the JSON string into an instance of OneOfArrayRequest + /// + /// JSON string + /// An instance of OneOfArrayRequest + public static OneOfArrayRequest FromJson(string jsonString) + { + OneOfArrayRequest newOneOfArrayRequest = null; + + if (string.IsNullOrEmpty(jsonString)) + { + return newOneOfArrayRequest; + } + int match = 0; + List matchedTypes = new List(); + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + if (match == 0) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); + } + else if (match > 1) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); + } + + // deserialization is considered successful at this point if no exception has been thrown. + return newOneOfArrayRequest; + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; + } + + /// + /// Returns true if OneOfArrayRequest instances are equal + /// + /// Instance of OneOfArrayRequest to be compared + /// Boolean + public bool Equals(OneOfArrayRequest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ActualInstance != null) + hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// Custom JSON converter for OneOfArrayRequest + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// To write the JSON string + /// + /// JSON writer + /// Object to be converted into a JSON string + /// JSON Serializer + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); + } + + /// + /// To convert a JSON string into an object + /// + /// JSON reader + /// Object type + /// Existing value + /// JSON Serializer + /// The object converted from the JSON string + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + switch(reader.TokenType) + { + case JsonToken.StartObject: + return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); + case JsonToken.StartArray: + return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); + default: + return null; + } + } + + /// + /// Check if the object can be converted + /// + /// Object type + /// True if the object can be converted + public override bool CanConvert(Type objectType) + { + return false; + } + } + +} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..157696b8d39c --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,120 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + [DataContract(Name = "TestObject")] + public partial class TestObject : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name. + public TestObject(string name = default) + { + this.Name = name; + } + + /// + /// Gets or Sets Name + /// + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; + } + + /// + /// Returns true if TestObject instances are equal + /// + /// Instance of TestObject to be compared + /// Boolean + public bool Equals(TestObject input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + { + hashCode = (hashCode * 59) + this.Name.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES index 0ddde99ff436..22ffa214235d 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES @@ -70,6 +70,7 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md +docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -103,6 +104,7 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md +docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -206,6 +208,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -237,6 +240,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md index 994498b2644c..2e5724f70dd8 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md @@ -108,6 +108,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello +*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -220,6 +221,7 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) + - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -251,6 +253,7 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) + - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md index d9d4abc6ebbc..82da3edff32d 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md new file mode 100644 index 000000000000..30d7195fdbf6 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md new file mode 100644 index 000000000000..d1ee8bbc3b32 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..30cf9734c413 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,57 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..6b90bf3807a5 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,66 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs index 6446a8be8118..70db86ec8d92 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -89,6 +89,29 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// + void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// ApiResponse of Object(void) + ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0); + /// + /// + /// /// Thrown when fails to make API call /// Index associated with the operation. /// List<List<RolesReportsHash>> @@ -206,6 +229,31 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// /// /// /// Thrown when fails to make API call @@ -765,6 +813,137 @@ public async System.Threading.Tasks.Task> HelloAsync(int operationInd return localVarResponse; } + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// + public void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0) + { + OneOfArrayWithHttpInfo(oneOfArrayRequest); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// ApiResponse of Object(void) + public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0) + { + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + var localVarMultipartFormData = localVarContentType == "multipart/form-data"; + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.Data = oneOfArrayRequest; + + localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; + localVarRequestOptions.OperationIndex = operationIndex; + + + // make the HTTP request + var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) + { + await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, operationIndex, cancellationToken).ConfigureAwait(false); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Index associated with the operation. + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) + { + + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) + { + localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + } + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) + { + localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + } + + localVarRequestOptions.Data = oneOfArrayRequest; + + localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; + localVarRequestOptions.OperationIndex = operationIndex; + + + // make the HTTP request + var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) + { + throw _exception; + } + } + + return localVarResponse; + } + /// /// /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..312b8ed64356 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,295 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Reflection; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] + [DataContract(Name = "oneOfArray_request")] + public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<string>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<TestObject>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + + private Object _actualInstance; + + /// + /// Gets or Sets ActualInstance + /// + public override Object ActualInstance + { + get + { + return _actualInstance; + } + set + { + if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else + { + throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); + } + } + } + + /// + /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<string> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<TestObject> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); + } + + /// + /// Converts the JSON string into an instance of OneOfArrayRequest + /// + /// JSON string + /// An instance of OneOfArrayRequest + public static OneOfArrayRequest FromJson(string jsonString) + { + OneOfArrayRequest newOneOfArrayRequest = null; + + if (string.IsNullOrEmpty(jsonString)) + { + return newOneOfArrayRequest; + } + int match = 0; + List matchedTypes = new List(); + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + if (match == 0) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); + } + else if (match > 1) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); + } + + // deserialization is considered successful at this point if no exception has been thrown. + return newOneOfArrayRequest; + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; + } + + /// + /// Returns true if OneOfArrayRequest instances are equal + /// + /// Instance of OneOfArrayRequest to be compared + /// Boolean + public bool Equals(OneOfArrayRequest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ActualInstance != null) + hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// Custom JSON converter for OneOfArrayRequest + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// To write the JSON string + /// + /// JSON writer + /// Object to be converted into a JSON string + /// JSON Serializer + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); + } + + /// + /// To convert a JSON string into an object + /// + /// JSON reader + /// Object type + /// Existing value + /// JSON Serializer + /// The object converted from the JSON string + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + switch(reader.TokenType) + { + case JsonToken.StartObject: + return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); + case JsonToken.StartArray: + return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); + default: + return null; + } + } + + /// + /// Check if the object can be converted + /// + /// Object type + /// True if the object can be converted + public override bool CanConvert(Type objectType) + { + return false; + } + } + +} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..b45cf1779408 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,154 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + [DataContract(Name = "TestObject")] + public partial class TestObject : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name. + public TestObject(string name = default) + { + this._Name = name; + if (this.Name != null) + { + this._flagName = true; + } + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets Name + /// + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name + { + get{ return _Name;} + set + { + _Name = value; + _flagName = true; + } + } + private string _Name; + private bool _flagName; + + /// + /// Returns false as Name should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeName() + { + return _flagName; + } + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; + } + + /// + /// Returns true if TestObject instances are equal + /// + /// Instance of TestObject to be compared + /// Boolean + public bool Equals(TestObject input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + { + hashCode = (hashCode * 59) + this.Name.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES index f91fdecb6552..84563175b9e6 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES @@ -68,6 +68,7 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md +docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -101,6 +102,7 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md +docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -203,6 +205,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -234,6 +237,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md index c8ec2f557035..93f8a2aa1320 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md @@ -94,6 +94,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello +*DefaultApi* | [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -206,6 +207,7 @@ Class | Method | HTTP request | Description - [Model.NullableShape](NullableShape.md) - [Model.NumberOnly](NumberOnly.md) - [Model.ObjectWithDeprecatedFields](ObjectWithDeprecatedFields.md) + - [Model.OneOfArrayRequest](OneOfArrayRequest.md) - [Model.OneOfString](OneOfString.md) - [Model.Order](Order.md) - [Model.OuterComposite](OuterComposite.md) @@ -237,6 +239,7 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](TestInlineFreeformAdditionalPropertiesRequest.md) + - [Model.TestObject](TestObject.md) - [Model.TestResult](TestResult.md) - [Model.TestResultCode](TestResultCode.md) - [Model.Triangle](Triangle.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md index d9d4abc6ebbc..ba4d35362453 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest? oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest?(); // OneOfArrayRequest? | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest?**](OneOfArrayRequest?.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md new file mode 100644 index 000000000000..30d7195fdbf6 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md new file mode 100644 index 000000000000..d1ee8bbc3b32 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..7742191d3ca1 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,58 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Test] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..7509bd532f95 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,66 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Test] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Test] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 7392e37d6bcb..6540704a86fe 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -82,6 +82,27 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default); + /// + /// + /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -189,6 +210,29 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// /// /// /// Thrown when fails to make API call @@ -719,6 +763,122 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + public void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default) + { + OneOfArrayWithHttpInfo(oneOfArrayRequest); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default) + { + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + var task = OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken); +#if UNITY_EDITOR || !UNITY_WEBGL + await task.ConfigureAwait(false); +#else + await task; +#endif + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + + var task = this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken); + +#if UNITY_EDITOR || !UNITY_WEBGL + var localVarResponse = await task.ConfigureAwait(false); +#else + var localVarResponse = await task; +#endif + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + /// /// /// diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..9b6af37d08b1 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,286 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using System.Reflection; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] + [DataContract(Name = "oneOfArray_request")] + public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable + { + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<string>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<TestObject>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + + private Object _actualInstance; + + /// + /// Gets or Sets ActualInstance + /// + public override Object ActualInstance + { + get + { + return _actualInstance; + } + set + { + if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else + { + throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); + } + } + } + + /// + /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<string> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<TestObject> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); + } + + /// + /// Converts the JSON string into an instance of OneOfArrayRequest + /// + /// JSON string + /// An instance of OneOfArrayRequest + public static OneOfArrayRequest FromJson(string jsonString) + { + OneOfArrayRequest newOneOfArrayRequest = null; + + if (string.IsNullOrEmpty(jsonString)) + { + return newOneOfArrayRequest; + } + int match = 0; + List matchedTypes = new List(); + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + if (match == 0) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); + } + else if (match > 1) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); + } + + // deserialization is considered successful at this point if no exception has been thrown. + return newOneOfArrayRequest; + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OneOfArrayRequest); + } + + /// + /// Returns true if OneOfArrayRequest instances are equal + /// + /// Instance of OneOfArrayRequest to be compared + /// Boolean + public bool Equals(OneOfArrayRequest input) + { + if (input == null) + return false; + + return this.ActualInstance.Equals(input.ActualInstance); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ActualInstance != null) + hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); + return hashCode; + } + } + } + + /// + /// Custom JSON converter for OneOfArrayRequest + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// To write the JSON string + /// + /// JSON writer + /// Object to be converted into a JSON string + /// JSON Serializer + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); + } + + /// + /// To convert a JSON string into an object + /// + /// JSON reader + /// Object type + /// Existing value + /// JSON Serializer + /// The object converted from the JSON string + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + switch(reader.TokenType) + { + case JsonToken.StartObject: + return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); + case JsonToken.StartArray: + return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); + default: + return null; + } + } + + /// + /// Check if the object can be converted + /// + /// Object type + /// True if the object can be converted + public override bool CanConvert(Type objectType) + { + return false; + } + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..12b57173e64a --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,118 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + [DataContract(Name = "TestObject")] + public partial class TestObject : IEquatable + { + /// + /// Initializes a new instance of the class. + /// + /// name. + public TestObject(string name = default) + { + this.Name = name; + } + + /// + /// Gets or Sets Name + /// + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as TestObject); + } + + /// + /// Returns true if TestObject instances are equal + /// + /// Instance of TestObject to be compared + /// Boolean + public bool Equals(TestObject input) + { + if (input == null) + { + return false; + } + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + { + hashCode = (hashCode * 59) + this.Name.GetHashCode(); + } + return hashCode; + } + } + + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES index f91fdecb6552..84563175b9e6 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES @@ -68,6 +68,7 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md +docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -101,6 +102,7 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md +docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -203,6 +205,7 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -234,6 +237,7 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md index c8ec2f557035..93f8a2aa1320 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md @@ -94,6 +94,7 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello +*DefaultApi* | [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -206,6 +207,7 @@ Class | Method | HTTP request | Description - [Model.NullableShape](NullableShape.md) - [Model.NumberOnly](NumberOnly.md) - [Model.ObjectWithDeprecatedFields](ObjectWithDeprecatedFields.md) + - [Model.OneOfArrayRequest](OneOfArrayRequest.md) - [Model.OneOfString](OneOfString.md) - [Model.Order](Order.md) - [Model.OuterComposite](OuterComposite.md) @@ -237,6 +239,7 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](TestInlineFreeformAdditionalPropertiesRequest.md) + - [Model.TestObject](TestObject.md) - [Model.TestResult](TestResult.md) - [Model.TestResultCode](TestResultCode.md) - [Model.Triangle](Triangle.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml index 4f007819a1a6..e0dfb98e3e7a 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml @@ -41,6 +41,18 @@ tags: - description: Operations about user name: user paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation /roles/report: get: responses: @@ -2863,6 +2875,19 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md index d9d4abc6ebbc..82da3edff32d 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md @@ -7,6 +7,7 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -261,6 +262,91 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://petstore.swagger.io:80/v2"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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) + # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md new file mode 100644 index 000000000000..30d7195fdbf6 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md new file mode 100644 index 000000000000..d1ee8bbc3b32 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..7742191d3ca1 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,58 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Test] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..7509bd532f95 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,66 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Test] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Test] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 7392e37d6bcb..455f9d6f4397 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -82,6 +82,27 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default); + /// + /// + /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -189,6 +210,29 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + /// + /// + /// + /// /// /// /// Thrown when fails to make API call @@ -719,6 +763,122 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// + public void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default) + { + OneOfArrayWithHttpInfo(oneOfArrayRequest); + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// ApiResponse of Object(void) + public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default) + { + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of void + public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + var task = OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken); +#if UNITY_EDITOR || !UNITY_WEBGL + await task.ConfigureAwait(false); +#else + await task; +#endif + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// Task of ApiResponse + public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + + Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); + + string[] _contentTypes = new string[] { + "application/json" + }; + + // to determine the Accept header + string[] _accepts = new string[] { + }; + + + var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); + if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); + + var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); + if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); + + localVarRequestOptions.Data = oneOfArrayRequest; + + + // make the HTTP request + + var task = this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken); + +#if UNITY_EDITOR || !UNITY_WEBGL + var localVarResponse = await task.ConfigureAwait(false); +#else + var localVarResponse = await task; +#endif + + if (this.ExceptionFactory != null) + { + Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); + if (_exception != null) throw _exception; + } + + return localVarResponse; + } + /// /// /// diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..9b6af37d08b1 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,286 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using System.Reflection; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] + [DataContract(Name = "oneOfArray_request")] + public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable + { + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<string>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + /// + /// Initializes a new instance of the class + /// with the class + /// + /// An instance of List<TestObject>. + public OneOfArrayRequest(List actualInstance) + { + this.IsNullable = false; + this.SchemaType= "oneOf"; + this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); + } + + + private Object _actualInstance; + + /// + /// Gets or Sets ActualInstance + /// + public override Object ActualInstance + { + get + { + return _actualInstance; + } + set + { + if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else if (value.GetType() == typeof(List) || value is List) + { + this._actualInstance = value; + } + else + { + throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); + } + } + } + + /// + /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<string> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, + /// the InvalidClassException will be thrown + /// + /// An instance of List<TestObject> + public List GetList() + { + return (List)this.ActualInstance; + } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + var sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public override string ToJson() + { + return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); + } + + /// + /// Converts the JSON string into an instance of OneOfArrayRequest + /// + /// JSON string + /// An instance of OneOfArrayRequest + public static OneOfArrayRequest FromJson(string jsonString) + { + OneOfArrayRequest newOneOfArrayRequest = null; + + if (string.IsNullOrEmpty(jsonString)) + { + return newOneOfArrayRequest; + } + int match = 0; + List matchedTypes = new List(); + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + try + { + // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize + if (typeof(List).GetProperty("AdditionalProperties") == null) + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); + } + else + { + newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); + } + matchedTypes.Add("List"); + match++; + } + catch (Exception exception) + { + // deserialization failed, try the next one + System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); + } + + if (match == 0) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); + } + else if (match > 1) + { + throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); + } + + // deserialization is considered successful at this point if no exception has been thrown. + return newOneOfArrayRequest; + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as OneOfArrayRequest); + } + + /// + /// Returns true if OneOfArrayRequest instances are equal + /// + /// Instance of OneOfArrayRequest to be compared + /// Boolean + public bool Equals(OneOfArrayRequest input) + { + if (input == null) + return false; + + return this.ActualInstance.Equals(input.ActualInstance); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.ActualInstance != null) + hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); + return hashCode; + } + } + } + + /// + /// Custom JSON converter for OneOfArrayRequest + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// To write the JSON string + /// + /// JSON writer + /// Object to be converted into a JSON string + /// JSON Serializer + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) + { + writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); + } + + /// + /// To convert a JSON string into an object + /// + /// JSON reader + /// Object type + /// Existing value + /// JSON Serializer + /// The object converted from the JSON string + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + switch(reader.TokenType) + { + case JsonToken.StartObject: + return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); + case JsonToken.StartArray: + return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); + default: + return null; + } + } + + /// + /// Check if the object can be converted + /// + /// Object type + /// True if the object can be converted + public override bool CanConvert(Type objectType) + { + return false; + } + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..12b57173e64a --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,118 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + [DataContract(Name = "TestObject")] + public partial class TestObject : IEquatable + { + /// + /// Initializes a new instance of the class. + /// + /// name. + public TestObject(string name = default) + { + this.Name = name; + } + + /// + /// Gets or Sets Name + /// + [DataMember(Name = "name", EmitDefaultValue = false)] + public string Name { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as TestObject); + } + + /// + /// Returns true if TestObject instances are equal + /// + /// Instance of TestObject to be compared + /// Boolean + public bool Equals(TestObject input) + { + if (input == null) + { + return false; + } + return + ( + this.Name == input.Name || + (this.Name != null && + this.Name.Equals(input.Name)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.Name != null) + { + hashCode = (hashCode * 59) + this.Name.GetHashCode(); + } + return hashCode; + } + } + + } + +} From 38666a6c1ac2e32e9ff5bdef0c4d3330360675f5 Mon Sep 17 00:00:00 2001 From: devhl Date: Sat, 3 May 2025 18:38:12 -0400 Subject: [PATCH 2/4] discard samples --- .../FormModels/.openapi-generator/FILES | 4 - .../net4.7/FormModels/api/openapi.yaml | 25 -- .../net4.7/FormModels/docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../FormModels/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../net4.7/Petstore/.openapi-generator/FILES | 4 - .../net4.7/Petstore/api/openapi.yaml | 25 -- .../net4.7/Petstore/docs/apis/DefaultApi.md | 86 ----- .../Petstore/docs/models/OneOfArrayRequest.md | 9 - .../net4.7/Petstore/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../FormModels/.openapi-generator/FILES | 4 - .../net4.8/FormModels/api/openapi.yaml | 25 -- .../net4.8/FormModels/docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../FormModels/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../net4.8/Petstore/.openapi-generator/FILES | 4 - .../net4.8/Petstore/api/openapi.yaml | 25 -- .../net4.8/Petstore/docs/apis/DefaultApi.md | 86 ----- .../Petstore/docs/models/OneOfArrayRequest.md | 9 - .../net4.8/Petstore/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../net8/FormModels/.openapi-generator/FILES | 4 - .../net8/FormModels/api/openapi.yaml | 25 -- .../net8/FormModels/docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../net8/FormModels/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../.openapi-generator/FILES | 4 - .../net8/NullReferenceTypes/api/openapi.yaml | 25 -- .../docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 197 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 176 ----------- .../net8/Petstore/.openapi-generator/FILES | 4 - .../net8/Petstore/api/openapi.yaml | 25 -- .../net8/Petstore/docs/apis/DefaultApi.md | 86 ----- .../Petstore/docs/models/OneOfArrayRequest.md | 9 - .../net8/Petstore/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../SourceGeneration/.openapi-generator/FILES | 4 - .../net8/SourceGeneration/api/openapi.yaml | 25 -- .../SourceGeneration/docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 4 - .../Model/OneOfArrayRequest.cs | 205 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 184 ----------- .../net9/FormModels/.openapi-generator/FILES | 4 - .../net9/FormModels/api/openapi.yaml | 25 -- .../net9/FormModels/docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../net9/FormModels/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../.openapi-generator/FILES | 4 - .../net9/NullReferenceTypes/api/openapi.yaml | 25 -- .../docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 197 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 176 ----------- .../net9/Petstore/.openapi-generator/FILES | 4 - .../net9/Petstore/api/openapi.yaml | 25 -- .../net9/Petstore/docs/apis/DefaultApi.md | 86 ----- .../Petstore/docs/models/OneOfArrayRequest.md | 9 - .../net9/Petstore/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../SourceGeneration/.openapi-generator/FILES | 4 - .../net9/SourceGeneration/api/openapi.yaml | 25 -- .../SourceGeneration/docs/apis/DefaultApi.md | 86 ----- .../docs/models/OneOfArrayRequest.md | 9 - .../docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 4 - .../Model/OneOfArrayRequest.cs | 205 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 184 ----------- .../Petstore/.openapi-generator/FILES | 4 - .../standard2.0/Petstore/api/openapi.yaml | 25 -- .../Petstore/docs/apis/DefaultApi.md | 86 ----- .../Petstore/docs/models/OneOfArrayRequest.md | 9 - .../Petstore/docs/models/TestObject.md | 10 - .../Api/DefaultApiTests.cs | 10 - .../Model/OneOfArrayRequestTests.cs | 56 ---- .../Model/TestObjectTests.cs | 65 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 234 -------------- .../Client/HostConfiguration.cs | 2 - .../Model/OneOfArrayRequest.cs | 195 ------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 174 ---------- .../net9/Petstore/.openapi-generator/FILES | 4 - .../csharp/httpclient/net9/Petstore/README.md | 3 - .../httpclient/net9/Petstore/api/openapi.yaml | 25 -- .../net9/Petstore/docs/DefaultApi.md | 90 ------ .../net9/Petstore/docs/OneOfArrayRequest.md | 9 - .../net9/Petstore/docs/TestObject.md | 10 - .../Model/OneOfArrayRequestTests.cs | 57 ---- .../Model/TestObjectTests.cs | 66 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 149 --------- .../Model/OneOfArrayRequest.cs | 296 ------------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 133 -------- .../Petstore/.openapi-generator/FILES | 4 - .../httpclient/standard2.0/Petstore/README.md | 3 - .../standard2.0/Petstore/api/openapi.yaml | 25 -- .../standard2.0/Petstore/docs/DefaultApi.md | 90 ------ .../Petstore/docs/OneOfArrayRequest.md | 9 - .../standard2.0/Petstore/docs/TestObject.md | 10 - .../Model/OneOfArrayRequestTests.cs | 57 ---- .../Model/TestObjectTests.cs | 66 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 149 --------- .../Model/OneOfArrayRequest.cs | 296 ------------------ .../src/Org.OpenAPITools/Model/TestObject.cs | 133 -------- .../net8/Petstore/.openapi-generator/FILES | 4 - .../csharp/restsharp/net8/Petstore/README.md | 3 - .../restsharp/net8/Petstore/api/openapi.yaml | 25 -- .../net8/Petstore/docs/DefaultApi.md | 86 ----- .../net8/Petstore/docs/OneOfArrayRequest.md | 9 - .../net8/Petstore/docs/TestObject.md | 10 - .../Model/OneOfArrayRequestTests.cs | 57 ---- .../Model/TestObjectTests.cs | 66 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 179 ----------- .../Model/OneOfArrayRequest.cs | 295 ----------------- .../src/Org.OpenAPITools/Model/TestObject.cs | 120 ------- .../.openapi-generator/FILES | 4 - .../ConditionalSerialization/README.md | 3 - .../ConditionalSerialization/api/openapi.yaml | 25 -- .../docs/DefaultApi.md | 86 ----- .../docs/OneOfArrayRequest.md | 9 - .../docs/TestObject.md | 10 - .../Model/OneOfArrayRequestTests.cs | 57 ---- .../Model/TestObjectTests.cs | 66 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 179 ----------- .../Model/OneOfArrayRequest.cs | 295 ----------------- .../src/Org.OpenAPITools/Model/TestObject.cs | 154 --------- .../net9/Petstore/.openapi-generator/FILES | 4 - .../unityWebRequest/net9/Petstore/README.md | 3 - .../net9/Petstore/api/openapi.yaml | 25 -- .../net9/Petstore/docs/DefaultApi.md | 86 ----- .../net9/Petstore/docs/OneOfArrayRequest.md | 9 - .../net9/Petstore/docs/TestObject.md | 10 - .../Model/OneOfArrayRequestTests.cs | 58 ---- .../Model/TestObjectTests.cs | 66 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 160 ---------- .../Model/OneOfArrayRequest.cs | 286 ----------------- .../src/Org.OpenAPITools/Model/TestObject.cs | 118 ------- .../Petstore/.openapi-generator/FILES | 4 - .../standard2.0/Petstore/README.md | 3 - .../standard2.0/Petstore/api/openapi.yaml | 25 -- .../standard2.0/Petstore/docs/DefaultApi.md | 86 ----- .../Petstore/docs/OneOfArrayRequest.md | 9 - .../standard2.0/Petstore/docs/TestObject.md | 10 - .../Model/OneOfArrayRequestTests.cs | 58 ---- .../Model/TestObjectTests.cs | 66 ---- .../src/Org.OpenAPITools/Api/DefaultApi.cs | 160 ---------- .../Model/OneOfArrayRequest.cs | 286 ----------------- .../src/Org.OpenAPITools/Model/TestObject.cs | 118 ------- 222 files changed, 16438 deletions(-) delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md delete mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/docs/TestObject.md delete mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md delete mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/docs/TestObject.md delete mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md delete mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md delete mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md delete mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md delete mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs delete mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES index 9f36606fd2cb..23707e233f05 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES @@ -81,7 +81,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -127,7 +126,6 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -248,7 +246,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -294,7 +291,6 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml index bc2116833633..7bfc0de5a41c 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2694,19 +2682,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index e96ffa806c85..d58c2e585a05 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1024,185 +969,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = new HttpMethod("POST"); - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index ab40525530d9..d8f7675ac704 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -119,7 +119,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -184,7 +183,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 0e60181be1e6..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES index f6e5f3c15277..a6635c9d8351 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,7 +214,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -248,7 +245,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index e96ffa806c85..d58c2e585a05 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1024,185 +969,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = new HttpMethod("POST"); - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index 6af31e9381ce..06a03d063867 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -103,7 +103,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -140,7 +139,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 0e60181be1e6..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES index 9f36606fd2cb..23707e233f05 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES @@ -81,7 +81,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -127,7 +126,6 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -248,7 +246,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -294,7 +291,6 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml index bc2116833633..7bfc0de5a41c 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2694,19 +2682,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index e96ffa806c85..d58c2e585a05 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1024,185 +969,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = new HttpMethod("POST"); - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index ab40525530d9..d8f7675ac704 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -119,7 +119,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -184,7 +183,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 0e60181be1e6..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES index f6e5f3c15277..a6635c9d8351 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,7 +214,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -248,7 +245,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index e96ffa806c85..d58c2e585a05 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1024,185 +969,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = new HttpMethod("POST"); - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index 6af31e9381ce..06a03d063867 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -103,7 +103,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -140,7 +139,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 0e60181be1e6..000000000000 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES index 82448d2a0bd4..8062853cee64 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES @@ -81,7 +81,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -127,7 +126,6 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -250,7 +248,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -296,7 +293,6 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml index bc2116833633..7bfc0de5a41c 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2694,19 +2682,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net8/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index 14c9a2b69691..b26e51c70f3b 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1026,185 +971,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index e7f1cc5cfb9c..5bdfc37da5bc 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -121,7 +121,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -186,7 +185,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 51f4ca1e2905..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES index 3041710d2a37..ab28c754b4b1 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -218,7 +216,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -250,7 +247,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 61c57dcc9fec..3e6e9af57c4e 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default!; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs index c886d851b49e..545c65127912 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,29 +100,6 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <?> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -202,18 +179,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -303,26 +268,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler? OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler? OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1028,185 +973,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index a1cf23848bcc..40c7bba42338 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,7 +107,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -144,7 +143,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 806ae443742b..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,197 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List? List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List? List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List? list = default; - List? list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index c553a72c2c37..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,176 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()!); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES index 3041710d2a37..ab28c754b4b1 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -218,7 +216,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -250,7 +247,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net8/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 14c9a2b69691..b26e51c70f3b 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1026,185 +971,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index c60be5c2f088..e6966155977a 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -105,7 +105,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -142,7 +141,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 51f4ca1e2905..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES index 3041710d2a37..ab28c754b4b1 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -218,7 +216,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -250,7 +247,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 61c57dcc9fec..3e6e9af57c4e 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default!; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs index c886d851b49e..545c65127912 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,29 +100,6 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <?> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -202,18 +179,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -303,26 +268,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler? OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler? OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1028,185 +973,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index f57e3ed523b2..c36bff8eface 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,7 +107,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -144,7 +143,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); @@ -223,7 +221,6 @@ public HostConfiguration(IServiceCollection services) new NullableShapeSerializationContext(), new NumberOnlySerializationContext(), new ObjectWithDeprecatedFieldsSerializationContext(), - new OneOfArrayRequestSerializationContext(), new OneOfStringSerializationContext(), new OrderSerializationContext(), new OuterCompositeSerializationContext(), @@ -255,7 +252,6 @@ public HostConfiguration(IServiceCollection services) new TestCollectionEndingWithWordListObjectSerializationContext(), new TestDescendantsSerializationContext(), new TestInlineFreeformAdditionalPropertiesRequestSerializationContext(), - new TestObjectSerializationContext(), new TestResultSerializationContext(), new TestResultCodeSerializationContext(), new TriangleSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 900f92f92ca5..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,205 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Text.Json.Serialization.Metadata; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List? List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List? List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List? list = default; - List? list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } - - /// - /// The OneOfArrayRequestSerializationContext - /// - [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] - [JsonSerializable(typeof(OneOfArrayRequest))] - public partial class OneOfArrayRequestSerializationContext : JsonSerializerContext { } -} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 6e50e3733d74..000000000000 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,184 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Text.Json.Serialization.Metadata; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()!); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } - - /// - /// The TestObjectSerializationContext - /// - [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] - [JsonSerializable(typeof(TestObject))] - public partial class TestObjectSerializationContext : JsonSerializerContext { } -} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES index 82448d2a0bd4..8062853cee64 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES @@ -81,7 +81,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OrderStatus.md @@ -127,7 +126,6 @@ docs/models/TestEnumParametersEnumQueryIntegerParameter.md docs/models/TestEnumParametersRequestEnumFormString.md docs/models/TestEnumParametersRequestEnumFormStringArrayInner.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -250,7 +248,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OrderStatus.cs @@ -296,7 +293,6 @@ src/Org.OpenAPITools/Model/TestEnumParametersEnumQueryIntegerParameter.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormString.cs src/Org.OpenAPITools/Model/TestEnumParametersRequestEnumFormStringArrayInner.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml index bc2116833633..7bfc0de5a41c 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2694,19 +2682,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net9/FormModels/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs index 14c9a2b69691..b26e51c70f3b 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1026,185 +971,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index e7f1cc5cfb9c..5bdfc37da5bc 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -121,7 +121,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OrderStatusJsonConverter()); @@ -186,7 +185,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerJsonConverter()); _jsonOptions.Converters.Add(new TestEnumParametersRequestEnumFormStringArrayInnerNullableJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 51f4ca1e2905..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES index 3041710d2a37..ab28c754b4b1 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -218,7 +216,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -250,7 +247,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 61c57dcc9fec..3e6e9af57c4e 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default!; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs index c886d851b49e..545c65127912 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,29 +100,6 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <?> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -202,18 +179,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -303,26 +268,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler? OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler? OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1028,185 +973,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index a1cf23848bcc..40c7bba42338 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,7 +107,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -144,7 +143,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 806ae443742b..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,197 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List? List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List? List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List? list = default; - List? list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index c553a72c2c37..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,176 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()!); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES index 3041710d2a37..ab28c754b4b1 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -218,7 +216,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -250,7 +247,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net9/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 14c9a2b69691..b26e51c70f3b 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -98,29 +98,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -200,18 +177,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -301,26 +266,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1026,185 +971,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index c60be5c2f088..e6966155977a 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -105,7 +105,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -142,7 +141,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 51f4ca1e2905..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES index 3041710d2a37..ab28c754b4b1 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -218,7 +216,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -250,7 +247,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 61c57dcc9fec..3e6e9af57c4e 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default!; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs index c886d851b49e..545c65127912 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -100,29 +100,6 @@ public interface IDefaultApi : IApi /// <?> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <?> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -202,18 +179,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -303,26 +268,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler? OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler? OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1028,185 +973,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = HttpMethod.Post; - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index f57e3ed523b2..c36bff8eface 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -107,7 +107,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -144,7 +143,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); @@ -223,7 +221,6 @@ public HostConfiguration(IServiceCollection services) new NullableShapeSerializationContext(), new NumberOnlySerializationContext(), new ObjectWithDeprecatedFieldsSerializationContext(), - new OneOfArrayRequestSerializationContext(), new OneOfStringSerializationContext(), new OrderSerializationContext(), new OuterCompositeSerializationContext(), @@ -255,7 +252,6 @@ public HostConfiguration(IServiceCollection services) new TestCollectionEndingWithWordListObjectSerializationContext(), new TestDescendantsSerializationContext(), new TestInlineFreeformAdditionalPropertiesRequestSerializationContext(), - new TestObjectSerializationContext(), new TestResultSerializationContext(), new TestResultCodeSerializationContext(), new TriangleSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 900f92f92ca5..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,205 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Text.Json.Serialization.Metadata; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List? List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List? List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List? list = default; - List? list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } - - /// - /// The OneOfArrayRequestSerializationContext - /// - [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] - [JsonSerializable(typeof(OneOfArrayRequest))] - public partial class OneOfArrayRequestSerializationContext : JsonSerializerContext { } -} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 6e50e3733d74..000000000000 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,184 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -#nullable enable - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Text.Json.Serialization.Metadata; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string? localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()!); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } - - /// - /// The TestObjectSerializationContext - /// - [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] - [JsonSerializable(typeof(TestObject))] - public partial class TestObjectSerializationContext : JsonSerializerContext { } -} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES index f6e5f3c15277..a6635c9d8351 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES @@ -73,7 +73,6 @@ docs/models/NullableGuidClass.md docs/models/NullableShape.md docs/models/NumberOnly.md docs/models/ObjectWithDeprecatedFields.md -docs/models/OneOfArrayRequest.md docs/models/OneOfString.md docs/models/Order.md docs/models/OuterComposite.md @@ -105,7 +104,6 @@ docs/models/TestCollectionEndingWithWordList.md docs/models/TestCollectionEndingWithWordListObject.md docs/models/TestDescendants.md docs/models/TestInlineFreeformAdditionalPropertiesRequest.md -docs/models/TestObject.md docs/models/TestResult.md docs/models/TestResultCode.md docs/models/Triangle.md @@ -216,7 +214,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -248,7 +245,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md index c2c2ff310bc8..0bdfd6af3474 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/apis/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md deleted file mode 100644 index 732daf9de0de..000000000000 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md deleted file mode 100644 index bdd8999db3a3..000000000000 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs index 22a5519b6913..88cf05ba9ed8 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -82,16 +82,6 @@ public async Task HelloAsyncTest() Assert.IsType>(model); } - /// - /// Test OneOfArray - /// - [Fact (Skip = "not implemented")] - public async Task OneOfArrayAsyncTest() - { - Client.Option oneOfArrayRequest = default; - await _instance.OneOfArrayAsync(oneOfArrayRequest); - } - /// /// Test RolesReportGet /// diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index a296260b087b..000000000000 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,56 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 9b0818b2db21..000000000000 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,65 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 89509c325765..44e664fb69b7 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -97,29 +97,6 @@ public interface IDefaultApi : IApi /// <> Task HelloOrDefaultAsync(System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// /// /// @@ -199,18 +176,6 @@ public interface IHelloApiResponse : Org.OpenAPITools.Client.IApiResponse, IOk - /// The - /// - public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse - { - /// - /// Returns true if the response is 204 NoContent - /// - /// - bool IsNoContent { get; } - } - /// /// The /// @@ -300,26 +265,6 @@ internal void ExecuteOnErrorHello(Exception exception) OnErrorHello?.Invoke(this, new ExceptionEventArgs(exception)); } - /// - /// The event raised after the server response - /// - public event EventHandler OnOneOfArray; - - /// - /// The event raised after an error querying the server - /// - public event EventHandler OnErrorOneOfArray; - - internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) - { - OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); - } - - internal void ExecuteOnErrorOneOfArray(Exception exception) - { - OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); - } - /// /// The event raised after the server response /// @@ -1023,185 +968,6 @@ private void OnDeserializationErrorDefaultImplementation(Exception exception, Ht partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); } - partial void FormatOneOfArray(Option oneOfArrayRequest); - - /// - /// Processes the server response - /// - /// - /// - private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLog = false; - AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); - if (!suppressDefaultLog) - Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); - } - - /// - /// Processes the server response - /// - /// - /// - /// - partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); - - /// - /// Logs exceptions that occur while retrieving the server response - /// - /// - /// - /// - /// - private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) - { - bool suppressDefaultLogLocalVar = false; - OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); - if (!suppressDefaultLogLocalVar) - Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); - } - - /// - /// A partial method that gives developers a way to provide customized exception handling - /// - /// - /// - /// - /// - /// - partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); - - /// - /// Oneof array test - /// - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - try - { - return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - catch (Exception) - { - return null; - } - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// <> - public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - UriBuilder uriBuilderLocalVar = new UriBuilder(); - - try - { - FormatOneOfArray(oneOfArrayRequest); - - using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) - { - uriBuilderLocalVar.Host = HttpClient.BaseAddress.Host; - uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; - uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; - uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" - ? "/one-of-array" - : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); - - if (oneOfArrayRequest.IsSet) - httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream - ? httpRequestMessageLocalVar.Content = new StreamContent(stream) - : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); - - httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; - - string[] contentTypes = new string[] { - "application/json" - }; - - string contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); - - if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) - httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); - - httpRequestMessageLocalVar.Method = new HttpMethod("POST"); - - DateTime requestedAtLocalVar = DateTime.UtcNow; - - using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) - { - string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync().ConfigureAwait(false); - - ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); - - OneOfArrayApiResponse apiResponseLocalVar = new OneOfArrayApiResponse(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); - - AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); - - Events.ExecuteOnOneOfArray(apiResponseLocalVar); - - return apiResponseLocalVar; - } - } - } - catch(Exception e) - { - OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); - Events.ExecuteOnErrorOneOfArray(e); - throw; - } - } - - /// - /// The - /// - public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse - { - /// - /// The logger - /// - public ILogger Logger { get; } - - /// - /// The - /// - /// - /// - /// - /// - /// - /// - /// - public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) - { - Logger = logger; - OnCreated(httpRequestMessage, httpResponseMessage); - } - - partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); - - /// - /// Returns true if the response is 204 NoContent - /// - /// - public bool IsNoContent => 204 == (int)StatusCode; - - private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) - { - bool suppressDefaultLog = false; - OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); - if (!suppressDefaultLog) - Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); - } - - partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); - } - /// /// Processes the server response /// diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index 6af31e9381ce..06a03d063867 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -103,7 +103,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new NullableShapeJsonConverter()); _jsonOptions.Converters.Add(new NumberOnlyJsonConverter()); _jsonOptions.Converters.Add(new ObjectWithDeprecatedFieldsJsonConverter()); - _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); _jsonOptions.Converters.Add(new OneOfStringJsonConverter()); _jsonOptions.Converters.Add(new OrderJsonConverter()); _jsonOptions.Converters.Add(new OuterCompositeJsonConverter()); @@ -140,7 +139,6 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new TestCollectionEndingWithWordListObjectJsonConverter()); _jsonOptions.Converters.Add(new TestDescendantsJsonConverter()); _jsonOptions.Converters.Add(new TestInlineFreeformAdditionalPropertiesRequestJsonConverter()); - _jsonOptions.Converters.Add(new TestObjectJsonConverter()); _jsonOptions.Converters.Add(new TestResultJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeJsonConverter()); _jsonOptions.Converters.Add(new TestResultCodeNullableJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 975a6574fe6d..000000000000 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,195 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - public partial class OneOfArrayRequest : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list) - { - List = list; - OnCreated(); - } - - /// - /// Initializes a new instance of the class. - /// - /// - internal OneOfArrayRequest(List list1) - { - List1 = list1; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Gets or Sets List - /// - public List List { get; set; } - - /// - /// Gets or Sets List1 - /// - public List List1 { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - List list = default; - List list1 = default; - - Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; - while (utf8JsonReaderOneOf.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) - break; - - if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) - { - Utf8JsonReader utf8JsonReaderList = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList, jsonSerializerOptions, out list); - - Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; - ClientUtils.TryDeserialize>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); - } - } - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - default: - break; - } - } - } - - if (list != null) - return new OneOfArrayRequest(list); - - if (list1 != null) - return new OneOfArrayRequest(list1); - - throw new JsonException(); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) - { - - } - } -} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 0e60181be1e6..000000000000 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,174 +0,0 @@ -// -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Text.Json; -using System.Text.Json.Serialization; -using System.ComponentModel.DataAnnotations; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using Org.OpenAPITools.Client; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - public partial class TestObject : IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name - [JsonConstructor] - public TestObject(Option name = default) - { - NameOption = name; - OnCreated(); - } - - partial void OnCreated(); - - /// - /// Used to track the state of Name - /// - [JsonIgnore] - [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option NameOption { get; private set; } - - /// - /// Gets or Sets Name - /// - [JsonPropertyName("name")] - public string Name { get { return this.NameOption; } set { this.NameOption = new Option(value); } } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public Dictionary AdditionalProperties { get; } = new Dictionary(); - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// A Json converter for type - /// - public class TestObjectJsonConverter : JsonConverter - { - /// - /// Deserializes json to - /// - /// - /// - /// - /// - /// - public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) - { - int currentDepth = utf8JsonReader.CurrentDepth; - - if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) - throw new JsonException(); - - JsonTokenType startingTokenType = utf8JsonReader.TokenType; - - Option name = default; - - while (utf8JsonReader.Read()) - { - if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) - break; - - if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) - { - string localVarJsonPropertyName = utf8JsonReader.GetString(); - utf8JsonReader.Read(); - - switch (localVarJsonPropertyName) - { - case "name": - name = new Option(utf8JsonReader.GetString()); - break; - default: - break; - } - } - } - - if (name.IsSet && name.Value == null) - throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); - - return new TestObject(name); - } - - /// - /// Serializes a - /// - /// - /// - /// - /// - public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - writer.WriteStartObject(); - - WriteProperties(writer, testObject, jsonSerializerOptions); - writer.WriteEndObject(); - } - - /// - /// Serializes the properties of - /// - /// - /// - /// - /// - public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) - { - if (testObject.NameOption.IsSet && testObject.Name == null) - throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); - - if (testObject.NameOption.IsSet) - writer.WriteString("name", testObject.Name); - } - } -} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES index 1ab74b29a847..5885f8c71756 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES @@ -70,7 +70,6 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md -docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -104,7 +103,6 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md -docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -206,7 +204,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -238,7 +235,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md index df1681967cbb..0cd660848be2 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md @@ -145,7 +145,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello -*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -258,7 +257,6 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) - - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -290,7 +288,6 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) - - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md index d28c23a6d477..13db7cec8ee1 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -274,95 +273,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest? oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using System.Net.Http; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - // create instances of HttpClient, HttpClientHandler to be reused later with different Api classes - HttpClient httpClient = new HttpClient(); - HttpClientHandler httpClientHandler = new HttpClientHandler(); - var apiInstance = new DefaultApi(httpClient, config, httpClientHandler); - var oneOfArrayRequest = new OneOfArrayRequest?(); // OneOfArrayRequest? | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest?**](OneOfArrayRequest?.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md deleted file mode 100644 index 30d7195fdbf6..000000000000 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/httpclient/net9/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/TestObject.md deleted file mode 100644 index d1ee8bbc3b32..000000000000 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index 30cf9734c413..000000000000 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,57 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 6b90bf3807a5..000000000000 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,66 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 7311514f5731..00b6dcfecfea 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -83,27 +83,6 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default); - /// - /// - /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -211,29 +190,6 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// /// /// /// Thrown when fails to make API call @@ -800,111 +756,6 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - public void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default) - { - OneOfArrayWithHttpInfo(oneOfArrayRequest); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default) - { - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - - var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - /// /// /// diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 3abd0ccb14c8..000000000000 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,296 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using FileParameter = Org.OpenAPITools.Client.FileParameter; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Reflection; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] - [DataContract(Name = "oneOfArray_request")] - public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<string>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<TestObject>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - - private Object _actualInstance; - - /// - /// Gets or Sets ActualInstance - /// - public override Object ActualInstance - { - get - { - return _actualInstance; - } - set - { - if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else - { - throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); - } - } - } - - /// - /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<string> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<TestObject> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - var sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public override string ToJson() - { - return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); - } - - /// - /// Converts the JSON string into an instance of OneOfArrayRequest - /// - /// JSON string - /// An instance of OneOfArrayRequest - public static OneOfArrayRequest FromJson(string jsonString) - { - OneOfArrayRequest newOneOfArrayRequest = null; - - if (string.IsNullOrEmpty(jsonString)) - { - return newOneOfArrayRequest; - } - int match = 0; - List matchedTypes = new List(); - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - if (match == 0) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); - } - else if (match > 1) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); - } - - // deserialization is considered successful at this point if no exception has been thrown. - return newOneOfArrayRequest; - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; - } - - /// - /// Returns true if OneOfArrayRequest instances are equal - /// - /// Instance of OneOfArrayRequest to be compared - /// Boolean - public bool Equals(OneOfArrayRequest input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.ActualInstance != null) - hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// Custom JSON converter for OneOfArrayRequest - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// To write the JSON string - /// - /// JSON writer - /// Object to be converted into a JSON string - /// JSON Serializer - public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) - { - writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); - } - - /// - /// To convert a JSON string into an object - /// - /// JSON reader - /// Object type - /// Existing value - /// JSON Serializer - /// The object converted from the JSON string - public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) - { - switch(reader.TokenType) - { - case JsonToken.StartObject: - return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); - case JsonToken.StartArray: - return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); - default: - return null; - } - } - - /// - /// Check if the object can be converted - /// - /// Object type - /// True if the object can be converted - public override bool CanConvert(Type objectType) - { - return false; - } - } - -} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 63c7fb20fc39..000000000000 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,133 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using FileParameter = Org.OpenAPITools.Client.FileParameter; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - [DataContract(Name = "TestObject")] - public partial class TestObject : IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name. - public TestObject(string name = default) - { - this.Name = name; - this.AdditionalProperties = new Dictionary(); - } - - /// - /// Gets or Sets Name - /// - [DataMember(Name = "name", EmitDefaultValue = false)] - public string Name { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public IDictionary AdditionalProperties { get; set; } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public virtual string ToJson() - { - return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; - } - - /// - /// Returns true if TestObject instances are equal - /// - /// Instance of TestObject to be compared - /// Boolean - public bool Equals(TestObject input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.Name != null) - { - hashCode = (hashCode * 59) + this.Name.GetHashCode(); - } - if (this.AdditionalProperties != null) - { - hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); - } - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - -} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES index 98a3b226357f..8fc05aa72028 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES @@ -70,7 +70,6 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md -docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -104,7 +103,6 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md -docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -205,7 +203,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -237,7 +234,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md index 7786061b8a88..18511c95bd16 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md @@ -133,7 +133,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello -*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -246,7 +245,6 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) - - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -278,7 +276,6 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) - - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md index d6c5a82b31ed..13db7cec8ee1 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -274,95 +273,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using System.Net.Http; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - // create instances of HttpClient, HttpClientHandler to be reused later with different Api classes - HttpClient httpClient = new HttpClient(); - HttpClientHandler httpClientHandler = new HttpClientHandler(); - var apiInstance = new DefaultApi(httpClient, config, httpClientHandler); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md deleted file mode 100644 index 30d7195fdbf6..000000000000 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md deleted file mode 100644 index d1ee8bbc3b32..000000000000 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index 30cf9734c413..000000000000 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,57 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 6b90bf3807a5..000000000000 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,66 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 6c15a4a104cf..00b6dcfecfea 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -83,27 +83,6 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default); - /// - /// - /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -211,29 +190,6 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// /// /// /// Thrown when fails to make API call @@ -800,111 +756,6 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - public void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default) - { - OneOfArrayWithHttpInfo(oneOfArrayRequest); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default) - { - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - - var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - /// /// /// diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 3abd0ccb14c8..000000000000 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,296 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using FileParameter = Org.OpenAPITools.Client.FileParameter; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Reflection; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] - [DataContract(Name = "oneOfArray_request")] - public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<string>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<TestObject>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - - private Object _actualInstance; - - /// - /// Gets or Sets ActualInstance - /// - public override Object ActualInstance - { - get - { - return _actualInstance; - } - set - { - if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else - { - throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); - } - } - } - - /// - /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<string> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<TestObject> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - var sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public override string ToJson() - { - return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); - } - - /// - /// Converts the JSON string into an instance of OneOfArrayRequest - /// - /// JSON string - /// An instance of OneOfArrayRequest - public static OneOfArrayRequest FromJson(string jsonString) - { - OneOfArrayRequest newOneOfArrayRequest = null; - - if (string.IsNullOrEmpty(jsonString)) - { - return newOneOfArrayRequest; - } - int match = 0; - List matchedTypes = new List(); - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - if (match == 0) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); - } - else if (match > 1) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); - } - - // deserialization is considered successful at this point if no exception has been thrown. - return newOneOfArrayRequest; - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; - } - - /// - /// Returns true if OneOfArrayRequest instances are equal - /// - /// Instance of OneOfArrayRequest to be compared - /// Boolean - public bool Equals(OneOfArrayRequest input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.ActualInstance != null) - hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// Custom JSON converter for OneOfArrayRequest - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// To write the JSON string - /// - /// JSON writer - /// Object to be converted into a JSON string - /// JSON Serializer - public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) - { - writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); - } - - /// - /// To convert a JSON string into an object - /// - /// JSON reader - /// Object type - /// Existing value - /// JSON Serializer - /// The object converted from the JSON string - public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) - { - switch(reader.TokenType) - { - case JsonToken.StartObject: - return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); - case JsonToken.StartArray: - return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); - default: - return null; - } - } - - /// - /// Check if the object can be converted - /// - /// Object type - /// True if the object can be converted - public override bool CanConvert(Type objectType) - { - return false; - } - } - -} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 63c7fb20fc39..000000000000 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,133 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using FileParameter = Org.OpenAPITools.Client.FileParameter; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - [DataContract(Name = "TestObject")] - public partial class TestObject : IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name. - public TestObject(string name = default) - { - this.Name = name; - this.AdditionalProperties = new Dictionary(); - } - - /// - /// Gets or Sets Name - /// - [DataMember(Name = "name", EmitDefaultValue = false)] - public string Name { get; set; } - - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public IDictionary AdditionalProperties { get; set; } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public virtual string ToJson() - { - return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; - } - - /// - /// Returns true if TestObject instances are equal - /// - /// Instance of TestObject to be compared - /// Boolean - public bool Equals(TestObject input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.Name != null) - { - hashCode = (hashCode * 59) + this.Name.GetHashCode(); - } - if (this.AdditionalProperties != null) - { - hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); - } - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - -} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES index 22ffa214235d..0ddde99ff436 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES @@ -70,7 +70,6 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md -docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -104,7 +103,6 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md -docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -208,7 +206,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -240,7 +237,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md index ab676f4514e5..bfd756e161f3 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md @@ -120,7 +120,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello -*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -233,7 +232,6 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) - - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -265,7 +263,6 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) - - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md index ba4d35362453..d9d4abc6ebbc 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest? oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest?(); // OneOfArrayRequest? | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest?**](OneOfArrayRequest?.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md deleted file mode 100644 index 30d7195fdbf6..000000000000 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/restsharp/net8/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/TestObject.md deleted file mode 100644 index d1ee8bbc3b32..000000000000 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index 30cf9734c413..000000000000 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,57 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 6b90bf3807a5..000000000000 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,66 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index d245878bcb2b..6446a8be8118 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -89,29 +89,6 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// - void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// ApiResponse of Object(void) - ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0); - /// - /// - /// /// Thrown when fails to make API call /// Index associated with the operation. /// List<List<RolesReportsHash>> @@ -229,31 +206,6 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of void - System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// /// /// /// Thrown when fails to make API call @@ -813,137 +765,6 @@ public async System.Threading.Tasks.Task> HelloAsync(int operationInd return localVarResponse; } - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// - public void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0) - { - OneOfArrayWithHttpInfo(oneOfArrayRequest); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// ApiResponse of Object(void) - public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0) - { - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - var localVarMultipartFormData = localVarContentType == "multipart/form-data"; - if (localVarContentType != null) - { - localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - } - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) - { - localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - } - - localVarRequestOptions.Data = oneOfArrayRequest; - - localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; - localVarRequestOptions.OperationIndex = operationIndex; - - - // make the HTTP request - var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) - { - throw _exception; - } - } - - return localVarResponse; - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of void - public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) - { - await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, operationIndex, cancellationToken).ConfigureAwait(false); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) - { - - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) - { - localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - } - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) - { - localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - } - - localVarRequestOptions.Data = oneOfArrayRequest; - - localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; - localVarRequestOptions.OperationIndex = operationIndex; - - - // make the HTTP request - var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) - { - throw _exception; - } - } - - return localVarResponse; - } - /// /// /// diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 312b8ed64356..000000000000 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,295 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Reflection; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] - [DataContract(Name = "oneOfArray_request")] - public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<string>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<TestObject>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - - private Object _actualInstance; - - /// - /// Gets or Sets ActualInstance - /// - public override Object ActualInstance - { - get - { - return _actualInstance; - } - set - { - if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else - { - throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); - } - } - } - - /// - /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<string> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<TestObject> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - var sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public override string ToJson() - { - return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); - } - - /// - /// Converts the JSON string into an instance of OneOfArrayRequest - /// - /// JSON string - /// An instance of OneOfArrayRequest - public static OneOfArrayRequest FromJson(string jsonString) - { - OneOfArrayRequest newOneOfArrayRequest = null; - - if (string.IsNullOrEmpty(jsonString)) - { - return newOneOfArrayRequest; - } - int match = 0; - List matchedTypes = new List(); - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - if (match == 0) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); - } - else if (match > 1) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); - } - - // deserialization is considered successful at this point if no exception has been thrown. - return newOneOfArrayRequest; - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; - } - - /// - /// Returns true if OneOfArrayRequest instances are equal - /// - /// Instance of OneOfArrayRequest to be compared - /// Boolean - public bool Equals(OneOfArrayRequest input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.ActualInstance != null) - hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// Custom JSON converter for OneOfArrayRequest - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// To write the JSON string - /// - /// JSON writer - /// Object to be converted into a JSON string - /// JSON Serializer - public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) - { - writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); - } - - /// - /// To convert a JSON string into an object - /// - /// JSON reader - /// Object type - /// Existing value - /// JSON Serializer - /// The object converted from the JSON string - public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) - { - switch(reader.TokenType) - { - case JsonToken.StartObject: - return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); - case JsonToken.StartArray: - return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); - default: - return null; - } - } - - /// - /// Check if the object can be converted - /// - /// Object type - /// True if the object can be converted - public override bool CanConvert(Type objectType) - { - return false; - } - } - -} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 157696b8d39c..000000000000 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,120 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - [DataContract(Name = "TestObject")] - public partial class TestObject : IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name. - public TestObject(string name = default) - { - this.Name = name; - } - - /// - /// Gets or Sets Name - /// - [DataMember(Name = "name", EmitDefaultValue = false)] - public string Name { get; set; } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public virtual string ToJson() - { - return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; - } - - /// - /// Returns true if TestObject instances are equal - /// - /// Instance of TestObject to be compared - /// Boolean - public bool Equals(TestObject input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.Name != null) - { - hashCode = (hashCode * 59) + this.Name.GetHashCode(); - } - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - -} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES index 22ffa214235d..0ddde99ff436 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES @@ -70,7 +70,6 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md -docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -104,7 +103,6 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md -docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -208,7 +206,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -240,7 +237,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md index 2e5724f70dd8..994498b2644c 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md @@ -108,7 +108,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](docs/DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](docs/DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](docs/DefaultApi.md#hello) | **GET** /hello | Hello -*DefaultApi* | [**OneOfArray**](docs/DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](docs/DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](docs/DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](docs/FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -221,7 +220,6 @@ Class | Method | HTTP request | Description - [Model.NullableShape](docs/NullableShape.md) - [Model.NumberOnly](docs/NumberOnly.md) - [Model.ObjectWithDeprecatedFields](docs/ObjectWithDeprecatedFields.md) - - [Model.OneOfArrayRequest](docs/OneOfArrayRequest.md) - [Model.OneOfString](docs/OneOfString.md) - [Model.Order](docs/Order.md) - [Model.OuterComposite](docs/OuterComposite.md) @@ -253,7 +251,6 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](docs/TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](docs/TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](docs/TestInlineFreeformAdditionalPropertiesRequest.md) - - [Model.TestObject](docs/TestObject.md) - [Model.TestResult](docs/TestResult.md) - [Model.TestResultCode](docs/TestResultCode.md) - [Model.Triangle](docs/Triangle.md) diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md index 82da3edff32d..d9d4abc6ebbc 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md deleted file mode 100644 index 30d7195fdbf6..000000000000 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md deleted file mode 100644 index d1ee8bbc3b32..000000000000 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index 30cf9734c413..000000000000 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,57 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Fact] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - } -} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 6b90bf3807a5..000000000000 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,66 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using Xunit; - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Fact] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Fact] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs index 70db86ec8d92..6446a8be8118 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -89,29 +89,6 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// - void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// ApiResponse of Object(void) - ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0); - /// - /// - /// /// Thrown when fails to make API call /// Index associated with the operation. /// List<List<RolesReportsHash>> @@ -229,31 +206,6 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of void - System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// /// /// /// Thrown when fails to make API call @@ -813,137 +765,6 @@ public async System.Threading.Tasks.Task> HelloAsync(int operationInd return localVarResponse; } - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// - public void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0) - { - OneOfArrayWithHttpInfo(oneOfArrayRequest); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// ApiResponse of Object(void) - public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0) - { - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - var localVarMultipartFormData = localVarContentType == "multipart/form-data"; - if (localVarContentType != null) - { - localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - } - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) - { - localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - } - - localVarRequestOptions.Data = oneOfArrayRequest; - - localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; - localVarRequestOptions.OperationIndex = operationIndex; - - - // make the HTTP request - var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) - { - throw _exception; - } - } - - return localVarResponse; - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of void - public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) - { - await OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, operationIndex, cancellationToken).ConfigureAwait(false); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Index associated with the operation. - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, int operationIndex = 0, System.Threading.CancellationToken cancellationToken = default) - { - - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) - { - localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - } - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) - { - localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - } - - localVarRequestOptions.Data = oneOfArrayRequest; - - localVarRequestOptions.Operation = "DefaultApi.OneOfArray"; - localVarRequestOptions.OperationIndex = operationIndex; - - - // make the HTTP request - var localVarResponse = await this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken).ConfigureAwait(false); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) - { - throw _exception; - } - } - - return localVarResponse; - } - /// /// /// diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 312b8ed64356..000000000000 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,295 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; -using System.Reflection; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] - [DataContract(Name = "oneOfArray_request")] - public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<string>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<TestObject>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - - private Object _actualInstance; - - /// - /// Gets or Sets ActualInstance - /// - public override Object ActualInstance - { - get - { - return _actualInstance; - } - set - { - if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else - { - throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); - } - } - } - - /// - /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<string> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<TestObject> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - var sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public override string ToJson() - { - return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); - } - - /// - /// Converts the JSON string into an instance of OneOfArrayRequest - /// - /// JSON string - /// An instance of OneOfArrayRequest - public static OneOfArrayRequest FromJson(string jsonString) - { - OneOfArrayRequest newOneOfArrayRequest = null; - - if (string.IsNullOrEmpty(jsonString)) - { - return newOneOfArrayRequest; - } - int match = 0; - List matchedTypes = new List(); - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - if (match == 0) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); - } - else if (match > 1) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); - } - - // deserialization is considered successful at this point if no exception has been thrown. - return newOneOfArrayRequest; - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as OneOfArrayRequest).AreEqual; - } - - /// - /// Returns true if OneOfArrayRequest instances are equal - /// - /// Instance of OneOfArrayRequest to be compared - /// Boolean - public bool Equals(OneOfArrayRequest input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.ActualInstance != null) - hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - - /// - /// Custom JSON converter for OneOfArrayRequest - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// To write the JSON string - /// - /// JSON writer - /// Object to be converted into a JSON string - /// JSON Serializer - public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) - { - writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); - } - - /// - /// To convert a JSON string into an object - /// - /// JSON reader - /// Object type - /// Existing value - /// JSON Serializer - /// The object converted from the JSON string - public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) - { - switch(reader.TokenType) - { - case JsonToken.StartObject: - return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); - case JsonToken.StartArray: - return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); - default: - return null; - } - } - - /// - /// Check if the object can be converted - /// - /// Object type - /// True if the object can be converted - public override bool CanConvert(Type objectType) - { - return false; - } - } - -} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index b45cf1779408..000000000000 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,154 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using System.ComponentModel.DataAnnotations; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - [DataContract(Name = "TestObject")] - public partial class TestObject : IEquatable, IValidatableObject - { - /// - /// Initializes a new instance of the class. - /// - /// name. - public TestObject(string name = default) - { - this._Name = name; - if (this.Name != null) - { - this._flagName = true; - } - this.AdditionalProperties = new Dictionary(); - } - - /// - /// Gets or Sets Name - /// - [DataMember(Name = "name", EmitDefaultValue = false)] - public string Name - { - get{ return _Name;} - set - { - _Name = value; - _flagName = true; - } - } - private string _Name; - private bool _flagName; - - /// - /// Returns false as Name should not be serialized given that it's read-only. - /// - /// false (boolean) - public bool ShouldSerializeName() - { - return _flagName; - } - /// - /// Gets or Sets additional properties - /// - [JsonExtensionData] - public IDictionary AdditionalProperties { get; set; } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public virtual string ToJson() - { - return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input as TestObject).AreEqual; - } - - /// - /// Returns true if TestObject instances are equal - /// - /// Instance of TestObject to be compared - /// Boolean - public bool Equals(TestObject input) - { - return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.Name != null) - { - hashCode = (hashCode * 59) + this.Name.GetHashCode(); - } - if (this.AdditionalProperties != null) - { - hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); - } - return hashCode; - } - } - - /// - /// To validate all properties of the instance - /// - /// Validation context - /// Validation Result - IEnumerable IValidatableObject.Validate(ValidationContext validationContext) - { - yield break; - } - } - -} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES index 84563175b9e6..f91fdecb6552 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES @@ -68,7 +68,6 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md -docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -102,7 +101,6 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md -docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -205,7 +203,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -237,7 +234,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md index 93f8a2aa1320..c8ec2f557035 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md @@ -94,7 +94,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello -*DefaultApi* | [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -207,7 +206,6 @@ Class | Method | HTTP request | Description - [Model.NullableShape](NullableShape.md) - [Model.NumberOnly](NumberOnly.md) - [Model.ObjectWithDeprecatedFields](ObjectWithDeprecatedFields.md) - - [Model.OneOfArrayRequest](OneOfArrayRequest.md) - [Model.OneOfString](OneOfString.md) - [Model.Order](Order.md) - [Model.OuterComposite](OuterComposite.md) @@ -239,7 +237,6 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](TestInlineFreeformAdditionalPropertiesRequest.md) - - [Model.TestObject](TestObject.md) - [Model.TestResult](TestResult.md) - [Model.TestResultCode](TestResultCode.md) - [Model.Triangle](Triangle.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md index ba4d35362453..d9d4abc6ebbc 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest? oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest?(); // OneOfArrayRequest? | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest?**](OneOfArrayRequest?.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md deleted file mode 100644 index 30d7195fdbf6..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md deleted file mode 100644 index d1ee8bbc3b32..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index 7742191d3ca1..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,58 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; -using NUnit.Framework; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Test] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - - } -} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 7509bd532f95..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,66 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; -using NUnit.Framework; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Test] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Test] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 6540704a86fe..7392e37d6bcb 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -82,27 +82,6 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default); - /// - /// - /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -210,29 +189,6 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// /// /// /// Thrown when fails to make API call @@ -763,122 +719,6 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - public void OneOfArray(OneOfArrayRequest? oneOfArrayRequest = default) - { - OneOfArrayWithHttpInfo(oneOfArrayRequest); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest? oneOfArrayRequest = default) - { - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - var task = OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken); -#if UNITY_EDITOR || !UNITY_WEBGL - await task.ConfigureAwait(false); -#else - await task; -#endif - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest? oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - - var task = this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken); - -#if UNITY_EDITOR || !UNITY_WEBGL - var localVarResponse = await task.ConfigureAwait(false); -#else - var localVarResponse = await task; -#endif - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - /// /// /// diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 9b6af37d08b1..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,286 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using System.Reflection; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] - [DataContract(Name = "oneOfArray_request")] - public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable - { - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<string>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<TestObject>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - - private Object _actualInstance; - - /// - /// Gets or Sets ActualInstance - /// - public override Object ActualInstance - { - get - { - return _actualInstance; - } - set - { - if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else - { - throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); - } - } - } - - /// - /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<string> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<TestObject> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - var sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public override string ToJson() - { - return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); - } - - /// - /// Converts the JSON string into an instance of OneOfArrayRequest - /// - /// JSON string - /// An instance of OneOfArrayRequest - public static OneOfArrayRequest FromJson(string jsonString) - { - OneOfArrayRequest newOneOfArrayRequest = null; - - if (string.IsNullOrEmpty(jsonString)) - { - return newOneOfArrayRequest; - } - int match = 0; - List matchedTypes = new List(); - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - if (match == 0) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); - } - else if (match > 1) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); - } - - // deserialization is considered successful at this point if no exception has been thrown. - return newOneOfArrayRequest; - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return this.Equals(input as OneOfArrayRequest); - } - - /// - /// Returns true if OneOfArrayRequest instances are equal - /// - /// Instance of OneOfArrayRequest to be compared - /// Boolean - public bool Equals(OneOfArrayRequest input) - { - if (input == null) - return false; - - return this.ActualInstance.Equals(input.ActualInstance); - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.ActualInstance != null) - hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); - return hashCode; - } - } - } - - /// - /// Custom JSON converter for OneOfArrayRequest - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// To write the JSON string - /// - /// JSON writer - /// Object to be converted into a JSON string - /// JSON Serializer - public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) - { - writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); - } - - /// - /// To convert a JSON string into an object - /// - /// JSON reader - /// Object type - /// Existing value - /// JSON Serializer - /// The object converted from the JSON string - public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) - { - switch(reader.TokenType) - { - case JsonToken.StartObject: - return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); - case JsonToken.StartArray: - return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); - default: - return null; - } - } - - /// - /// Check if the object can be converted - /// - /// Object type - /// True if the object can be converted - public override bool CanConvert(Type objectType) - { - return false; - } - } - -} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 12b57173e64a..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,118 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - [DataContract(Name = "TestObject")] - public partial class TestObject : IEquatable - { - /// - /// Initializes a new instance of the class. - /// - /// name. - public TestObject(string name = default) - { - this.Name = name; - } - - /// - /// Gets or Sets Name - /// - [DataMember(Name = "name", EmitDefaultValue = false)] - public string Name { get; set; } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public virtual string ToJson() - { - return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return this.Equals(input as TestObject); - } - - /// - /// Returns true if TestObject instances are equal - /// - /// Instance of TestObject to be compared - /// Boolean - public bool Equals(TestObject input) - { - if (input == null) - { - return false; - } - return - ( - this.Name == input.Name || - (this.Name != null && - this.Name.Equals(input.Name)) - ); - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.Name != null) - { - hashCode = (hashCode * 59) + this.Name.GetHashCode(); - } - return hashCode; - } - } - - } - -} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES index 84563175b9e6..f91fdecb6552 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES @@ -68,7 +68,6 @@ docs/NullableGuidClass.md docs/NullableShape.md docs/NumberOnly.md docs/ObjectWithDeprecatedFields.md -docs/OneOfArrayRequest.md docs/OneOfString.md docs/Order.md docs/OuterComposite.md @@ -102,7 +101,6 @@ docs/TestCollectionEndingWithWordList.md docs/TestCollectionEndingWithWordListObject.md docs/TestDescendants.md docs/TestInlineFreeformAdditionalPropertiesRequest.md -docs/TestObject.md docs/TestResult.md docs/TestResultCode.md docs/Triangle.md @@ -205,7 +203,6 @@ src/Org.OpenAPITools/Model/NullableGuidClass.cs src/Org.OpenAPITools/Model/NullableShape.cs src/Org.OpenAPITools/Model/NumberOnly.cs src/Org.OpenAPITools/Model/ObjectWithDeprecatedFields.cs -src/Org.OpenAPITools/Model/OneOfArrayRequest.cs src/Org.OpenAPITools/Model/OneOfString.cs src/Org.OpenAPITools/Model/Order.cs src/Org.OpenAPITools/Model/OuterComposite.cs @@ -237,7 +234,6 @@ src/Org.OpenAPITools/Model/TestCollectionEndingWithWordList.cs src/Org.OpenAPITools/Model/TestCollectionEndingWithWordListObject.cs src/Org.OpenAPITools/Model/TestDescendants.cs src/Org.OpenAPITools/Model/TestInlineFreeformAdditionalPropertiesRequest.cs -src/Org.OpenAPITools/Model/TestObject.cs src/Org.OpenAPITools/Model/TestResult.cs src/Org.OpenAPITools/Model/TestResultCode.cs src/Org.OpenAPITools/Model/Triangle.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md index 93f8a2aa1320..c8ec2f557035 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md @@ -94,7 +94,6 @@ Class | Method | HTTP request | Description *DefaultApi* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | *DefaultApi* | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | *DefaultApi* | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello -*DefaultApi* | [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | *DefaultApi* | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | *DefaultApi* | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements *FakeApi* | [**FakeHealthGet**](FakeApi.md#fakehealthget) | **GET** /fake/health | Health check endpoint @@ -207,7 +206,6 @@ Class | Method | HTTP request | Description - [Model.NullableShape](NullableShape.md) - [Model.NumberOnly](NumberOnly.md) - [Model.ObjectWithDeprecatedFields](ObjectWithDeprecatedFields.md) - - [Model.OneOfArrayRequest](OneOfArrayRequest.md) - [Model.OneOfString](OneOfString.md) - [Model.Order](Order.md) - [Model.OuterComposite](OuterComposite.md) @@ -239,7 +237,6 @@ Class | Method | HTTP request | Description - [Model.TestCollectionEndingWithWordListObject](TestCollectionEndingWithWordListObject.md) - [Model.TestDescendants](TestDescendants.md) - [Model.TestInlineFreeformAdditionalPropertiesRequest](TestInlineFreeformAdditionalPropertiesRequest.md) - - [Model.TestObject](TestObject.md) - [Model.TestResult](TestResult.md) - [Model.TestResultCode](TestResultCode.md) - [Model.Triangle](Triangle.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml index e0dfb98e3e7a..4f007819a1a6 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml @@ -41,18 +41,6 @@ tags: - description: Operations about user name: user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/oneOfArray_request' - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2875,19 +2863,6 @@ components: - APPROVED - MANUAL_APPROVAL_REQUIRED type: string - TestObject: - properties: - name: - type: string - type: object - oneOfArray_request: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array _foo_get_default_response: example: string: diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md index 82da3edff32d..d9d4abc6ebbc 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/DefaultApi.md @@ -7,7 +7,6 @@ All URIs are relative to *http://petstore.swagger.io:80/v2* | [**FooGet**](DefaultApi.md#fooget) | **GET** /foo | | | [**GetCountry**](DefaultApi.md#getcountry) | **POST** /country | | | [**Hello**](DefaultApi.md#hello) | **GET** /hello | Hello | -| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | | [**RolesReportGet**](DefaultApi.md#rolesreportget) | **GET** /roles/report | | | [**Test**](DefaultApi.md#test) | **GET** /test | Retrieve an existing Notificationtest's Elements | @@ -262,91 +261,6 @@ No authorization required [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) - -# **OneOfArray** -> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) - - - -Oneof array test - -### Example -```csharp -using System.Collections.Generic; -using System.Diagnostics; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Client; -using Org.OpenAPITools.Model; - -namespace Example -{ - public class OneOfArrayExample - { - public static void Main() - { - Configuration config = new Configuration(); - config.BasePath = "http://petstore.swagger.io:80/v2"; - var apiInstance = new DefaultApi(config); - var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) - - try - { - apiInstance.OneOfArray(oneOfArrayRequest); - } - catch (ApiException e) - { - Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); - } - } - } -} -``` - -#### Using the OneOfArrayWithHttpInfo variant -This returns an ApiResponse object which contains the response data, status code and headers. - -```csharp -try -{ - apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); -} -catch (ApiException e) -{ - Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); - Debug.Print("Status Code: " + e.ErrorCode); - Debug.Print(e.StackTrace); -} -``` - -### Parameters - -| Name | Type | Description | Notes | -|------|------|-------------|-------| -| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | - -### Return type - -void (empty response body) - -### Authorization - -No authorization required - -### HTTP request headers - - - **Content-Type**: application/json - - **Accept**: Not defined - - -### HTTP response details -| Status code | Description | Response headers | -|-------------|-------------|------------------| -| **204** | Successful operation | - | - -[[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) - # **RolesReportGet** > List<List<RolesReportsHash>> RolesReportGet () diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md deleted file mode 100644 index 30d7195fdbf6..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/OneOfArrayRequest.md +++ /dev/null @@ -1,9 +0,0 @@ -# Org.OpenAPITools.Model.OneOfArrayRequest - -## 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/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md deleted file mode 100644 index d1ee8bbc3b32..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/TestObject.md +++ /dev/null @@ -1,10 +0,0 @@ -# Org.OpenAPITools.Model.TestObject - -## 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/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs deleted file mode 100644 index 7742191d3ca1..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs +++ /dev/null @@ -1,58 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; -using NUnit.Framework; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing OneOfArrayRequest - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class OneOfArrayRequestTests : IDisposable - { - // TODO uncomment below to declare an instance variable for OneOfArrayRequest - //private OneOfArrayRequest instance; - - public OneOfArrayRequestTests() - { - // TODO uncomment below to create an instance of OneOfArrayRequest - //instance = new OneOfArrayRequest(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of OneOfArrayRequest - /// - [Test] - public void OneOfArrayRequestInstanceTest() - { - // TODO uncomment below to test "IsType" OneOfArrayRequest - //Assert.IsType(instance); - } - - } -} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs deleted file mode 100644 index 7509bd532f95..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs +++ /dev/null @@ -1,66 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Linq; -using System.IO; -using System.Collections.Generic; -using Org.OpenAPITools.Api; -using Org.OpenAPITools.Model; -using Org.OpenAPITools.Client; -using System.Reflection; -using Newtonsoft.Json; -using NUnit.Framework; - -namespace Org.OpenAPITools.Test.Model -{ - /// - /// Class for testing TestObject - /// - /// - /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). - /// Please update the test case below to test the model. - /// - public class TestObjectTests : IDisposable - { - // TODO uncomment below to declare an instance variable for TestObject - //private TestObject instance; - - public TestObjectTests() - { - // TODO uncomment below to create an instance of TestObject - //instance = new TestObject(); - } - - public void Dispose() - { - // Cleanup when everything is done. - } - - /// - /// Test an instance of TestObject - /// - [Test] - public void TestObjectInstanceTest() - { - // TODO uncomment below to test "IsType" TestObject - //Assert.IsType(instance); - } - - /// - /// Test the property 'Name' - /// - [Test] - public void NameTest() - { - // TODO unit test for the property 'Name' - } - } -} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs index 455f9d6f4397..7392e37d6bcb 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -82,27 +82,6 @@ public interface IDefaultApiSync : IApiAccessor /// /// /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default); - /// - /// - /// /// Thrown when fails to make API call /// List<List<RolesReportsHash>> List> RolesReportGet(); @@ -210,29 +189,6 @@ public interface IDefaultApiAsync : IApiAccessor /// /// /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - - /// - /// - /// - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); - /// - /// - /// - /// /// /// /// Thrown when fails to make API call @@ -763,122 +719,6 @@ public async System.Threading.Tasks.Task> HelloAsync(System.Threading return localVarResponse; } - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// - public void OneOfArray(OneOfArrayRequest oneOfArrayRequest = default) - { - OneOfArrayWithHttpInfo(oneOfArrayRequest); - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// ApiResponse of Object(void) - public Org.OpenAPITools.Client.ApiResponse OneOfArrayWithHttpInfo(OneOfArrayRequest oneOfArrayRequest = default) - { - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - var localVarResponse = this.Client.Post("/one-of-array", localVarRequestOptions, this.Configuration); - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of void - public async System.Threading.Tasks.Task OneOfArrayAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - var task = OneOfArrayWithHttpInfoAsync(oneOfArrayRequest, cancellationToken); -#if UNITY_EDITOR || !UNITY_WEBGL - await task.ConfigureAwait(false); -#else - await task; -#endif - } - - /// - /// Oneof array test - /// - /// Thrown when fails to make API call - /// (optional) - /// Cancellation Token to cancel the request. - /// Task of ApiResponse - public async System.Threading.Tasks.Task> OneOfArrayWithHttpInfoAsync(OneOfArrayRequest oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) - { - - Org.OpenAPITools.Client.RequestOptions localVarRequestOptions = new Org.OpenAPITools.Client.RequestOptions(); - - string[] _contentTypes = new string[] { - "application/json" - }; - - // to determine the Accept header - string[] _accepts = new string[] { - }; - - - var localVarContentType = Org.OpenAPITools.Client.ClientUtils.SelectHeaderContentType(_contentTypes); - if (localVarContentType != null) localVarRequestOptions.HeaderParameters.Add("Content-Type", localVarContentType); - - var localVarAccept = Org.OpenAPITools.Client.ClientUtils.SelectHeaderAccept(_accepts); - if (localVarAccept != null) localVarRequestOptions.HeaderParameters.Add("Accept", localVarAccept); - - localVarRequestOptions.Data = oneOfArrayRequest; - - - // make the HTTP request - - var task = this.AsynchronousClient.PostAsync("/one-of-array", localVarRequestOptions, this.Configuration, cancellationToken); - -#if UNITY_EDITOR || !UNITY_WEBGL - var localVarResponse = await task.ConfigureAwait(false); -#else - var localVarResponse = await task; -#endif - - if (this.ExceptionFactory != null) - { - Exception _exception = this.ExceptionFactory("OneOfArray", localVarResponse); - if (_exception != null) throw _exception; - } - - return localVarResponse; - } - /// /// /// diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs deleted file mode 100644 index 9b6af37d08b1..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +++ /dev/null @@ -1,286 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; -using System.Reflection; - -namespace Org.OpenAPITools.Model -{ - /// - /// OneOfArrayRequest - /// - [JsonConverter(typeof(OneOfArrayRequestJsonConverter))] - [DataContract(Name = "oneOfArray_request")] - public partial class OneOfArrayRequest : AbstractOpenAPISchema, IEquatable - { - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<string>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - /// - /// Initializes a new instance of the class - /// with the class - /// - /// An instance of List<TestObject>. - public OneOfArrayRequest(List actualInstance) - { - this.IsNullable = false; - this.SchemaType= "oneOf"; - this.ActualInstance = actualInstance ?? throw new ArgumentException("Invalid instance found. Must not be null."); - } - - - private Object _actualInstance; - - /// - /// Gets or Sets ActualInstance - /// - public override Object ActualInstance - { - get - { - return _actualInstance; - } - set - { - if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else if (value.GetType() == typeof(List) || value is List) - { - this._actualInstance = value; - } - else - { - throw new ArgumentException("Invalid instance found. Must be the following types: List, List"); - } - } - } - - /// - /// Get the actual instance of `List<string>`. If the actual instance is not `List<string>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<string> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Get the actual instance of `List<TestObject>`. If the actual instance is not `List<TestObject>`, - /// the InvalidClassException will be thrown - /// - /// An instance of List<TestObject> - public List GetList() - { - return (List)this.ActualInstance; - } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - var sb = new StringBuilder(); - sb.Append("class OneOfArrayRequest {\n"); - sb.Append(" ActualInstance: ").Append(this.ActualInstance).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public override string ToJson() - { - return JsonConvert.SerializeObject(this.ActualInstance, OneOfArrayRequest.SerializerSettings); - } - - /// - /// Converts the JSON string into an instance of OneOfArrayRequest - /// - /// JSON string - /// An instance of OneOfArrayRequest - public static OneOfArrayRequest FromJson(string jsonString) - { - OneOfArrayRequest newOneOfArrayRequest = null; - - if (string.IsNullOrEmpty(jsonString)) - { - return newOneOfArrayRequest; - } - int match = 0; - List matchedTypes = new List(); - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - try - { - // if it does not contains "AdditionalProperties", use SerializerSettings to deserialize - if (typeof(List).GetProperty("AdditionalProperties") == null) - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.SerializerSettings)); - } - else - { - newOneOfArrayRequest = new OneOfArrayRequest(JsonConvert.DeserializeObject>(jsonString, OneOfArrayRequest.AdditionalPropertiesSerializerSettings)); - } - matchedTypes.Add("List"); - match++; - } - catch (Exception exception) - { - // deserialization failed, try the next one - System.Diagnostics.Debug.WriteLine(string.Format("Failed to deserialize `{0}` into List: {1}", jsonString, exception.ToString())); - } - - if (match == 0) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` cannot be deserialized into any schema defined."); - } - else if (match > 1) - { - throw new InvalidDataException("The JSON string `" + jsonString + "` incorrectly matches more than one schema (should be exactly one match): " + String.Join(",", matchedTypes)); - } - - // deserialization is considered successful at this point if no exception has been thrown. - return newOneOfArrayRequest; - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return this.Equals(input as OneOfArrayRequest); - } - - /// - /// Returns true if OneOfArrayRequest instances are equal - /// - /// Instance of OneOfArrayRequest to be compared - /// Boolean - public bool Equals(OneOfArrayRequest input) - { - if (input == null) - return false; - - return this.ActualInstance.Equals(input.ActualInstance); - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.ActualInstance != null) - hashCode = hashCode * 59 + this.ActualInstance.GetHashCode(); - return hashCode; - } - } - } - - /// - /// Custom JSON converter for OneOfArrayRequest - /// - public class OneOfArrayRequestJsonConverter : JsonConverter - { - /// - /// To write the JSON string - /// - /// JSON writer - /// Object to be converted into a JSON string - /// JSON Serializer - public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) - { - writer.WriteRawValue((string)(typeof(OneOfArrayRequest).GetMethod("ToJson").Invoke(value, null))); - } - - /// - /// To convert a JSON string into an object - /// - /// JSON reader - /// Object type - /// Existing value - /// JSON Serializer - /// The object converted from the JSON string - public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) - { - switch(reader.TokenType) - { - case JsonToken.StartObject: - return OneOfArrayRequest.FromJson(JObject.Load(reader).ToString(Formatting.None)); - case JsonToken.StartArray: - return OneOfArrayRequest.FromJson(JArray.Load(reader).ToString(Formatting.None)); - default: - return null; - } - } - - /// - /// Check if the object can be converted - /// - /// Object type - /// True if the object can be converted - public override bool CanConvert(Type objectType) - { - return false; - } - } - -} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs deleted file mode 100644 index 12b57173e64a..000000000000 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/TestObject.cs +++ /dev/null @@ -1,118 +0,0 @@ -/* - * OpenAPI Petstore - * - * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ - * - * The version of the OpenAPI document: 1.0.0 - * Generated by: https://github.com/openapitools/openapi-generator.git - */ - - -using System; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.IO; -using System.Runtime.Serialization; -using System.Text; -using System.Text.RegularExpressions; -using Newtonsoft.Json; -using Newtonsoft.Json.Converters; -using Newtonsoft.Json.Linq; -using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; - -namespace Org.OpenAPITools.Model -{ - /// - /// TestObject - /// - [DataContract(Name = "TestObject")] - public partial class TestObject : IEquatable - { - /// - /// Initializes a new instance of the class. - /// - /// name. - public TestObject(string name = default) - { - this.Name = name; - } - - /// - /// Gets or Sets Name - /// - [DataMember(Name = "name", EmitDefaultValue = false)] - public string Name { get; set; } - - /// - /// Returns the string presentation of the object - /// - /// String presentation of the object - public override string ToString() - { - StringBuilder sb = new StringBuilder(); - sb.Append("class TestObject {\n"); - sb.Append(" Name: ").Append(Name).Append("\n"); - sb.Append("}\n"); - return sb.ToString(); - } - - /// - /// Returns the JSON string presentation of the object - /// - /// JSON string presentation of the object - public virtual string ToJson() - { - return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); - } - - /// - /// Returns true if objects are equal - /// - /// Object to be compared - /// Boolean - public override bool Equals(object input) - { - return this.Equals(input as TestObject); - } - - /// - /// Returns true if TestObject instances are equal - /// - /// Instance of TestObject to be compared - /// Boolean - public bool Equals(TestObject input) - { - if (input == null) - { - return false; - } - return - ( - this.Name == input.Name || - (this.Name != null && - this.Name.Equals(input.Name)) - ); - } - - /// - /// Gets the hash code - /// - /// Hash code - public override int GetHashCode() - { - unchecked // Overflow is fine, just wrap - { - int hashCode = 41; - if (this.Name != null) - { - hashCode = (hashCode * 59) + this.Name.GetHashCode(); - } - return hashCode; - } - } - - } - -} From 05dbc5842925e8ad7453fcf5fe6b66105ad3e3ea Mon Sep 17 00:00:00 2001 From: devhl Date: Sat, 3 May 2025 18:38:27 -0400 Subject: [PATCH 3/4] discard samples --- ...odels-for-testing-with-http-signature.yaml | 23 ------------------- 1 file changed, 23 deletions(-) diff --git a/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml b/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml index 133e50f341e9..8837f52ee83f 100644 --- a/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml @@ -17,24 +17,6 @@ tags: - name: user description: Operations about user paths: - /one-of-array: - post: - description: Oneof array test - operationId: oneOfArray - requestBody: - content: - application/json: - schema: - oneOf: - - items: - type: string - type: array - - items: - $ref: '#/components/schemas/TestObject' - type: array - responses: - "204": - description: Successful operation /roles/report: get: responses: @@ -2947,8 +2929,3 @@ components: enum: - APPROVED - MANUAL_APPROVAL_REQUIRED - TestObject: - properties: - name: - type: string - type: object From 7d71136f07c61c509d04ac0cbff99941b3a70d2a Mon Sep 17 00:00:00 2001 From: devhl Date: Sat, 3 May 2025 18:48:30 -0400 Subject: [PATCH 4/4] added new sample --- .github/workflows/openapi-generator.yaml | 1 + .github/workflows/samples-dotnet9.yaml | 1 + appveyor.yml | 1 + .../csharp-generichost-latest-oneOfList.yaml | 8 + .../src/test/resources/bugs/issue_20739.yaml | 32 ++ .../generichost/latest/OneOfList/.gitignore | 362 ++++++++++++++++++ .../OneOfList/.openapi-generator-ignore | 23 ++ .../latest/OneOfList/.openapi-generator/FILES | 40 ++ .../OneOfList/.openapi-generator/VERSION | 1 + .../latest/OneOfList/Org.OpenAPITools.sln | 27 ++ .../generichost/latest/OneOfList/README.md | 1 + .../latest/OneOfList/api/openapi.yaml | 35 ++ .../generichost/latest/OneOfList/appveyor.yml | 9 + .../latest/OneOfList/docs/apis/DefaultApi.md | 93 +++++ .../docs/models/OneOfArrayRequest.md | 9 + .../OneOfList/docs/models/TestObject.md | 10 + .../OneOfList/docs/scripts/git_push.ps1 | 75 ++++ .../latest/OneOfList/docs/scripts/git_push.sh | 49 +++ .../Org.OpenAPITools.Test/Api/ApiTestsBase.cs | 58 +++ .../Api/DefaultApiTests.cs | 63 +++ .../Api/DependencyInjectionTests.cs | 103 +++++ .../Model/OneOfArrayRequestTests.cs | 56 +++ .../Model/TestObjectTests.cs | 65 ++++ .../Org.OpenAPITools.Test.csproj | 20 + .../src/Org.OpenAPITools.Test/README.md | 0 .../src/Org.OpenAPITools/Api/DefaultApi.cs | 319 +++++++++++++++ .../src/Org.OpenAPITools/Api/IApi.cs | 15 + .../Org.OpenAPITools/Client/ApiException.cs | 52 +++ .../src/Org.OpenAPITools/Client/ApiFactory.cs | 49 +++ .../Client/ApiResponseEventArgs.cs | 24 ++ .../Org.OpenAPITools/Client/ApiResponse`1.cs | 152 ++++++++ .../Org.OpenAPITools/Client/ClientUtils.cs | 308 +++++++++++++++ .../Client/CookieContainer.cs | 20 + .../Client/DateOnlyJsonConverter.cs | 61 +++ .../Client/DateOnlyNullableJsonConverter.cs | 66 ++++ .../Client/DateTimeJsonConverter.cs | 75 ++++ .../Client/DateTimeNullableJsonConverter.cs | 80 ++++ .../Client/ExceptionEventArgs.cs | 24 ++ .../Client/HostConfiguration.cs | 134 +++++++ .../Client/JsonSerializerOptionsProvider.cs | 27 ++ .../src/Org.OpenAPITools/Client/Option.cs | 53 +++ .../Client/RateLimitProvider`1.cs | 56 +++ .../src/Org.OpenAPITools/Client/TokenBase.cs | 71 ++++ .../Client/TokenContainer`1.cs | 37 ++ .../Client/TokenProvider`1.cs | 44 +++ .../Extensions/IHostBuilderExtensions.cs | 59 +++ .../IHttpClientBuilderExtensions.cs | 79 ++++ .../IServiceCollectionExtensions.cs | 73 ++++ .../Model/OneOfArrayRequest.cs | 189 +++++++++ .../src/Org.OpenAPITools/Model/TestObject.cs | 168 ++++++++ .../Org.OpenAPITools/Org.OpenAPITools.csproj | 31 ++ .../OneOfList/src/Org.OpenAPITools/README.md | 176 +++++++++ 52 files changed, 3584 insertions(+) create mode 100644 bin/configs/csharp-generichost-latest-oneOfList.yaml create mode 100644 modules/openapi-generator/src/test/resources/bugs/issue_20739.yaml create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/.gitignore create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator-ignore create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/FILES create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/VERSION create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/Org.OpenAPITools.sln create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/README.md create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/api/openapi.yaml create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/appveyor.yml create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/docs/apis/DefaultApi.md create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/docs/models/OneOfArrayRequest.md create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/docs/models/TestObject.md create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.ps1 create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.sh create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/ApiTestsBase.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DependencyInjectionTests.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Org.OpenAPITools.Test.csproj create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/README.md create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/DefaultApi.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/IApi.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiException.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiFactory.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponseEventArgs.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponse`1.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ClientUtils.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/CookieContainer.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyJsonConverter.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyNullableJsonConverter.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeJsonConverter.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeNullableJsonConverter.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ExceptionEventArgs.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/HostConfiguration.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/JsonSerializerOptionsProvider.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/Option.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/RateLimitProvider`1.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenBase.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenContainer`1.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenProvider`1.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHostBuilderExtensions.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHttpClientBuilderExtensions.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IServiceCollectionExtensions.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/TestObject.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Org.OpenAPITools.csproj create mode 100644 samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/README.md diff --git a/.github/workflows/openapi-generator.yaml b/.github/workflows/openapi-generator.yaml index 79cc4310eb12..1067f6b396ce 100644 --- a/.github/workflows/openapi-generator.yaml +++ b/.github/workflows/openapi-generator.yaml @@ -144,6 +144,7 @@ jobs: run: | rm -rf samples/client/petstore/csharp/generichost/latest/HelloWorld rm -rf samples/client/petstore/csharp/generichost/latest/Tags + rm -rf samples/client/petstore/csharp/generichost/latest/OneOfList rm -rf samples/client/petstore/csharp/generichost/net8/AllOf rm -rf samples/client/petstore/csharp/generichost/net8/AnyOf diff --git a/.github/workflows/samples-dotnet9.yaml b/.github/workflows/samples-dotnet9.yaml index 89c43269984c..3bf261cdecea 100644 --- a/.github/workflows/samples-dotnet9.yaml +++ b/.github/workflows/samples-dotnet9.yaml @@ -25,6 +25,7 @@ jobs: sample: - samples/client/petstore/csharp/generichost/latest/Tags - samples/client/petstore/csharp/generichost/latest/HelloWorld + - samples/client/petstore/csharp/generichost/latest/OneOfList - samples/client/petstore/csharp/generichost/net9/AllOf - samples/client/petstore/csharp/generichost/net9/AnyOf - samples/client/petstore/csharp/generichost/net9/AnyOfNoCompare diff --git a/appveyor.yml b/appveyor.yml index 3141125deca1..8c69faaa4492 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -45,6 +45,7 @@ build_script: test_script: - dotnet test samples\client\petstore\csharp\generichost\latest\Tags\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj - dotnet test samples\client\petstore\csharp\generichost\latest\HelloWorld\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj + - dotnet test samples\client\petstore\csharp\generichost\latest\OneOfList\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj - dotnet test samples\client\petstore\csharp\generichost\net9\AllOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj - dotnet test samples\client\petstore\csharp\generichost\net9\AnyOf\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj diff --git a/bin/configs/csharp-generichost-latest-oneOfList.yaml b/bin/configs/csharp-generichost-latest-oneOfList.yaml new file mode 100644 index 000000000000..c6a9bd87bb58 --- /dev/null +++ b/bin/configs/csharp-generichost-latest-oneOfList.yaml @@ -0,0 +1,8 @@ +generatorName: csharp +outputDir: samples/client/petstore/csharp/generichost/latest/OneOfList +inputSpec: modules/openapi-generator/src/test/resources/bugs/issue_20739.yaml +templateDir: modules/openapi-generator/src/main/resources/csharp +additionalProperties: + packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}' + modelPropertySorting: alphabetical + operationParameterSorting: alphabetical diff --git a/modules/openapi-generator/src/test/resources/bugs/issue_20739.yaml b/modules/openapi-generator/src/test/resources/bugs/issue_20739.yaml new file mode 100644 index 000000000000..33f240324a52 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/bugs/issue_20739.yaml @@ -0,0 +1,32 @@ +openapi: 3.0.1 +info: + title: Oneof array test + version: 1.0.0 +servers: +- url: / +paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array + responses: + "204": + description: Successful operation +components: + schemas: + TestObject: + properties: + name: + type: string + type: object diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/.gitignore b/samples/client/petstore/csharp/generichost/latest/OneOfList/.gitignore new file mode 100644 index 000000000000..1ee53850b84c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/.gitignore @@ -0,0 +1,362 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET Core +project.lock.json +project.fragment.lock.json +artifacts/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator-ignore b/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator-ignore new file mode 100644 index 000000000000..7484ee590a38 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/.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/csharp/generichost/latest/OneOfList/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/FILES new file mode 100644 index 000000000000..c3094ea1e371 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/FILES @@ -0,0 +1,40 @@ +.gitignore +Org.OpenAPITools.sln +README.md +api/openapi.yaml +appveyor.yml +docs/apis/DefaultApi.md +docs/models/OneOfArrayRequest.md +docs/models/TestObject.md +docs/scripts/git_push.ps1 +docs/scripts/git_push.sh +src/Org.OpenAPITools.Test/Api/DependencyInjectionTests.cs +src/Org.OpenAPITools.Test/Org.OpenAPITools.Test.csproj +src/Org.OpenAPITools.Test/README.md +src/Org.OpenAPITools/Api/DefaultApi.cs +src/Org.OpenAPITools/Api/IApi.cs +src/Org.OpenAPITools/Client/ApiException.cs +src/Org.OpenAPITools/Client/ApiFactory.cs +src/Org.OpenAPITools/Client/ApiResponseEventArgs.cs +src/Org.OpenAPITools/Client/ApiResponse`1.cs +src/Org.OpenAPITools/Client/ClientUtils.cs +src/Org.OpenAPITools/Client/CookieContainer.cs +src/Org.OpenAPITools/Client/DateOnlyJsonConverter.cs +src/Org.OpenAPITools/Client/DateOnlyNullableJsonConverter.cs +src/Org.OpenAPITools/Client/DateTimeJsonConverter.cs +src/Org.OpenAPITools/Client/DateTimeNullableJsonConverter.cs +src/Org.OpenAPITools/Client/ExceptionEventArgs.cs +src/Org.OpenAPITools/Client/HostConfiguration.cs +src/Org.OpenAPITools/Client/JsonSerializerOptionsProvider.cs +src/Org.OpenAPITools/Client/Option.cs +src/Org.OpenAPITools/Client/RateLimitProvider`1.cs +src/Org.OpenAPITools/Client/TokenBase.cs +src/Org.OpenAPITools/Client/TokenContainer`1.cs +src/Org.OpenAPITools/Client/TokenProvider`1.cs +src/Org.OpenAPITools/Extensions/IHostBuilderExtensions.cs +src/Org.OpenAPITools/Extensions/IHttpClientBuilderExtensions.cs +src/Org.OpenAPITools/Extensions/IServiceCollectionExtensions.cs +src/Org.OpenAPITools/Model/OneOfArrayRequest.cs +src/Org.OpenAPITools/Model/TestObject.cs +src/Org.OpenAPITools/Org.OpenAPITools.csproj +src/Org.OpenAPITools/README.md diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/VERSION b/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/VERSION new file mode 100644 index 000000000000..4c631cf217a2 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/.openapi-generator/VERSION @@ -0,0 +1 @@ +7.14.0-SNAPSHOT diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/Org.OpenAPITools.sln b/samples/client/petstore/csharp/generichost/latest/OneOfList/Org.OpenAPITools.sln new file mode 100644 index 000000000000..5b15451c9dcf --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/Org.OpenAPITools.sln @@ -0,0 +1,27 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +VisualStudioVersion = 12.0.0.0 +MinimumVisualStudioVersion = 10.0.0.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Org.OpenAPITools", "src\Org.OpenAPITools\Org.OpenAPITools.csproj", "{321C8C3F-0156-40C1-AE42-D59761FB9B6C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Org.OpenAPITools.Test", "src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj", "{19F1DEBC-DE5E-4517-8062-F000CD499087}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {321C8C3F-0156-40C1-AE42-D59761FB9B6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {321C8C3F-0156-40C1-AE42-D59761FB9B6C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {321C8C3F-0156-40C1-AE42-D59761FB9B6C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {321C8C3F-0156-40C1-AE42-D59761FB9B6C}.Release|Any CPU.Build.0 = Release|Any CPU + {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {19F1DEBC-DE5E-4517-8062-F000CD499087}.Debug|Any CPU.Build.0 = Debug|Any CPU + {19F1DEBC-DE5E-4517-8062-F000CD499087}.Release|Any CPU.ActiveCfg = Release|Any CPU + {19F1DEBC-DE5E-4517-8062-F000CD499087}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/README.md b/samples/client/petstore/csharp/generichost/latest/OneOfList/README.md new file mode 100644 index 000000000000..f9c1c7f74621 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/README.md @@ -0,0 +1 @@ +# Created with Openapi Generator diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/api/openapi.yaml b/samples/client/petstore/csharp/generichost/latest/OneOfList/api/openapi.yaml new file mode 100644 index 000000000000..252ffb03db07 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/api/openapi.yaml @@ -0,0 +1,35 @@ +openapi: 3.0.1 +info: + title: Oneof array test + version: 1.0.0 +servers: +- url: / +paths: + /one-of-array: + post: + description: Oneof array test + operationId: oneOfArray + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/oneOfArray_request' + responses: + "204": + description: Successful operation +components: + schemas: + TestObject: + properties: + name: + type: string + type: object + oneOfArray_request: + oneOf: + - items: + type: string + type: array + - items: + $ref: '#/components/schemas/TestObject' + type: array + diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/appveyor.yml b/samples/client/petstore/csharp/generichost/latest/OneOfList/appveyor.yml new file mode 100644 index 000000000000..f76f63cee506 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/appveyor.yml @@ -0,0 +1,9 @@ +# auto-generated by OpenAPI Generator (https://github.com/OpenAPITools/openapi-generator) +# +image: Visual Studio 2019 +clone_depth: 1 +build_script: +- dotnet build -c Release +- dotnet test -c Release +after_build: +- dotnet pack .\src\Org.OpenAPITools\Org.OpenAPITools.csproj -o ../../output -c Release --no-build diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/apis/DefaultApi.md b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/apis/DefaultApi.md new file mode 100644 index 000000000000..d22264d7c7e2 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/apis/DefaultApi.md @@ -0,0 +1,93 @@ +# Org.OpenAPITools.Api.DefaultApi + +All URIs are relative to *http://localhost* + +| Method | HTTP request | Description | +|--------|--------------|-------------| +| [**OneOfArray**](DefaultApi.md#oneofarray) | **POST** /one-of-array | | + + +# **OneOfArray** +> void OneOfArray (OneOfArrayRequest oneOfArrayRequest = null) + + + +Oneof array test + +### Example +```csharp +using System.Collections.Generic; +using System.Diagnostics; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace Example +{ + public class OneOfArrayExample + { + public static void Main() + { + Configuration config = new Configuration(); + config.BasePath = "http://localhost"; + var apiInstance = new DefaultApi(config); + var oneOfArrayRequest = new OneOfArrayRequest(); // OneOfArrayRequest | (optional) + + try + { + apiInstance.OneOfArray(oneOfArrayRequest); + } + catch (ApiException e) + { + Debug.Print("Exception when calling DefaultApi.OneOfArray: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); + } + } + } +} +``` + +#### Using the OneOfArrayWithHttpInfo variant +This returns an ApiResponse object which contains the response data, status code and headers. + +```csharp +try +{ + apiInstance.OneOfArrayWithHttpInfo(oneOfArrayRequest); +} +catch (ApiException e) +{ + Debug.Print("Exception when calling DefaultApi.OneOfArrayWithHttpInfo: " + e.Message); + Debug.Print("Status Code: " + e.ErrorCode); + Debug.Print(e.StackTrace); +} +``` + +### Parameters + +| Name | Type | Description | Notes | +|------|------|-------------|-------| +| **oneOfArrayRequest** | [**OneOfArrayRequest**](OneOfArrayRequest.md) | | [optional] | + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: Not defined + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **204** | Successful operation | - | + +[[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/csharp/generichost/latest/OneOfList/docs/models/OneOfArrayRequest.md b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/models/OneOfArrayRequest.md new file mode 100644 index 000000000000..732daf9de0de --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/models/OneOfArrayRequest.md @@ -0,0 +1,9 @@ +# Org.OpenAPITools.Model.OneOfArrayRequest + +## 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/csharp/generichost/latest/OneOfList/docs/models/TestObject.md b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/models/TestObject.md new file mode 100644 index 000000000000..bdd8999db3a3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/models/TestObject.md @@ -0,0 +1,10 @@ +# Org.OpenAPITools.Model.TestObject + +## 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/csharp/generichost/latest/OneOfList/docs/scripts/git_push.ps1 b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.ps1 new file mode 100644 index 000000000000..73ed35c2bb10 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.ps1 @@ -0,0 +1,75 @@ +param( + [Parameter()][Alias("g")][String]$GitHost = "github.com", + [Parameter()][Alias("u")][String]$GitUserId = "GIT_USER_ID", + [Parameter()][Alias("r")][String]$GitRepoId = "GIT_REPO_ID", + [Parameter()][Alias("m")][string]$Message = "Minor update", + [Parameter()][Alias("h")][switch]$Help +) + +function Publish-ToGitHost{ + if ([string]::IsNullOrWhiteSpace($Message) -or $Message -eq "Minor update"){ + # it seems unlikely that we would want our git commit message to be the default, so lets prompt the user + $Message = Read-Host -Prompt "Please provide a commit message or press enter" + $Message = if([string]::IsNullOrWhiteSpace($Message)) { "no message provided" } else { $Message } + } + + git init + git add . + git commit -am "${Message}" + $branchName=$(git rev-parse --abbrev-ref HEAD) + $gitRemote=$(git remote) + + if([string]::IsNullOrWhiteSpace($gitRemote)){ + git remote add origin https://${GitHost}/${GitUserId}/${GitRepoId}.git + } + + Write-Output "Pulling from https://${GitHost}/${GitUserId}/${GitRepoId}.git" + git pull origin $branchName --ff-only + + if ($LastExitCode -ne 0){ + if (${GitHost} -eq "github.com"){ + Write-Output "The ${GitRepoId} repository may not exist yet. Creating it now with the GitHub CLI." + gh auth login --hostname github.com --web + gh repo create $GitRepoId --private + # sleep 2 seconds to ensure git finishes creation of the repo + Start-Sleep -Seconds 2 + } + else{ + throw "There was an issue pulling the origin branch. The remote repository may not exist yet." + } + } + + Write-Output "Pushing to https://${GitHost}/${GitUserId}/${GitRepoId}.git" + git push origin $branchName +} + +$ErrorActionPreference = "Stop" +Set-StrictMode -Version 3.0 + +if ($Help){ + Write-Output " + This script will initialize a git repository, then add and commit all files. + The local repository will then be pushed to your preferred git provider. + If the remote repository does not exist yet and you are using GitHub, + the repository will be created for you provided you have the GitHub CLI installed. + + Parameters: + -g | -GitHost -> ex: github.com + -m | -Message -> the git commit message + -r | -GitRepoId -> the name of the repository + -u | -GitUserId -> your user id + " + + return +} + +$rootPath=Resolve-Path -Path $PSScriptRoot/../.. + +Push-Location $rootPath + +try { + Publish-ToGitHost $GitHost $GitUserId $GitRepoId $Message +} +finally{ + Pop-Location +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.sh b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.sh new file mode 100644 index 000000000000..882104922184 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/docs/scripts/git_push.sh @@ -0,0 +1,49 @@ +#!/bin/sh +# ref: https://help.github.com/articles/adding-an-existing-project-to-github-using-the-command-line/ +# +# Usage example: /bin/sh ./git_push.sh wing328 openapi-petstore-perl "minor update" "gitlab.com" + +git_user_id=${1:-GIT_USER_ID} +git_repo_id=${2:-GIT_REPO_ID} +release_note=${3:-Minor update} +git_host=${4:-github.com} + +starting_directory=$(pwd) +script_root="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" +cd $script_root +cd ../.. + +if [ "$release_note" = "" ] || [ "$release_note" = "Minor update" ]; then + # it seems unlikely that we would want our git commit message to be the default, so lets prompt the user + echo "Please provide a commit message or press enter" + read user_input + release_note=$user_input + if [ "$release_note" = "" ]; then + release_note="no message provided" + fi +fi + +git init +git add . +git commit -am "$release_note" +branch_name=$(git rev-parse --abbrev-ref HEAD) +git_remote=$(git remote) + +if [ "$git_remote" = "" ]; then # git remote not defined + + if [ "$GIT_TOKEN" = "" ]; then + echo "[INFO] \$GIT_TOKEN (environment variable) is not set. Using the git credential in your environment." + git remote add origin https://${git_host}/${git_user_id}/${git_repo_id}.git + else + git remote add origin https://${git_user_id}:"${GIT_TOKEN}"@${git_host}/${git_user_id}/${git_repo_id}.git + fi + +fi + +echo "[INFO] Pulling from https://${git_host}/${git_user_id}/${git_repo_id}.git" +git pull origin $branch_name --ff-only + +echo "[INFO] Pushing to https://${git_host}/${git_user_id}/${git_repo_id}.git" +git push origin $branch_name + +cd $starting_directory diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/ApiTestsBase.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/ApiTestsBase.cs new file mode 100644 index 000000000000..40e1a3594c71 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/ApiTestsBase.cs @@ -0,0 +1,58 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections.Generic; +using System.Security.Cryptography; +using Microsoft.Extensions.Hosting; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Extensions; + + +/* ********************************************************************************* +* Follow these manual steps to construct tests. +* This file will not be overwritten. +* ********************************************************************************* +* 1. Navigate to ApiTests.Base.cs and ensure any tokens are being created correctly. +* Take care not to commit credentials to any repository. +* +* 2. Mocking is coordinated by ApiTestsBase#AddApiHttpClients. +* To mock the client, use the generic AddApiHttpClients. +* To mock the server, change the client's BaseAddress. +* +* 3. Locate the test you want below +* - remove the skip property from the Fact attribute +* - set the value of any variables if necessary +* +* 4. Run the tests and ensure they work. +* +*/ + + +namespace Org.OpenAPITools.Test.Api +{ + /// + /// Base class for API tests + /// + public class ApiTestsBase + { + protected readonly IHost _host; + + public ApiTestsBase(string[] args) + { + _host = CreateHostBuilder(args).Build(); + } + + public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) + .ConfigureApi((context, services, options) => + { + + }); + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs new file mode 100644 index 000000000000..71b4009612e1 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DefaultApiTests.cs @@ -0,0 +1,63 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Xunit; +using Microsoft.Extensions.DependencyInjection; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; + + +/* ********************************************************************************* +* Follow these manual steps to construct tests. +* This file will not be overwritten. +* ********************************************************************************* +* 1. Navigate to ApiTests.Base.cs and ensure any tokens are being created correctly. +* Take care not to commit credentials to any repository. +* +* 2. Mocking is coordinated by ApiTestsBase#AddApiHttpClients. +* To mock the client, use the generic AddApiHttpClients. +* To mock the server, change the client's BaseAddress. +* +* 3. Locate the test you want below +* - remove the skip property from the Fact attribute +* - set the value of any variables if necessary +* +* 4. Run the tests and ensure they work. +* +*/ + + +namespace Org.OpenAPITools.Test.Api +{ + /// + /// Class for testing DefaultApi + /// + public sealed class DefaultApiTests : ApiTestsBase + { + private readonly IDefaultApi _instance; + + public DefaultApiTests(): base(Array.Empty()) + { + _instance = _host.Services.GetRequiredService(); + } + + /// + /// Test OneOfArray + /// + [Fact (Skip = "not implemented")] + public async Task OneOfArrayAsyncTest() + { + Client.Option oneOfArrayRequest = default!; + await _instance.OneOfArrayAsync(oneOfArrayRequest); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DependencyInjectionTests.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DependencyInjectionTests.cs new file mode 100644 index 000000000000..2a59e64caaa3 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Api/DependencyInjectionTests.cs @@ -0,0 +1,103 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.DependencyInjection; +using System.Collections.Generic; +using System.Security.Cryptography; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Extensions; +using Xunit; + +namespace Org.OpenAPITools.Test.Api +{ + /// + /// Tests the dependency injection. + /// + public class DependencyInjectionTest + { + private readonly IHost _hostUsingConfigureWithoutAClient = + Host.CreateDefaultBuilder([]).ConfigureApi((context, services, options) => + { + + }) + .Build(); + + private readonly IHost _hostUsingConfigureWithAClient = + Host.CreateDefaultBuilder([]).ConfigureApi((context, services, options) => + { + + options.AddApiHttpClients(client => client.BaseAddress = new Uri(ClientUtils.BASE_ADDRESS)); + }) + .Build(); + + private readonly IHost _hostUsingAddWithoutAClient = + Host.CreateDefaultBuilder([]).ConfigureServices((host, services) => + { + services.AddApi(options => + { + + }); + }) + .Build(); + + private readonly IHost _hostUsingAddWithAClient = + Host.CreateDefaultBuilder([]).ConfigureServices((host, services) => + { + services.AddApi(options => + { + + options.AddApiHttpClients(client => client.BaseAddress = new Uri(ClientUtils.BASE_ADDRESS)); + }); + }) + .Build(); + + /// + /// Test dependency injection when using the configure method + /// + [Fact] + public void ConfigureApiWithAClientTest() + { + var defaultApi = _hostUsingConfigureWithAClient.Services.GetRequiredService(); + Assert.True(defaultApi.HttpClient.BaseAddress != null); + } + + /// + /// Test dependency injection when using the configure method + /// + [Fact] + public void ConfigureApiWithoutAClientTest() + { + var defaultApi = _hostUsingConfigureWithoutAClient.Services.GetRequiredService(); + Assert.True(defaultApi.HttpClient.BaseAddress != null); + } + + /// + /// Test dependency injection when using the add method + /// + [Fact] + public void AddApiWithAClientTest() + { + var defaultApi = _hostUsingAddWithAClient.Services.GetRequiredService(); + Assert.True(defaultApi.HttpClient.BaseAddress != null); + } + + /// + /// Test dependency injection when using the add method + /// + [Fact] + public void AddApiWithoutAClientTest() + { + var defaultApi = _hostUsingAddWithoutAClient.Services.GetRequiredService(); + Assert.True(defaultApi.HttpClient.BaseAddress != null); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs new file mode 100644 index 000000000000..1dd0bbfa1260 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/OneOfArrayRequestTests.cs @@ -0,0 +1,56 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing OneOfArrayRequest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class OneOfArrayRequestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for OneOfArrayRequest + //private OneOfArrayRequest instance; + + public OneOfArrayRequestTests() + { + // TODO uncomment below to create an instance of OneOfArrayRequest + //instance = new OneOfArrayRequest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of OneOfArrayRequest + /// + [Fact] + public void OneOfArrayRequestInstanceTest() + { + // TODO uncomment below to test "IsType" OneOfArrayRequest + //Assert.IsType(instance); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs new file mode 100644 index 000000000000..5a5b3d180240 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Model/TestObjectTests.cs @@ -0,0 +1,65 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing TestObject + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class TestObjectTests : IDisposable + { + // TODO uncomment below to declare an instance variable for TestObject + //private TestObject instance; + + public TestObjectTests() + { + // TODO uncomment below to create an instance of TestObject + //instance = new TestObject(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of TestObject + /// + [Fact] + public void TestObjectInstanceTest() + { + // TODO uncomment below to test "IsType" TestObject + //Assert.IsType(instance); + } + + /// + /// Test the property 'Name' + /// + [Fact] + public void NameTest() + { + // TODO unit test for the property 'Name' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Org.OpenAPITools.Test.csproj b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Org.OpenAPITools.Test.csproj new file mode 100644 index 000000000000..a4e283f2d333 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/Org.OpenAPITools.Test.csproj @@ -0,0 +1,20 @@ + + + + Org.OpenAPITools.Test + Org.OpenAPITools.Test + net9.0 + false + enable + + + + + + + + + + + + diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/README.md b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools.Test/README.md new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/DefaultApi.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/DefaultApi.cs new file mode 100644 index 000000000000..97cd15399b00 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/DefaultApi.cs @@ -0,0 +1,319 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections.Generic; +using System.Net; +using System.Threading.Tasks; +using Microsoft.Extensions.Logging; +using System.Net.Http; +using System.Net.Http.Headers; +using System.Text.Json; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; +using System.Diagnostics.CodeAnalysis; + +namespace Org.OpenAPITools.Api +{ + /// + /// Represents a collection of functions to interact with the API endpoints + /// This class is registered as transient. + /// + public interface IDefaultApi : IApi + { + /// + /// The class containing the events + /// + DefaultApiEvents Events { get; } + + /// + /// + /// + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + + /// + /// + /// + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <?> + Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default); + } + + /// + /// The + /// + public interface IOneOfArrayApiResponse : Org.OpenAPITools.Client.IApiResponse + { + /// + /// Returns true if the response is 204 NoContent + /// + /// + bool IsNoContent { get; } + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public class DefaultApiEvents + { + /// + /// The event raised after the server response + /// + public event EventHandler? OnOneOfArray; + + /// + /// The event raised after an error querying the server + /// + public event EventHandler? OnErrorOneOfArray; + + internal void ExecuteOnOneOfArray(DefaultApi.OneOfArrayApiResponse apiResponse) + { + OnOneOfArray?.Invoke(this, new ApiResponseEventArgs(apiResponse)); + } + + internal void ExecuteOnErrorOneOfArray(Exception exception) + { + OnErrorOneOfArray?.Invoke(this, new ExceptionEventArgs(exception)); + } + } + + /// + /// Represents a collection of functions to interact with the API endpoints + /// + public sealed partial class DefaultApi : IDefaultApi + { + private JsonSerializerOptions _jsonSerializerOptions; + + /// + /// The logger factory + /// + public ILoggerFactory LoggerFactory { get; } + + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The HttpClient + /// + public HttpClient HttpClient { get; } + + /// + /// The class containing the events + /// + public DefaultApiEvents Events { get; } + + /// + /// Initializes a new instance of the class. + /// + /// + public DefaultApi(ILogger logger, ILoggerFactory loggerFactory, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents) + { + _jsonSerializerOptions = jsonSerializerOptionsProvider.Options; + LoggerFactory = loggerFactory; + Logger = LoggerFactory.CreateLogger(); + HttpClient = httpClient; + Events = defaultApiEvents; + } + + partial void FormatOneOfArray(Option oneOfArrayRequest); + + /// + /// Processes the server response + /// + /// + /// + private void AfterOneOfArrayDefaultImplementation(IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLog = false; + AfterOneOfArray(ref suppressDefaultLog, apiResponseLocalVar, oneOfArrayRequest); + if (!suppressDefaultLog) + Logger.LogInformation("{0,-9} | {1} | {3}", (apiResponseLocalVar.DownloadedAt - apiResponseLocalVar.RequestedAt).TotalSeconds, apiResponseLocalVar.StatusCode, apiResponseLocalVar.Path); + } + + /// + /// Processes the server response + /// + /// + /// + /// + partial void AfterOneOfArray(ref bool suppressDefaultLog, IOneOfArrayApiResponse apiResponseLocalVar, Option oneOfArrayRequest); + + /// + /// Logs exceptions that occur while retrieving the server response + /// + /// + /// + /// + /// + private void OnErrorOneOfArrayDefaultImplementation(Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest) + { + bool suppressDefaultLogLocalVar = false; + OnErrorOneOfArray(ref suppressDefaultLogLocalVar, exceptionLocalVar, pathFormatLocalVar, pathLocalVar, oneOfArrayRequest); + if (!suppressDefaultLogLocalVar) + Logger.LogError(exceptionLocalVar, "An error occurred while sending the request to the server."); + } + + /// + /// A partial method that gives developers a way to provide customized exception handling + /// + /// + /// + /// + /// + /// + partial void OnErrorOneOfArray(ref bool suppressDefaultLogLocalVar, Exception exceptionLocalVar, string pathFormatLocalVar, string pathLocalVar, Option oneOfArrayRequest); + + /// + /// Oneof array test + /// + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayOrDefaultAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + try + { + return await OneOfArrayAsync(oneOfArrayRequest, cancellationToken).ConfigureAwait(false); + } + catch (Exception) + { + return null; + } + } + + /// + /// Oneof array test + /// + /// Thrown when fails to make API call + /// (optional) + /// Cancellation Token to cancel the request. + /// <> + public async Task OneOfArrayAsync(Option oneOfArrayRequest = default, System.Threading.CancellationToken cancellationToken = default) + { + UriBuilder uriBuilderLocalVar = new UriBuilder(); + + try + { + FormatOneOfArray(oneOfArrayRequest); + + using (HttpRequestMessage httpRequestMessageLocalVar = new HttpRequestMessage()) + { + uriBuilderLocalVar.Host = HttpClient.BaseAddress!.Host; + uriBuilderLocalVar.Port = HttpClient.BaseAddress.Port; + uriBuilderLocalVar.Scheme = HttpClient.BaseAddress.Scheme; + uriBuilderLocalVar.Path = HttpClient.BaseAddress.AbsolutePath == "/" + ? "/one-of-array" + : string.Concat(HttpClient.BaseAddress.AbsolutePath, "/one-of-array"); + + if (oneOfArrayRequest.IsSet) + httpRequestMessageLocalVar.Content = (oneOfArrayRequest.Value as object) is System.IO.Stream stream + ? httpRequestMessageLocalVar.Content = new StreamContent(stream) + : httpRequestMessageLocalVar.Content = new StringContent(JsonSerializer.Serialize(oneOfArrayRequest.Value, _jsonSerializerOptions)); + + httpRequestMessageLocalVar.RequestUri = uriBuilderLocalVar.Uri; + + string[] contentTypes = new string[] { + "application/json" + }; + + string? contentTypeLocalVar = ClientUtils.SelectHeaderContentType(contentTypes); + + if (contentTypeLocalVar != null && httpRequestMessageLocalVar.Content != null) + httpRequestMessageLocalVar.Content.Headers.ContentType = new MediaTypeHeaderValue(contentTypeLocalVar); + + httpRequestMessageLocalVar.Method = HttpMethod.Post; + + DateTime requestedAtLocalVar = DateTime.UtcNow; + + using (HttpResponseMessage httpResponseMessageLocalVar = await HttpClient.SendAsync(httpRequestMessageLocalVar, cancellationToken).ConfigureAwait(false)) + { + string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync(cancellationToken).ConfigureAwait(false); + + ILogger apiResponseLoggerLocalVar = LoggerFactory.CreateLogger(); + + OneOfArrayApiResponse apiResponseLocalVar = new(apiResponseLoggerLocalVar, httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "/one-of-array", requestedAtLocalVar, _jsonSerializerOptions); + + AfterOneOfArrayDefaultImplementation(apiResponseLocalVar, oneOfArrayRequest); + + Events.ExecuteOnOneOfArray(apiResponseLocalVar); + + return apiResponseLocalVar; + } + } + } + catch(Exception e) + { + OnErrorOneOfArrayDefaultImplementation(e, "/one-of-array", uriBuilderLocalVar.Path, oneOfArrayRequest); + Events.ExecuteOnErrorOneOfArray(e); + throw; + } + } + + /// + /// The + /// + public partial class OneOfArrayApiResponse : Org.OpenAPITools.Client.ApiResponse, IOneOfArrayApiResponse + { + /// + /// The logger + /// + public ILogger Logger { get; } + + /// + /// The + /// + /// + /// + /// + /// + /// + /// + /// + public OneOfArrayApiResponse(ILogger logger, System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) : base(httpRequestMessage, httpResponseMessage, rawContent, path, requestedAt, jsonSerializerOptions) + { + Logger = logger; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + + /// + /// Returns true if the response is 204 NoContent + /// + /// + public bool IsNoContent => 204 == (int)StatusCode; + + private void OnDeserializationErrorDefaultImplementation(Exception exception, HttpStatusCode httpStatusCode) + { + bool suppressDefaultLog = false; + OnDeserializationError(ref suppressDefaultLog, exception, httpStatusCode); + if (!suppressDefaultLog) + Logger.LogError(exception, "An error occurred while deserializing the {code} response.", httpStatusCode); + } + + partial void OnDeserializationError(ref bool suppressDefaultLog, Exception exception, HttpStatusCode httpStatusCode); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/IApi.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/IApi.cs new file mode 100644 index 000000000000..28520f043f2d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Api/IApi.cs @@ -0,0 +1,15 @@ +using System.Net.Http; + +namespace Org.OpenAPITools.Api +{ + /// + /// Any Api client + /// + public interface IApi + { + /// + /// The HttpClient + /// + HttpClient HttpClient { get; } + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiException.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiException.cs new file mode 100644 index 000000000000..d27949b41749 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiException.cs @@ -0,0 +1,52 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; + +namespace Org.OpenAPITools.Client +{ + /// + /// API Exception + /// + public class ApiException : Exception + { + /// + /// The reason the api request failed + /// + public string? ReasonPhrase { get; } + + /// + /// The HttpStatusCode + /// + public System.Net.HttpStatusCode StatusCode { get; } + + /// + /// The raw data returned by the api + /// + public string RawContent { get; } + + /// + /// Construct the ApiException from parts of the response + /// + /// + /// + /// + public ApiException(string? reasonPhrase, System.Net.HttpStatusCode statusCode, string rawContent) : base(reasonPhrase ?? rawContent) + { + ReasonPhrase = reasonPhrase; + + StatusCode = statusCode; + + RawContent = rawContent; + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiFactory.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiFactory.cs new file mode 100644 index 000000000000..b9b27c613f86 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiFactory.cs @@ -0,0 +1,49 @@ +using System; +using Microsoft.Extensions.DependencyInjection; +using Org.OpenAPITools.Api; + +namespace Org.OpenAPITools.Client +{ + /// + /// An IApiFactory interface + /// + public interface IApiFactory + { + /// + /// A method to create an IApi of type IResult + /// + /// + /// + IResult Create() where IResult : IApi; + } + + /// + /// An ApiFactory + /// + public class ApiFactory : IApiFactory + { + /// + /// The service provider + /// + public IServiceProvider Services { get; } + + /// + /// Initializes a new instance of the class. + /// + /// + public ApiFactory(IServiceProvider services) + { + Services = services; + } + + /// + /// A method to create an IApi of type IResult + /// + /// + /// + public IResult Create() where IResult : IApi + { + return Services.GetRequiredService(); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponseEventArgs.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponseEventArgs.cs new file mode 100644 index 000000000000..3cb65e5adc0b --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponseEventArgs.cs @@ -0,0 +1,24 @@ +using System; + +namespace Org.OpenAPITools.Client +{ + /// + /// Useful for tracking server health + /// + public class ApiResponseEventArgs : EventArgs + { + /// + /// The ApiResponse + /// + public ApiResponse ApiResponse { get; } + + /// + /// The ApiResponseEventArgs + /// + /// + public ApiResponseEventArgs(ApiResponse apiResponse) + { + ApiResponse = apiResponse; + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponse`1.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponse`1.cs new file mode 100644 index 000000000000..41076c743f04 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ApiResponse`1.cs @@ -0,0 +1,152 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Diagnostics.CodeAnalysis; +using System.Net; + +namespace Org.OpenAPITools.Client +{ + /// + /// Provides a non-generic contract for the ApiResponse wrapper. + /// + public partial interface IApiResponse + { + /// + /// The IsSuccessStatusCode from the api response + /// + bool IsSuccessStatusCode { get; } + + /// + /// Gets the status code (HTTP status code) + /// + /// The status code. + HttpStatusCode StatusCode { get; } + + /// + /// The raw content of this response. + /// + string RawContent { get; } + + /// + /// The DateTime when the request was retrieved. + /// + DateTime DownloadedAt { get; } + + /// + /// The headers contained in the api response + /// + System.Net.Http.Headers.HttpResponseHeaders Headers { get; } + + /// + /// The path used when making the request. + /// + string Path { get; } + + /// + /// The reason phrase contained in the api response + /// + string? ReasonPhrase { get; } + + /// + /// The DateTime when the request was sent. + /// + DateTime RequestedAt { get; } + + /// + /// The Uri used when making the request. + /// + Uri? RequestUri { get; } + } + + /// + /// API Response + /// + public partial class ApiResponse : IApiResponse + { + /// + /// Gets the status code (HTTP status code) + /// + /// The status code. + public HttpStatusCode StatusCode { get; } + + /// + /// The raw data + /// + public string RawContent { get; protected set; } + + /// + /// The IsSuccessStatusCode from the api response + /// + public bool IsSuccessStatusCode { get; } + + /// + /// The reason phrase contained in the api response + /// + public string? ReasonPhrase { get; } + + /// + /// The headers contained in the api response + /// + public System.Net.Http.Headers.HttpResponseHeaders Headers { get; } + + /// + /// The DateTime when the request was retrieved. + /// + public DateTime DownloadedAt { get; } = DateTime.UtcNow; + + /// + /// The DateTime when the request was sent. + /// + public DateTime RequestedAt { get; } + + /// + /// The path used when making the request. + /// + public string Path { get; } + + /// + /// The Uri used when making the request. + /// + public Uri? RequestUri { get; } + + /// + /// The + /// + protected System.Text.Json.JsonSerializerOptions _jsonSerializerOptions; + + /// + /// Construct the response using an HttpResponseMessage + /// + /// + /// + /// + /// + /// + /// + public ApiResponse(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage, string rawContent, string path, DateTime requestedAt, System.Text.Json.JsonSerializerOptions jsonSerializerOptions) + { + StatusCode = httpResponseMessage.StatusCode; + Headers = httpResponseMessage.Headers; + IsSuccessStatusCode = httpResponseMessage.IsSuccessStatusCode; + ReasonPhrase = httpResponseMessage.ReasonPhrase; + RawContent = rawContent; + Path = path; + RequestUri = httpRequestMessage.RequestUri; + RequestedAt = requestedAt; + _jsonSerializerOptions = jsonSerializerOptions; + OnCreated(httpRequestMessage, httpResponseMessage); + } + + partial void OnCreated(global::System.Net.Http.HttpRequestMessage httpRequestMessage, System.Net.Http.HttpResponseMessage httpResponseMessage); + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ClientUtils.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ClientUtils.cs new file mode 100644 index 000000000000..afcf529d354a --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ClientUtils.cs @@ -0,0 +1,308 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.IO; +using System.Linq; +using System.Collections; +using System.Collections.Generic; +using System.Text; +using System.Text.Json; +using System.Text.RegularExpressions; +using Org.OpenAPITools.Model; +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Org.OpenAPITools.Test")] + +namespace Org.OpenAPITools.Client +{ + /// + /// Utility functions providing some benefit to API client consumers. + /// + public static partial class ClientUtils + { + + /// + /// A delegate for events. + /// + /// + /// + /// + /// + public delegate void EventHandler(object sender, T e) where T : EventArgs; + + /// + /// Returns true when deserialization succeeds. + /// + /// + /// + /// + /// + /// + public static bool TryDeserialize(string json, JsonSerializerOptions options, [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T? result) + { + try + { + result = JsonSerializer.Deserialize(json, options); + return result != null; + } + catch (Exception) + { + result = default; + return false; + } + } + + /// + /// Returns true when deserialization succeeds. + /// + /// + /// + /// + /// + /// + public static bool TryDeserialize(ref Utf8JsonReader reader, JsonSerializerOptions options, [global::System.Diagnostics.CodeAnalysis.NotNullWhen(true)] out T? result) + { + try + { + result = JsonSerializer.Deserialize(ref reader, options); + return result != null; + } + catch (Exception) + { + result = default; + return false; + } + } + + /// + /// If parameter is DateTime, output in a formatted string (default ISO 8601), customizable with Configuration.DateTime. + /// If parameter is a list, join the list with ",". + /// Otherwise just return the string. + /// + /// The parameter (header, path, query, form). + /// The DateTime serialization format. + /// Formatted string. + public static string? ParameterToString(object? obj, string? format = ISO8601_DATETIME_FORMAT) + { + if (obj is DateTime dateTime) + // Return a formatted date string - Can be customized with Configuration.DateTimeFormat + // Defaults to an ISO 8601, using the known as a Round-trip date/time pattern ("o") + // https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx#Anchor_8 + // For example: 2009-06-15T13:45:30.0000000 + return dateTime.ToString(format); + if (obj is DateTimeOffset dateTimeOffset) + // Return a formatted date string - Can be customized with Configuration.DateTimeFormat + // Defaults to an ISO 8601, using the known as a Round-trip date/time pattern ("o") + // https://msdn.microsoft.com/en-us/library/az4se3k1(v=vs.110).aspx#Anchor_8 + // For example: 2009-06-15T13:45:30.0000000 + return dateTimeOffset.ToString(format); + if (obj is DateOnly dateOnly) + return dateOnly.ToString(format); + if (obj is bool boolean) + return boolean + ? "true" + : "false"; + if (obj is ICollection collection) + { + List entries = new(); + foreach (var entry in collection) + entries.Add(ParameterToString(entry)); + return string.Join(",", entries); + } + + return Convert.ToString(obj, System.Globalization.CultureInfo.InvariantCulture); + } + + /// + /// URL encode a string + /// Credit/Ref: https://github.com/restsharp/RestSharp/blob/master/RestSharp/Extensions/StringExtensions.cs#L50 + /// + /// string to be URL encoded + /// Byte array + public static string UrlEncode(string input) + { + const int maxLength = 32766; + + if (input == null) + { + throw new ArgumentNullException("input"); + } + + if (input.Length <= maxLength) + { + return Uri.EscapeDataString(input); + } + + StringBuilder sb = new StringBuilder(input.Length * 2); + int index = 0; + + while (index < input.Length) + { + int length = Math.Min(input.Length - index, maxLength); + string subString = input.Substring(index, length); + + sb.Append(Uri.EscapeDataString(subString)); + index += subString.Length; + } + + return sb.ToString(); + } + + /// + /// Encode string in base64 format. + /// + /// string to be encoded. + /// Encoded string. + public static string Base64Encode(string text) + { + return Convert.ToBase64String(global::System.Text.Encoding.UTF8.GetBytes(text)); + } + + /// + /// Convert stream to byte array + /// + /// Input stream to be converted + /// Byte array + public static byte[] ReadAsBytes(Stream inputStream) + { + using (var ms = new MemoryStream()) + { + inputStream.CopyTo(ms); + return ms.ToArray(); + } + } + + /// + /// Select the Content-Type header's value from the given content-type array: + /// if JSON type exists in the given array, use it; + /// otherwise use the first one defined in 'consumes' + /// + /// The Content-Type array to select from. + /// The Content-Type header to use. + public static string? SelectHeaderContentType(string[] contentTypes) + { + if (contentTypes.Length == 0) + return null; + + foreach (var contentType in contentTypes) + { + if (IsJsonMime(contentType)) + return contentType; + } + + return contentTypes[0]; // use the first content type specified in 'consumes' + } + + /// + /// Select the Accept header's value from the given accepts array: + /// if JSON exists in the given array, use it; + /// otherwise use all of them (joining into a string) + /// + /// The accepts array to select from. + /// The Accept header to use. + public static string? SelectHeaderAccept(string[] accepts) + { + if (accepts.Length == 0) + return null; + + if (accepts.Contains("application/json", StringComparer.OrdinalIgnoreCase)) + return "application/json"; + + return string.Join(",", accepts); + } + + /// + /// Provides a case-insensitive check that a provided content type is a known JSON-like content type. + /// + [GeneratedRegex("(?i)^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$")] + private static partial Regex JsonRegex(); + + /// + /// Check if the given MIME is a JSON MIME. + /// JSON MIME examples: + /// application/json + /// application/json; charset=UTF8 + /// APPLICATION/JSON + /// application/vnd.company+json + /// + /// MIME + /// Returns True if MIME type is json. + public static bool IsJsonMime(string mime) + { + if (string.IsNullOrWhiteSpace(mime)) return false; + + return JsonRegex().IsMatch(mime) || mime.Equals("application/json-patch+json"); + } + + /// + /// Get the discriminator + /// + /// + /// + /// + /// + public static string? GetDiscriminator(Utf8JsonReader utf8JsonReader, string discriminator) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + if (localVarJsonPropertyName != null && localVarJsonPropertyName.Equals(discriminator)) + return utf8JsonReader.GetString(); + } + } + + throw new JsonException("The specified discriminator was not found."); + } + + /// + /// The base path of the API + /// + public const string BASE_ADDRESS = "http://localhost"; + + /// + /// The scheme of the API + /// + public const string SCHEME = "http"; + + /// + /// The context path of the API + /// + public const string CONTEXT_PATH = ""; + + /// + /// The host of the API + /// + public const string HOST = "localhost"; + + /// + /// The format to use for DateTime serialization + /// + public const string ISO8601_DATETIME_FORMAT = "o"; + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/CookieContainer.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/CookieContainer.cs new file mode 100644 index 000000000000..85093b0c1fee --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/CookieContainer.cs @@ -0,0 +1,20 @@ +// + +#nullable enable + +using System.Linq; +using System.Collections.Generic; + +namespace Org.OpenAPITools.Client +{ + /// + /// A class containing a CookieContainer + /// + public sealed class CookieContainer + { + /// + /// The collection of tokens + /// + public System.Net.CookieContainer Value { get; } = new System.Net.CookieContainer(); + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyJsonConverter.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyJsonConverter.cs new file mode 100644 index 000000000000..2e5274b1543d --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyJsonConverter.cs @@ -0,0 +1,61 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Globalization; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace Org.OpenAPITools.Client +{ + /// + /// Formatter for 'date' openapi formats ss defined by full-date - RFC3339 + /// see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#data-types + /// + public class DateOnlyJsonConverter : JsonConverter + { + /// + /// The formats used to deserialize the date + /// + public static string[] Formats { get; } = { + "yyyy'-'MM'-'dd", + "yyyyMMdd" + + }; + + /// + /// Returns a DateOnly from the Json object + /// + /// + /// + /// + /// + public override DateOnly Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { + if (reader.TokenType == JsonTokenType.Null) + throw new NotSupportedException(); + + string value = reader.GetString()!; + + foreach(string format in Formats) + if (DateOnly.TryParseExact(value, format, CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal, out DateOnly result)) + return result; + + throw new NotSupportedException(); + } + + /// + /// Writes the DateOnly to the json writer + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, DateOnly dateOnlyValue, JsonSerializerOptions options) => + writer.WriteStringValue(dateOnlyValue.ToString("yyyy'-'MM'-'dd", CultureInfo.InvariantCulture)); + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyNullableJsonConverter.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyNullableJsonConverter.cs new file mode 100644 index 000000000000..0481f4f135c6 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateOnlyNullableJsonConverter.cs @@ -0,0 +1,66 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Globalization; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace Org.OpenAPITools.Client +{ + /// + /// Formatter for 'date' openapi formats ss defined by full-date - RFC3339 + /// see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#data-types + /// + public class DateOnlyNullableJsonConverter : JsonConverter + { + /// + /// The formats used to deserialize the date + /// + public static string[] Formats { get; } = { + "yyyy'-'MM'-'dd", + "yyyyMMdd" + + }; + + /// + /// Returns a DateOnly from the Json object + /// + /// + /// + /// + /// + public override DateOnly? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { + if (reader.TokenType == JsonTokenType.Null) + return null; + + string value = reader.GetString()!; + + foreach(string format in Formats) + if (DateOnly.TryParseExact(value, format, CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal, out DateOnly result)) + return result; + + throw new NotSupportedException(); + } + + /// + /// Writes the DateOnly to the json writer + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, DateOnly? dateOnlyValue, JsonSerializerOptions options) + { + if (dateOnlyValue == null) + writer.WriteNullValue(); + else + writer.WriteStringValue(dateOnlyValue.Value.ToString("yyyy'-'MM'-'dd", CultureInfo.InvariantCulture)); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeJsonConverter.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeJsonConverter.cs new file mode 100644 index 000000000000..24a4098f0054 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeJsonConverter.cs @@ -0,0 +1,75 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Globalization; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace Org.OpenAPITools.Client +{ + /// + /// Formatter for 'date-time' openapi formats ss defined by full-date - RFC3339 + /// see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#data-types + /// + public class DateTimeJsonConverter : JsonConverter + { + /// + /// The formats used to deserialize the date + /// + public static string[] Formats { get; } = { + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ssK", + "yyyyMMddTHHmmss.fffffffK", + "yyyyMMddTHHmmss.ffffffK", + "yyyyMMddTHHmmss.fffffK", + "yyyyMMddTHHmmss.ffffK", + "yyyyMMddTHHmmss.fffK", + "yyyyMMddTHHmmss.ffK", + "yyyyMMddTHHmmss.fK", + "yyyyMMddTHHmmssK", + + }; + + /// + /// Returns a DateTime from the Json object + /// + /// + /// + /// + /// + public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { + if (reader.TokenType == JsonTokenType.Null) + throw new NotSupportedException(); + + string value = reader.GetString()!; + + foreach(string format in Formats) + if (DateTime.TryParseExact(value, format, CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal, out DateTime result)) + return result; + + throw new NotSupportedException(); + } + + /// + /// Writes the DateTime to the json writer + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, DateTime dateTimeValue, JsonSerializerOptions options) => + writer.WriteStringValue(dateTimeValue.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK", CultureInfo.InvariantCulture)); + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeNullableJsonConverter.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeNullableJsonConverter.cs new file mode 100644 index 000000000000..9b8883e76a6a --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/DateTimeNullableJsonConverter.cs @@ -0,0 +1,80 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Globalization; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace Org.OpenAPITools.Client +{ + /// + /// Formatter for 'date-time' openapi formats ss defined by full-date - RFC3339 + /// see https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#data-types + /// + public class DateTimeNullableJsonConverter : JsonConverter + { + /// + /// The formats used to deserialize the date + /// + public static string[] Formats { get; } = { + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fK", + "yyyy'-'MM'-'dd'T'HH':'mm':'ssK", + "yyyyMMddTHHmmss.fffffffK", + "yyyyMMddTHHmmss.ffffffK", + "yyyyMMddTHHmmss.fffffK", + "yyyyMMddTHHmmss.ffffK", + "yyyyMMddTHHmmss.fffK", + "yyyyMMddTHHmmss.ffK", + "yyyyMMddTHHmmss.fK", + "yyyyMMddTHHmmssK", + + }; + + /// + /// Returns a DateTime from the Json object + /// + /// + /// + /// + /// + public override DateTime? Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { + if (reader.TokenType == JsonTokenType.Null) + return null; + + string value = reader.GetString()!; + + foreach(string format in Formats) + if (DateTime.TryParseExact(value, format, CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal, out DateTime result)) + return result; + + return null; + } + + /// + /// Writes the DateTime to the json writer + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, DateTime? dateTimeValue, JsonSerializerOptions options) + { + if (dateTimeValue == null) + writer.WriteNullValue(); + else + writer.WriteStringValue(dateTimeValue.Value.ToString("yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK", CultureInfo.InvariantCulture)); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ExceptionEventArgs.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ExceptionEventArgs.cs new file mode 100644 index 000000000000..f711f9f3c7ee --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/ExceptionEventArgs.cs @@ -0,0 +1,24 @@ +using System; + +namespace Org.OpenAPITools.Client +{ + /// + /// Useful for tracking server health + /// + public class ExceptionEventArgs : EventArgs + { + /// + /// The ApiResponse + /// + public Exception Exception { get; } + + /// + /// The ExceptionEventArgs + /// + /// + public ExceptionEventArgs(Exception exception) + { + Exception = exception; + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/HostConfiguration.cs new file mode 100644 index 000000000000..31b898362657 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -0,0 +1,134 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.Net.Http; +using Microsoft.Extensions.DependencyInjection; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; + +namespace Org.OpenAPITools.Client +{ + /// + /// Provides hosting configuration for Org.OpenAPITools + /// + public class HostConfiguration + { + private readonly IServiceCollection _services; + private readonly JsonSerializerOptions _jsonOptions = new JsonSerializerOptions(); + + internal bool HttpClientsAdded { get; private set; } + + /// + /// Instantiates the class + /// + /// + public HostConfiguration(IServiceCollection services) + { + _services = services; + _jsonOptions.Converters.Add(new JsonStringEnumConverter()); + _jsonOptions.Converters.Add(new DateTimeJsonConverter()); + _jsonOptions.Converters.Add(new DateTimeNullableJsonConverter()); + _jsonOptions.Converters.Add(new DateOnlyJsonConverter()); + _jsonOptions.Converters.Add(new DateOnlyNullableJsonConverter()); + _jsonOptions.Converters.Add(new OneOfArrayRequestJsonConverter()); + _jsonOptions.Converters.Add(new TestObjectJsonConverter()); + JsonSerializerOptionsProvider jsonSerializerOptionsProvider = new(_jsonOptions); + _services.AddSingleton(jsonSerializerOptionsProvider); + _services.AddSingleton(); + _services.AddSingleton(); + _services.AddTransient(); + } + + /// + /// Configures the HttpClients. + /// + /// + /// + /// + public HostConfiguration AddApiHttpClients + ( + Action? client = null, Action? builder = null) + { + if (client == null) + client = c => c.BaseAddress = new Uri(ClientUtils.BASE_ADDRESS); + + List builders = new List(); + + builders.Add(_services.AddHttpClient(client)); + + if (builder != null) + foreach (IHttpClientBuilder instance in builders) + builder(instance); + + HttpClientsAdded = true; + + return this; + } + + /// + /// Configures the JsonSerializerSettings + /// + /// + /// + public HostConfiguration ConfigureJsonOptions(Action options) + { + options(_jsonOptions); + + return this; + } + + /// + /// Adds tokens to your IServiceCollection + /// + /// + /// + /// + public HostConfiguration AddTokens(TTokenBase token) where TTokenBase : TokenBase + { + return AddTokens(new TTokenBase[]{ token }); + } + + /// + /// Adds tokens to your IServiceCollection + /// + /// + /// + /// + public HostConfiguration AddTokens(IEnumerable tokens) where TTokenBase : TokenBase + { + TokenContainer container = new TokenContainer(tokens); + _services.AddSingleton(services => container); + + return this; + } + + /// + /// Adds a token provider to your IServiceCollection + /// + /// + /// + /// + public HostConfiguration UseProvider() + where TTokenProvider : TokenProvider + where TTokenBase : TokenBase + { + _services.AddSingleton(); + _services.AddSingleton>(services => services.GetRequiredService()); + + return this; + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/JsonSerializerOptionsProvider.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/JsonSerializerOptionsProvider.cs new file mode 100644 index 000000000000..0184d9ad9446 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/JsonSerializerOptionsProvider.cs @@ -0,0 +1,27 @@ +// + +#nullable enable + +using System.Text.Json; + +namespace Org.OpenAPITools.Client +{ + /// + /// Provides the JsonSerializerOptions + /// + public class JsonSerializerOptionsProvider + { + /// + /// the JsonSerializerOptions + /// + public JsonSerializerOptions Options { get; } + + /// + /// Instantiates a JsonSerializerOptionsProvider + /// + public JsonSerializerOptionsProvider(JsonSerializerOptions options) + { + Options = options; + } + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/Option.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/Option.cs new file mode 100644 index 000000000000..241e62ba3736 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/Option.cs @@ -0,0 +1,53 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + + +namespace Org.OpenAPITools.Client +{ + /// + /// A wrapper for operation parameters which are not required + /// + public struct Option + { + /// + /// The value to send to the server + /// + public TType Value { get; } + + /// + /// When true the value will be sent to the server + /// + internal bool IsSet { get; } + + /// + /// A wrapper for operation parameters which are not required + /// + /// + public Option(TType value) + { + IsSet = true; + Value = value; + } + + /// + /// Implicitly converts this option to the contained type + /// + /// + public static implicit operator TType(Option option) => option.Value; + + /// + /// Implicitly converts the provided value to an Option + /// + /// + public static implicit operator Option(TType value) => new Option(value); + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/RateLimitProvider`1.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/RateLimitProvider`1.cs new file mode 100644 index 000000000000..56178013bb46 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/RateLimitProvider`1.cs @@ -0,0 +1,56 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections.Generic; +using System.Linq; + +namespace Org.OpenAPITools.Client +{ + /// + /// Provides a token to the api clients. Tokens will be rate limited based on the provided TimeSpan. + /// + /// + public class RateLimitProvider : TokenProvider where TTokenBase : TokenBase + { + internal Dictionary> AvailableTokens { get; } = new(); + + /// + /// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout. + /// + /// + public RateLimitProvider(TokenContainer container) : base(container.Tokens) + { + foreach(TTokenBase token in _tokens) + token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40)); + + global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length) + { + FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite + }; + + AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded(options)); + + foreach(global::System.Threading.Channels.Channel tokens in AvailableTokens.Values) + for (int i = 0; i < _tokens.Length; i++) + _tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender)); + } + + internal override async System.Threading.Tasks.ValueTask GetAsync(string header = "", System.Threading.CancellationToken cancellation = default) + { + if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel? tokens)) + throw new KeyNotFoundException($"Could not locate a token for header '{header}'."); + + return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenBase.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenBase.cs new file mode 100644 index 000000000000..3f713a2ef4bb --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenBase.cs @@ -0,0 +1,71 @@ +// + +#nullable enable + +using System; + +namespace Org.OpenAPITools.Client +{ + /// + /// The base for all tokens. + /// + public abstract class TokenBase + { + private DateTime _nextAvailable = DateTime.UtcNow; + private object _nextAvailableLock = new object(); + private readonly System.Timers.Timer _timer = new System.Timers.Timer(); + + + internal TimeSpan? Timeout { get; set; } + internal delegate void TokenBecameAvailableEventHandler(object sender); + internal event TokenBecameAvailableEventHandler? TokenBecameAvailable; + + + /// + /// Initialize a TokenBase object. + /// + /// + internal TokenBase(TimeSpan? timeout = null) + { + Timeout = timeout; + + if (Timeout != null) + StartTimer(Timeout.Value); + } + + + /// + /// Starts the token's timer + /// + /// + internal void StartTimer(TimeSpan timeout) + { + Timeout = timeout; + _timer.Interval = Timeout.Value.TotalMilliseconds; + _timer.Elapsed += OnTimer; + _timer.AutoReset = true; + _timer.Start(); + } + + /// + /// Returns true while the token is rate limited. + /// + public bool IsRateLimited => _nextAvailable > DateTime.UtcNow; + + /// + /// Triggered when the server returns status code TooManyRequests + /// Once triggered the local timeout will be extended an arbitrary length of time. + /// + public void BeginRateLimit() + { + lock(_nextAvailableLock) + _nextAvailable = DateTime.UtcNow.AddSeconds(5); + } + + private void OnTimer(object? sender, System.Timers.ElapsedEventArgs e) + { + if (TokenBecameAvailable != null && !IsRateLimited) + TokenBecameAvailable.Invoke(this); + } + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenContainer`1.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenContainer`1.cs new file mode 100644 index 000000000000..7b0f23d28a4e --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenContainer`1.cs @@ -0,0 +1,37 @@ +// + +#nullable enable + +using System.Linq; +using System.Collections.Generic; + +namespace Org.OpenAPITools.Client +{ + /// + /// A container for a collection of tokens. + /// + /// + public sealed class TokenContainer where TTokenBase : TokenBase + { + /// + /// The collection of tokens + /// + public List Tokens { get; } = new List(); + + /// + /// Instantiates a TokenContainer + /// + public TokenContainer() + { + } + + /// + /// Instantiates a TokenContainer + /// + /// + public TokenContainer(global::System.Collections.Generic.IEnumerable tokens) + { + Tokens = tokens.ToList(); + } + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenProvider`1.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenProvider`1.cs new file mode 100644 index 000000000000..f0fdd6d9b3fe --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Client/TokenProvider`1.cs @@ -0,0 +1,44 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Linq; +using System.Collections.Generic; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools +{ + /// + /// A class which will provide tokens. + /// + public abstract class TokenProvider where TTokenBase : TokenBase + { + /// + /// The array of tokens. + /// + protected TTokenBase[] _tokens; + + internal abstract System.Threading.Tasks.ValueTask GetAsync(string header = "", System.Threading.CancellationToken cancellation = default); + + /// + /// Instantiates a TokenProvider. + /// + /// + public TokenProvider(IEnumerable tokens) + { + _tokens = tokens.ToArray(); + + if (_tokens.Length == 0) + throw new ArgumentException("You did not provide any tokens."); + } + } +} \ No newline at end of file diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHostBuilderExtensions.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHostBuilderExtensions.cs new file mode 100644 index 000000000000..dfd515dc9550 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHostBuilderExtensions.cs @@ -0,0 +1,59 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Extensions +{ + /// + /// Extension methods for IHostBuilder + /// + public static class IHostBuilderExtensions + { + /// + /// Add the api to your host builder. + /// + /// + public static IHostBuilder ConfigureApi(this IHostBuilder builder) + { + builder.ConfigureServices((context, services) => + { + HostConfiguration config = new HostConfiguration(services); + + IServiceCollectionExtensions.AddApi(services, config); + }); + + return builder; + } + + /// + /// Add the api to your host builder. + /// + /// + /// + public static IHostBuilder ConfigureApi(this IHostBuilder builder, Action options) + { + builder.ConfigureServices((context, services) => + { + HostConfiguration config = new HostConfiguration(services); + + options(context, services, config); + + IServiceCollectionExtensions.AddApi(services, config); + }); + + return builder; + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHttpClientBuilderExtensions.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHttpClientBuilderExtensions.cs new file mode 100644 index 000000000000..821b1d82187f --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IHttpClientBuilderExtensions.cs @@ -0,0 +1,79 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Net.Http; +using Microsoft.Extensions.DependencyInjection; +using Polly.Timeout; +using Polly.Extensions.Http; +using Polly; + +namespace Org.OpenAPITools.Extensions +{ + /// + /// Extension methods for IHttpClientBuilder + /// + public static class IHttpClientBuilderExtensions + { + /// + /// Adds a Polly retry policy to your clients. + /// + /// + /// + /// + public static IHttpClientBuilder AddRetryPolicy(this IHttpClientBuilder client, int retries) + { + client.AddPolicyHandler(RetryPolicy(retries)); + + return client; + } + + /// + /// Adds a Polly timeout policy to your clients. + /// + /// + /// + /// + public static IHttpClientBuilder AddTimeoutPolicy(this IHttpClientBuilder client, TimeSpan timeout) + { + client.AddPolicyHandler(TimeoutPolicy(timeout)); + + return client; + } + + /// + /// Adds a Polly circuit breaker to your clients. + /// + /// + /// + /// + /// + public static IHttpClientBuilder AddCircuitBreakerPolicy(this IHttpClientBuilder client, int handledEventsAllowedBeforeBreaking, TimeSpan durationOfBreak) + { + client.AddTransientHttpErrorPolicy(builder => CircuitBreakerPolicy(builder, handledEventsAllowedBeforeBreaking, durationOfBreak)); + + return client; + } + + private static Polly.Retry.AsyncRetryPolicy RetryPolicy(int retries) + => HttpPolicyExtensions + .HandleTransientHttpError() + .Or() + .RetryAsync(retries); + + private static AsyncTimeoutPolicy TimeoutPolicy(TimeSpan timeout) + => Policy.TimeoutAsync(timeout); + + private static Polly.CircuitBreaker.AsyncCircuitBreakerPolicy CircuitBreakerPolicy( + PolicyBuilder builder, int handledEventsAllowedBeforeBreaking, TimeSpan durationOfBreak) + => builder.CircuitBreakerAsync(handledEventsAllowedBeforeBreaking, durationOfBreak); + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IServiceCollectionExtensions.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IServiceCollectionExtensions.cs new file mode 100644 index 000000000000..33aa1ba13851 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Extensions/IServiceCollectionExtensions.cs @@ -0,0 +1,73 @@ +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Linq; +using Microsoft.Extensions.DependencyInjection; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Extensions +{ + /// + /// Extension methods for IServiceCollection + /// + public static class IServiceCollectionExtensions + { + /// + /// Add the api to your host builder. + /// + /// + public static void AddApi(this IServiceCollection services) + { + HostConfiguration config = new(services); + AddApi(services, config); + } + + /// + /// Add the api to your host builder. + /// + /// + /// + public static void AddApi(this IServiceCollection services, Action options) + { + HostConfiguration config = new(services); + options(config); + AddApi(services, config); + } + + internal static void AddApi(IServiceCollection services, HostConfiguration host) + { + if (!host.HttpClientsAdded) + host.AddApiHttpClients(); + + services.AddSingleton(); + + // ensure that a token provider was provided for this token type + // if not, default to RateLimitProvider + var containerServices = services.Where(s => s.ServiceType.IsGenericType && + s.ServiceType.GetGenericTypeDefinition().IsAssignableFrom(typeof(TokenContainer<>))).ToArray(); + + foreach(var containerService in containerServices) + { + var tokenType = containerService.ServiceType.GenericTypeArguments[0]; + + var provider = services.FirstOrDefault(s => s.ServiceType.IsAssignableFrom(typeof(TokenProvider<>).MakeGenericType(tokenType))); + + if (provider == null) + { + services.AddSingleton(typeof(RateLimitProvider<>).MakeGenericType(tokenType)); + services.AddSingleton(typeof(TokenProvider<>).MakeGenericType(tokenType), + s => s.GetRequiredService(typeof(RateLimitProvider<>).MakeGenericType(tokenType))); + } + } + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs new file mode 100644 index 000000000000..c80ab3303934 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/OneOfArrayRequest.cs @@ -0,0 +1,189 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// OneOfArrayRequest + /// + public partial class OneOfArrayRequest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list) + { + List = list; + OnCreated(); + } + + /// + /// Initializes a new instance of the class. + /// + /// + internal OneOfArrayRequest(List list1) + { + List1 = list1; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Gets or Sets List + /// + public List? List { get; set; } + + /// + /// Gets or Sets List1 + /// + public List? List1 { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class OneOfArrayRequest {\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class OneOfArrayRequestJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override OneOfArrayRequest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + List? list = default; + List? list1 = default; + + Utf8JsonReader utf8JsonReaderOneOf = utf8JsonReader; + while (utf8JsonReaderOneOf.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReaderOneOf.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReaderOneOf.CurrentDepth) + break; + + if (utf8JsonReaderOneOf.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReaderOneOf.CurrentDepth - 1) + { + Utf8JsonReader utf8JsonReaderList = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList, jsonSerializerOptions, out list); + + Utf8JsonReader utf8JsonReaderList1 = utf8JsonReader; + ClientUtils.TryDeserialize?>(ref utf8JsonReaderList1, jsonSerializerOptions, out list1); + } + } + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + default: + break; + } + } + } + + if (list != null) + return new OneOfArrayRequest(list); + + if (list1 != null) + return new OneOfArrayRequest(list1); + + throw new JsonException(); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, oneOfArrayRequest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, OneOfArrayRequest oneOfArrayRequest, JsonSerializerOptions jsonSerializerOptions) + { + + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/TestObject.cs b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/TestObject.cs new file mode 100644 index 000000000000..f6e193cb8ddd --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Model/TestObject.cs @@ -0,0 +1,168 @@ +// +/* + * Oneof array test + * + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// TestObject + /// + public partial class TestObject : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// name + [JsonConstructor] + public TestObject(Option name = default) + { + NameOption = name; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of Name + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option NameOption { get; private set; } + + /// + /// Gets or Sets Name + /// + [JsonPropertyName("name")] + public string? Name { get { return this.NameOption; } set { this.NameOption = new(value); } } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TestObject {\n"); + sb.Append(" Name: ").Append(Name).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public class TestObjectJsonConverter : JsonConverter + { + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override TestObject Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option name = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "name": + name = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (name.IsSet && name.Value == null) + throw new ArgumentNullException(nameof(name), "Property is not nullable for class TestObject."); + + return new TestObject(name); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, testObject, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, TestObject testObject, JsonSerializerOptions jsonSerializerOptions) + { + if (testObject.NameOption.IsSet && testObject.Name == null) + throw new ArgumentNullException(nameof(testObject.Name), "Property is required for class TestObject."); + + if (testObject.NameOption.IsSet) + writer.WriteString("name", testObject.Name); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Org.OpenAPITools.csproj b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Org.OpenAPITools.csproj new file mode 100644 index 000000000000..5e475211af94 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/Org.OpenAPITools.csproj @@ -0,0 +1,31 @@ + + + + true + net9.0 + Org.OpenAPITools + Org.OpenAPITools + Library + OpenAPI + OpenAPI + OpenAPI Library + A library generated from a OpenAPI doc + No Copyright + Org.OpenAPITools + 1.0.0 + bin\$(Configuration)\$(TargetFramework)\Org.OpenAPITools.xml + https://github.com/GIT_USER_ID/GIT_REPO_ID.git + git + Minor update + enable + false + + + + + + + + + + diff --git a/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/README.md b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/README.md new file mode 100644 index 000000000000..d025c4f5a4e7 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/OneOfList/src/Org.OpenAPITools/README.md @@ -0,0 +1,176 @@ +# Created with Openapi Generator + + +## Run the following powershell command to generate the library + +```ps1 +$properties = @( + 'apiName=Api', + 'targetFramework=net9.0', + 'validatable=true', + 'nullableReferenceTypes=true', + 'hideGenerationTimestamp=true', + 'packageVersion=1.0.0', + 'packageAuthors=OpenAPI', + 'packageCompany=OpenAPI', + 'packageCopyright=No Copyright', + 'packageDescription=A library generated from a OpenAPI doc', + 'packageName=Org.OpenAPITools', + 'packageTags=', + 'packageTitle=OpenAPI Library' +) -join "," + +$global = @( + 'apiDocs=true', + 'modelDocs=true', + 'apiTests=true', + 'modelTests=true' +) -join "," + +java -jar "/openapi-generator/modules/openapi-generator-cli/target/openapi-generator-cli.jar" generate ` + -g csharp-netcore ` + -i .yaml ` + -o ` + --library generichost ` + --additional-properties $properties ` + --global-property $global ` + --git-host "github.com" ` + --git-repo-id "GIT_REPO_ID" ` + --git-user-id "GIT_USER_ID" ` + --release-note "Minor update" + # -t templates +``` + + +## Using the library in your project + +```cs +using System; +using System.Threading.Tasks; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.DependencyInjection; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Client; +using Org.OpenAPITools.Model; + +namespace YourProject +{ + public class Program + { + public static async Task Main(string[] args) + { + var host = CreateHostBuilder(args).Build(); + var api = host.Services.GetRequiredService(); + OneOfArrayApiResponse apiResponse = await api.OneOfArrayAsync("todo"); + object model = apiResponse.Ok(); + } + + public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) + .ConfigureApi((context, options) => + { + options.ConfigureJsonOptions((jsonOptions) => + { + // your custom converters if any + }); + + options.AddApiHttpClients(builder: builder => builder + .AddRetryPolicy(2) + .AddTimeoutPolicy(TimeSpan.FromSeconds(5)) + .AddCircuitBreakerPolicy(10, TimeSpan.FromSeconds(30)) + // add whatever middleware you prefer + ); + }); + } +} +``` + +## Questions + +- What about HttpRequest failures and retries? + If supportsRetry is enabled, you can configure Polly in the ConfigureClients method. +- How are tokens used? + Tokens are provided by a TokenProvider class. The default is RateLimitProvider which will perform client side rate limiting. + Other providers can be used with the UseProvider method. +- Does an HttpRequest throw an error when the server response is not Ok? + It depends how you made the request. If the return type is ApiResponse no error will be thrown, though the Content property will be null. + StatusCode and ReasonPhrase will contain information about the error. + If the return type is T, then it will throw. If the return type is TOrDefault, it will return null. +- How do I validate requests and process responses? + Use the provided On and After methods in the Api class from the namespace Org.OpenAPITools.Rest.DefaultApi. + Or provide your own class by using the generic ConfigureApi method. + + +## Dependencies + +- [Microsoft.Extensions.Hosting](https://www.nuget.org/packages/Microsoft.Extensions.Hosting/) - 5.0.0 or later +- [Microsoft.Extensions.Http](https://www.nuget.org/packages/Microsoft.Extensions.Http/) - 5.0.0 or later +- [Microsoft.Extensions.Http.Polly](https://www.nuget.org/packages/Microsoft.Extensions.Http.Polly/) - 5.0.1 or later +- [System.ComponentModel.Annotations](https://www.nuget.org/packages/System.ComponentModel.Annotations) - 4.7.0 or later + + +## Documentation for Authorization + +Endpoints do not require authorization. + + +## Build +- SDK version: 1.0.0 +- Generator version: 7.14.0-SNAPSHOT +- Build package: org.openapitools.codegen.languages.CSharpClientCodegen + +## Api Information +- appName: Oneof array test +- appVersion: 1.0.0 +- appDescription: No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + +## [OpenApi Global properties](https://openapi-generator.tech/docs/globals) +- generateAliasAsModel: +- supportingFiles: +- models: omitted for brevity +- apis: omitted for brevity +- apiDocs: true +- modelDocs: true +- apiTests: true +- modelTests: true + +## [OpenApi Generator Parameters](https://openapi-generator.tech/docs/generators/csharp-netcore) +- allowUnicodeIdentifiers: +- apiName: Api +- caseInsensitiveResponseHeaders: +- conditionalSerialization: false +- disallowAdditionalPropertiesIfNotPresent: +- gitHost: github.com +- gitRepoId: GIT_REPO_ID +- gitUserId: GIT_USER_ID +- hideGenerationTimestamp: true +- interfacePrefix: I +- library: generichost +- licenseId: +- modelPropertyNaming: +- netCoreProjectFile: false +- nonPublicApi: false +- nullableReferenceTypes: true +- optionalAssemblyInfo: +- optionalEmitDefaultValues: false +- optionalMethodArgument: true +- optionalProjectFile: +- packageAuthors: OpenAPI +- packageCompany: OpenAPI +- packageCopyright: No Copyright +- packageDescription: A library generated from a OpenAPI doc +- packageGuid: {321C8C3F-0156-40C1-AE42-D59761FB9B6C} +- packageName: Org.OpenAPITools +- packageTags: +- packageTitle: OpenAPI Library +- packageVersion: 1.0.0 +- releaseNote: Minor update +- returnICollection: false +- sortParamsByRequiredFlag: +- sourceFolder: src +- targetFramework: net9.0 +- useCollection: false +- useDateTimeOffset: false +- useOneOfDiscriminatorLookup: false +- validatable: true + +This C# SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project.