Clio develop
The XRP Ledger API server.
Loading...
Searching...
No Matches
web::SslWsUpgrader< HandlerType > Class Template Reference

The HTTPS upgrader class, upgrade from an HTTPS session to a secure websocket session. More...

#include <SslWsSession.hpp>

Inheritance diagram for web::SslWsUpgrader< HandlerType >:
Collaboration diagram for web::SslWsUpgrader< HandlerType >:

Public Member Functions

 SslWsUpgrader (boost::beast::ssl_stream< boost::beast::tcp_stream > stream, std::string ip, std::reference_wrapper< util::TagDecoratorFactory const > tagFactory, std::reference_wrapper< dosguard::DOSGuardInterface > dosGuard, std::shared_ptr< HandlerType > handler, boost::beast::flat_buffer &&buffer, http::request< http::string_body > request, bool isAdmin, std::uint32_t maxWsSendingQueueSize)
 Create a new upgrader to secure websocket.
 
void run ()
 Initiate the upgrade.
 

Detailed Description

template<SomeServerHandler HandlerType>
class web::SslWsUpgrader< HandlerType >

The HTTPS upgrader class, upgrade from an HTTPS session to a secure websocket session.

Pass the stream to the session class after upgrade.

Constructor & Destructor Documentation

◆ SslWsUpgrader()

template<SomeServerHandler HandlerType>
web::SslWsUpgrader< HandlerType >::SslWsUpgrader ( boost::beast::ssl_stream< boost::beast::tcp_stream > stream,
std::string ip,
std::reference_wrapper< util::TagDecoratorFactory const > tagFactory,
std::reference_wrapper< dosguard::DOSGuardInterface > dosGuard,
std::shared_ptr< HandlerType > handler,
boost::beast::flat_buffer && buffer,
http::request< http::string_body > request,
bool isAdmin,
std::uint32_t maxWsSendingQueueSize )
inline

Create a new upgrader to secure websocket.

Parameters
streamThe SSL stream. Ownership is transferred
ipClient's IP address
tagFactoryA factory that is used to generate tags to track requests and sessions
dosGuardThe denial of service guard to use
handlerThe server handler to use
bufferBuffer with initial data received from the peer. Ownership is transferred
requestThe request. Ownership is transferred
isAdminWhether the connection has admin privileges
maxWsSendingQueueSizeThe maximum size of the sending queue for websocket

The documentation for this class was generated from the following file: