forked from loafle/openapi-generator-original
		
	[cpp-ue4] Added UE4.26 support, (#8964)
* [cpp-ue4] Fixed enum values not being quoted. I'm not sure when this started breaking. * [cpp-ue4] UE 4.26 Compatibility: Replaced TSharedRef<IHttpRequest by FHttpRequestRef for better portability * [cpp-ue4] Improved DateTime parsing * [cpp-ue4] Made HttpFileInput constructors explicit * [cpp-ue4] Added the possibility to retry requests easily with AsyncRetry method on the response and SetAutoRetryCount on the request WIP auto retry [cpp-ue4] Adds support for instant retry * [cpp-ue4] Using TaskGraph instead of TaskGraphMainThread for async retries * update samples * remove trailing spaces Co-authored-by: Jean-Noel Gourdol <jngourdol@stormancer.com> Co-authored-by: William Cheng <wing328hk@gmail.com>
This commit is contained in:
		
							parent
							
								
									4bfe13767f
								
							
						
					
					
						commit
						9ab3463144
					
				@ -27,8 +27,9 @@ public:
 | 
				
			|||||||
    {{#operations}}{{#operation}}{{#description}}/* {{{description}}} */
 | 
					    {{#operations}}{{#operation}}{{#description}}/* {{{description}}} */
 | 
				
			||||||
	{{/description}}bool {{operationIdCamelCase}}(const {{operationIdCamelCase}}Request& Request, const F{{operationIdCamelCase}}Delegate& Delegate = F{{operationIdCamelCase}}Delegate()) const;
 | 
						{{/description}}bool {{operationIdCamelCase}}(const {{operationIdCamelCase}}Request& Request, const F{{operationIdCamelCase}}Delegate& Delegate = F{{operationIdCamelCase}}Delegate()) const;
 | 
				
			||||||
    {{/operation}}{{/operations}}
 | 
					    {{/operation}}{{/operations}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
    {{#operations}}{{#operation}}void On{{operationIdCamelCase}}Response(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, F{{operationIdCamelCase}}Delegate Delegate) const;
 | 
					    {{#operations}}{{#operation}}void On{{operationIdCamelCase}}Response(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, F{{operationIdCamelCase}}Delegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    {{/operation}}{{/operations}}
 | 
					    {{/operation}}{{/operations}}
 | 
				
			||||||
	bool IsValid() const;
 | 
						bool IsValid() const;
 | 
				
			||||||
	void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
						void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
				
			||||||
 | 
				
			|||||||
@ -22,7 +22,7 @@ class {{dllapi}} {{classname}}::{{operationIdCamelCase}}Request : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~{{operationIdCamelCase}}Request() {}
 | 
					    virtual ~{{operationIdCamelCase}}Request() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	{{#allParams}}
 | 
						{{#allParams}}
 | 
				
			||||||
 | 
				
			|||||||
@ -23,7 +23,7 @@ inline FString ToString(const {{classname}}::{{operationIdCamelCase}}Request::{{
 | 
				
			|||||||
	{
 | 
						{
 | 
				
			||||||
	{{#enumVars}}
 | 
						{{#enumVars}}
 | 
				
			||||||
	case {{classname}}::{{operationIdCamelCase}}Request::{{{enumName}}}::{{name}}:
 | 
						case {{classname}}::{{operationIdCamelCase}}Request::{{{enumName}}}::{{name}}:
 | 
				
			||||||
		return TEXT({{{value}}});
 | 
							return TEXT("{{{value}}}");
 | 
				
			||||||
	{{/enumVars}}
 | 
						{{/enumVars}}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	{{/allowableValues}}
 | 
						{{/allowableValues}}
 | 
				
			||||||
@ -49,7 +49,7 @@ inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, {{classname
 | 
				
			|||||||
	if (JsonValue->TryGetString(TmpValue))
 | 
						if (JsonValue->TryGetString(TmpValue))
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		static TMap<FString, {{classname}}::{{operationIdCamelCase}}Request::{{{enumName}}}> StringToEnum = { {{#enumVars}}
 | 
							static TMap<FString, {{classname}}::{{operationIdCamelCase}}Request::{{{enumName}}}> StringToEnum = { {{#enumVars}}
 | 
				
			||||||
			{ TEXT({{{value}}}), {{classname}}::{{operationIdCamelCase}}Request::{{{enumName}}}::{{name}} },{{/enumVars}} };
 | 
								{ TEXT("{{{value}}}"), {{classname}}::{{operationIdCamelCase}}Request::{{{enumName}}}::{{name}} },{{/enumVars}} };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		const auto Found = StringToEnum.Find(TmpValue);
 | 
							const auto Found = StringToEnum.Find(TmpValue);
 | 
				
			||||||
		if(Found)
 | 
							if(Found)
 | 
				
			||||||
@ -109,7 +109,7 @@ FString {{classname}}::{{operationIdCamelCase}}Request::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void {{classname}}::{{operationIdCamelCase}}Request::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void {{classname}}::{{operationIdCamelCase}}Request::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = { {{#consumes}}TEXT("{{{mediaType}}}"){{^-last}}, {{/-last}}{{/consumes}} };
 | 
						static const TArray<FString> Consumes = { {{#consumes}}TEXT("{{{mediaType}}}"){{^-last}}, {{/-last}}{{/consumes}} };
 | 
				
			||||||
	//static const TArray<FString> Produces = { {{#produces}}TEXT("{{{mediaType}}}"){{^-last}}, {{/-last}}{{/produces}} };
 | 
						//static const TArray<FString> Produces = { {{#produces}}TEXT("{{{mediaType}}}"){{^-last}}, {{/-last}}{{/produces}} };
 | 
				
			||||||
 | 
				
			|||||||
@ -96,7 +96,7 @@ bool {{classname}}::{{operationIdCamelCase}}(const {{operationIdCamelCase}}Reque
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -106,15 +106,26 @@ bool {{classname}}::{{operationIdCamelCase}}(const {{operationIdCamelCase}}Reque
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &{{classname}}::On{{operationIdCamelCase}}Response, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &{{classname}}::On{{operationIdCamelCase}}Response, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void {{classname}}::On{{operationIdCamelCase}}Response(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, F{{operationIdCamelCase}}Delegate Delegate) const
 | 
					void {{classname}}::On{{operationIdCamelCase}}Response(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, F{{operationIdCamelCase}}Delegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	{{operationIdCamelCase}}Response Response;
 | 
						{{operationIdCamelCase}}Response Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &{{classname}}::On{{operationIdCamelCase}}Response, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{{/operation}}
 | 
					{{/operation}}
 | 
				
			||||||
 | 
				
			|||||||
@ -22,8 +22,8 @@ typedef TSharedRef<TJsonWriter<>> JsonWriter;
 | 
				
			|||||||
class {{dllapi}} HttpFileInput
 | 
					class {{dllapi}} HttpFileInput
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	HttpFileInput(const TCHAR* InFilePath);
 | 
						explicit HttpFileInput(const TCHAR* InFilePath);
 | 
				
			||||||
	HttpFileInput(const FString& InFilePath);
 | 
						explicit HttpFileInput(const FString& InFilePath);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// This will automatically set the content type if not already set
 | 
						// This will automatically set the content type if not already set
 | 
				
			||||||
    void SetFilePath(const TCHAR* InFilePath);
 | 
					    void SetFilePath(const TCHAR* InFilePath);
 | 
				
			||||||
@ -53,7 +53,7 @@ class HttpMultipartFormData
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	void SetBoundary(const TCHAR* InBoundary);
 | 
						void SetBoundary(const TCHAR* InBoundary);
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest);
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	void AddStringPart(const TCHAR* Name, const TCHAR* Data);
 | 
						void AddStringPart(const TCHAR* Name, const TCHAR* Data);
 | 
				
			||||||
	void AddJsonPart(const TCHAR* Name, const FString& JsonString);
 | 
						void AddJsonPart(const TCHAR* Name, const FString& JsonString);
 | 
				
			||||||
@ -268,11 +268,15 @@ inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, FString& Va
 | 
				
			|||||||
		return false;
 | 
							return false;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{{dllapi}} bool ParseDateTime(const FString& DateTimeString, FDateTime& OutDateTime);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, FDateTime& Value)
 | 
					inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, FDateTime& Value)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	FString TmpValue;
 | 
						FString TmpValue;
 | 
				
			||||||
	if (JsonValue->TryGetString(TmpValue))
 | 
						if (JsonValue->TryGetString(TmpValue))
 | 
				
			||||||
		return FDateTime::Parse(TmpValue, Value);
 | 
						{
 | 
				
			||||||
 | 
							return ParseDateTime(TmpValue, Value);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	else
 | 
						else
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -70,7 +70,7 @@ const FString& HttpMultipartFormData::GetBoundary() const
 | 
				
			|||||||
	return Boundary;
 | 
						return Boundary;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void HttpMultipartFormData::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest)
 | 
					void HttpMultipartFormData::SetupHttpRequest(const FHttpRequestRef& HttpRequest)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if(HttpRequest->GetVerb() != TEXT("POST"))
 | 
						if(HttpRequest->GetVerb() != TEXT("POST"))
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -183,6 +183,44 @@ void HttpMultipartFormData::AppendString(const TCHAR* Str)
 | 
				
			|||||||
	FormData.Append((uint8*)utf8Str.Get(), utf8Str.Length());
 | 
						FormData.Append((uint8*)utf8Str.Get(), utf8Str.Length());
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//////////////////////////////////////////////////////////////////////////
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bool ParseDateTime(const FString& DateTimeString, FDateTime& OutDateTime)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						// Iso8601 Format: 	DateTime: YYYY-mm-ddTHH:MM:SS(.sss)(Z|+hh:mm|+hhmm|-hh:mm|-hhmm)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							// We cannot call directly FDateTime::ParseIso8601 because it does not allow for precision beyond the millisecond, but DateTimeString might have more digits
 | 
				
			||||||
 | 
							int32 DotIndex;
 | 
				
			||||||
 | 
							FString StringToParse = DateTimeString;
 | 
				
			||||||
 | 
							if (DateTimeString.FindChar('.', DotIndex))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								int32 TimeZoneIndex;
 | 
				
			||||||
 | 
								if (DateTimeString.FindChar('Z', TimeZoneIndex) || DateTimeString.FindChar('+', TimeZoneIndex) || DateTimeString.FindChar('-', TimeZoneIndex))
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									// The string contains a time zone designator starting at TimeZoneIndex
 | 
				
			||||||
 | 
									if (TimeZoneIndex > DotIndex + 4)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										// Trim to millisecond
 | 
				
			||||||
 | 
										StringToParse = DateTimeString.Left(DotIndex + 4) + DateTimeString.RightChop(TimeZoneIndex);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								else
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									// the string does not contain a time zone designator, trim it to the millisecond
 | 
				
			||||||
 | 
									StringToParse = DateTimeString.Left(DotIndex + 4);
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (FDateTime::ParseIso8601(*StringToParse, OutDateTime))
 | 
				
			||||||
 | 
								return true;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (FDateTime::ParseHttpDate(DateTimeString, OutDateTime))
 | 
				
			||||||
 | 
							return true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return FDateTime::Parse(DateTimeString, OutDateTime);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{{#cppNamespaceDeclarations}}
 | 
					{{#cppNamespaceDeclarations}}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
{{/cppNamespaceDeclarations}}
 | 
					{{/cppNamespaceDeclarations}}
 | 
				
			||||||
@ -25,8 +25,14 @@ class {{dllapi}} Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	virtual ~Request() {}
 | 
						virtual ~Request() {}
 | 
				
			||||||
	virtual void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const = 0;
 | 
						virtual void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const = 0;
 | 
				
			||||||
	virtual FString ComputePath() const = 0;
 | 
						virtual FString ComputePath() const = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void SetAutoRetryCount(int InCount) { AutoRetryCount = InCount; }
 | 
				
			||||||
 | 
						int GetAutoRetryCount() const { return AutoRetryCount; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
						int AutoRetryCount = 0;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class {{dllapi}} Response
 | 
					class {{dllapi}} Response
 | 
				
			||||||
@ -38,6 +44,8 @@ public:
 | 
				
			|||||||
	void SetSuccessful(bool InSuccessful) { Successful = InSuccessful; }
 | 
						void SetSuccessful(bool InSuccessful) { Successful = InSuccessful; }
 | 
				
			||||||
	bool IsSuccessful() const { return Successful; }
 | 
						bool IsSuccessful() const { return Successful; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void AsyncRetry() const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	virtual void SetHttpResponseCode(EHttpResponseCodes::Type InHttpResponseCode);
 | 
						virtual void SetHttpResponseCode(EHttpResponseCodes::Type InHttpResponseCode);
 | 
				
			||||||
	EHttpResponseCodes::Type GetHttpResponseCode() const { return ResponseCode; }
 | 
						EHttpResponseCodes::Type GetHttpResponseCode() const { return ResponseCode; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -47,11 +55,15 @@ public:
 | 
				
			|||||||
	void SetHttpResponse(const FHttpResponsePtr& InHttpResponse) { HttpResponse = InHttpResponse; }
 | 
						void SetHttpResponse(const FHttpResponsePtr& InHttpResponse) { HttpResponse = InHttpResponse; }
 | 
				
			||||||
	const FHttpResponsePtr& GetHttpResponse() const { return HttpResponse; }
 | 
						const FHttpResponsePtr& GetHttpResponse() const { return HttpResponse; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void SetHttpRequest(const FHttpRequestPtr& InHttpRequest) { HttpRequest = InHttpRequest; }
 | 
				
			||||||
 | 
						const FHttpRequestPtr& GetHttpRequest() const { return HttpRequest; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
	bool Successful;
 | 
						bool Successful;
 | 
				
			||||||
	EHttpResponseCodes::Type ResponseCode;
 | 
						EHttpResponseCodes::Type ResponseCode;
 | 
				
			||||||
	FString ResponseString;
 | 
						FString ResponseString;
 | 
				
			||||||
	FHttpResponsePtr HttpResponse;
 | 
						FHttpResponsePtr HttpResponse;
 | 
				
			||||||
 | 
						FHttpRequestPtr HttpRequest;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{{#cppNamespaceDeclarations}}
 | 
					{{#cppNamespaceDeclarations}}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,8 @@
 | 
				
			|||||||
{{>licenseInfo}}
 | 
					{{>licenseInfo}}
 | 
				
			||||||
#include "{{modelNamePrefix}}BaseModel.h"
 | 
					#include "{{modelNamePrefix}}BaseModel.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "Async/Async.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{{#cppNamespaceDeclarations}}
 | 
					{{#cppNamespaceDeclarations}}
 | 
				
			||||||
namespace {{this}} 
 | 
					namespace {{this}} 
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -16,6 +18,15 @@ void Response::SetHttpResponseCode(EHttpResponseCodes::Type InHttpResponseCode)
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void Response::AsyncRetry() const
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    // Unfortunately, it is currently usafe to call ProcessRequest() directly here.
 | 
				
			||||||
 | 
					    // This is because the HttpManager will remove all references to this HttpRequest in FHttpManager::Tick including the new request we just added, instead of removing just one. 
 | 
				
			||||||
 | 
					    // This will lead to the request's destruction and eventually a crash.
 | 
				
			||||||
 | 
					    // The only solution is therefore to ensure we are taking an extra reference to the request, and that the request is added after the queue is flushed.
 | 
				
			||||||
 | 
					    Async(EAsyncExecution::TaskGraph, [AddRef = FHttpRequestPtr(GetHttpRequest())](){ AddRef->ProcessRequest(); });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
{{#cppNamespaceDeclarations}}
 | 
					{{#cppNamespaceDeclarations}}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
{{/cppNamespaceDeclarations}}
 | 
					{{/cppNamespaceDeclarations}}
 | 
				
			||||||
@ -19,7 +19,7 @@ inline FString ToString(const {{classname}}::Values& Value)
 | 
				
			|||||||
	{
 | 
						{
 | 
				
			||||||
	{{#enumVars}}
 | 
						{{#enumVars}}
 | 
				
			||||||
	case {{classname}}::Values::{{name}}:
 | 
						case {{classname}}::Values::{{name}}:
 | 
				
			||||||
		return TEXT({{{value}}});
 | 
							return TEXT("{{{value}}}");
 | 
				
			||||||
	{{/enumVars}}
 | 
						{{/enumVars}}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	{{/allowableValues}}
 | 
						{{/allowableValues}}
 | 
				
			||||||
@ -45,7 +45,7 @@ inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, {{classname
 | 
				
			|||||||
	if (JsonValue->TryGetString(TmpValue))
 | 
						if (JsonValue->TryGetString(TmpValue))
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		static TMap<FString, {{classname}}::Values> StringToEnum = { {{#enumVars}}
 | 
							static TMap<FString, {{classname}}::Values> StringToEnum = { {{#enumVars}}
 | 
				
			||||||
			{ TEXT({{{value}}}), {{classname}}::Values::{{name}} },{{/enumVars}} };
 | 
								{ TEXT("{{{value}}}"), {{classname}}::Values::{{name}} },{{/enumVars}} };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		const auto Found = StringToEnum.Find(TmpValue);
 | 
							const auto Found = StringToEnum.Find(TmpValue);
 | 
				
			||||||
		if(Found)
 | 
							if(Found)
 | 
				
			||||||
@ -69,7 +69,7 @@ inline FString ToString(const {{classname}}::{{{enumName}}}& Value)
 | 
				
			|||||||
	{
 | 
						{
 | 
				
			||||||
	{{#enumVars}}
 | 
						{{#enumVars}}
 | 
				
			||||||
	case {{classname}}::{{{enumName}}}::{{name}}:
 | 
						case {{classname}}::{{{enumName}}}::{{name}}:
 | 
				
			||||||
		return TEXT({{{value}}});
 | 
							return TEXT("{{{value}}}");
 | 
				
			||||||
	{{/enumVars}}
 | 
						{{/enumVars}}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	{{/allowableValues}}
 | 
						{{/allowableValues}}
 | 
				
			||||||
@ -95,7 +95,7 @@ inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, {{classname
 | 
				
			|||||||
	if (JsonValue->TryGetString(TmpValue))
 | 
						if (JsonValue->TryGetString(TmpValue))
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		static TMap<FString, {{classname}}::{{{enumName}}}> StringToEnum = { {{#enumVars}}
 | 
							static TMap<FString, {{classname}}::{{{enumName}}}> StringToEnum = { {{#enumVars}}
 | 
				
			||||||
			{ TEXT({{{value}}}), {{classname}}::{{{enumName}}}::{{name}} },{{/enumVars}} };
 | 
								{ TEXT("{{{value}}}"), {{classname}}::{{{enumName}}}::{{name}} },{{/enumVars}} };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		const auto Found = StringToEnum.Find(TmpValue);
 | 
							const auto Found = StringToEnum.Find(TmpValue);
 | 
				
			||||||
		if(Found)
 | 
							if(Found)
 | 
				
			||||||
 | 
				
			|||||||
@ -1 +1 @@
 | 
				
			|||||||
5.0.0-SNAPSHOT
 | 
					5.1.0-SNAPSHOT
 | 
				
			||||||
@ -12,6 +12,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
#include "OpenAPIBaseModel.h"
 | 
					#include "OpenAPIBaseModel.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "Async/Async.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace OpenAPI 
 | 
					namespace OpenAPI 
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -25,4 +27,13 @@ void Response::SetHttpResponseCode(EHttpResponseCodes::Type InHttpResponseCode)
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void Response::AsyncRetry() const
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    // Unfortunately, it is currently usafe to call ProcessRequest() directly here.
 | 
				
			||||||
 | 
					    // This is because the HttpManager will remove all references to this HttpRequest in FHttpManager::Tick including the new request we just added, instead of removing just one. 
 | 
				
			||||||
 | 
					    // This will lead to the request's destruction and eventually a crash.
 | 
				
			||||||
 | 
					    // The only solution is therefore to ensure we are taking an extra reference to the request, and that the request is added after the queue is flushed.
 | 
				
			||||||
 | 
					    Async(EAsyncExecution::TaskGraph, [AddRef = FHttpRequestPtr(GetHttpRequest())](){ AddRef->ProcessRequest(); });
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -79,7 +79,7 @@ const FString& HttpMultipartFormData::GetBoundary() const
 | 
				
			|||||||
	return Boundary;
 | 
						return Boundary;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void HttpMultipartFormData::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest)
 | 
					void HttpMultipartFormData::SetupHttpRequest(const FHttpRequestRef& HttpRequest)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	if(HttpRequest->GetVerb() != TEXT("POST"))
 | 
						if(HttpRequest->GetVerb() != TEXT("POST"))
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -192,4 +192,42 @@ void HttpMultipartFormData::AppendString(const TCHAR* Str)
 | 
				
			|||||||
	FormData.Append((uint8*)utf8Str.Get(), utf8Str.Length());
 | 
						FormData.Append((uint8*)utf8Str.Get(), utf8Str.Length());
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					//////////////////////////////////////////////////////////////////////////
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					bool ParseDateTime(const FString& DateTimeString, FDateTime& OutDateTime)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						// Iso8601 Format: 	DateTime: YYYY-mm-ddTHH:MM:SS(.sss)(Z|+hh:mm|+hhmm|-hh:mm|-hhmm)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							// We cannot call directly FDateTime::ParseIso8601 because it does not allow for precision beyond the millisecond, but DateTimeString might have more digits
 | 
				
			||||||
 | 
							int32 DotIndex;
 | 
				
			||||||
 | 
							FString StringToParse = DateTimeString;
 | 
				
			||||||
 | 
							if (DateTimeString.FindChar('.', DotIndex))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								int32 TimeZoneIndex;
 | 
				
			||||||
 | 
								if (DateTimeString.FindChar('Z', TimeZoneIndex) || DateTimeString.FindChar('+', TimeZoneIndex) || DateTimeString.FindChar('-', TimeZoneIndex))
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									// The string contains a time zone designator starting at TimeZoneIndex
 | 
				
			||||||
 | 
									if (TimeZoneIndex > DotIndex + 4)
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										// Trim to millisecond
 | 
				
			||||||
 | 
										StringToParse = DateTimeString.Left(DotIndex + 4) + DateTimeString.RightChop(TimeZoneIndex);
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								else
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									// the string does not contain a time zone designator, trim it to the millisecond
 | 
				
			||||||
 | 
									StringToParse = DateTimeString.Left(DotIndex + 4);
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (FDateTime::ParseIso8601(*StringToParse, OutDateTime))
 | 
				
			||||||
 | 
								return true;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (FDateTime::ParseHttpDate(DateTimeString, OutDateTime))
 | 
				
			||||||
 | 
							return true;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return FDateTime::Parse(DateTimeString, OutDateTime);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -103,7 +103,7 @@ bool OpenAPIPetApi::AddPet(const AddPetRequest& Request, const FAddPetDelegate&
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -113,15 +113,26 @@ bool OpenAPIPetApi::AddPet(const AddPetRequest& Request, const FAddPetDelegate&
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnAddPetResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnAddPetResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnAddPetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FAddPetDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnAddPetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FAddPetDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	AddPetResponse Response;
 | 
						AddPetResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnAddPetResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::DeletePet(const DeletePetRequest& Request, const FDeletePetDelegate& Delegate /*= FDeletePetDelegate()*/) const
 | 
					bool OpenAPIPetApi::DeletePet(const DeletePetRequest& Request, const FDeletePetDelegate& Delegate /*= FDeletePetDelegate()*/) const
 | 
				
			||||||
@ -129,7 +140,7 @@ bool OpenAPIPetApi::DeletePet(const DeletePetRequest& Request, const FDeletePetD
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -139,15 +150,26 @@ bool OpenAPIPetApi::DeletePet(const DeletePetRequest& Request, const FDeletePetD
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnDeletePetResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnDeletePetResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnDeletePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeletePetDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnDeletePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeletePetDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	DeletePetResponse Response;
 | 
						DeletePetResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnDeletePetResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::FindPetsByStatus(const FindPetsByStatusRequest& Request, const FFindPetsByStatusDelegate& Delegate /*= FFindPetsByStatusDelegate()*/) const
 | 
					bool OpenAPIPetApi::FindPetsByStatus(const FindPetsByStatusRequest& Request, const FFindPetsByStatusDelegate& Delegate /*= FFindPetsByStatusDelegate()*/) const
 | 
				
			||||||
@ -155,7 +177,7 @@ bool OpenAPIPetApi::FindPetsByStatus(const FindPetsByStatusRequest& Request, con
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -165,15 +187,26 @@ bool OpenAPIPetApi::FindPetsByStatus(const FindPetsByStatusRequest& Request, con
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnFindPetsByStatusResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnFindPetsByStatusResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnFindPetsByStatusResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByStatusDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnFindPetsByStatusResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByStatusDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	FindPetsByStatusResponse Response;
 | 
						FindPetsByStatusResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnFindPetsByStatusResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::FindPetsByTags(const FindPetsByTagsRequest& Request, const FFindPetsByTagsDelegate& Delegate /*= FFindPetsByTagsDelegate()*/) const
 | 
					bool OpenAPIPetApi::FindPetsByTags(const FindPetsByTagsRequest& Request, const FFindPetsByTagsDelegate& Delegate /*= FFindPetsByTagsDelegate()*/) const
 | 
				
			||||||
@ -181,7 +214,7 @@ bool OpenAPIPetApi::FindPetsByTags(const FindPetsByTagsRequest& Request, const F
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -191,15 +224,26 @@ bool OpenAPIPetApi::FindPetsByTags(const FindPetsByTagsRequest& Request, const F
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnFindPetsByTagsResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnFindPetsByTagsResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnFindPetsByTagsResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByTagsDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnFindPetsByTagsResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByTagsDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	FindPetsByTagsResponse Response;
 | 
						FindPetsByTagsResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnFindPetsByTagsResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::GetPetById(const GetPetByIdRequest& Request, const FGetPetByIdDelegate& Delegate /*= FGetPetByIdDelegate()*/) const
 | 
					bool OpenAPIPetApi::GetPetById(const GetPetByIdRequest& Request, const FGetPetByIdDelegate& Delegate /*= FGetPetByIdDelegate()*/) const
 | 
				
			||||||
@ -207,7 +251,7 @@ bool OpenAPIPetApi::GetPetById(const GetPetByIdRequest& Request, const FGetPetBy
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -217,15 +261,26 @@ bool OpenAPIPetApi::GetPetById(const GetPetByIdRequest& Request, const FGetPetBy
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnGetPetByIdResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnGetPetByIdResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnGetPetByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetPetByIdDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnGetPetByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetPetByIdDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	GetPetByIdResponse Response;
 | 
						GetPetByIdResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnGetPetByIdResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::UpdatePet(const UpdatePetRequest& Request, const FUpdatePetDelegate& Delegate /*= FUpdatePetDelegate()*/) const
 | 
					bool OpenAPIPetApi::UpdatePet(const UpdatePetRequest& Request, const FUpdatePetDelegate& Delegate /*= FUpdatePetDelegate()*/) const
 | 
				
			||||||
@ -233,7 +288,7 @@ bool OpenAPIPetApi::UpdatePet(const UpdatePetRequest& Request, const FUpdatePetD
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -243,15 +298,26 @@ bool OpenAPIPetApi::UpdatePet(const UpdatePetRequest& Request, const FUpdatePetD
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUpdatePetResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUpdatePetResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnUpdatePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnUpdatePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	UpdatePetResponse Response;
 | 
						UpdatePetResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUpdatePetResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::UpdatePetWithForm(const UpdatePetWithFormRequest& Request, const FUpdatePetWithFormDelegate& Delegate /*= FUpdatePetWithFormDelegate()*/) const
 | 
					bool OpenAPIPetApi::UpdatePetWithForm(const UpdatePetWithFormRequest& Request, const FUpdatePetWithFormDelegate& Delegate /*= FUpdatePetWithFormDelegate()*/) const
 | 
				
			||||||
@ -259,7 +325,7 @@ bool OpenAPIPetApi::UpdatePetWithForm(const UpdatePetWithFormRequest& Request, c
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -269,15 +335,26 @@ bool OpenAPIPetApi::UpdatePetWithForm(const UpdatePetWithFormRequest& Request, c
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUpdatePetWithFormResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUpdatePetWithFormResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnUpdatePetWithFormResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetWithFormDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnUpdatePetWithFormResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetWithFormDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	UpdatePetWithFormResponse Response;
 | 
						UpdatePetWithFormResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUpdatePetWithFormResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIPetApi::UploadFile(const UploadFileRequest& Request, const FUploadFileDelegate& Delegate /*= FUploadFileDelegate()*/) const
 | 
					bool OpenAPIPetApi::UploadFile(const UploadFileRequest& Request, const FUploadFileDelegate& Delegate /*= FUploadFileDelegate()*/) const
 | 
				
			||||||
@ -285,7 +362,7 @@ bool OpenAPIPetApi::UploadFile(const UploadFileRequest& Request, const FUploadFi
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -295,15 +372,26 @@ bool OpenAPIPetApi::UploadFile(const UploadFileRequest& Request, const FUploadFi
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUploadFileResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUploadFileResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::OnUploadFileResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUploadFileDelegate Delegate) const
 | 
					void OpenAPIPetApi::OnUploadFileResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUploadFileDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	UploadFileResponse Response;
 | 
						UploadFileResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIPetApi::OnUploadFileResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -29,7 +29,7 @@ FString OpenAPIPetApi::AddPetRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::AddPetRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::AddPetRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = { TEXT("application/json"), TEXT("application/xml") };
 | 
						static const TArray<FString> Consumes = { TEXT("application/json"), TEXT("application/xml") };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -89,7 +89,7 @@ FString OpenAPIPetApi::DeletePetRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::DeletePetRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::DeletePetRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -191,7 +191,7 @@ FString OpenAPIPetApi::FindPetsByStatusRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::FindPetsByStatusRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::FindPetsByStatusRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
@ -244,7 +244,7 @@ FString OpenAPIPetApi::FindPetsByTagsRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::FindPetsByTagsRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::FindPetsByTagsRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
@ -296,7 +296,7 @@ FString OpenAPIPetApi::GetPetByIdRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::GetPetByIdRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::GetPetByIdRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
@ -347,7 +347,7 @@ FString OpenAPIPetApi::UpdatePetRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::UpdatePetRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::UpdatePetRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = { TEXT("application/json"), TEXT("application/xml") };
 | 
						static const TArray<FString> Consumes = { TEXT("application/json"), TEXT("application/xml") };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -413,7 +413,7 @@ FString OpenAPIPetApi::UpdatePetWithFormRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::UpdatePetWithFormRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::UpdatePetWithFormRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = { TEXT("application/x-www-form-urlencoded") };
 | 
						static const TArray<FString> Consumes = { TEXT("application/x-www-form-urlencoded") };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -487,7 +487,7 @@ FString OpenAPIPetApi::UploadFileRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIPetApi::UploadFileRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIPetApi::UploadFileRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = { TEXT("multipart/form-data") };
 | 
						static const TArray<FString> Consumes = { TEXT("multipart/form-data") };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/json") };
 | 
				
			||||||
 | 
				
			|||||||
@ -103,7 +103,7 @@ bool OpenAPIStoreApi::DeleteOrder(const DeleteOrderRequest& Request, const FDele
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -113,15 +113,26 @@ bool OpenAPIStoreApi::DeleteOrder(const DeleteOrderRequest& Request, const FDele
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnDeleteOrderResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnDeleteOrderResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::OnDeleteOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteOrderDelegate Delegate) const
 | 
					void OpenAPIStoreApi::OnDeleteOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteOrderDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	DeleteOrderResponse Response;
 | 
						DeleteOrderResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnDeleteOrderResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIStoreApi::GetInventory(const GetInventoryRequest& Request, const FGetInventoryDelegate& Delegate /*= FGetInventoryDelegate()*/) const
 | 
					bool OpenAPIStoreApi::GetInventory(const GetInventoryRequest& Request, const FGetInventoryDelegate& Delegate /*= FGetInventoryDelegate()*/) const
 | 
				
			||||||
@ -129,7 +140,7 @@ bool OpenAPIStoreApi::GetInventory(const GetInventoryRequest& Request, const FGe
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -139,15 +150,26 @@ bool OpenAPIStoreApi::GetInventory(const GetInventoryRequest& Request, const FGe
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnGetInventoryResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnGetInventoryResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::OnGetInventoryResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetInventoryDelegate Delegate) const
 | 
					void OpenAPIStoreApi::OnGetInventoryResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetInventoryDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	GetInventoryResponse Response;
 | 
						GetInventoryResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnGetInventoryResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIStoreApi::GetOrderById(const GetOrderByIdRequest& Request, const FGetOrderByIdDelegate& Delegate /*= FGetOrderByIdDelegate()*/) const
 | 
					bool OpenAPIStoreApi::GetOrderById(const GetOrderByIdRequest& Request, const FGetOrderByIdDelegate& Delegate /*= FGetOrderByIdDelegate()*/) const
 | 
				
			||||||
@ -155,7 +177,7 @@ bool OpenAPIStoreApi::GetOrderById(const GetOrderByIdRequest& Request, const FGe
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -165,15 +187,26 @@ bool OpenAPIStoreApi::GetOrderById(const GetOrderByIdRequest& Request, const FGe
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnGetOrderByIdResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnGetOrderByIdResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::OnGetOrderByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetOrderByIdDelegate Delegate) const
 | 
					void OpenAPIStoreApi::OnGetOrderByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetOrderByIdDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	GetOrderByIdResponse Response;
 | 
						GetOrderByIdResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnGetOrderByIdResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIStoreApi::PlaceOrder(const PlaceOrderRequest& Request, const FPlaceOrderDelegate& Delegate /*= FPlaceOrderDelegate()*/) const
 | 
					bool OpenAPIStoreApi::PlaceOrder(const PlaceOrderRequest& Request, const FPlaceOrderDelegate& Delegate /*= FPlaceOrderDelegate()*/) const
 | 
				
			||||||
@ -181,7 +214,7 @@ bool OpenAPIStoreApi::PlaceOrder(const PlaceOrderRequest& Request, const FPlaceO
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -191,15 +224,26 @@ bool OpenAPIStoreApi::PlaceOrder(const PlaceOrderRequest& Request, const FPlaceO
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnPlaceOrderResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnPlaceOrderResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::OnPlaceOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FPlaceOrderDelegate Delegate) const
 | 
					void OpenAPIStoreApi::OnPlaceOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FPlaceOrderDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	PlaceOrderResponse Response;
 | 
						PlaceOrderResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIStoreApi::OnPlaceOrderResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -33,7 +33,7 @@ FString OpenAPIStoreApi::DeleteOrderRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::DeleteOrderRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIStoreApi::DeleteOrderRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -81,7 +81,7 @@ FString OpenAPIStoreApi::GetInventoryRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::GetInventoryRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIStoreApi::GetInventoryRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/json") };
 | 
				
			||||||
@ -130,7 +130,7 @@ FString OpenAPIStoreApi::GetOrderByIdRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::GetOrderByIdRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIStoreApi::GetOrderByIdRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
@ -181,7 +181,7 @@ FString OpenAPIStoreApi::PlaceOrderRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIStoreApi::PlaceOrderRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIStoreApi::PlaceOrderRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
 | 
				
			|||||||
@ -103,7 +103,7 @@ bool OpenAPIUserApi::CreateUser(const CreateUserRequest& Request, const FCreateU
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -113,15 +113,26 @@ bool OpenAPIUserApi::CreateUser(const CreateUserRequest& Request, const FCreateU
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUserResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUserResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnCreateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUserDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnCreateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUserDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	CreateUserResponse Response;
 | 
						CreateUserResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUserResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::CreateUsersWithArrayInput(const CreateUsersWithArrayInputRequest& Request, const FCreateUsersWithArrayInputDelegate& Delegate /*= FCreateUsersWithArrayInputDelegate()*/) const
 | 
					bool OpenAPIUserApi::CreateUsersWithArrayInput(const CreateUsersWithArrayInputRequest& Request, const FCreateUsersWithArrayInputDelegate& Delegate /*= FCreateUsersWithArrayInputDelegate()*/) const
 | 
				
			||||||
@ -129,7 +140,7 @@ bool OpenAPIUserApi::CreateUsersWithArrayInput(const CreateUsersWithArrayInputRe
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -139,15 +150,26 @@ bool OpenAPIUserApi::CreateUsersWithArrayInput(const CreateUsersWithArrayInputRe
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUsersWithArrayInputResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUsersWithArrayInputResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnCreateUsersWithArrayInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithArrayInputDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnCreateUsersWithArrayInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithArrayInputDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	CreateUsersWithArrayInputResponse Response;
 | 
						CreateUsersWithArrayInputResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUsersWithArrayInputResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::CreateUsersWithListInput(const CreateUsersWithListInputRequest& Request, const FCreateUsersWithListInputDelegate& Delegate /*= FCreateUsersWithListInputDelegate()*/) const
 | 
					bool OpenAPIUserApi::CreateUsersWithListInput(const CreateUsersWithListInputRequest& Request, const FCreateUsersWithListInputDelegate& Delegate /*= FCreateUsersWithListInputDelegate()*/) const
 | 
				
			||||||
@ -155,7 +177,7 @@ bool OpenAPIUserApi::CreateUsersWithListInput(const CreateUsersWithListInputRequ
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -165,15 +187,26 @@ bool OpenAPIUserApi::CreateUsersWithListInput(const CreateUsersWithListInputRequ
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUsersWithListInputResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUsersWithListInputResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnCreateUsersWithListInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithListInputDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnCreateUsersWithListInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithListInputDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	CreateUsersWithListInputResponse Response;
 | 
						CreateUsersWithListInputResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnCreateUsersWithListInputResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::DeleteUser(const DeleteUserRequest& Request, const FDeleteUserDelegate& Delegate /*= FDeleteUserDelegate()*/) const
 | 
					bool OpenAPIUserApi::DeleteUser(const DeleteUserRequest& Request, const FDeleteUserDelegate& Delegate /*= FDeleteUserDelegate()*/) const
 | 
				
			||||||
@ -181,7 +214,7 @@ bool OpenAPIUserApi::DeleteUser(const DeleteUserRequest& Request, const FDeleteU
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -191,15 +224,26 @@ bool OpenAPIUserApi::DeleteUser(const DeleteUserRequest& Request, const FDeleteU
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnDeleteUserResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnDeleteUserResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnDeleteUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteUserDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnDeleteUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteUserDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	DeleteUserResponse Response;
 | 
						DeleteUserResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnDeleteUserResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::GetUserByName(const GetUserByNameRequest& Request, const FGetUserByNameDelegate& Delegate /*= FGetUserByNameDelegate()*/) const
 | 
					bool OpenAPIUserApi::GetUserByName(const GetUserByNameRequest& Request, const FGetUserByNameDelegate& Delegate /*= FGetUserByNameDelegate()*/) const
 | 
				
			||||||
@ -207,7 +251,7 @@ bool OpenAPIUserApi::GetUserByName(const GetUserByNameRequest& Request, const FG
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -217,15 +261,26 @@ bool OpenAPIUserApi::GetUserByName(const GetUserByNameRequest& Request, const FG
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnGetUserByNameResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnGetUserByNameResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnGetUserByNameResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetUserByNameDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnGetUserByNameResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetUserByNameDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	GetUserByNameResponse Response;
 | 
						GetUserByNameResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnGetUserByNameResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::LoginUser(const LoginUserRequest& Request, const FLoginUserDelegate& Delegate /*= FLoginUserDelegate()*/) const
 | 
					bool OpenAPIUserApi::LoginUser(const LoginUserRequest& Request, const FLoginUserDelegate& Delegate /*= FLoginUserDelegate()*/) const
 | 
				
			||||||
@ -233,7 +288,7 @@ bool OpenAPIUserApi::LoginUser(const LoginUserRequest& Request, const FLoginUser
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -243,15 +298,26 @@ bool OpenAPIUserApi::LoginUser(const LoginUserRequest& Request, const FLoginUser
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnLoginUserResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnLoginUserResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnLoginUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLoginUserDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnLoginUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLoginUserDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	LoginUserResponse Response;
 | 
						LoginUserResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnLoginUserResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::LogoutUser(const LogoutUserRequest& Request, const FLogoutUserDelegate& Delegate /*= FLogoutUserDelegate()*/) const
 | 
					bool OpenAPIUserApi::LogoutUser(const LogoutUserRequest& Request, const FLogoutUserDelegate& Delegate /*= FLogoutUserDelegate()*/) const
 | 
				
			||||||
@ -259,7 +325,7 @@ bool OpenAPIUserApi::LogoutUser(const LogoutUserRequest& Request, const FLogoutU
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -269,15 +335,26 @@ bool OpenAPIUserApi::LogoutUser(const LogoutUserRequest& Request, const FLogoutU
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnLogoutUserResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnLogoutUserResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnLogoutUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLogoutUserDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnLogoutUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLogoutUserDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	LogoutUserResponse Response;
 | 
						LogoutUserResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnLogoutUserResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool OpenAPIUserApi::UpdateUser(const UpdateUserRequest& Request, const FUpdateUserDelegate& Delegate /*= FUpdateUserDelegate()*/) const
 | 
					bool OpenAPIUserApi::UpdateUser(const UpdateUserRequest& Request, const FUpdateUserDelegate& Delegate /*= FUpdateUserDelegate()*/) const
 | 
				
			||||||
@ -285,7 +362,7 @@ bool OpenAPIUserApi::UpdateUser(const UpdateUserRequest& Request, const FUpdateU
 | 
				
			|||||||
	if (!IsValid())
 | 
						if (!IsValid())
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	TSharedRef<IHttpRequest> HttpRequest = FHttpModule::Get().CreateRequest();
 | 
						FHttpRequestRef HttpRequest = FHttpModule::Get().CreateRequest();
 | 
				
			||||||
	HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
						HttpRequest->SetURL(*(Url + Request.ComputePath()));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(const auto& It : AdditionalHeaderParams)
 | 
						for(const auto& It : AdditionalHeaderParams)
 | 
				
			||||||
@ -295,15 +372,26 @@ bool OpenAPIUserApi::UpdateUser(const UpdateUserRequest& Request, const FUpdateU
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	Request.SetupHttpRequest(HttpRequest);
 | 
						Request.SetupHttpRequest(HttpRequest);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnUpdateUserResponse, Delegate);
 | 
						HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnUpdateUserResponse, Delegate, Request.GetAutoRetryCount());
 | 
				
			||||||
	return HttpRequest->ProcessRequest();
 | 
						return HttpRequest->ProcessRequest();
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::OnUpdateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdateUserDelegate Delegate) const
 | 
					void OpenAPIUserApi::OnUpdateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdateUserDelegate Delegate, int AutoRetryCount) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	UpdateUserResponse Response;
 | 
						UpdateUserResponse Response;
 | 
				
			||||||
 | 
						Response.SetHttpRequest(HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	HandleResponse(HttpResponse, bSucceeded, Response);
 | 
						HandleResponse(HttpResponse, bSucceeded, Response);
 | 
				
			||||||
	Delegate.ExecuteIfBound(Response);
 | 
					
 | 
				
			||||||
 | 
						if(!Response.IsSuccessful() && AutoRetryCount > 0)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							HttpRequest->OnProcessRequestComplete().BindRaw(this, &OpenAPIUserApi::OnUpdateUserResponse, Delegate, AutoRetryCount - 1);
 | 
				
			||||||
 | 
							Response.AsyncRetry();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							Delegate.ExecuteIfBound(Response);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -29,7 +29,7 @@ FString OpenAPIUserApi::CreateUserRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::CreateUserRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::CreateUserRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -86,7 +86,7 @@ FString OpenAPIUserApi::CreateUsersWithArrayInputRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::CreateUsersWithArrayInputRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::CreateUsersWithArrayInputRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -143,7 +143,7 @@ FString OpenAPIUserApi::CreateUsersWithListInputRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::CreateUsersWithListInputRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::CreateUsersWithListInputRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -204,7 +204,7 @@ FString OpenAPIUserApi::DeleteUserRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::DeleteUserRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::DeleteUserRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -256,7 +256,7 @@ FString OpenAPIUserApi::GetUserByNameRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::GetUserByNameRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::GetUserByNameRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
@ -313,7 +313,7 @@ FString OpenAPIUserApi::LoginUserRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::LoginUserRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::LoginUserRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
						//static const TArray<FString> Produces = { TEXT("application/xml"), TEXT("application/json") };
 | 
				
			||||||
@ -361,7 +361,7 @@ FString OpenAPIUserApi::LogoutUserRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::LogoutUserRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::LogoutUserRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
@ -411,7 +411,7 @@ FString OpenAPIUserApi::UpdateUserRequest::ComputePath() const
 | 
				
			|||||||
	return Path;
 | 
						return Path;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void OpenAPIUserApi::UpdateUserRequest::SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const
 | 
					void OpenAPIUserApi::UpdateUserRequest::SetupHttpRequest(const FHttpRequestRef& HttpRequest) const
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	static const TArray<FString> Consumes = {  };
 | 
						static const TArray<FString> Consumes = {  };
 | 
				
			||||||
	//static const TArray<FString> Produces = {  };
 | 
						//static const TArray<FString> Produces = {  };
 | 
				
			||||||
 | 
				
			|||||||
@ -34,8 +34,14 @@ class OPENAPI_API Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	virtual ~Request() {}
 | 
						virtual ~Request() {}
 | 
				
			||||||
	virtual void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const = 0;
 | 
						virtual void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const = 0;
 | 
				
			||||||
	virtual FString ComputePath() const = 0;
 | 
						virtual FString ComputePath() const = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void SetAutoRetryCount(int InCount) { AutoRetryCount = InCount; }
 | 
				
			||||||
 | 
						int GetAutoRetryCount() const { return AutoRetryCount; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
						int AutoRetryCount = 0;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class OPENAPI_API Response
 | 
					class OPENAPI_API Response
 | 
				
			||||||
@ -47,6 +53,8 @@ public:
 | 
				
			|||||||
	void SetSuccessful(bool InSuccessful) { Successful = InSuccessful; }
 | 
						void SetSuccessful(bool InSuccessful) { Successful = InSuccessful; }
 | 
				
			||||||
	bool IsSuccessful() const { return Successful; }
 | 
						bool IsSuccessful() const { return Successful; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void AsyncRetry() const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	virtual void SetHttpResponseCode(EHttpResponseCodes::Type InHttpResponseCode);
 | 
						virtual void SetHttpResponseCode(EHttpResponseCodes::Type InHttpResponseCode);
 | 
				
			||||||
	EHttpResponseCodes::Type GetHttpResponseCode() const { return ResponseCode; }
 | 
						EHttpResponseCodes::Type GetHttpResponseCode() const { return ResponseCode; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -56,11 +64,15 @@ public:
 | 
				
			|||||||
	void SetHttpResponse(const FHttpResponsePtr& InHttpResponse) { HttpResponse = InHttpResponse; }
 | 
						void SetHttpResponse(const FHttpResponsePtr& InHttpResponse) { HttpResponse = InHttpResponse; }
 | 
				
			||||||
	const FHttpResponsePtr& GetHttpResponse() const { return HttpResponse; }
 | 
						const FHttpResponsePtr& GetHttpResponse() const { return HttpResponse; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						void SetHttpRequest(const FHttpRequestPtr& InHttpRequest) { HttpRequest = InHttpRequest; }
 | 
				
			||||||
 | 
						const FHttpRequestPtr& GetHttpRequest() const { return HttpRequest; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
	bool Successful;
 | 
						bool Successful;
 | 
				
			||||||
	EHttpResponseCodes::Type ResponseCode;
 | 
						EHttpResponseCodes::Type ResponseCode;
 | 
				
			||||||
	FString ResponseString;
 | 
						FString ResponseString;
 | 
				
			||||||
	FHttpResponsePtr HttpResponse;
 | 
						FHttpResponsePtr HttpResponse;
 | 
				
			||||||
 | 
						FHttpRequestPtr HttpRequest;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -31,8 +31,8 @@ typedef TSharedRef<TJsonWriter<>> JsonWriter;
 | 
				
			|||||||
class OPENAPI_API HttpFileInput
 | 
					class OPENAPI_API HttpFileInput
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	HttpFileInput(const TCHAR* InFilePath);
 | 
						explicit HttpFileInput(const TCHAR* InFilePath);
 | 
				
			||||||
	HttpFileInput(const FString& InFilePath);
 | 
						explicit HttpFileInput(const FString& InFilePath);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// This will automatically set the content type if not already set
 | 
						// This will automatically set the content type if not already set
 | 
				
			||||||
    void SetFilePath(const TCHAR* InFilePath);
 | 
					    void SetFilePath(const TCHAR* InFilePath);
 | 
				
			||||||
@ -62,7 +62,7 @@ class HttpMultipartFormData
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
	void SetBoundary(const TCHAR* InBoundary);
 | 
						void SetBoundary(const TCHAR* InBoundary);
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest);
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	void AddStringPart(const TCHAR* Name, const TCHAR* Data);
 | 
						void AddStringPart(const TCHAR* Name, const TCHAR* Data);
 | 
				
			||||||
	void AddJsonPart(const TCHAR* Name, const FString& JsonString);
 | 
						void AddJsonPart(const TCHAR* Name, const FString& JsonString);
 | 
				
			||||||
@ -277,11 +277,15 @@ inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, FString& Va
 | 
				
			|||||||
		return false;
 | 
							return false;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					OPENAPI_API bool ParseDateTime(const FString& DateTimeString, FDateTime& OutDateTime);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, FDateTime& Value)
 | 
					inline bool TryGetJsonValue(const TSharedPtr<FJsonValue>& JsonValue, FDateTime& Value)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	FString TmpValue;
 | 
						FString TmpValue;
 | 
				
			||||||
	if (JsonValue->TryGetString(TmpValue))
 | 
						if (JsonValue->TryGetString(TmpValue))
 | 
				
			||||||
		return FDateTime::Parse(TmpValue, Value);
 | 
						{
 | 
				
			||||||
 | 
							return ParseDateTime(TmpValue, Value);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	else
 | 
						else
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -63,15 +63,16 @@ public:
 | 
				
			|||||||
    bool UpdatePetWithForm(const UpdatePetWithFormRequest& Request, const FUpdatePetWithFormDelegate& Delegate = FUpdatePetWithFormDelegate()) const;
 | 
					    bool UpdatePetWithForm(const UpdatePetWithFormRequest& Request, const FUpdatePetWithFormDelegate& Delegate = FUpdatePetWithFormDelegate()) const;
 | 
				
			||||||
    bool UploadFile(const UploadFileRequest& Request, const FUploadFileDelegate& Delegate = FUploadFileDelegate()) const;
 | 
					    bool UploadFile(const UploadFileRequest& Request, const FUploadFileDelegate& Delegate = FUploadFileDelegate()) const;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
    void OnAddPetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FAddPetDelegate Delegate) const;
 | 
					    void OnAddPetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FAddPetDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnDeletePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeletePetDelegate Delegate) const;
 | 
					    void OnDeletePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeletePetDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnFindPetsByStatusResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByStatusDelegate Delegate) const;
 | 
					    void OnFindPetsByStatusResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByStatusDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnFindPetsByTagsResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByTagsDelegate Delegate) const;
 | 
					    void OnFindPetsByTagsResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FFindPetsByTagsDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnGetPetByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetPetByIdDelegate Delegate) const;
 | 
					    void OnGetPetByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetPetByIdDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnUpdatePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetDelegate Delegate) const;
 | 
					    void OnUpdatePetResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnUpdatePetWithFormResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetWithFormDelegate Delegate) const;
 | 
					    void OnUpdatePetWithFormResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdatePetWithFormDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnUploadFileResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUploadFileDelegate Delegate) const;
 | 
					    void OnUploadFileResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUploadFileDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	bool IsValid() const;
 | 
						bool IsValid() const;
 | 
				
			||||||
	void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
						void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
				
			||||||
 | 
				
			|||||||
@ -29,7 +29,7 @@ class OPENAPI_API OpenAPIPetApi::AddPetRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~AddPetRequest() {}
 | 
					    virtual ~AddPetRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* Pet object that needs to be added to the store */
 | 
						/* Pet object that needs to be added to the store */
 | 
				
			||||||
@ -53,7 +53,7 @@ class OPENAPI_API OpenAPIPetApi::DeletePetRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~DeletePetRequest() {}
 | 
					    virtual ~DeletePetRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* Pet id to delete */
 | 
						/* Pet id to delete */
 | 
				
			||||||
@ -79,7 +79,7 @@ class OPENAPI_API OpenAPIPetApi::FindPetsByStatusRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~FindPetsByStatusRequest() {}
 | 
					    virtual ~FindPetsByStatusRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	enum class StatusEnum
 | 
						enum class StatusEnum
 | 
				
			||||||
@ -110,7 +110,7 @@ class OPENAPI_API OpenAPIPetApi::FindPetsByTagsRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~FindPetsByTagsRequest() {}
 | 
					    virtual ~FindPetsByTagsRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* Tags to filter by */
 | 
						/* Tags to filter by */
 | 
				
			||||||
@ -135,7 +135,7 @@ class OPENAPI_API OpenAPIPetApi::GetPetByIdRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~GetPetByIdRequest() {}
 | 
					    virtual ~GetPetByIdRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* ID of pet to return */
 | 
						/* ID of pet to return */
 | 
				
			||||||
@ -159,7 +159,7 @@ class OPENAPI_API OpenAPIPetApi::UpdatePetRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~UpdatePetRequest() {}
 | 
					    virtual ~UpdatePetRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* Pet object that needs to be added to the store */
 | 
						/* Pet object that needs to be added to the store */
 | 
				
			||||||
@ -183,7 +183,7 @@ class OPENAPI_API OpenAPIPetApi::UpdatePetWithFormRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~UpdatePetWithFormRequest() {}
 | 
					    virtual ~UpdatePetWithFormRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* ID of pet that needs to be updated */
 | 
						/* ID of pet that needs to be updated */
 | 
				
			||||||
@ -211,7 +211,7 @@ class OPENAPI_API OpenAPIPetApi::UploadFileRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~UploadFileRequest() {}
 | 
					    virtual ~UploadFileRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* ID of pet to update */
 | 
						/* ID of pet to update */
 | 
				
			||||||
 | 
				
			|||||||
@ -47,11 +47,12 @@ public:
 | 
				
			|||||||
    bool GetOrderById(const GetOrderByIdRequest& Request, const FGetOrderByIdDelegate& Delegate = FGetOrderByIdDelegate()) const;
 | 
					    bool GetOrderById(const GetOrderByIdRequest& Request, const FGetOrderByIdDelegate& Delegate = FGetOrderByIdDelegate()) const;
 | 
				
			||||||
    bool PlaceOrder(const PlaceOrderRequest& Request, const FPlaceOrderDelegate& Delegate = FPlaceOrderDelegate()) const;
 | 
					    bool PlaceOrder(const PlaceOrderRequest& Request, const FPlaceOrderDelegate& Delegate = FPlaceOrderDelegate()) const;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
    void OnDeleteOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteOrderDelegate Delegate) const;
 | 
					    void OnDeleteOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteOrderDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnGetInventoryResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetInventoryDelegate Delegate) const;
 | 
					    void OnGetInventoryResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetInventoryDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnGetOrderByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetOrderByIdDelegate Delegate) const;
 | 
					    void OnGetOrderByIdResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetOrderByIdDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnPlaceOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FPlaceOrderDelegate Delegate) const;
 | 
					    void OnPlaceOrderResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FPlaceOrderDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	bool IsValid() const;
 | 
						bool IsValid() const;
 | 
				
			||||||
	void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
						void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
				
			||||||
 | 
				
			|||||||
@ -28,7 +28,7 @@ class OPENAPI_API OpenAPIStoreApi::DeleteOrderRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~DeleteOrderRequest() {}
 | 
					    virtual ~DeleteOrderRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* ID of the order that needs to be deleted */
 | 
						/* ID of the order that needs to be deleted */
 | 
				
			||||||
@ -53,7 +53,7 @@ class OPENAPI_API OpenAPIStoreApi::GetInventoryRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~GetInventoryRequest() {}
 | 
					    virtual ~GetInventoryRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
@ -76,7 +76,7 @@ class OPENAPI_API OpenAPIStoreApi::GetOrderByIdRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~GetOrderByIdRequest() {}
 | 
					    virtual ~GetOrderByIdRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* ID of pet that needs to be fetched */
 | 
						/* ID of pet that needs to be fetched */
 | 
				
			||||||
@ -100,7 +100,7 @@ class OPENAPI_API OpenAPIStoreApi::PlaceOrderRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~PlaceOrderRequest() {}
 | 
					    virtual ~PlaceOrderRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* order placed for purchasing the pet */
 | 
						/* order placed for purchasing the pet */
 | 
				
			||||||
 | 
				
			|||||||
@ -63,15 +63,16 @@ public:
 | 
				
			|||||||
    bool LogoutUser(const LogoutUserRequest& Request, const FLogoutUserDelegate& Delegate = FLogoutUserDelegate()) const;
 | 
					    bool LogoutUser(const LogoutUserRequest& Request, const FLogoutUserDelegate& Delegate = FLogoutUserDelegate()) const;
 | 
				
			||||||
    bool UpdateUser(const UpdateUserRequest& Request, const FUpdateUserDelegate& Delegate = FUpdateUserDelegate()) const;
 | 
					    bool UpdateUser(const UpdateUserRequest& Request, const FUpdateUserDelegate& Delegate = FUpdateUserDelegate()) const;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
 | 
					
 | 
				
			||||||
private:
 | 
					private:
 | 
				
			||||||
    void OnCreateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUserDelegate Delegate) const;
 | 
					    void OnCreateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUserDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnCreateUsersWithArrayInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithArrayInputDelegate Delegate) const;
 | 
					    void OnCreateUsersWithArrayInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithArrayInputDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnCreateUsersWithListInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithListInputDelegate Delegate) const;
 | 
					    void OnCreateUsersWithListInputResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FCreateUsersWithListInputDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnDeleteUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteUserDelegate Delegate) const;
 | 
					    void OnDeleteUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FDeleteUserDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnGetUserByNameResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetUserByNameDelegate Delegate) const;
 | 
					    void OnGetUserByNameResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FGetUserByNameDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnLoginUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLoginUserDelegate Delegate) const;
 | 
					    void OnLoginUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLoginUserDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnLogoutUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLogoutUserDelegate Delegate) const;
 | 
					    void OnLogoutUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FLogoutUserDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    void OnUpdateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdateUserDelegate Delegate) const;
 | 
					    void OnUpdateUserResponse(FHttpRequestPtr HttpRequest, FHttpResponsePtr HttpResponse, bool bSucceeded, FUpdateUserDelegate Delegate, int AutoRetryCount) const;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	bool IsValid() const;
 | 
						bool IsValid() const;
 | 
				
			||||||
	void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
						void HandleResponse(FHttpResponsePtr HttpResponse, bool bSucceeded, Response& InOutResponse) const;
 | 
				
			||||||
 | 
				
			|||||||
@ -28,7 +28,7 @@ class OPENAPI_API OpenAPIUserApi::CreateUserRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~CreateUserRequest() {}
 | 
					    virtual ~CreateUserRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* Created user object */
 | 
						/* Created user object */
 | 
				
			||||||
@ -52,7 +52,7 @@ class OPENAPI_API OpenAPIUserApi::CreateUsersWithArrayInputRequest : public Requ
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~CreateUsersWithArrayInputRequest() {}
 | 
					    virtual ~CreateUsersWithArrayInputRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* List of user object */
 | 
						/* List of user object */
 | 
				
			||||||
@ -76,7 +76,7 @@ class OPENAPI_API OpenAPIUserApi::CreateUsersWithListInputRequest : public Reque
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~CreateUsersWithListInputRequest() {}
 | 
					    virtual ~CreateUsersWithListInputRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* List of user object */
 | 
						/* List of user object */
 | 
				
			||||||
@ -101,7 +101,7 @@ class OPENAPI_API OpenAPIUserApi::DeleteUserRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~DeleteUserRequest() {}
 | 
					    virtual ~DeleteUserRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* The name that needs to be deleted */
 | 
						/* The name that needs to be deleted */
 | 
				
			||||||
@ -125,7 +125,7 @@ class OPENAPI_API OpenAPIUserApi::GetUserByNameRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~GetUserByNameRequest() {}
 | 
					    virtual ~GetUserByNameRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* The name that needs to be fetched. Use user1 for testing. */
 | 
						/* The name that needs to be fetched. Use user1 for testing. */
 | 
				
			||||||
@ -149,7 +149,7 @@ class OPENAPI_API OpenAPIUserApi::LoginUserRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~LoginUserRequest() {}
 | 
					    virtual ~LoginUserRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* The user name for login */
 | 
						/* The user name for login */
 | 
				
			||||||
@ -175,7 +175,7 @@ class OPENAPI_API OpenAPIUserApi::LogoutUserRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~LogoutUserRequest() {}
 | 
					    virtual ~LogoutUserRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
@ -198,7 +198,7 @@ class OPENAPI_API OpenAPIUserApi::UpdateUserRequest : public Request
 | 
				
			|||||||
{
 | 
					{
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    virtual ~UpdateUserRequest() {}
 | 
					    virtual ~UpdateUserRequest() {}
 | 
				
			||||||
	void SetupHttpRequest(const TSharedRef<IHttpRequest>& HttpRequest) const final;
 | 
						void SetupHttpRequest(const FHttpRequestRef& HttpRequest) const final;
 | 
				
			||||||
	FString ComputePath() const final;
 | 
						FString ComputePath() const final;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
	/* name that need to be deleted */
 | 
						/* name that need to be deleted */
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user