TrinityCore
Loading...
Searching...
No Matches
Trinity::Net::Http::SslSocket Class Reference

#include <HttpSslSocket.h>

+ Inheritance diagram for Trinity::Net::Http::SslSocket:

Public Member Functions

 SslSocket (IoContextTcpSocket &&socket, boost::asio::ssl::context &sslContext)
 
 SslSocket (boost::asio::io_context &context, boost::asio::ssl::context &sslContext)
 
 SslSocket (SslSocket const &other)=delete
 
 SslSocket (SslSocket &&other)=delete
 
SslSocketoperator= (SslSocket const &other)=delete
 
SslSocketoperator= (SslSocket &&other)=delete
 
 ~SslSocket ()
 
void Start () override
 
- Public Member Functions inherited from Trinity::Net::Http::BaseSocket< SslStream< Impl::BoostBeastSocketWrapper > >
 BaseSocket (BaseSocket const &other)=delete
 
 BaseSocket (BaseSocket &&other)=delete
 
BaseSocketoperator= (BaseSocket const &other)=delete
 
BaseSocketoperator= (BaseSocket &&other)=delete
 
 ~BaseSocket ()=default
 
SocketReadCallbackResult ReadHandler () final
 
bool HandleMessage (Request &request)
 
virtual RequestHandlerResult RequestHandler (RequestContext &context)=0
 
void SendResponse (RequestContext &context) final
 
bool Update () override
 
boost::asio::ip::address const & GetRemoteIpAddress () const final
 
bool IsOpen () const final
 
void CloseSocket () final
 
std::string GetClientInfo () const override
 
SessionStateGetSessionState () const override
 
void ResetHttpParser ()
 
- Public Member Functions inherited from Trinity::Net::Socket< Stream >
template<typename... Args>
 Socket (IoContextTcpSocket &&socket, Args &&... args)
 
template<typename... Args>
 Socket (boost::asio::io_context &context, Args &&... args)
 
 Socket (Socket const &other)=delete
 
 Socket (Socket &&other)=delete
 
Socketoperator= (Socket const &other)=delete
 
Socketoperator= (Socket &&other)=delete
 
virtual ~Socket ()
 
template<BOOST_ASIO_COMPLETION_TOKEN_FOR(void(boost::system::error_code, boost::asio::ip::tcp::endpoint)) Callback>
decltype(auto) Connect (boost::asio::ip::tcp::endpoint const &endpoint, Callback &&callback)
 
template<BOOST_ASIO_COMPLETION_TOKEN_FOR(void(boost::system::error_code, boost::asio::ip::tcp::endpoint)) Callback>
decltype(auto) Connect (std::vector< boost::asio::ip::tcp::endpoint > const &endpoints, Callback &&callback)
 
boost::asio::ip::address const & GetRemoteIpAddress () const
 
uint16 GetRemotePort () const
 
void SetRemoteEndpoint (boost::asio::ip::tcp::endpoint const &endpoint)
 
template<invocable_r< SocketReadCallbackResult > Callback>
void AsyncRead (Callback &&callback)
 
void QueuePacket (MessageBuffer &&buffer)
 
bool IsOpen () const
 
void CloseSocket ()
 
void DelayedCloseSocket ()
 Marks the socket for closing after write buffer becomes empty.
 
MessageBufferGetReadBuffer ()
 
Stream & underlying_stream ()
 
- Public Member Functions inherited from Trinity::Net::Http::AbstractSocket
 AbstractSocket ()=default
 
 AbstractSocket (AbstractSocket const &other)=default
 
 AbstractSocket (AbstractSocket &&other)=default
 
AbstractSocketoperator= (AbstractSocket const &other)=default
 
AbstractSocketoperator= (AbstractSocket &&other)=default
 
virtual ~AbstractSocket ()=default
 
void LogRequestAndResponse (RequestContext const &context, MessageBuffer &buffer) const
 
Optional< boost::uuids::uuid > GetSessionId () const
 

Private Types

using SocketBase = BaseSocket< SslStream< Impl::BoostBeastSocketWrapper > >
 

Additional Inherited Members

- Static Public Member Functions inherited from Trinity::Net::Http::AbstractSocket
static bool ParseRequest (MessageBuffer &packet, RequestParser &parser)
 
static bool ParseResponse (MessageBuffer &packet, ResponseParser &parser)
 
static MessageBuffer SerializeRequest (Request const &request)
 
static MessageBuffer SerializeResponse (Request const &request, Response const &response)
 
static std::string GetClientInfo (boost::asio::ip::address const &address, uint16 port, SessionState const *state)
 
- Protected Member Functions inherited from Trinity::Net::Http::BaseSocket< SslStream< Impl::BoostBeastSocketWrapper > >
virtual std::shared_ptr< SessionStateObtainSessionState (RequestContext &context) const=0
 
- Protected Member Functions inherited from Trinity::Net::Socket< Stream >
virtual void OnClose ()
 
bool AsyncProcessQueue ()
 
void SetNoDelay (bool enable)
 
- Protected Attributes inherited from Trinity::Net::Http::BaseSocket< SslStream< Impl::BoostBeastSocketWrapper > >
Optional< RequestParser_httpParser
 
std::shared_ptr< SessionState_state
 

Detailed Description

Definition at line 26 of file HttpSslSocket.h.

Member Typedef Documentation

◆ SocketBase

Constructor & Destructor Documentation

◆ SslSocket() [1/4]

Trinity::Net::Http::SslSocket::SslSocket ( IoContextTcpSocket &&  socket,
boost::asio::ssl::context &  sslContext 
)
explicit

Definition at line 23 of file HttpSslSocket.cpp.

◆ SslSocket() [2/4]

Trinity::Net::Http::SslSocket::SslSocket ( boost::asio::io_context &  context,
boost::asio::ssl::context &  sslContext 
)
explicit

Definition at line 27 of file HttpSslSocket.cpp.

◆ SslSocket() [3/4]

Trinity::Net::Http::SslSocket::SslSocket ( SslSocket const &  other)
delete

◆ SslSocket() [4/4]

Trinity::Net::Http::SslSocket::SslSocket ( SslSocket &&  other)
delete

◆ ~SslSocket()

Trinity::Net::Http::SslSocket::~SslSocket ( )
default

Member Function Documentation

◆ operator=() [1/2]

SslSocket & Trinity::Net::Http::SslSocket::operator= ( SslSocket &&  other)
delete

◆ operator=() [2/2]

SslSocket & Trinity::Net::Http::SslSocket::operator= ( SslSocket const &  other)
delete

◆ Start()

void Trinity::Net::Http::SslSocket::Start ( )
overridevirtual

Reimplemented from Trinity::Net::Http::BaseSocket< SslStream< Impl::BoostBeastSocketWrapper > >.

Definition at line 33 of file HttpSslSocket.cpp.

+ Here is the call graph for this function:

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