9#include <condition_variable>
13struct aws_http_connection_manager;
27 std::function<void(std::shared_ptr<HttpClientConnection>,
int errorCode)>;
66 :
public std::enable_shared_from_this<HttpClientConnectionManager>
90 std::future<void> InitiateShutdown()
noexcept;
99 static std::shared_ptr<HttpClientConnectionManager> NewClientConnectionManager(
110 aws_http_connection_manager *m_connectionManager;
113 std::promise<void> m_shutdownPromise;
114 std::atomic<bool> m_releaseInvoked;
116 static void s_onConnectionSetup(
117 aws_http_connection *connection,
119 void *userData)
noexcept;
121 static void s_shutdownCompleted(
void *userData)
noexcept;
#define AWS_CRT_CPP_API
Definition: Exports.h:37
Definition: HttpConnectionManager.h:67
Definition: HttpConnectionManager.h:33
HttpClientConnectionManagerOptions & operator=(const HttpClientConnectionManagerOptions &rhs)=default
HttpClientConnectionOptions ConnectionOptions
Definition: HttpConnectionManager.h:45
size_t MaxConnections
Definition: HttpConnectionManager.h:50
HttpClientConnectionManagerOptions & operator=(HttpClientConnectionManagerOptions &&rhs)=default
HttpClientConnectionManagerOptions(HttpClientConnectionManagerOptions &&rhs)=default
bool EnableBlockingShutdown
Definition: HttpConnectionManager.h:59
HttpClientConnectionManagerOptions(const HttpClientConnectionManagerOptions &rhs)=default
Definition: HttpConnection.h:347
Definition: HttpConnectionManager.cpp:177
std::function< void(std::shared_ptr< HttpClientConnection >, int errorCode)> OnClientConnectionAvailable
Definition: HttpConnectionManager.h:27
aws_allocator Allocator
Definition: StlAllocator.h:17
AWS_CRT_CPP_API Allocator * g_allocator
Definition: Api.cpp:23