1#ifndef XRPL_SERVER_SSLWSPEER_H_INCLUDED
2#define XRPL_SERVER_SSLWSPEER_H_INCLUDED
4#include <xrpl/server/WSSession.h>
5#include <xrpl/server/detail/BaseHTTPPeer.h>
7#include <boost/asio/ip/tcp.hpp>
8#include <boost/asio/ssl/context.hpp>
9#include <boost/asio/ssl/stream.hpp>
10#include <boost/beast/core/tcp_stream.hpp>
11#include <boost/beast/ssl/ssl_stream.hpp>
12#include <boost/beast/websocket/ssl.hpp>
18template <
class Handler>
33 boost::beast::websocket::stream<stream_type&>
ws_;
36 template <
class Body,
class Headers>
41 boost::beast::http::request<Body, Headers>&&
request,
48template <
class Handler>
49template <
class Body,
class Headers>
54 boost::beast::http::request<Body, Headers>&& request,
60 stream_ptr->get_executor(),
65 , stream_ptr_(
std::move(stream_ptr))
A generic endpoint for log messages.
Represents an active WebSocket connection.
http_request_type const & request() const override
boost::asio::ip::tcp::endpoint const & remote_endpoint() const override
Port const & port() const override
boost::beast::websocket::stream< stream_type & > ws_
SSLWSPeer(Port const &port, Handler &handler, endpoint_type remote_endpoint, boost::beast::http::request< Body, Headers > &&request, std::unique_ptr< stream_type > &&stream_ptr, beast::Journal journal)
boost::beast::ssl_stream< socket_type > stream_type
std::unique_ptr< stream_type > stream_ptr_
boost::beast::tcp_stream socket_type
boost::asio::ip::tcp::endpoint endpoint_type
boost::system::error_code error_code
boost::asio::basic_waitable_timer< clock_type > waitable_timer
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Configuration information for a Server listening port.