Files
UnrealEngine/Engine/Source/Developer/SourceControl/Public/Tests/SourceControlAutomationCommon.h
2025-05-18 13:04:45 +08:00

69 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "ISourceControlProvider.h"
namespace SourceControlAutomationCommon
{
/**
* Helper class for receiving the results of async source control operations
*/
class FAsyncCommandHelper
{
public:
FAsyncCommandHelper(const FString& InParameter = FString())
: Parameter(InParameter)
, bDispatched(false)
, bDone(false)
, bSuccessful(false)
{
}
void SourceControlOperationComplete(const FSourceControlOperationRef& Operation, ECommandResult::Type InResult)
{
bDone = true;
bSuccessful = InResult == ECommandResult::Succeeded;
}
const FString& GetParameter() const
{
return Parameter;
}
bool IsDispatched() const
{
return bDispatched;
}
void SetDispatched()
{
bDispatched = true;
}
bool IsDone() const
{
return bDone;
}
bool IsSuccessful() const
{
return bSuccessful;
}
private:
/** Parameter we perform this operation with, if any */
FString Parameter;
/** Whether the async operation been issued */
bool bDispatched;
/** Whether the async operation has completed */
bool bDone;
/** Whether the operation was successful */
bool bSuccessful;
};
}