LeviLamina
Loading...
Searching...
No Matches
ISignalingJsonRpcInterop.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/threading/Async.h"
7#include "mc/deps/nether_net/ESessionError.h"
8#include "mc/platform/ErrorInfo.h"
9#include "mc/platform/Result.h"
10
11// auto generated forward declare list
12// clang-format off
13class MessageTracker;
14namespace Json { class Value; }
15namespace NetherNet { struct NetworkID; }
16namespace NetherNet { struct StunRelayServer; }
17namespace PlayerMessaging { struct NetworkID; }
18// clang-format on
19
21public:
22 // virtual functions
23 // NOLINTBEGIN
24 virtual ~ISignalingJsonRpcInterop() = default;
25
26 virtual ::Bedrock::Threading::Async<::Bedrock::Result<void, ::NetherNet::ESessionError>> sendJsonRpcTo(
28 ::std::optional<::std::string> const& messageId,
29 ::std::string const& message
30 ) const = 0;
31
32 virtual ::Bedrock::Threading::Async<::Bedrock::Result<void, ::NetherNet::ESessionError>>
33 sendJsonRpc(::std::string const& message) const = 0;
34
35 virtual ::std::shared_ptr<::MessageTracker> getMessageTracker() = 0;
36
37 virtual void parseSignal(::NetherNet::NetworkID fromNetworkID, ::std::string message, ::std::string messageId) = 0;
38
39 virtual void parseTurnConfig(::Json::Value const& config) = 0;
40
41 virtual void setTurnConfig(
42 ::std::vector<::NetherNet::StunRelayServer>&& config,
43 ::std::chrono::steady_clock::time_point expiration
44 ) = 0;
45
46 virtual void onTurnConfigFailure(::Bedrock::ErrorInfo<::NetherNet::ESessionError> const& error) = 0;
47 // NOLINTEND
48
49public:
50 // virtual function thunks
51 // NOLINTBEGIN
52
53 // NOLINTEND
54};
Definition ISignalingJsonRpcInterop.h:20
Definition Value.h:16
Definition MessageTracker.h:19
Definition ErrorInfo.h:9
Definition NetworkID.h:17
Definition StunRelayServer.h:7
Definition NetworkID.h:12