Files
UnrealEngineUWP/Engine/Source/Runtime/Online/BackgroundHTTP/Public/Interfaces/IBackgroundHttpModularFeature.h
aurel cordonnier d17d20ca36 Merge from Release-Engine-Test @ 16758890 to UE5/Main
This represents UE4/Main @ 16738161 and Dev-PerfTest @ 16737719 (and Release-17.00 @ 16658211)

[CL 16763350 by aurel cordonnier in ue5-main branch]
2021-06-23 17:51:32 -04:00

35 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Features/IModularFeature.h"
#include "Interfaces/IBackgroundHttpRequest.h"
#include "Logging/LogMacros.h"
class IBackgroundHttpManager;
DECLARE_LOG_CATEGORY_EXTERN(LogBackgroundHttpModularFeature, Log, All)
/**
* This version of BackgroundHttp is designed to be used by any platform that relies on a ModularFeature to override the BackgroundHttp behavior.
* If no modular feature is found, we fall back on the GenericPlatform implementation to provide functionality
*/
class BACKGROUNDHTTP_API IBackgroundHttpModularFeature : public IModularFeature
{
public:
//Virtual methods for all PlatformBackgroundHttp required functions
virtual void Initialize() = 0;
virtual void Shutdown() = 0;
virtual FBackgroundHttpManagerPtr CreatePlatformBackgroundHttpManager() = 0;
virtual FBackgroundHttpRequestPtr ConstructBackgroundRequest() = 0;
virtual FBackgroundHttpResponsePtr ConstructBackgroundResponse(int32 ResponseCode, const FString& TempFilePath) = 0;
//Should return the name of the Plugin/Module that causes this ModularFeature to be registered.
virtual FString GetDebugModuleName() const = 0;
};