27#include "CoreMinimal.h"
69 FInvocationMessage(
const FString& InInvocationId,
const FString& InTarget,
const TArray<FSignalRValue>& InArgs,
const TArray<FString>& InStreamIds = TArray<FString>()) :
76 FInvocationMessage(FString&& InInvocationId, FString&& InTarget, TArray<FSignalRValue>&& InArgs, TArray<FString>&& InStreamIds = TArray<FString>()) :
78 Target(MoveTemp(InTarget)),
149 virtual FName
Name()
const = 0;
174 virtual TArray<TSharedPtr<FHubMessage>>
ParseMessages(
const FString&)
const = 0;
ESignalRMessageType
Enumeration of SignalR message types.
Definition MessageType.h:34
@ Completion
Definition MessageType.h:37
@ Ping
Definition MessageType.h:40
@ Close
Definition MessageType.h:41
@ Invocation
Definition MessageType.h:35
Represents a value that can be sent to or received from a SignalR hub.
Definition SignalRValue.h:34
Interface for SignalR hub protocol implementations.
Definition IHubProtocol.h:140
virtual FString SerializeMessage(const FHubMessage *) const =0
Serializes a hub message to a string.
virtual TArray< TSharedPtr< FHubMessage > > ParseMessages(const FString &) const =0
Parses a string containing one or more serialized hub messages.
virtual FName Name() const =0
Gets the name of the protocol.
virtual int Version() const =0
Gets the version of the protocol.
virtual ~IHubProtocol()
Definition IHubProtocol.cpp:27
const FString InvocationId
Definition IHubProtocol.h:60
FBaseInvocationMessage(const FString &InInvocationId, ESignalRMessageType InMessageType)
Definition IHubProtocol.h:55
TOptional< FString > Error
Definition IHubProtocol.h:131
FCloseMessage()
Definition IHubProtocol.h:128
TOptional< bool > bAllowReconnect
Definition IHubProtocol.h:132
FString Error
Definition IHubProtocol.h:108
bool HasResult
Definition IHubProtocol.h:109
FSignalRValue Result
Definition IHubProtocol.h:110
FCompletionMessage(FString &&InInvocationId, FString &&InError, FSignalRValue &&InResult, bool InHasResult)
Definition IHubProtocol.h:101
FCompletionMessage(const FString &InInvocationId, const FString &InError, const FSignalRValue &InResult, bool InHasResult)
Definition IHubProtocol.h:94
Base message structure for SignalR hub communication.
Definition IHubProtocol.h:36
FHubMessage(ESignalRMessageType InMessageType)
Definition IHubProtocol.h:38
const ESignalRMessageType MessageType
Definition IHubProtocol.h:45
virtual ~FHubMessage()
Definition IHubProtocol.h:43
FInvocationMessage(const FString &InInvocationId, const FString &InTarget, const TArray< FSignalRValue > &InArgs, const TArray< FString > &InStreamIds=TArray< FString >())
Definition IHubProtocol.h:69
TArray< FString > StreamIds
Definition IHubProtocol.h:85
FString Target
Definition IHubProtocol.h:83
TArray< FSignalRValue > Arguments
Definition IHubProtocol.h:84
FInvocationMessage(FString &&InInvocationId, FString &&InTarget, TArray< FSignalRValue > &&InArgs, TArray< FString > &&InStreamIds=TArray< FString >())
Definition IHubProtocol.h:76
FPingMessage()
Definition IHubProtocol.h:118