//---------------------- // // 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((System.Array) value); return string.Join(",", System.Linq.Enumerable.Select(array, o => ConvertToString(o, cultureInfo))); } return System.Convert.ToString(value, cultureInfo); } } [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "9.10.72.0 (Newtonsoft.Json v9.0.0.0)")] [System.Serializable] public partial class RequestStatus { [Newtonsoft.Json.JsonProperty("status", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] public string Status { get; set; } } [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "9.10.72.0 (Newtonsoft.Json v9.0.0.0)")] [System.Serializable] public partial class Entity { [Newtonsoft.Json.JsonProperty("id", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] public System.Guid? Id { get; set; } } [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "9.10.72.0 (Newtonsoft.Json v9.0.0.0)")] [System.Serializable] public partial class Error { [Newtonsoft.Json.JsonProperty("message", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)] public string Message { get; set; } } [System.CodeDom.Compiler.GeneratedCode("NSwag", "11.18.7.0 (NJsonSchema v9.10.72.0 (Newtonsoft.Json v9.0.0.0))")] public partial class CustomException : System.Exception { public int StatusCode { get; private set; } public string Response { get; private set; } public System.Collections.Generic.Dictionary> Headers { get; private set; } public CustomException(string message, int statusCode, string response, System.Collections.Generic.Dictionary> headers, System.Exception innerException) : base(message, innerException) { StatusCode = statusCode; Response = response; Headers = headers; } public override string ToString() { return string.Format("HTTP Response: \n\n{0}\n\n{1}", Response, base.ToString()); } } [System.CodeDom.Compiler.GeneratedCode("NSwag", "11.18.7.0 (NJsonSchema v9.10.72.0 (Newtonsoft.Json v9.0.0.0))")] public partial class CustomException : CustomException { public TResult Result { get; private set; } public CustomException(string message, int statusCode, string response, System.Collections.Generic.Dictionary> headers, TResult result, System.Exception innerException) : base(message, statusCode, response, headers, innerException) { Result = result; } } }