3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/http/DispatcherProcess.h"
7#include "mc/deps/core/threading/IAsyncResult.h"
12namespace Bedrock::Http {
class Request; }
13namespace Bedrock::Http {
class Response; }
14namespace Bedrock::Http::Internal {
class IRequestBody; }
15namespace Bedrock::Http::Internal {
class IResponseBody; }
16namespace Bedrock::Threading {
class Mutex; }
19namespace Bedrock::Http {
43 virtual void initialize() ;
46 virtual void shutdown() ;
49 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response>>
58 MCNAPI ::std::optional<::std::chrono::seconds>
61 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response>>
64 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response>>
65 _retry(::gsl::not_null<::HC_CALL*> callHandle, ::std::chrono::seconds delay);
67 MCNAPI ::std::shared_ptr<::Bedrock::Http::Internal::IRequestBody>
70 MCNAPI ::std::shared_ptr<::Bedrock::Http::Internal::IResponseBody>
73 MCNAPI
void _untrack(::gsl::not_null<::HC_CALL*> callHandle);
93 uint64 bytesAvailable,
105 MCNAPI static ::std::weak_ptr<::Bedrock::Http::LibHttpClientImpl>&
sWeakThis();
123 MCNAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response>>
Definition DispatcherProcess.h:11
Definition LibHttpClientImpl.h:21
static MCAPI long _responseBodyWrite(::HC_CALL *call, uchar const *source, uint64 bytesAvailable, void *context)
static MCAPI ::std::weak_ptr<::Bedrock::Http::LibHttpClientImpl > & sWeakThis()
MCAPI ::std::optional<::std::chrono::seconds > _checkRetryPolicy(::gsl::not_null<::HC_CALL * > call, ::Bedrock::Http::Response const &httpResponse)
static MCAPI long _convertResponseBody(::gsl::not_null<::HC_CALL * > callHandle, ::Bedrock::Http::Response &response)
static MCAPI long _createCallHandle(::HC_CALL **outHandle, ::Bedrock::Http::Request const &request)
MCAPI void _untrack(::gsl::not_null<::HC_CALL * > callHandle)
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response > > $send(::Bedrock::Http::Request &&request)
MCAPI LibHttpClientImpl()
MCAPI ::std::shared_ptr<::Bedrock::Http::Internal::IResponseBody > _tryGetResponseBody(::gsl::not_null<::HC_CALL * > call)
static MCAPI long _requestBodyRead(::HC_CALL *call, uint64 offset, uint64 bytesAvailable, void *context, uchar *destination, uint64 *bytesWritten)
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response > > _retry(::gsl::not_null<::HC_CALL * > callHandle, ::std::chrono::seconds delay)
static MCAPI long _convertRequestBody(::gsl::not_null<::HC_CALL * > callHandle, ::Bedrock::Http::Request const &request)
static MCAPI ::Bedrock::Threading::Mutex & sWeakThisMutex()
MCAPI ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::Bedrock::Http::Response > > _convertResponse(::gsl::not_null<::HC_CALL * > callHandle)
MCAPI ::std::shared_ptr<::Bedrock::Http::Internal::IRequestBody > _tryGetRequestBody(::gsl::not_null<::HC_CALL * > call)
static MCAPI long _convertResponseHeaders(::gsl::not_null<::HC_CALL * > callHandle, ::Bedrock::Http::Response &response)
static MCAPI void ** $vftable()