From 5441aeca72d0ea99983d0975648fe838c5ad773a Mon Sep 17 00:00:00 2001 From: AJ Rice <53190766+ajrice6713@users.noreply.github.com> Date: Mon, 25 Apr 2022 00:27:56 -0400 Subject: [PATCH] [csharp-netcore] Add support for `byte[]` response deserialization (#12188) * [csharp-netcore] DX-2532 - Add support for `byte[]` response deserialization Add support for `byte[]` response type deserialization * Update Samples and Docs --- .../src/main/resources/csharp-netcore/ApiClient.mustache | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ .../src/Org.OpenAPITools/Client/ApiClient.cs | 8 ++++++++ 8 files changed, 64 insertions(+) diff --git a/modules/openapi-generator/src/main/resources/csharp-netcore/ApiClient.mustache b/modules/openapi-generator/src/main/resources/csharp-netcore/ApiClient.mustache index 36ef7250b333..d605f1752dda 100644 --- a/modules/openapi-generator/src/main/resources/csharp-netcore/ApiClient.mustache +++ b/modules/openapi-generator/src/main/resources/csharp-netcore/ApiClient.mustache @@ -509,6 +509,10 @@ namespace {{packageName}}.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -627,6 +631,10 @@ namespace {{packageName}}.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/others/csharp-netcore-complex-files/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/others/csharp-netcore-complex-files/src/Org.OpenAPITools/Client/ApiClient.cs index 584eaebe4f6b..47035360d096 100644 --- a/samples/client/others/csharp-netcore-complex-files/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/others/csharp-netcore-complex-files/src/Org.OpenAPITools/Client/ApiClient.cs @@ -511,6 +511,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -624,6 +628,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClient-ConditionalSerialization/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/petstore/csharp-netcore/OpenAPIClient-ConditionalSerialization/src/Org.OpenAPITools/Client/ApiClient.cs index 66ec18ddf578..cd27f0891198 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClient-ConditionalSerialization/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClient-ConditionalSerialization/src/Org.OpenAPITools/Client/ApiClient.cs @@ -511,6 +511,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -624,6 +628,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClient-net47/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/petstore/csharp-netcore/OpenAPIClient-net47/src/Org.OpenAPITools/Client/ApiClient.cs index ca82a98d1902..70ac64f89a42 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClient-net47/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClient-net47/src/Org.OpenAPITools/Client/ApiClient.cs @@ -512,6 +512,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -625,6 +629,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClient-net5.0/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/petstore/csharp-netcore/OpenAPIClient-net5.0/src/Org.OpenAPITools/Client/ApiClient.cs index ca82a98d1902..70ac64f89a42 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClient-net5.0/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClient-net5.0/src/Org.OpenAPITools/Client/ApiClient.cs @@ -512,6 +512,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -625,6 +629,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Client/ApiClient.cs index 66ec18ddf578..cd27f0891198 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Client/ApiClient.cs @@ -511,6 +511,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -624,6 +628,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Client/ApiClient.cs index ca82a98d1902..70ac64f89a42 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Client/ApiClient.cs @@ -512,6 +512,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -625,6 +629,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); diff --git a/samples/client/petstore/csharp-netcore/OpenAPIClientCoreAndNet47/src/Org.OpenAPITools/Client/ApiClient.cs b/samples/client/petstore/csharp-netcore/OpenAPIClientCoreAndNet47/src/Org.OpenAPITools/Client/ApiClient.cs index e14098e80ac2..7f930101c91d 100644 --- a/samples/client/petstore/csharp-netcore/OpenAPIClientCoreAndNet47/src/Org.OpenAPITools/Client/ApiClient.cs +++ b/samples/client/petstore/csharp-netcore/OpenAPIClientCoreAndNet47/src/Org.OpenAPITools/Client/ApiClient.cs @@ -511,6 +511,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response); @@ -624,6 +628,10 @@ namespace Org.OpenAPITools.Client { response.Data = (T)(object)new MemoryStream(response.RawBytes); } + else if (typeof(T).Name == "Byte[]") // for byte response + { + response.Data = (T)(object)response.RawBytes; + } InterceptResponse(req, response);