forked from loafle/openapi-generator-original
[csharp][generichost] Added event on http response to facilitate server health tracking (#16046)
* added event on http response to facility server health tracking * renamed a file * handled the renamed file
This commit is contained in:
parent
aa1e9097ea
commit
fe78be405e
@ -1025,7 +1025,7 @@ public class CSharpClientCodegen extends AbstractCSharpCodegen {
|
|||||||
supportingFiles.add(new SupportingFile("ApiFactory.mustache", clientPackageDir, "ApiFactory.cs"));
|
supportingFiles.add(new SupportingFile("ApiFactory.mustache", clientPackageDir, "ApiFactory.cs"));
|
||||||
supportingFiles.add(new SupportingFile("DateTimeJsonConverter.mustache", clientPackageDir, "DateTimeJsonConverter.cs"));
|
supportingFiles.add(new SupportingFile("DateTimeJsonConverter.mustache", clientPackageDir, "DateTimeJsonConverter.cs"));
|
||||||
supportingFiles.add(new SupportingFile("DateTimeNullableJsonConverter.mustache", clientPackageDir, "DateTimeNullableJsonConverter.cs"));
|
supportingFiles.add(new SupportingFile("DateTimeNullableJsonConverter.mustache", clientPackageDir, "DateTimeNullableJsonConverter.cs"));
|
||||||
supportingFiles.add(new SupportingFile("ApiResponseEventArgs.mustache", clientPackageDir, "ApiResponseEventArgs.cs"));
|
supportingFiles.add(new SupportingFile("ApiResponseEventArgs`1.mustache", clientPackageDir, "ApiResponseEventArgs.cs"));
|
||||||
supportingFiles.add(new SupportingFile("JsonSerializerOptionsProvider.mustache", clientPackageDir, "JsonSerializerOptionsProvider.cs"));
|
supportingFiles.add(new SupportingFile("JsonSerializerOptionsProvider.mustache", clientPackageDir, "JsonSerializerOptionsProvider.cs"));
|
||||||
supportingFiles.add(new SupportingFile("CookieContainer.mustache", clientPackageDir, "CookieContainer.cs"));
|
supportingFiles.add(new SupportingFile("CookieContainer.mustache", clientPackageDir, "CookieContainer.cs"));
|
||||||
supportingFiles.add(new SupportingFile("Option.mustache", clientPackageDir, "Option.cs"));
|
supportingFiles.add(new SupportingFile("Option.mustache", clientPackageDir, "Option.cs"));
|
||||||
|
@ -1,58 +0,0 @@
|
|||||||
using System;
|
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace {{packageName}}.{{clientPackage}}
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Useful for tracking server health.
|
|
||||||
/// </summary>
|
|
||||||
{{>visibility}} class ApiResponseEventArgs : EventArgs
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// The time the request was sent.
|
|
||||||
/// </summary>
|
|
||||||
public DateTime RequestedAt { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The time the response was received.
|
|
||||||
/// </summary>
|
|
||||||
public DateTime ReceivedAt { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
|
||||||
RequestedAt = requestedAt;
|
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,24 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace {{packageName}}.{{clientPackage}}
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Useful for tracking server health
|
||||||
|
/// </summary>
|
||||||
|
{{>visibility}} class ApiResponseEventArgs<T> : EventArgs
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The ApiResponse
|
||||||
|
/// </summary>
|
||||||
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The ApiResponseEventArgs
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
|
{
|
||||||
|
ApiResponse = apiResponse;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -49,6 +49,7 @@ namespace {{packageName}}.{{clientPackage}}
|
|||||||
{{/models}}
|
{{/models}}
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();{{#apiInfo}}{{#apis}}
|
_services.AddSingleton<IApiFactory, ApiFactory>();{{#apiInfo}}{{#apis}}
|
||||||
|
_services.AddSingleton<{{classname}}Events>();
|
||||||
_services.AddTransient<{{interfacePrefix}}{{classname}}, {{classname}}>();{{/apis}}{{/apiInfo}}
|
_services.AddTransient<{{interfacePrefix}}{{classname}}, {{classname}}>();{{/apis}}{{/apiInfo}}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using {{packageName}}.{{clientPackage}};
|
using {{packageName}}.{{clientPackage}};
|
||||||
|
using {{packageName}}.{{apiPackage}};
|
||||||
{{#hasImport}}
|
{{#hasImport}}
|
||||||
using {{packageName}}.{{modelPackage}};
|
using {{packageName}}.{{modelPackage}};
|
||||||
{{/hasImport}}
|
{{/hasImport}}
|
||||||
@ -26,6 +27,11 @@ namespace {{packageName}}.{{interfacePrefix}}{{apiPackage}}
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
{{>visibility}} interface {{interfacePrefix}}{{classname}} : IApi
|
{{>visibility}} interface {{interfacePrefix}}{{classname}} : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
{{classname}}Events Events { get; }
|
||||||
|
|
||||||
{{#operation}}
|
{{#operation}}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// {{summary}}
|
/// {{summary}}
|
||||||
@ -62,6 +68,28 @@ namespace {{packageName}}.{{interfacePrefix}}{{apiPackage}}
|
|||||||
|
|
||||||
namespace {{packageName}}.{{apiPackage}}
|
namespace {{packageName}}.{{apiPackage}}
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
{{>visibility}} class {{classname}}Events
|
||||||
|
{
|
||||||
|
{{#lambda.trimTrailingWhiteSpace}}
|
||||||
|
{{#operation}}
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<{{{returnType}}}{{^returnType}}object{{/returnType}}>>{{nrt?}} On{{operationId}};
|
||||||
|
|
||||||
|
internal void ExecuteOn{{operationId}}(ApiResponse<{{{returnType}}}{{^returnType}}object{{/returnType}}> apiResponse)
|
||||||
|
{
|
||||||
|
On{{operationId}}?.Invoke(this, new ApiResponseEventArgs<{{{returnType}}}{{^returnType}}object{{/returnType}}>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
{{/operation}}
|
||||||
|
{{/lambda.trimTrailingWhiteSpace}}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -77,7 +105,12 @@ namespace {{packageName}}.{{apiPackage}}
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// The HttpClient
|
/// The HttpClient
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }{{#hasApiKeyMethods}}
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public {{classname}}Events Events { get; }{{#hasApiKeyMethods}}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
@ -108,7 +141,7 @@ namespace {{packageName}}.{{apiPackage}}
|
|||||||
/// Initializes a new instance of the <see cref="{{classname}}"/> class.
|
/// Initializes a new instance of the <see cref="{{classname}}"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public {{classname}}(ILogger<{{classname}}> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider{{#hasApiKeyMethods}},
|
public {{classname}}(ILogger<{{classname}}> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, {{classname}}Events {{#lambda.camelcase_param}}{{classname}}Events{{/lambda.camelcase_param}}{{#hasApiKeyMethods}},
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider{{/hasApiKeyMethods}}{{#hasHttpBearerMethods}},
|
TokenProvider<ApiKeyToken> apiKeyProvider{{/hasApiKeyMethods}}{{#hasHttpBearerMethods}},
|
||||||
TokenProvider<BearerToken> bearerTokenProvider{{/hasHttpBearerMethods}}{{#hasHttpBasicMethods}},
|
TokenProvider<BearerToken> bearerTokenProvider{{/hasHttpBearerMethods}}{{#hasHttpBasicMethods}},
|
||||||
TokenProvider<BasicToken> basicTokenProvider{{/hasHttpBasicMethods}}{{#hasHttpSignatureMethods}},
|
TokenProvider<BasicToken> basicTokenProvider{{/hasHttpBasicMethods}}{{#hasHttpSignatureMethods}},
|
||||||
@ -117,7 +150,8 @@ namespace {{packageName}}.{{apiPackage}}
|
|||||||
{
|
{
|
||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;{{#hasApiKeyMethods}}
|
HttpClient = httpClient;
|
||||||
|
Events = {{#lambda.camelcase_param}}{{classname}}Events{{/lambda.camelcase_param}};{{#hasApiKeyMethods}}
|
||||||
ApiKeyProvider = apiKeyProvider;{{/hasApiKeyMethods}}{{#hasHttpBearerMethods}}
|
ApiKeyProvider = apiKeyProvider;{{/hasApiKeyMethods}}{{#hasHttpBearerMethods}}
|
||||||
BearerTokenProvider = bearerTokenProvider;{{/hasHttpBearerMethods}}{{#hasHttpBasicMethods}}
|
BearerTokenProvider = bearerTokenProvider;{{/hasHttpBearerMethods}}{{#hasHttpBasicMethods}}
|
||||||
BasicTokenProvider = basicTokenProvider;{{/hasHttpBasicMethods}}{{#hasHttpSignatureMethods}}
|
BasicTokenProvider = basicTokenProvider;{{/hasHttpBasicMethods}}{{#hasHttpSignatureMethods}}
|
||||||
@ -496,10 +530,12 @@ namespace {{packageName}}.{{apiPackage}}
|
|||||||
{
|
{
|
||||||
string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync({{#net60OrLater}}cancellationToken{{/net60OrLater}}).ConfigureAwait(false);
|
string responseContentLocalVar = await httpResponseMessageLocalVar.Content.ReadAsStringAsync({{#net60OrLater}}cancellationToken{{/net60OrLater}}).ConfigureAwait(false);
|
||||||
|
|
||||||
ApiResponse<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}object{{/returnType}}> apiResponseLocalVar = new ApiResponse<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}object{{/returnType}}>(httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "{{path}}", requestedAtLocalVar, _jsonSerializerOptions);
|
ApiResponse<{{{returnType}}}{{^returnType}}object{{/returnType}}> apiResponseLocalVar = new ApiResponse<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}object{{/returnType}}>(httpRequestMessageLocalVar, httpResponseMessageLocalVar, responseContentLocalVar, "{{path}}", requestedAtLocalVar, _jsonSerializerOptions);
|
||||||
|
|
||||||
After{{operationId}}DefaultImplementation({{#lambda.joinWithComma}}apiResponseLocalVar {{#allParams}}{{paramName}} {{/allParams}}{{/lambda.joinWithComma}});
|
After{{operationId}}DefaultImplementation({{#lambda.joinWithComma}}apiResponseLocalVar {{#allParams}}{{paramName}} {{/allParams}}{{/lambda.joinWithComma}});
|
||||||
|
|
||||||
|
Events.ExecuteOn{{operationId}}(apiResponseLocalVar);
|
||||||
|
|
||||||
{{#authMethods}}
|
{{#authMethods}}
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IAnotherFakeApi : IApi
|
public interface IAnotherFakeApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
AnotherFakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// To test special tags
|
/// To test special tags
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -56,6 +62,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class AnotherFakeApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>>? OnCall123TestSpecialTags;
|
||||||
|
|
||||||
|
internal void ExecuteOnCall123TestSpecialTags(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnCall123TestSpecialTags?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -73,6 +96,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public AnotherFakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -102,7 +130,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="AnotherFakeApi"/> class.
|
/// Initializes a new instance of the <see cref="AnotherFakeApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public AnotherFakeApi(ILogger<AnotherFakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public AnotherFakeApi(ILogger<AnotherFakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, AnotherFakeApiEvents anotherFakeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -112,6 +140,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = anotherFakeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -253,6 +282,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCall123TestSpecialTagsDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterCall123TestSpecialTagsDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnCall123TestSpecialTags(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDefaultApi : IApi
|
public interface IDefaultApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -98,6 +104,43 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class DefaultApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<FooGetDefaultResponse>>? OnFooGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnFooGet(ApiResponse<FooGetDefaultResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnFooGet?.Invoke(this, new ApiResponseEventArgs<FooGetDefaultResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnGetCountry;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetCountry(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetCountry?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Guid>>>? OnHello;
|
||||||
|
|
||||||
|
internal void ExecuteOnHello(ApiResponse<List<Guid>> apiResponse)
|
||||||
|
{
|
||||||
|
OnHello?.Invoke(this, new ApiResponseEventArgs<List<Guid>>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -115,6 +158,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -144,7 +192,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -154,6 +202,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = defaultApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -259,6 +308,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFooGetDefaultImplementation(apiResponseLocalVar);
|
AfterFooGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnFooGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -401,6 +452,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetCountryDefaultImplementation(apiResponseLocalVar, country);
|
AfterGetCountryDefaultImplementation(apiResponseLocalVar, country);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetCountry(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -510,6 +563,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterHelloDefaultImplementation(apiResponseLocalVar);
|
AfterHelloDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnHello(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFakeApi : IApi
|
public interface IFakeApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
FakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Health check endpoint
|
/// Health check endpoint
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -446,6 +452,163 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class FakeApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<HealthCheckResult>>? OnFakeHealthGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeHealthGet(ApiResponse<HealthCheckResult> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeHealthGet?.Invoke(this, new ApiResponseEventArgs<HealthCheckResult>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<bool>>? OnFakeOuterBooleanSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterBooleanSerialize(ApiResponse<bool> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterBooleanSerialize?.Invoke(this, new ApiResponseEventArgs<bool>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<OuterComposite>>? OnFakeOuterCompositeSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterCompositeSerialize(ApiResponse<OuterComposite> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterCompositeSerialize?.Invoke(this, new ApiResponseEventArgs<OuterComposite>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<decimal>>? OnFakeOuterNumberSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterNumberSerialize(ApiResponse<decimal> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterNumberSerialize?.Invoke(this, new ApiResponseEventArgs<decimal>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<string>>? OnFakeOuterStringSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterStringSerialize(ApiResponse<string> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterStringSerialize?.Invoke(this, new ApiResponseEventArgs<string>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<OuterEnum>>>? OnGetArrayOfEnums;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetArrayOfEnums(ApiResponse<List<OuterEnum>> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetArrayOfEnums?.Invoke(this, new ApiResponseEventArgs<List<OuterEnum>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestBodyWithFileSchema;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestBodyWithFileSchema(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestBodyWithFileSchema?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestBodyWithQueryParams;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestBodyWithQueryParams(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestBodyWithQueryParams?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>>? OnTestClientModel;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestClientModel(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestClientModel?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestEndpointParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestEndpointParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestEndpointParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestEnumParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestEnumParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestEnumParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestGroupParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestGroupParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestGroupParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestInlineAdditionalProperties;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestInlineAdditionalProperties(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestInlineAdditionalProperties?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestJsonFormData;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestJsonFormData(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestJsonFormData?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnTestQueryParameterCollectionFormat;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestQueryParameterCollectionFormat(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestQueryParameterCollectionFormat?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -463,6 +626,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public FakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -492,7 +660,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="FakeApi"/> class.
|
/// Initializes a new instance of the <see cref="FakeApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FakeApi(ILogger<FakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public FakeApi(ILogger<FakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, FakeApiEvents fakeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -502,6 +670,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = fakeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -607,6 +776,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeHealthGetDefaultImplementation(apiResponseLocalVar);
|
AfterFakeHealthGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeHealthGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -740,6 +911,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterBooleanSerializeDefaultImplementation(apiResponseLocalVar, body);
|
AfterFakeOuterBooleanSerializeDefaultImplementation(apiResponseLocalVar, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterBooleanSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -886,6 +1059,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterCompositeSerializeDefaultImplementation(apiResponseLocalVar, outerComposite);
|
AfterFakeOuterCompositeSerializeDefaultImplementation(apiResponseLocalVar, outerComposite);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterCompositeSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1019,6 +1194,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterNumberSerializeDefaultImplementation(apiResponseLocalVar, body);
|
AfterFakeOuterNumberSerializeDefaultImplementation(apiResponseLocalVar, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterNumberSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1177,6 +1354,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterStringSerializeDefaultImplementation(apiResponseLocalVar, requiredStringUuid, body);
|
AfterFakeOuterStringSerializeDefaultImplementation(apiResponseLocalVar, requiredStringUuid, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterStringSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1286,6 +1465,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetArrayOfEnumsDefaultImplementation(apiResponseLocalVar);
|
AfterGetArrayOfEnumsDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetArrayOfEnums(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1422,6 +1603,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestBodyWithFileSchemaDefaultImplementation(apiResponseLocalVar, fileSchemaTestClass);
|
AfterTestBodyWithFileSchemaDefaultImplementation(apiResponseLocalVar, fileSchemaTestClass);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestBodyWithFileSchema(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1574,6 +1757,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestBodyWithQueryParamsDefaultImplementation(apiResponseLocalVar, user, query);
|
AfterTestBodyWithQueryParamsDefaultImplementation(apiResponseLocalVar, user, query);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestBodyWithQueryParams(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1719,6 +1904,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestClientModelDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterTestClientModelDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestClientModel(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2003,6 +2190,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestEndpointParametersDefaultImplementation(apiResponseLocalVar, varByte, number, varDouble, patternWithoutDelimiter, date, binary, varFloat, integer, int32, int64, varString, password, callback, dateTime);
|
AfterTestEndpointParametersDefaultImplementation(apiResponseLocalVar, varByte, number, varDouble, patternWithoutDelimiter, date, binary, varFloat, integer, int32, int64, varString, password, callback, dateTime);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestEndpointParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -2235,6 +2424,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestEnumParametersDefaultImplementation(apiResponseLocalVar, enumHeaderStringArray, enumQueryStringArray, enumQueryDouble, enumQueryInteger, enumFormStringArray, enumHeaderString, enumQueryString, enumFormString);
|
AfterTestEnumParametersDefaultImplementation(apiResponseLocalVar, enumHeaderStringArray, enumQueryStringArray, enumQueryDouble, enumQueryInteger, enumFormStringArray, enumHeaderString, enumQueryString, enumFormString);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestEnumParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2401,6 +2592,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestGroupParametersDefaultImplementation(apiResponseLocalVar, requiredBooleanGroup, requiredStringGroup, requiredInt64Group, booleanGroup, stringGroup, int64Group);
|
AfterTestGroupParametersDefaultImplementation(apiResponseLocalVar, requiredBooleanGroup, requiredStringGroup, requiredInt64Group, booleanGroup, stringGroup, int64Group);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestGroupParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -2541,6 +2734,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestInlineAdditionalPropertiesDefaultImplementation(apiResponseLocalVar, requestBody);
|
AfterTestInlineAdditionalPropertiesDefaultImplementation(apiResponseLocalVar, requestBody);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestInlineAdditionalProperties(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2695,6 +2890,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestJsonFormDataDefaultImplementation(apiResponseLocalVar, param, param2);
|
AfterTestJsonFormDataDefaultImplementation(apiResponseLocalVar, param, param2);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestJsonFormData(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2908,6 +3105,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestQueryParameterCollectionFormatDefaultImplementation(apiResponseLocalVar, pipe, ioutil, http, url, context, requiredNotNullable, requiredNullable, notRequiredNotNullable, notRequiredNullable);
|
AfterTestQueryParameterCollectionFormatDefaultImplementation(apiResponseLocalVar, pipe, ioutil, http, url, context, requiredNotNullable, requiredNullable, notRequiredNotNullable, notRequiredNullable);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestQueryParameterCollectionFormat(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFakeClassnameTags123Api : IApi
|
public interface IFakeClassnameTags123Api : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
FakeClassnameTags123ApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// To test class name in snake case
|
/// To test class name in snake case
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -56,6 +62,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class FakeClassnameTags123ApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>>? OnTestClassname;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestClassname(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestClassname?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -73,6 +96,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public FakeClassnameTags123ApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -102,7 +130,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="FakeClassnameTags123Api"/> class.
|
/// Initializes a new instance of the <see cref="FakeClassnameTags123Api"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FakeClassnameTags123Api(ILogger<FakeClassnameTags123Api> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public FakeClassnameTags123Api(ILogger<FakeClassnameTags123Api> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, FakeClassnameTags123ApiEvents fakeClassnameTags123ApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -112,6 +140,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = fakeClassnameTags123ApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -264,6 +293,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestClassnameDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterTestClassnameDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestClassname(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IPetApi : IApi
|
public interface IPetApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
PetApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Add a new pet to the store
|
/// Add a new pet to the store
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -254,6 +260,103 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class PetApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnAddPet;
|
||||||
|
|
||||||
|
internal void ExecuteOnAddPet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnAddPet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnDeletePet;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeletePet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeletePet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Pet>>>? OnFindPetsByStatus;
|
||||||
|
|
||||||
|
internal void ExecuteOnFindPetsByStatus(ApiResponse<List<Pet>> apiResponse)
|
||||||
|
{
|
||||||
|
OnFindPetsByStatus?.Invoke(this, new ApiResponseEventArgs<List<Pet>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Pet>>>? OnFindPetsByTags;
|
||||||
|
|
||||||
|
internal void ExecuteOnFindPetsByTags(ApiResponse<List<Pet>> apiResponse)
|
||||||
|
{
|
||||||
|
OnFindPetsByTags?.Invoke(this, new ApiResponseEventArgs<List<Pet>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Pet>>? OnGetPetById;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetPetById(ApiResponse<Pet> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetPetById?.Invoke(this, new ApiResponseEventArgs<Pet>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnUpdatePet;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdatePet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdatePet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnUpdatePetWithForm;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdatePetWithForm(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdatePetWithForm?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ApiResponse>>? OnUploadFile;
|
||||||
|
|
||||||
|
internal void ExecuteOnUploadFile(ApiResponse<ApiResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnUploadFile?.Invoke(this, new ApiResponseEventArgs<ApiResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ApiResponse>>? OnUploadFileWithRequiredFile;
|
||||||
|
|
||||||
|
internal void ExecuteOnUploadFileWithRequiredFile(ApiResponse<ApiResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnUploadFileWithRequiredFile?.Invoke(this, new ApiResponseEventArgs<ApiResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -271,6 +374,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public PetApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -300,7 +408,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="PetApi"/> class.
|
/// Initializes a new instance of the <see cref="PetApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public PetApi(ILogger<PetApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public PetApi(ILogger<PetApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, PetApiEvents petApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -310,6 +418,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = petApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -461,6 +570,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterAddPetDefaultImplementation(apiResponseLocalVar, pet);
|
AfterAddPetDefaultImplementation(apiResponseLocalVar, pet);
|
||||||
|
|
||||||
|
Events.ExecuteOnAddPet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -610,6 +721,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeletePetDefaultImplementation(apiResponseLocalVar, petId, apiKey);
|
AfterDeletePetDefaultImplementation(apiResponseLocalVar, petId, apiKey);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeletePet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -771,6 +884,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFindPetsByStatusDefaultImplementation(apiResponseLocalVar, status);
|
AfterFindPetsByStatusDefaultImplementation(apiResponseLocalVar, status);
|
||||||
|
|
||||||
|
Events.ExecuteOnFindPetsByStatus(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -936,6 +1051,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFindPetsByTagsDefaultImplementation(apiResponseLocalVar, tags);
|
AfterFindPetsByTagsDefaultImplementation(apiResponseLocalVar, tags);
|
||||||
|
|
||||||
|
Events.ExecuteOnFindPetsByTags(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1073,6 +1190,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetPetByIdDefaultImplementation(apiResponseLocalVar, petId);
|
AfterGetPetByIdDefaultImplementation(apiResponseLocalVar, petId);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetPetById(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1232,6 +1351,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdatePetDefaultImplementation(apiResponseLocalVar, pet);
|
AfterUpdatePetDefaultImplementation(apiResponseLocalVar, pet);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdatePet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1409,6 +1530,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdatePetWithFormDefaultImplementation(apiResponseLocalVar, petId, name, status);
|
AfterUpdatePetWithFormDefaultImplementation(apiResponseLocalVar, petId, name, status);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdatePetWithForm(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1591,6 +1714,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUploadFileDefaultImplementation(apiResponseLocalVar, petId, file, additionalMetadata);
|
AfterUploadFileDefaultImplementation(apiResponseLocalVar, petId, file, additionalMetadata);
|
||||||
|
|
||||||
|
Events.ExecuteOnUploadFile(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1773,6 +1898,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUploadFileWithRequiredFileDefaultImplementation(apiResponseLocalVar, requiredFile, petId, additionalMetadata);
|
AfterUploadFileWithRequiredFileDefaultImplementation(apiResponseLocalVar, requiredFile, petId, additionalMetadata);
|
||||||
|
|
||||||
|
Events.ExecuteOnUploadFileWithRequiredFile(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IStoreApi : IApi
|
public interface IStoreApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
StoreApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Delete purchase order by ID
|
/// Delete purchase order by ID
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -123,6 +129,53 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class StoreApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnDeleteOrder;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeleteOrder(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeleteOrder?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Dictionary<string, int>>>? OnGetInventory;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetInventory(ApiResponse<Dictionary<string, int>> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetInventory?.Invoke(this, new ApiResponseEventArgs<Dictionary<string, int>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Order>>? OnGetOrderById;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetOrderById(ApiResponse<Order> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetOrderById?.Invoke(this, new ApiResponseEventArgs<Order>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Order>>? OnPlaceOrder;
|
||||||
|
|
||||||
|
internal void ExecuteOnPlaceOrder(ApiResponse<Order> apiResponse)
|
||||||
|
{
|
||||||
|
OnPlaceOrder?.Invoke(this, new ApiResponseEventArgs<Order>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -140,6 +193,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public StoreApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -169,7 +227,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="StoreApi"/> class.
|
/// Initializes a new instance of the <see cref="StoreApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public StoreApi(ILogger<StoreApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public StoreApi(ILogger<StoreApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, StoreApiEvents storeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -179,6 +237,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = storeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -299,6 +358,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeleteOrderDefaultImplementation(apiResponseLocalVar, orderId);
|
AfterDeleteOrderDefaultImplementation(apiResponseLocalVar, orderId);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeleteOrder(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -416,6 +477,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetInventoryDefaultImplementation(apiResponseLocalVar);
|
AfterGetInventoryDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetInventory(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -541,6 +604,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetOrderByIdDefaultImplementation(apiResponseLocalVar, orderId);
|
AfterGetOrderByIdDefaultImplementation(apiResponseLocalVar, orderId);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetOrderById(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -687,6 +752,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterPlaceOrderDefaultImplementation(apiResponseLocalVar, order);
|
AfterPlaceOrderDefaultImplementation(apiResponseLocalVar, order);
|
||||||
|
|
||||||
|
Events.ExecuteOnPlaceOrder(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IUserApi : IApi
|
public interface IUserApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
UserApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create user
|
/// Create user
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -219,6 +225,93 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class UserApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnCreateUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnCreateUsersWithArrayInput;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUsersWithArrayInput(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUsersWithArrayInput?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnCreateUsersWithListInput;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUsersWithListInput(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUsersWithListInput?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnDeleteUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeleteUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeleteUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<User>>? OnGetUserByName;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetUserByName(ApiResponse<User> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetUserByName?.Invoke(this, new ApiResponseEventArgs<User>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<string>>? OnLoginUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnLoginUser(ApiResponse<string> apiResponse)
|
||||||
|
{
|
||||||
|
OnLoginUser?.Invoke(this, new ApiResponseEventArgs<string>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnLogoutUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnLogoutUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnLogoutUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>>? OnUpdateUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdateUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdateUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -236,6 +329,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public UserApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -265,7 +363,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="UserApi"/> class.
|
/// Initializes a new instance of the <see cref="UserApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public UserApi(ILogger<UserApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public UserApi(ILogger<UserApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, UserApiEvents userApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -275,6 +373,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = userApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -407,6 +506,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUserDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUserDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -543,6 +644,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUsersWithArrayInputDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUsersWithArrayInputDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUsersWithArrayInput(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -679,6 +782,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUsersWithListInputDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUsersWithListInputDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUsersWithListInput(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -803,6 +908,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeleteUserDefaultImplementation(apiResponseLocalVar, username);
|
AfterDeleteUserDefaultImplementation(apiResponseLocalVar, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeleteUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -937,6 +1044,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetUserByNameDefaultImplementation(apiResponseLocalVar, username);
|
AfterGetUserByNameDefaultImplementation(apiResponseLocalVar, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetUserByName(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1087,6 +1196,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterLoginUserDefaultImplementation(apiResponseLocalVar, username, password);
|
AfterLoginUserDefaultImplementation(apiResponseLocalVar, username, password);
|
||||||
|
|
||||||
|
Events.ExecuteOnLoginUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1187,6 +1298,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterLogoutUserDefaultImplementation(apiResponseLocalVar);
|
AfterLogoutUserDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnLogoutUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1334,6 +1447,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdateUserDefaultImplementation(apiResponseLocalVar, user, username);
|
AfterUpdateUserDefaultImplementation(apiResponseLocalVar, user, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdateUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,58 +1,24 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace Org.OpenAPITools.Client
|
namespace Org.OpenAPITools.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Useful for tracking server health.
|
/// Useful for tracking server health
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ApiResponseEventArgs : EventArgs
|
public class ApiResponseEventArgs<T> : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the request was sent.
|
/// The ApiResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime RequestedAt { get; }
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the response was received.
|
/// The ApiResponseEventArgs
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime ReceivedAt { get; }
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
{
|
||||||
RequestedAt = requestedAt;
|
ApiResponse = apiResponse;
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -134,12 +134,19 @@ namespace Org.OpenAPITools.Client
|
|||||||
_jsonOptions.Converters.Add(new ZeroBasedEnumClassJsonConverter());
|
_jsonOptions.Converters.Add(new ZeroBasedEnumClassJsonConverter());
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();
|
_services.AddSingleton<IApiFactory, ApiFactory>();
|
||||||
|
_services.AddSingleton<AnotherFakeApiEvents>();
|
||||||
_services.AddTransient<IAnotherFakeApi, AnotherFakeApi>();
|
_services.AddTransient<IAnotherFakeApi, AnotherFakeApi>();
|
||||||
|
_services.AddSingleton<DefaultApiEvents>();
|
||||||
_services.AddTransient<IDefaultApi, DefaultApi>();
|
_services.AddTransient<IDefaultApi, DefaultApi>();
|
||||||
|
_services.AddSingleton<FakeApiEvents>();
|
||||||
_services.AddTransient<IFakeApi, FakeApi>();
|
_services.AddTransient<IFakeApi, FakeApi>();
|
||||||
|
_services.AddSingleton<FakeClassnameTags123ApiEvents>();
|
||||||
_services.AddTransient<IFakeClassnameTags123Api, FakeClassnameTags123Api>();
|
_services.AddTransient<IFakeClassnameTags123Api, FakeClassnameTags123Api>();
|
||||||
|
_services.AddSingleton<PetApiEvents>();
|
||||||
_services.AddTransient<IPetApi, PetApi>();
|
_services.AddTransient<IPetApi, PetApi>();
|
||||||
|
_services.AddSingleton<StoreApiEvents>();
|
||||||
_services.AddTransient<IStoreApi, StoreApi>();
|
_services.AddTransient<IStoreApi, StoreApi>();
|
||||||
|
_services.AddSingleton<UserApiEvents>();
|
||||||
_services.AddTransient<IUserApi, UserApi>();
|
_services.AddTransient<IUserApi, UserApi>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IAnotherFakeApi : IApi
|
public interface IAnotherFakeApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
AnotherFakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// To test special tags
|
/// To test special tags
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -54,6 +60,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class AnotherFakeApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>> OnCall123TestSpecialTags;
|
||||||
|
|
||||||
|
internal void ExecuteOnCall123TestSpecialTags(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnCall123TestSpecialTags?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -71,6 +94,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public AnotherFakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -100,7 +128,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="AnotherFakeApi"/> class.
|
/// Initializes a new instance of the <see cref="AnotherFakeApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public AnotherFakeApi(ILogger<AnotherFakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public AnotherFakeApi(ILogger<AnotherFakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, AnotherFakeApiEvents anotherFakeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -110,6 +138,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = anotherFakeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -251,6 +280,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCall123TestSpecialTagsDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterCall123TestSpecialTagsDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnCall123TestSpecialTags(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDefaultApi : IApi
|
public interface IDefaultApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -96,6 +102,43 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class DefaultApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<FooGetDefaultResponse>> OnFooGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnFooGet(ApiResponse<FooGetDefaultResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnFooGet?.Invoke(this, new ApiResponseEventArgs<FooGetDefaultResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnGetCountry;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetCountry(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetCountry?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Guid>>> OnHello;
|
||||||
|
|
||||||
|
internal void ExecuteOnHello(ApiResponse<List<Guid>> apiResponse)
|
||||||
|
{
|
||||||
|
OnHello?.Invoke(this, new ApiResponseEventArgs<List<Guid>>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -113,6 +156,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -142,7 +190,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -152,6 +200,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = defaultApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -257,6 +306,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFooGetDefaultImplementation(apiResponseLocalVar);
|
AfterFooGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnFooGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -399,6 +450,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetCountryDefaultImplementation(apiResponseLocalVar, country);
|
AfterGetCountryDefaultImplementation(apiResponseLocalVar, country);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetCountry(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -508,6 +561,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterHelloDefaultImplementation(apiResponseLocalVar);
|
AfterHelloDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnHello(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFakeApi : IApi
|
public interface IFakeApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
FakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Health check endpoint
|
/// Health check endpoint
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -444,6 +450,163 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class FakeApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<HealthCheckResult>> OnFakeHealthGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeHealthGet(ApiResponse<HealthCheckResult> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeHealthGet?.Invoke(this, new ApiResponseEventArgs<HealthCheckResult>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<bool>> OnFakeOuterBooleanSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterBooleanSerialize(ApiResponse<bool> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterBooleanSerialize?.Invoke(this, new ApiResponseEventArgs<bool>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<OuterComposite>> OnFakeOuterCompositeSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterCompositeSerialize(ApiResponse<OuterComposite> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterCompositeSerialize?.Invoke(this, new ApiResponseEventArgs<OuterComposite>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<decimal>> OnFakeOuterNumberSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterNumberSerialize(ApiResponse<decimal> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterNumberSerialize?.Invoke(this, new ApiResponseEventArgs<decimal>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<string>> OnFakeOuterStringSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterStringSerialize(ApiResponse<string> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterStringSerialize?.Invoke(this, new ApiResponseEventArgs<string>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<OuterEnum>>> OnGetArrayOfEnums;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetArrayOfEnums(ApiResponse<List<OuterEnum>> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetArrayOfEnums?.Invoke(this, new ApiResponseEventArgs<List<OuterEnum>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestBodyWithFileSchema;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestBodyWithFileSchema(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestBodyWithFileSchema?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestBodyWithQueryParams;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestBodyWithQueryParams(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestBodyWithQueryParams?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>> OnTestClientModel;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestClientModel(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestClientModel?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestEndpointParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestEndpointParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestEndpointParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestEnumParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestEnumParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestEnumParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestGroupParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestGroupParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestGroupParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestInlineAdditionalProperties;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestInlineAdditionalProperties(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestInlineAdditionalProperties?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestJsonFormData;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestJsonFormData(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestJsonFormData?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestQueryParameterCollectionFormat;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestQueryParameterCollectionFormat(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestQueryParameterCollectionFormat?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -461,6 +624,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public FakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -490,7 +658,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="FakeApi"/> class.
|
/// Initializes a new instance of the <see cref="FakeApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FakeApi(ILogger<FakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public FakeApi(ILogger<FakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, FakeApiEvents fakeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -500,6 +668,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = fakeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -605,6 +774,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeHealthGetDefaultImplementation(apiResponseLocalVar);
|
AfterFakeHealthGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeHealthGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -738,6 +909,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterBooleanSerializeDefaultImplementation(apiResponseLocalVar, body);
|
AfterFakeOuterBooleanSerializeDefaultImplementation(apiResponseLocalVar, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterBooleanSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -884,6 +1057,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterCompositeSerializeDefaultImplementation(apiResponseLocalVar, outerComposite);
|
AfterFakeOuterCompositeSerializeDefaultImplementation(apiResponseLocalVar, outerComposite);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterCompositeSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1017,6 +1192,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterNumberSerializeDefaultImplementation(apiResponseLocalVar, body);
|
AfterFakeOuterNumberSerializeDefaultImplementation(apiResponseLocalVar, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterNumberSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1175,6 +1352,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterStringSerializeDefaultImplementation(apiResponseLocalVar, requiredStringUuid, body);
|
AfterFakeOuterStringSerializeDefaultImplementation(apiResponseLocalVar, requiredStringUuid, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterStringSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1284,6 +1463,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetArrayOfEnumsDefaultImplementation(apiResponseLocalVar);
|
AfterGetArrayOfEnumsDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetArrayOfEnums(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1420,6 +1601,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestBodyWithFileSchemaDefaultImplementation(apiResponseLocalVar, fileSchemaTestClass);
|
AfterTestBodyWithFileSchemaDefaultImplementation(apiResponseLocalVar, fileSchemaTestClass);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestBodyWithFileSchema(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1572,6 +1755,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestBodyWithQueryParamsDefaultImplementation(apiResponseLocalVar, user, query);
|
AfterTestBodyWithQueryParamsDefaultImplementation(apiResponseLocalVar, user, query);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestBodyWithQueryParams(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1717,6 +1902,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestClientModelDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterTestClientModelDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestClientModel(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2001,6 +2188,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestEndpointParametersDefaultImplementation(apiResponseLocalVar, varByte, number, varDouble, patternWithoutDelimiter, date, binary, varFloat, integer, int32, int64, varString, password, callback, dateTime);
|
AfterTestEndpointParametersDefaultImplementation(apiResponseLocalVar, varByte, number, varDouble, patternWithoutDelimiter, date, binary, varFloat, integer, int32, int64, varString, password, callback, dateTime);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestEndpointParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -2233,6 +2422,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestEnumParametersDefaultImplementation(apiResponseLocalVar, enumHeaderStringArray, enumQueryStringArray, enumQueryDouble, enumQueryInteger, enumFormStringArray, enumHeaderString, enumQueryString, enumFormString);
|
AfterTestEnumParametersDefaultImplementation(apiResponseLocalVar, enumHeaderStringArray, enumQueryStringArray, enumQueryDouble, enumQueryInteger, enumFormStringArray, enumHeaderString, enumQueryString, enumFormString);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestEnumParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2399,6 +2590,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestGroupParametersDefaultImplementation(apiResponseLocalVar, requiredBooleanGroup, requiredStringGroup, requiredInt64Group, booleanGroup, stringGroup, int64Group);
|
AfterTestGroupParametersDefaultImplementation(apiResponseLocalVar, requiredBooleanGroup, requiredStringGroup, requiredInt64Group, booleanGroup, stringGroup, int64Group);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestGroupParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -2539,6 +2732,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestInlineAdditionalPropertiesDefaultImplementation(apiResponseLocalVar, requestBody);
|
AfterTestInlineAdditionalPropertiesDefaultImplementation(apiResponseLocalVar, requestBody);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestInlineAdditionalProperties(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2693,6 +2888,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestJsonFormDataDefaultImplementation(apiResponseLocalVar, param, param2);
|
AfterTestJsonFormDataDefaultImplementation(apiResponseLocalVar, param, param2);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestJsonFormData(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2906,6 +3103,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestQueryParameterCollectionFormatDefaultImplementation(apiResponseLocalVar, pipe, ioutil, http, url, context, requiredNotNullable, requiredNullable, notRequiredNotNullable, notRequiredNullable);
|
AfterTestQueryParameterCollectionFormatDefaultImplementation(apiResponseLocalVar, pipe, ioutil, http, url, context, requiredNotNullable, requiredNullable, notRequiredNotNullable, notRequiredNullable);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestQueryParameterCollectionFormat(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFakeClassnameTags123Api : IApi
|
public interface IFakeClassnameTags123Api : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
FakeClassnameTags123ApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// To test class name in snake case
|
/// To test class name in snake case
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -54,6 +60,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class FakeClassnameTags123ApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>> OnTestClassname;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestClassname(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestClassname?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -71,6 +94,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public FakeClassnameTags123ApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -100,7 +128,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="FakeClassnameTags123Api"/> class.
|
/// Initializes a new instance of the <see cref="FakeClassnameTags123Api"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FakeClassnameTags123Api(ILogger<FakeClassnameTags123Api> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public FakeClassnameTags123Api(ILogger<FakeClassnameTags123Api> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, FakeClassnameTags123ApiEvents fakeClassnameTags123ApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -110,6 +138,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = fakeClassnameTags123ApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -262,6 +291,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestClassnameDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterTestClassnameDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestClassname(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IPetApi : IApi
|
public interface IPetApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
PetApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Add a new pet to the store
|
/// Add a new pet to the store
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -252,6 +258,103 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class PetApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnAddPet;
|
||||||
|
|
||||||
|
internal void ExecuteOnAddPet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnAddPet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnDeletePet;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeletePet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeletePet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Pet>>> OnFindPetsByStatus;
|
||||||
|
|
||||||
|
internal void ExecuteOnFindPetsByStatus(ApiResponse<List<Pet>> apiResponse)
|
||||||
|
{
|
||||||
|
OnFindPetsByStatus?.Invoke(this, new ApiResponseEventArgs<List<Pet>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Pet>>> OnFindPetsByTags;
|
||||||
|
|
||||||
|
internal void ExecuteOnFindPetsByTags(ApiResponse<List<Pet>> apiResponse)
|
||||||
|
{
|
||||||
|
OnFindPetsByTags?.Invoke(this, new ApiResponseEventArgs<List<Pet>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Pet>> OnGetPetById;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetPetById(ApiResponse<Pet> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetPetById?.Invoke(this, new ApiResponseEventArgs<Pet>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnUpdatePet;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdatePet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdatePet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnUpdatePetWithForm;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdatePetWithForm(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdatePetWithForm?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ApiResponse>> OnUploadFile;
|
||||||
|
|
||||||
|
internal void ExecuteOnUploadFile(ApiResponse<ApiResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnUploadFile?.Invoke(this, new ApiResponseEventArgs<ApiResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ApiResponse>> OnUploadFileWithRequiredFile;
|
||||||
|
|
||||||
|
internal void ExecuteOnUploadFileWithRequiredFile(ApiResponse<ApiResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnUploadFileWithRequiredFile?.Invoke(this, new ApiResponseEventArgs<ApiResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -269,6 +372,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public PetApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -298,7 +406,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="PetApi"/> class.
|
/// Initializes a new instance of the <see cref="PetApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public PetApi(ILogger<PetApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public PetApi(ILogger<PetApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, PetApiEvents petApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -308,6 +416,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = petApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -459,6 +568,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterAddPetDefaultImplementation(apiResponseLocalVar, pet);
|
AfterAddPetDefaultImplementation(apiResponseLocalVar, pet);
|
||||||
|
|
||||||
|
Events.ExecuteOnAddPet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -608,6 +719,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeletePetDefaultImplementation(apiResponseLocalVar, petId, apiKey);
|
AfterDeletePetDefaultImplementation(apiResponseLocalVar, petId, apiKey);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeletePet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -769,6 +882,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFindPetsByStatusDefaultImplementation(apiResponseLocalVar, status);
|
AfterFindPetsByStatusDefaultImplementation(apiResponseLocalVar, status);
|
||||||
|
|
||||||
|
Events.ExecuteOnFindPetsByStatus(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -934,6 +1049,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFindPetsByTagsDefaultImplementation(apiResponseLocalVar, tags);
|
AfterFindPetsByTagsDefaultImplementation(apiResponseLocalVar, tags);
|
||||||
|
|
||||||
|
Events.ExecuteOnFindPetsByTags(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1071,6 +1188,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetPetByIdDefaultImplementation(apiResponseLocalVar, petId);
|
AfterGetPetByIdDefaultImplementation(apiResponseLocalVar, petId);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetPetById(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1230,6 +1349,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdatePetDefaultImplementation(apiResponseLocalVar, pet);
|
AfterUpdatePetDefaultImplementation(apiResponseLocalVar, pet);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdatePet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1407,6 +1528,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdatePetWithFormDefaultImplementation(apiResponseLocalVar, petId, name, status);
|
AfterUpdatePetWithFormDefaultImplementation(apiResponseLocalVar, petId, name, status);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdatePetWithForm(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1589,6 +1712,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUploadFileDefaultImplementation(apiResponseLocalVar, petId, file, additionalMetadata);
|
AfterUploadFileDefaultImplementation(apiResponseLocalVar, petId, file, additionalMetadata);
|
||||||
|
|
||||||
|
Events.ExecuteOnUploadFile(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1771,6 +1896,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUploadFileWithRequiredFileDefaultImplementation(apiResponseLocalVar, requiredFile, petId, additionalMetadata);
|
AfterUploadFileWithRequiredFileDefaultImplementation(apiResponseLocalVar, requiredFile, petId, additionalMetadata);
|
||||||
|
|
||||||
|
Events.ExecuteOnUploadFileWithRequiredFile(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IStoreApi : IApi
|
public interface IStoreApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
StoreApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Delete purchase order by ID
|
/// Delete purchase order by ID
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -121,6 +127,53 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class StoreApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnDeleteOrder;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeleteOrder(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeleteOrder?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Dictionary<string, int>>> OnGetInventory;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetInventory(ApiResponse<Dictionary<string, int>> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetInventory?.Invoke(this, new ApiResponseEventArgs<Dictionary<string, int>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Order>> OnGetOrderById;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetOrderById(ApiResponse<Order> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetOrderById?.Invoke(this, new ApiResponseEventArgs<Order>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Order>> OnPlaceOrder;
|
||||||
|
|
||||||
|
internal void ExecuteOnPlaceOrder(ApiResponse<Order> apiResponse)
|
||||||
|
{
|
||||||
|
OnPlaceOrder?.Invoke(this, new ApiResponseEventArgs<Order>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -138,6 +191,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public StoreApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -167,7 +225,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="StoreApi"/> class.
|
/// Initializes a new instance of the <see cref="StoreApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public StoreApi(ILogger<StoreApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public StoreApi(ILogger<StoreApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, StoreApiEvents storeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -177,6 +235,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = storeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -297,6 +356,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeleteOrderDefaultImplementation(apiResponseLocalVar, orderId);
|
AfterDeleteOrderDefaultImplementation(apiResponseLocalVar, orderId);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeleteOrder(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -414,6 +475,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetInventoryDefaultImplementation(apiResponseLocalVar);
|
AfterGetInventoryDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetInventory(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -539,6 +602,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetOrderByIdDefaultImplementation(apiResponseLocalVar, orderId);
|
AfterGetOrderByIdDefaultImplementation(apiResponseLocalVar, orderId);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetOrderById(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -685,6 +750,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterPlaceOrderDefaultImplementation(apiResponseLocalVar, order);
|
AfterPlaceOrderDefaultImplementation(apiResponseLocalVar, order);
|
||||||
|
|
||||||
|
Events.ExecuteOnPlaceOrder(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IUserApi : IApi
|
public interface IUserApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
UserApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create user
|
/// Create user
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -217,6 +223,93 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class UserApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnCreateUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnCreateUsersWithArrayInput;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUsersWithArrayInput(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUsersWithArrayInput?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnCreateUsersWithListInput;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUsersWithListInput(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUsersWithListInput?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnDeleteUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeleteUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeleteUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<User>> OnGetUserByName;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetUserByName(ApiResponse<User> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetUserByName?.Invoke(this, new ApiResponseEventArgs<User>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<string>> OnLoginUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnLoginUser(ApiResponse<string> apiResponse)
|
||||||
|
{
|
||||||
|
OnLoginUser?.Invoke(this, new ApiResponseEventArgs<string>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnLogoutUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnLogoutUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnLogoutUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnUpdateUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdateUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdateUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -234,6 +327,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public UserApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -263,7 +361,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="UserApi"/> class.
|
/// Initializes a new instance of the <see cref="UserApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public UserApi(ILogger<UserApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public UserApi(ILogger<UserApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, UserApiEvents userApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -273,6 +371,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = userApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -405,6 +504,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUserDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUserDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -541,6 +642,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUsersWithArrayInputDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUsersWithArrayInputDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUsersWithArrayInput(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -677,6 +780,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUsersWithListInputDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUsersWithListInputDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUsersWithListInput(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -801,6 +906,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeleteUserDefaultImplementation(apiResponseLocalVar, username);
|
AfterDeleteUserDefaultImplementation(apiResponseLocalVar, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeleteUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -935,6 +1042,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetUserByNameDefaultImplementation(apiResponseLocalVar, username);
|
AfterGetUserByNameDefaultImplementation(apiResponseLocalVar, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetUserByName(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1085,6 +1194,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterLoginUserDefaultImplementation(apiResponseLocalVar, username, password);
|
AfterLoginUserDefaultImplementation(apiResponseLocalVar, username, password);
|
||||||
|
|
||||||
|
Events.ExecuteOnLoginUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1185,6 +1296,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterLogoutUserDefaultImplementation(apiResponseLocalVar);
|
AfterLogoutUserDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnLogoutUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1332,6 +1445,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdateUserDefaultImplementation(apiResponseLocalVar, user, username);
|
AfterUpdateUserDefaultImplementation(apiResponseLocalVar, user, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdateUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,58 +1,24 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace Org.OpenAPITools.Client
|
namespace Org.OpenAPITools.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Useful for tracking server health.
|
/// Useful for tracking server health
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ApiResponseEventArgs : EventArgs
|
public class ApiResponseEventArgs<T> : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the request was sent.
|
/// The ApiResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime RequestedAt { get; }
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the response was received.
|
/// The ApiResponseEventArgs
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime ReceivedAt { get; }
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
{
|
||||||
RequestedAt = requestedAt;
|
ApiResponse = apiResponse;
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -132,12 +132,19 @@ namespace Org.OpenAPITools.Client
|
|||||||
_jsonOptions.Converters.Add(new ZeroBasedEnumClassJsonConverter());
|
_jsonOptions.Converters.Add(new ZeroBasedEnumClassJsonConverter());
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();
|
_services.AddSingleton<IApiFactory, ApiFactory>();
|
||||||
|
_services.AddSingleton<AnotherFakeApiEvents>();
|
||||||
_services.AddTransient<IAnotherFakeApi, AnotherFakeApi>();
|
_services.AddTransient<IAnotherFakeApi, AnotherFakeApi>();
|
||||||
|
_services.AddSingleton<DefaultApiEvents>();
|
||||||
_services.AddTransient<IDefaultApi, DefaultApi>();
|
_services.AddTransient<IDefaultApi, DefaultApi>();
|
||||||
|
_services.AddSingleton<FakeApiEvents>();
|
||||||
_services.AddTransient<IFakeApi, FakeApi>();
|
_services.AddTransient<IFakeApi, FakeApi>();
|
||||||
|
_services.AddSingleton<FakeClassnameTags123ApiEvents>();
|
||||||
_services.AddTransient<IFakeClassnameTags123Api, FakeClassnameTags123Api>();
|
_services.AddTransient<IFakeClassnameTags123Api, FakeClassnameTags123Api>();
|
||||||
|
_services.AddSingleton<PetApiEvents>();
|
||||||
_services.AddTransient<IPetApi, PetApi>();
|
_services.AddTransient<IPetApi, PetApi>();
|
||||||
|
_services.AddSingleton<StoreApiEvents>();
|
||||||
_services.AddTransient<IStoreApi, StoreApi>();
|
_services.AddTransient<IStoreApi, StoreApi>();
|
||||||
|
_services.AddSingleton<UserApiEvents>();
|
||||||
_services.AddTransient<IUserApi, UserApi>();
|
_services.AddTransient<IUserApi, UserApi>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDefaultApi : IApi
|
public interface IDefaultApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -56,6 +62,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class DefaultApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Person>>? OnList;
|
||||||
|
|
||||||
|
internal void ExecuteOnList(ApiResponse<Person> apiResponse)
|
||||||
|
{
|
||||||
|
OnList?.Invoke(this, new ApiResponseEventArgs<Person>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -73,15 +96,21 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider)
|
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents)
|
||||||
{
|
{
|
||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = defaultApiEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
partial void FormatList(ref string personId);
|
partial void FormatList(ref string personId);
|
||||||
@ -206,6 +235,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterListDefaultImplementation(apiResponseLocalVar, personId);
|
AfterListDefaultImplementation(apiResponseLocalVar, personId);
|
||||||
|
|
||||||
|
Events.ExecuteOnList(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,58 +1,24 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace Org.OpenAPITools.Client
|
namespace Org.OpenAPITools.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Useful for tracking server health.
|
/// Useful for tracking server health
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ApiResponseEventArgs : EventArgs
|
public class ApiResponseEventArgs<T> : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the request was sent.
|
/// The ApiResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime RequestedAt { get; }
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the response was received.
|
/// The ApiResponseEventArgs
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime ReceivedAt { get; }
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
{
|
||||||
RequestedAt = requestedAt;
|
ApiResponse = apiResponse;
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,7 @@ namespace Org.OpenAPITools.Client
|
|||||||
_jsonOptions.Converters.Add(new PersonJsonConverter());
|
_jsonOptions.Converters.Add(new PersonJsonConverter());
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();
|
_services.AddSingleton<IApiFactory, ApiFactory>();
|
||||||
|
_services.AddSingleton<DefaultApiEvents>();
|
||||||
_services.AddTransient<IDefaultApi, DefaultApi>();
|
_services.AddTransient<IDefaultApi, DefaultApi>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDefaultApi : IApi
|
public interface IDefaultApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -54,6 +60,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class DefaultApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Fruit>>? OnRootGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnRootGet(ApiResponse<Fruit> apiResponse)
|
||||||
|
{
|
||||||
|
OnRootGet?.Invoke(this, new ApiResponseEventArgs<Fruit>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -71,15 +94,21 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider)
|
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents)
|
||||||
{
|
{
|
||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = defaultApiEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -180,6 +209,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterRootGetDefaultImplementation(apiResponseLocalVar);
|
AfterRootGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnRootGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,58 +1,24 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace Org.OpenAPITools.Client
|
namespace Org.OpenAPITools.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Useful for tracking server health.
|
/// Useful for tracking server health
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ApiResponseEventArgs : EventArgs
|
public class ApiResponseEventArgs<T> : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the request was sent.
|
/// The ApiResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime RequestedAt { get; }
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the response was received.
|
/// The ApiResponseEventArgs
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime ReceivedAt { get; }
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
{
|
||||||
RequestedAt = requestedAt;
|
ApiResponse = apiResponse;
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,7 @@ namespace Org.OpenAPITools.Client
|
|||||||
_jsonOptions.Converters.Add(new FruitJsonConverter());
|
_jsonOptions.Converters.Add(new FruitJsonConverter());
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();
|
_services.AddSingleton<IApiFactory, ApiFactory>();
|
||||||
|
_services.AddSingleton<DefaultApiEvents>();
|
||||||
_services.AddTransient<IDefaultApi, DefaultApi>();
|
_services.AddTransient<IDefaultApi, DefaultApi>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -29,6 +30,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDefaultApi : IApi
|
public interface IDefaultApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -54,6 +60,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class DefaultApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Fruit>>? OnRootGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnRootGet(ApiResponse<Fruit> apiResponse)
|
||||||
|
{
|
||||||
|
OnRootGet?.Invoke(this, new ApiResponseEventArgs<Fruit>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -71,15 +94,21 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider)
|
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents)
|
||||||
{
|
{
|
||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = defaultApiEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -180,6 +209,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterRootGetDefaultImplementation(apiResponseLocalVar);
|
AfterRootGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnRootGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,58 +1,24 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace Org.OpenAPITools.Client
|
namespace Org.OpenAPITools.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Useful for tracking server health.
|
/// Useful for tracking server health
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ApiResponseEventArgs : EventArgs
|
public class ApiResponseEventArgs<T> : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the request was sent.
|
/// The ApiResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime RequestedAt { get; }
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the response was received.
|
/// The ApiResponseEventArgs
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime ReceivedAt { get; }
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
{
|
||||||
RequestedAt = requestedAt;
|
ApiResponse = apiResponse;
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,7 @@ namespace Org.OpenAPITools.Client
|
|||||||
_jsonOptions.Converters.Add(new FruitJsonConverter());
|
_jsonOptions.Converters.Add(new FruitJsonConverter());
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();
|
_services.AddSingleton<IApiFactory, ApiFactory>();
|
||||||
|
_services.AddSingleton<DefaultApiEvents>();
|
||||||
_services.AddTransient<IDefaultApi, DefaultApi>();
|
_services.AddTransient<IDefaultApi, DefaultApi>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IAnotherFakeApi : IApi
|
public interface IAnotherFakeApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
AnotherFakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// To test special tags
|
/// To test special tags
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -54,6 +60,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class AnotherFakeApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>> OnCall123TestSpecialTags;
|
||||||
|
|
||||||
|
internal void ExecuteOnCall123TestSpecialTags(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnCall123TestSpecialTags?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -71,6 +94,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public AnotherFakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -100,7 +128,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="AnotherFakeApi"/> class.
|
/// Initializes a new instance of the <see cref="AnotherFakeApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public AnotherFakeApi(ILogger<AnotherFakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public AnotherFakeApi(ILogger<AnotherFakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, AnotherFakeApiEvents anotherFakeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -110,6 +138,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = anotherFakeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -250,6 +279,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCall123TestSpecialTagsDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterCall123TestSpecialTagsDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnCall123TestSpecialTags(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IDefaultApi : IApi
|
public interface IDefaultApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -96,6 +102,43 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class DefaultApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<FooGetDefaultResponse>> OnFooGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnFooGet(ApiResponse<FooGetDefaultResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnFooGet?.Invoke(this, new ApiResponseEventArgs<FooGetDefaultResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnGetCountry;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetCountry(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetCountry?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Guid>>> OnHello;
|
||||||
|
|
||||||
|
internal void ExecuteOnHello(ApiResponse<List<Guid>> apiResponse)
|
||||||
|
{
|
||||||
|
OnHello?.Invoke(this, new ApiResponseEventArgs<List<Guid>>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -113,6 +156,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public DefaultApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -142,7 +190,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
/// Initializes a new instance of the <see cref="DefaultApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public DefaultApi(ILogger<DefaultApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, DefaultApiEvents defaultApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -152,6 +200,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = defaultApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -256,6 +305,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFooGetDefaultImplementation(apiResponseLocalVar);
|
AfterFooGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnFooGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -398,6 +449,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetCountryDefaultImplementation(apiResponseLocalVar, country);
|
AfterGetCountryDefaultImplementation(apiResponseLocalVar, country);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetCountry(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -506,6 +559,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterHelloDefaultImplementation(apiResponseLocalVar);
|
AfterHelloDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnHello(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFakeApi : IApi
|
public interface IFakeApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
FakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Health check endpoint
|
/// Health check endpoint
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -444,6 +450,163 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class FakeApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<HealthCheckResult>> OnFakeHealthGet;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeHealthGet(ApiResponse<HealthCheckResult> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeHealthGet?.Invoke(this, new ApiResponseEventArgs<HealthCheckResult>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<bool>> OnFakeOuterBooleanSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterBooleanSerialize(ApiResponse<bool> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterBooleanSerialize?.Invoke(this, new ApiResponseEventArgs<bool>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<OuterComposite>> OnFakeOuterCompositeSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterCompositeSerialize(ApiResponse<OuterComposite> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterCompositeSerialize?.Invoke(this, new ApiResponseEventArgs<OuterComposite>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<decimal>> OnFakeOuterNumberSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterNumberSerialize(ApiResponse<decimal> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterNumberSerialize?.Invoke(this, new ApiResponseEventArgs<decimal>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<string>> OnFakeOuterStringSerialize;
|
||||||
|
|
||||||
|
internal void ExecuteOnFakeOuterStringSerialize(ApiResponse<string> apiResponse)
|
||||||
|
{
|
||||||
|
OnFakeOuterStringSerialize?.Invoke(this, new ApiResponseEventArgs<string>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<OuterEnum>>> OnGetArrayOfEnums;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetArrayOfEnums(ApiResponse<List<OuterEnum>> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetArrayOfEnums?.Invoke(this, new ApiResponseEventArgs<List<OuterEnum>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestBodyWithFileSchema;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestBodyWithFileSchema(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestBodyWithFileSchema?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestBodyWithQueryParams;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestBodyWithQueryParams(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestBodyWithQueryParams?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>> OnTestClientModel;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestClientModel(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestClientModel?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestEndpointParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestEndpointParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestEndpointParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestEnumParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestEnumParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestEnumParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestGroupParameters;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestGroupParameters(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestGroupParameters?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestInlineAdditionalProperties;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestInlineAdditionalProperties(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestInlineAdditionalProperties?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestJsonFormData;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestJsonFormData(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestJsonFormData?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnTestQueryParameterCollectionFormat;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestQueryParameterCollectionFormat(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestQueryParameterCollectionFormat?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -461,6 +624,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public FakeApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -490,7 +658,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="FakeApi"/> class.
|
/// Initializes a new instance of the <see cref="FakeApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FakeApi(ILogger<FakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public FakeApi(ILogger<FakeApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, FakeApiEvents fakeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -500,6 +668,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = fakeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -604,6 +773,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeHealthGetDefaultImplementation(apiResponseLocalVar);
|
AfterFakeHealthGetDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeHealthGet(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -736,6 +907,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterBooleanSerializeDefaultImplementation(apiResponseLocalVar, body);
|
AfterFakeOuterBooleanSerializeDefaultImplementation(apiResponseLocalVar, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterBooleanSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -881,6 +1054,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterCompositeSerializeDefaultImplementation(apiResponseLocalVar, outerComposite);
|
AfterFakeOuterCompositeSerializeDefaultImplementation(apiResponseLocalVar, outerComposite);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterCompositeSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1013,6 +1188,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterNumberSerializeDefaultImplementation(apiResponseLocalVar, body);
|
AfterFakeOuterNumberSerializeDefaultImplementation(apiResponseLocalVar, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterNumberSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1170,6 +1347,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFakeOuterStringSerializeDefaultImplementation(apiResponseLocalVar, requiredStringUuid, body);
|
AfterFakeOuterStringSerializeDefaultImplementation(apiResponseLocalVar, requiredStringUuid, body);
|
||||||
|
|
||||||
|
Events.ExecuteOnFakeOuterStringSerialize(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1278,6 +1457,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetArrayOfEnumsDefaultImplementation(apiResponseLocalVar);
|
AfterGetArrayOfEnumsDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetArrayOfEnums(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1414,6 +1595,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestBodyWithFileSchemaDefaultImplementation(apiResponseLocalVar, fileSchemaTestClass);
|
AfterTestBodyWithFileSchemaDefaultImplementation(apiResponseLocalVar, fileSchemaTestClass);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestBodyWithFileSchema(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1566,6 +1749,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestBodyWithQueryParamsDefaultImplementation(apiResponseLocalVar, user, query);
|
AfterTestBodyWithQueryParamsDefaultImplementation(apiResponseLocalVar, user, query);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestBodyWithQueryParams(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1710,6 +1895,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestClientModelDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterTestClientModelDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestClientModel(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1994,6 +2181,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestEndpointParametersDefaultImplementation(apiResponseLocalVar, varByte, number, varDouble, patternWithoutDelimiter, date, binary, varFloat, integer, int32, int64, varString, password, callback, dateTime);
|
AfterTestEndpointParametersDefaultImplementation(apiResponseLocalVar, varByte, number, varDouble, patternWithoutDelimiter, date, binary, varFloat, integer, int32, int64, varString, password, callback, dateTime);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestEndpointParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -2226,6 +2415,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestEnumParametersDefaultImplementation(apiResponseLocalVar, enumHeaderStringArray, enumQueryStringArray, enumQueryDouble, enumQueryInteger, enumFormStringArray, enumHeaderString, enumQueryString, enumFormString);
|
AfterTestEnumParametersDefaultImplementation(apiResponseLocalVar, enumHeaderStringArray, enumQueryStringArray, enumQueryDouble, enumQueryInteger, enumFormStringArray, enumHeaderString, enumQueryString, enumFormString);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestEnumParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2391,6 +2582,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestGroupParametersDefaultImplementation(apiResponseLocalVar, requiredBooleanGroup, requiredStringGroup, requiredInt64Group, booleanGroup, stringGroup, int64Group);
|
AfterTestGroupParametersDefaultImplementation(apiResponseLocalVar, requiredBooleanGroup, requiredStringGroup, requiredInt64Group, booleanGroup, stringGroup, int64Group);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestGroupParameters(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -2531,6 +2724,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestInlineAdditionalPropertiesDefaultImplementation(apiResponseLocalVar, requestBody);
|
AfterTestInlineAdditionalPropertiesDefaultImplementation(apiResponseLocalVar, requestBody);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestInlineAdditionalProperties(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2685,6 +2880,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestJsonFormDataDefaultImplementation(apiResponseLocalVar, param, param2);
|
AfterTestJsonFormDataDefaultImplementation(apiResponseLocalVar, param, param2);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestJsonFormData(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2897,6 +3094,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestQueryParameterCollectionFormatDefaultImplementation(apiResponseLocalVar, pipe, ioutil, http, url, context, requiredNotNullable, requiredNullable, notRequiredNotNullable, notRequiredNullable);
|
AfterTestQueryParameterCollectionFormatDefaultImplementation(apiResponseLocalVar, pipe, ioutil, http, url, context, requiredNotNullable, requiredNullable, notRequiredNotNullable, notRequiredNullable);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestQueryParameterCollectionFormat(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IFakeClassnameTags123Api : IApi
|
public interface IFakeClassnameTags123Api : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
FakeClassnameTags123ApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// To test class name in snake case
|
/// To test class name in snake case
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -54,6 +60,23 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class FakeClassnameTags123ApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ModelClient>> OnTestClassname;
|
||||||
|
|
||||||
|
internal void ExecuteOnTestClassname(ApiResponse<ModelClient> apiResponse)
|
||||||
|
{
|
||||||
|
OnTestClassname?.Invoke(this, new ApiResponseEventArgs<ModelClient>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -71,6 +94,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public FakeClassnameTags123ApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -100,7 +128,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="FakeClassnameTags123Api"/> class.
|
/// Initializes a new instance of the <see cref="FakeClassnameTags123Api"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public FakeClassnameTags123Api(ILogger<FakeClassnameTags123Api> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public FakeClassnameTags123Api(ILogger<FakeClassnameTags123Api> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, FakeClassnameTags123ApiEvents fakeClassnameTags123ApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -110,6 +138,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = fakeClassnameTags123ApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -261,6 +290,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterTestClassnameDefaultImplementation(apiResponseLocalVar, modelClient);
|
AfterTestClassnameDefaultImplementation(apiResponseLocalVar, modelClient);
|
||||||
|
|
||||||
|
Events.ExecuteOnTestClassname(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IPetApi : IApi
|
public interface IPetApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
PetApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Add a new pet to the store
|
/// Add a new pet to the store
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -252,6 +258,103 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class PetApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnAddPet;
|
||||||
|
|
||||||
|
internal void ExecuteOnAddPet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnAddPet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnDeletePet;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeletePet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeletePet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Pet>>> OnFindPetsByStatus;
|
||||||
|
|
||||||
|
internal void ExecuteOnFindPetsByStatus(ApiResponse<List<Pet>> apiResponse)
|
||||||
|
{
|
||||||
|
OnFindPetsByStatus?.Invoke(this, new ApiResponseEventArgs<List<Pet>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<List<Pet>>> OnFindPetsByTags;
|
||||||
|
|
||||||
|
internal void ExecuteOnFindPetsByTags(ApiResponse<List<Pet>> apiResponse)
|
||||||
|
{
|
||||||
|
OnFindPetsByTags?.Invoke(this, new ApiResponseEventArgs<List<Pet>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Pet>> OnGetPetById;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetPetById(ApiResponse<Pet> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetPetById?.Invoke(this, new ApiResponseEventArgs<Pet>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnUpdatePet;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdatePet(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdatePet?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnUpdatePetWithForm;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdatePetWithForm(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdatePetWithForm?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ApiResponse>> OnUploadFile;
|
||||||
|
|
||||||
|
internal void ExecuteOnUploadFile(ApiResponse<ApiResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnUploadFile?.Invoke(this, new ApiResponseEventArgs<ApiResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<ApiResponse>> OnUploadFileWithRequiredFile;
|
||||||
|
|
||||||
|
internal void ExecuteOnUploadFileWithRequiredFile(ApiResponse<ApiResponse> apiResponse)
|
||||||
|
{
|
||||||
|
OnUploadFileWithRequiredFile?.Invoke(this, new ApiResponseEventArgs<ApiResponse>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -269,6 +372,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public PetApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -298,7 +406,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="PetApi"/> class.
|
/// Initializes a new instance of the <see cref="PetApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public PetApi(ILogger<PetApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public PetApi(ILogger<PetApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, PetApiEvents petApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -308,6 +416,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = petApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -459,6 +568,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterAddPetDefaultImplementation(apiResponseLocalVar, pet);
|
AfterAddPetDefaultImplementation(apiResponseLocalVar, pet);
|
||||||
|
|
||||||
|
Events.ExecuteOnAddPet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -607,6 +718,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeletePetDefaultImplementation(apiResponseLocalVar, petId, apiKey);
|
AfterDeletePetDefaultImplementation(apiResponseLocalVar, petId, apiKey);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeletePet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -767,6 +880,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFindPetsByStatusDefaultImplementation(apiResponseLocalVar, status);
|
AfterFindPetsByStatusDefaultImplementation(apiResponseLocalVar, status);
|
||||||
|
|
||||||
|
Events.ExecuteOnFindPetsByStatus(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -931,6 +1046,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterFindPetsByTagsDefaultImplementation(apiResponseLocalVar, tags);
|
AfterFindPetsByTagsDefaultImplementation(apiResponseLocalVar, tags);
|
||||||
|
|
||||||
|
Events.ExecuteOnFindPetsByTags(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1067,6 +1184,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetPetByIdDefaultImplementation(apiResponseLocalVar, petId);
|
AfterGetPetByIdDefaultImplementation(apiResponseLocalVar, petId);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetPetById(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1226,6 +1345,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdatePetDefaultImplementation(apiResponseLocalVar, pet);
|
AfterUpdatePetDefaultImplementation(apiResponseLocalVar, pet);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdatePet(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1403,6 +1524,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdatePetWithFormDefaultImplementation(apiResponseLocalVar, petId, name, status);
|
AfterUpdatePetWithFormDefaultImplementation(apiResponseLocalVar, petId, name, status);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdatePetWithForm(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1584,6 +1707,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUploadFileDefaultImplementation(apiResponseLocalVar, petId, file, additionalMetadata);
|
AfterUploadFileDefaultImplementation(apiResponseLocalVar, petId, file, additionalMetadata);
|
||||||
|
|
||||||
|
Events.ExecuteOnUploadFile(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -1765,6 +1890,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUploadFileWithRequiredFileDefaultImplementation(apiResponseLocalVar, requiredFile, petId, additionalMetadata);
|
AfterUploadFileWithRequiredFileDefaultImplementation(apiResponseLocalVar, requiredFile, petId, additionalMetadata);
|
||||||
|
|
||||||
|
Events.ExecuteOnUploadFileWithRequiredFile(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IStoreApi : IApi
|
public interface IStoreApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
StoreApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Delete purchase order by ID
|
/// Delete purchase order by ID
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -121,6 +127,53 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class StoreApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnDeleteOrder;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeleteOrder(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeleteOrder?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Dictionary<string, int>>> OnGetInventory;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetInventory(ApiResponse<Dictionary<string, int>> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetInventory?.Invoke(this, new ApiResponseEventArgs<Dictionary<string, int>>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Order>> OnGetOrderById;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetOrderById(ApiResponse<Order> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetOrderById?.Invoke(this, new ApiResponseEventArgs<Order>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<Order>> OnPlaceOrder;
|
||||||
|
|
||||||
|
internal void ExecuteOnPlaceOrder(ApiResponse<Order> apiResponse)
|
||||||
|
{
|
||||||
|
OnPlaceOrder?.Invoke(this, new ApiResponseEventArgs<Order>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -138,6 +191,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public StoreApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -167,7 +225,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="StoreApi"/> class.
|
/// Initializes a new instance of the <see cref="StoreApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public StoreApi(ILogger<StoreApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public StoreApi(ILogger<StoreApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, StoreApiEvents storeApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -177,6 +235,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = storeApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -296,6 +355,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeleteOrderDefaultImplementation(apiResponseLocalVar, orderId);
|
AfterDeleteOrderDefaultImplementation(apiResponseLocalVar, orderId);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeleteOrder(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -412,6 +473,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetInventoryDefaultImplementation(apiResponseLocalVar);
|
AfterGetInventoryDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetInventory(apiResponseLocalVar);
|
||||||
|
|
||||||
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
if (apiResponseLocalVar.StatusCode == (HttpStatusCode) 429)
|
||||||
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
foreach(TokenBase tokenBaseLocalVar in tokenBaseLocalVars)
|
||||||
tokenBaseLocalVar.BeginRateLimit();
|
tokenBaseLocalVar.BeginRateLimit();
|
||||||
@ -536,6 +599,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetOrderByIdDefaultImplementation(apiResponseLocalVar, orderId);
|
AfterGetOrderByIdDefaultImplementation(apiResponseLocalVar, orderId);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetOrderById(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -681,6 +746,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterPlaceOrderDefaultImplementation(apiResponseLocalVar, order);
|
AfterPlaceOrderDefaultImplementation(apiResponseLocalVar, order);
|
||||||
|
|
||||||
|
Events.ExecuteOnPlaceOrder(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@ using System.Net.Http;
|
|||||||
using System.Net.Http.Headers;
|
using System.Net.Http.Headers;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using Org.OpenAPITools.Client;
|
using Org.OpenAPITools.Client;
|
||||||
|
using Org.OpenAPITools.Api;
|
||||||
using Org.OpenAPITools.Model;
|
using Org.OpenAPITools.Model;
|
||||||
|
|
||||||
namespace Org.OpenAPITools.IApi
|
namespace Org.OpenAPITools.IApi
|
||||||
@ -27,6 +28,11 @@ namespace Org.OpenAPITools.IApi
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public interface IUserApi : IApi
|
public interface IUserApi : IApi
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
UserApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create user
|
/// Create user
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -217,6 +223,93 @@ namespace Org.OpenAPITools.IApi
|
|||||||
|
|
||||||
namespace Org.OpenAPITools.Api
|
namespace Org.OpenAPITools.Api
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
|
/// This class is registered as transient.
|
||||||
|
/// </summary>
|
||||||
|
public class UserApiEvents
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnCreateUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnCreateUsersWithArrayInput;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUsersWithArrayInput(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUsersWithArrayInput?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnCreateUsersWithListInput;
|
||||||
|
|
||||||
|
internal void ExecuteOnCreateUsersWithListInput(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnCreateUsersWithListInput?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnDeleteUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnDeleteUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnDeleteUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<User>> OnGetUserByName;
|
||||||
|
|
||||||
|
internal void ExecuteOnGetUserByName(ApiResponse<User> apiResponse)
|
||||||
|
{
|
||||||
|
OnGetUserByName?.Invoke(this, new ApiResponseEventArgs<User>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<string>> OnLoginUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnLoginUser(ApiResponse<string> apiResponse)
|
||||||
|
{
|
||||||
|
OnLoginUser?.Invoke(this, new ApiResponseEventArgs<string>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnLogoutUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnLogoutUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnLogoutUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The event raised after the server response
|
||||||
|
/// </summary>
|
||||||
|
public event EventHandler<ApiResponseEventArgs<object>> OnUpdateUser;
|
||||||
|
|
||||||
|
internal void ExecuteOnUpdateUser(ApiResponse<object> apiResponse)
|
||||||
|
{
|
||||||
|
OnUpdateUser?.Invoke(this, new ApiResponseEventArgs<object>(apiResponse));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a collection of functions to interact with the API endpoints
|
/// Represents a collection of functions to interact with the API endpoints
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -234,6 +327,11 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public HttpClient HttpClient { get; }
|
public HttpClient HttpClient { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The class containing the events
|
||||||
|
/// </summary>
|
||||||
|
public UserApiEvents Events { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// A token provider of type <see cref="ApiKeyProvider"/>
|
/// A token provider of type <see cref="ApiKeyProvider"/>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -263,7 +361,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
/// Initializes a new instance of the <see cref="UserApi"/> class.
|
/// Initializes a new instance of the <see cref="UserApi"/> class.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public UserApi(ILogger<UserApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider,
|
public UserApi(ILogger<UserApi> logger, HttpClient httpClient, JsonSerializerOptionsProvider jsonSerializerOptionsProvider, UserApiEvents userApiEvents,
|
||||||
TokenProvider<ApiKeyToken> apiKeyProvider,
|
TokenProvider<ApiKeyToken> apiKeyProvider,
|
||||||
TokenProvider<BearerToken> bearerTokenProvider,
|
TokenProvider<BearerToken> bearerTokenProvider,
|
||||||
TokenProvider<BasicToken> basicTokenProvider,
|
TokenProvider<BasicToken> basicTokenProvider,
|
||||||
@ -273,6 +371,7 @@ namespace Org.OpenAPITools.Api
|
|||||||
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
_jsonSerializerOptions = jsonSerializerOptionsProvider.Options;
|
||||||
Logger = logger;
|
Logger = logger;
|
||||||
HttpClient = httpClient;
|
HttpClient = httpClient;
|
||||||
|
Events = userApiEvents;
|
||||||
ApiKeyProvider = apiKeyProvider;
|
ApiKeyProvider = apiKeyProvider;
|
||||||
BearerTokenProvider = bearerTokenProvider;
|
BearerTokenProvider = bearerTokenProvider;
|
||||||
BasicTokenProvider = basicTokenProvider;
|
BasicTokenProvider = basicTokenProvider;
|
||||||
@ -405,6 +504,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUserDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUserDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -541,6 +642,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUsersWithArrayInputDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUsersWithArrayInputDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUsersWithArrayInput(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -677,6 +780,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterCreateUsersWithListInputDefaultImplementation(apiResponseLocalVar, user);
|
AfterCreateUsersWithListInputDefaultImplementation(apiResponseLocalVar, user);
|
||||||
|
|
||||||
|
Events.ExecuteOnCreateUsersWithListInput(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -800,6 +905,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterDeleteUserDefaultImplementation(apiResponseLocalVar, username);
|
AfterDeleteUserDefaultImplementation(apiResponseLocalVar, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnDeleteUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -933,6 +1040,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterGetUserByNameDefaultImplementation(apiResponseLocalVar, username);
|
AfterGetUserByNameDefaultImplementation(apiResponseLocalVar, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnGetUserByName(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1082,6 +1191,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterLoginUserDefaultImplementation(apiResponseLocalVar, username, password);
|
AfterLoginUserDefaultImplementation(apiResponseLocalVar, username, password);
|
||||||
|
|
||||||
|
Events.ExecuteOnLoginUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1181,6 +1292,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterLogoutUserDefaultImplementation(apiResponseLocalVar);
|
AfterLogoutUserDefaultImplementation(apiResponseLocalVar);
|
||||||
|
|
||||||
|
Events.ExecuteOnLogoutUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1328,6 +1441,8 @@ namespace Org.OpenAPITools.Api
|
|||||||
|
|
||||||
AfterUpdateUserDefaultImplementation(apiResponseLocalVar, user, username);
|
AfterUpdateUserDefaultImplementation(apiResponseLocalVar, user, username);
|
||||||
|
|
||||||
|
Events.ExecuteOnUpdateUser(apiResponseLocalVar);
|
||||||
|
|
||||||
return apiResponseLocalVar;
|
return apiResponseLocalVar;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,58 +1,24 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Net;
|
|
||||||
|
|
||||||
namespace Org.OpenAPITools.Client
|
namespace Org.OpenAPITools.Client
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Useful for tracking server health.
|
/// Useful for tracking server health
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class ApiResponseEventArgs : EventArgs
|
public class ApiResponseEventArgs<T> : EventArgs
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the request was sent.
|
/// The ApiResponse
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime RequestedAt { get; }
|
public ApiResponse<T> ApiResponse { get; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The time the response was received.
|
/// The ApiResponseEventArgs
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public DateTime ReceivedAt { get; }
|
/// <param name="apiResponse"></param>
|
||||||
|
public ApiResponseEventArgs(ApiResponse<T> apiResponse)
|
||||||
/// <summary>
|
|
||||||
/// The HttpStatusCode received.
|
|
||||||
/// </summary>
|
|
||||||
public HttpStatusCode HttpStatus { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path requested.
|
|
||||||
/// </summary>
|
|
||||||
public string PathFormat { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The elapsed time from request to response.
|
|
||||||
/// </summary>
|
|
||||||
public TimeSpan ToTimeSpan => this.ReceivedAt - this.RequestedAt;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The path
|
|
||||||
/// </summary>
|
|
||||||
public string Path { get; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// The event args used to track server health.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="requestedAt"></param>
|
|
||||||
/// <param name="receivedAt"></param>
|
|
||||||
/// <param name="httpStatus"></param>
|
|
||||||
/// <param name="pathFormat"></param>
|
|
||||||
/// <param name="path"></param>
|
|
||||||
public ApiResponseEventArgs(DateTime requestedAt, DateTime receivedAt, HttpStatusCode httpStatus, string pathFormat, string path)
|
|
||||||
{
|
{
|
||||||
RequestedAt = requestedAt;
|
ApiResponse = apiResponse;
|
||||||
ReceivedAt = receivedAt;
|
|
||||||
HttpStatus = httpStatus;
|
|
||||||
PathFormat = pathFormat;
|
|
||||||
Path = path;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -132,12 +132,19 @@ namespace Org.OpenAPITools.Client
|
|||||||
_jsonOptions.Converters.Add(new ZeroBasedEnumClassJsonConverter());
|
_jsonOptions.Converters.Add(new ZeroBasedEnumClassJsonConverter());
|
||||||
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
_services.AddSingleton(new JsonSerializerOptionsProvider(_jsonOptions));
|
||||||
_services.AddSingleton<IApiFactory, ApiFactory>();
|
_services.AddSingleton<IApiFactory, ApiFactory>();
|
||||||
|
_services.AddSingleton<AnotherFakeApiEvents>();
|
||||||
_services.AddTransient<IAnotherFakeApi, AnotherFakeApi>();
|
_services.AddTransient<IAnotherFakeApi, AnotherFakeApi>();
|
||||||
|
_services.AddSingleton<DefaultApiEvents>();
|
||||||
_services.AddTransient<IDefaultApi, DefaultApi>();
|
_services.AddTransient<IDefaultApi, DefaultApi>();
|
||||||
|
_services.AddSingleton<FakeApiEvents>();
|
||||||
_services.AddTransient<IFakeApi, FakeApi>();
|
_services.AddTransient<IFakeApi, FakeApi>();
|
||||||
|
_services.AddSingleton<FakeClassnameTags123ApiEvents>();
|
||||||
_services.AddTransient<IFakeClassnameTags123Api, FakeClassnameTags123Api>();
|
_services.AddTransient<IFakeClassnameTags123Api, FakeClassnameTags123Api>();
|
||||||
|
_services.AddSingleton<PetApiEvents>();
|
||||||
_services.AddTransient<IPetApi, PetApi>();
|
_services.AddTransient<IPetApi, PetApi>();
|
||||||
|
_services.AddSingleton<StoreApiEvents>();
|
||||||
_services.AddTransient<IStoreApi, StoreApi>();
|
_services.AddTransient<IStoreApi, StoreApi>();
|
||||||
|
_services.AddSingleton<UserApiEvents>();
|
||||||
_services.AddTransient<IUserApi, UserApi>();
|
_services.AddTransient<IUserApi, UserApi>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user