3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/http/WebSocket.h"
7#include "mc/deps/core/threading/AsyncPromise.h"
8#include "mc/deps/core/threading/IAsyncResult.h"
12namespace Bedrock::Http {
class HeaderCollection; }
13namespace Bedrock::Http {
class RetryPolicy; }
14namespace Bedrock::Http {
struct Url; }
17namespace Bedrock::Http {
39 virtual bool shouldReconnect()
const;
42 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Url>> getUrl() = 0;
45 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::HeaderCollection>> getHeaders();
48 virtual ::Bedrock::Http::RetryPolicy getReconnectPolicy();
51 virtual void onConnect();
54 virtual void onDisconnect(
bool, uint);
57 virtual void onClose(uint status) ;
66 ::std::string
const& uri,
68 ::std::error_code lastError,
74 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::std::error_code>>
connect();
96 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::HeaderCollection>>
$getHeaders();
Definition PersistentWebSocket.h:19
MCAPI::Bedrock::Http::RetryPolicy $getReconnectPolicy()
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::std::error_code > > connect()
MCAPI void $onDisconnect(bool, uint)
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::HeaderCollection > > $getHeaders()
MCAPI void _connectWithRetry(::std::string const &uri, ::Bedrock::Http::HeaderCollection const &headers, ::std::error_code lastError, ::Bedrock::Http::RetryPolicy &&retry)
MCAPI void $onClose(uint status)
MCAPI bool $shouldReconnect() const
MCAPI PersistentWebSocket()
MCAPI void _reconnect(::std::error_code lastError, ::Bedrock::Http::RetryPolicy &&retry)
static MCAPI void ** $vftable()
Definition RetryPolicy.h:12
Definition WebSocket.h:18