//----------------------
//
// Generated using the NSwag toolchain v11.18.7.0 (NJsonSchema v9.10.72.0 (Newtonsoft.Json v9.0.0.0)) (http://NSwag.org)
//
//----------------------
namespace Custom
{
#pragma warning disable // Disable all warnings
[System.CodeDom.Compiler.GeneratedCode("NSwag", "11.18.7.0 (NJsonSchema v9.10.72.0 (Newtonsoft.Json v9.0.0.0))")]
public partial interface IClient
{
/// Summary.
/// An entity was successfully created.
/// A server side error occurred.
System.Threading.Tasks.Task TestPostAsync(System.Guid orderId);
/// Summary.
/// An entity was successfully created.
/// A server side error occurred.
Entity TestPost(System.Guid orderId);
/// Summary.
/// An entity was successfully created.
/// A server side error occurred.
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
System.Threading.Tasks.Task TestPostAsync(System.Guid orderId, System.Threading.CancellationToken cancellationToken);
}
[System.CodeDom.Compiler.GeneratedCode("NSwag", "11.18.7.0 (NJsonSchema v9.10.72.0 (Newtonsoft.Json v9.0.0.0))")]
public partial class Client : BaseCustomClient, IClient
{
private System.Lazy _settings;
public Client(string baseUrl)
{
BaseUrl = baseUrl;
_settings = new System.Lazy(() =>
{
var settings = new Newtonsoft.Json.JsonSerializerSettings();
UpdateJsonSerializerSettings(settings);
return settings;
});
}
protected Newtonsoft.Json.JsonSerializerSettings JsonSerializerSettings { get { return _settings.Value; } }
partial void UpdateJsonSerializerSettings(Newtonsoft.Json.JsonSerializerSettings settings);
partial void PrepareRequest(System.Net.Http.HttpClient client, System.Net.Http.HttpRequestMessage request, string url);
partial void PrepareRequest(System.Net.Http.HttpClient client, System.Net.Http.HttpRequestMessage request, System.Text.StringBuilder urlBuilder);
partial void ProcessResponse(System.Net.Http.HttpClient client, System.Net.Http.HttpResponseMessage response);
/// Summary.
/// An entity was successfully created.
/// A server side error occurred.
public System.Threading.Tasks.Task TestPostAsync(System.Guid orderId)
{
return TestPostAsync(orderId, System.Threading.CancellationToken.None);
}
/// Summary.
/// An entity was successfully created.
/// A server side error occurred.
public Entity TestPost(System.Guid orderId)
{
return System.Threading.Tasks.Task.Run(async () => await TestPostAsync(orderId, System.Threading.CancellationToken.None)).GetAwaiter().GetResult();
}
/// Summary.
/// An entity was successfully created.
/// A server side error occurred.
/// A cancellation token that can be used by other objects or threads to receive notice of cancellation.
public async System.Threading.Tasks.Task TestPostAsync(System.Guid orderId, System.Threading.CancellationToken cancellationToken)
{
var resource = "/test";
var urlBuilder_ = new System.Text.StringBuilder();
urlBuilder_.Append(BaseUrl != null ? BaseUrl.TrimEnd('/') : "").Append(resource);
var client_ = await CreateHttpClientAsync(cancellationToken).ConfigureAwait(false);
try
{
using (var request_ = new System.Net.Http.HttpRequestMessage())
{
request_.Content = new System.Net.Http.StringContent(string.Empty, System.Text.Encoding.UTF8, "application/json");
request_.Method = new System.Net.Http.HttpMethod("POST");
request_.Headers.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
PrepareRequest(client_, request_, urlBuilder_);
var url_ = urlBuilder_.ToString();
request_.RequestUri = new System.Uri(url_, System.UriKind.RelativeOrAbsolute);
PrepareRequest(client_, request_, url_);
PrepareRequest(client_, request_, url_, resource);
var response_ = await client_.SendAsync(request_, System.Net.Http.HttpCompletionOption.ResponseHeadersRead, cancellationToken).ConfigureAwait(false);
try
{
var headers_ = System.Linq.Enumerable.ToDictionary(response_.Headers, h_ => h_.Key, h_ => h_.Value);
if (response_.Content != null && response_.Content.Headers != null)
{
foreach (var item_ in response_.Content.Headers)
headers_[item_.Key] = item_.Value;
}
ProcessResponse(client_, response_);
ProcessResponse(client_, response_, url_, resource);
var status_ = ((int)response_.StatusCode).ToString();
if (status_ == "201")
{
var responseData_ = response_.Content == null ? null : await response_.Content.ReadAsStringAsync().ConfigureAwait(false);
var result_ = default(Entity);
try
{
result_ = Newtonsoft.Json.JsonConvert.DeserializeObject(responseData_, _settings.Value);
return result_;
}
catch (System.Exception exception_)
{
throw new CustomException("Could not deserialize the response body.", (int)response_.StatusCode, responseData_, headers_, exception_);
}
}
else
if (status_ == "202")
{
var responseData_ = response_.Content == null ? null : await response_.Content.ReadAsStringAsync().ConfigureAwait(false);
var result_ = default(RequestStatus);
try
{
result_ = Newtonsoft.Json.JsonConvert.DeserializeObject(responseData_, _settings.Value);
}
catch (System.Exception exception_)
{
throw new CustomException("Could not deserialize the response body.", (int)response_.StatusCode, responseData_, headers_, exception_);
}
throw new CustomException("The request is still being processed.", (int)response_.StatusCode, responseData_, headers_, result_, null);
}
else
{
var responseData_ = response_.Content == null ? null : await response_.Content.ReadAsStringAsync().ConfigureAwait(false);
var result_ = default(Error);
try
{
result_ = Newtonsoft.Json.JsonConvert.DeserializeObject(responseData_, _settings.Value);
}
catch (System.Exception exception_)
{
throw new CustomException("Could not deserialize the response body.", (int)response_.StatusCode, responseData_, headers_, exception_);
}
throw new CustomException("Default response", (int)response_.StatusCode, responseData_, headers_, result_, null);
}
}
finally
{
if (response_ != null)
response_.Dispose();
}
}
}
finally
{
if (client_ != null)
client_.Dispose();
}
}
private string ConvertToString(object value, System.Globalization.CultureInfo cultureInfo)
{
if (value is System.Enum)
{
string name = System.Enum.GetName(value.GetType(), value);
if (name != null)
{
var field = System.Reflection.IntrospectionExtensions.GetTypeInfo(value.GetType()).GetDeclaredField(name);
if (field != null)
{
var attribute = System.Reflection.CustomAttributeExtensions.GetCustomAttribute(field, typeof(System.Runtime.Serialization.EnumMemberAttribute))
as System.Runtime.Serialization.EnumMemberAttribute;
if (attribute != null)
{
return attribute.Value;
}
}
}
}
else if (value is byte[])
{
return System.Convert.ToBase64String((byte[]) value);
}
else if (value != null && value.GetType().IsArray)
{
var array = System.Linq.Enumerable.OfType