|
| | WSSession (const std::shared_ptr< WSServer > &server) |
| |
| | WSSession (const WSSession &)=delete |
| |
| | WSSession (WSSession &&)=delete |
| |
| virtual | ~WSSession ()=default |
| |
| WSSession & | operator= (const WSSession &)=delete |
| |
| WSSession & | operator= (WSSession &&)=delete |
| |
| virtual bool | Close () |
| |
| virtual bool | Close (int status) |
| |
| virtual bool | Close (int status, const void *buffer, size_t size) |
| |
| virtual bool | Close (int status, std::string_view text) |
| |
| size_t | SendText (const void *buffer, size_t size) |
| |
| size_t | SendText (std::string_view text) |
| |
| size_t | SendText (const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| |
| size_t | SendText (std::string_view text, const CppCommon::Timespan &timeout) |
| |
| bool | SendTextAsync (const void *buffer, size_t size) |
| |
| bool | SendTextAsync (std::string_view text) |
| |
| size_t | SendBinary (const void *buffer, size_t size) |
| |
| size_t | SendBinary (std::string_view text) |
| |
| size_t | SendBinary (const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| |
| size_t | SendBinary (std::string_view text, const CppCommon::Timespan &timeout) |
| |
| bool | SendBinaryAsync (const void *buffer, size_t size) |
| |
| bool | SendBinaryAsync (std::string_view text) |
| |
| size_t | SendClose (int status, const void *buffer, size_t size) |
| |
| size_t | SendClose (int status, std::string_view text) |
| |
| size_t | SendClose (int status, const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| |
| size_t | SendClose (int status, std::string_view text, const CppCommon::Timespan &timeout) |
| |
| bool | SendCloseAsync (int status, const void *buffer, size_t size) |
| |
| bool | SendCloseAsync (int status, std::string_view text) |
| |
| size_t | SendPing (const void *buffer, size_t size) |
| |
| size_t | SendPing (std::string_view text) |
| |
| size_t | SendPing (const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| |
| size_t | SendPing (std::string_view text, const CppCommon::Timespan &timeout) |
| |
| bool | SendPingAsync (const void *buffer, size_t size) |
| |
| bool | SendPingAsync (std::string_view text) |
| |
| size_t | SendPong (const void *buffer, size_t size) |
| |
| size_t | SendPong (std::string_view text) |
| |
| size_t | SendPong (const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| |
| size_t | SendPong (std::string_view text, const CppCommon::Timespan &timeout) |
| |
| bool | SendPongAsync (const void *buffer, size_t size) |
| |
| bool | SendPongAsync (std::string_view text) |
| |
| std::string | ReceiveText () |
| |
| std::string | ReceiveText (const CppCommon::Timespan &timeout) |
| |
| std::vector< uint8_t > | ReceiveBinary () |
| |
| std::vector< uint8_t > | ReceiveBinary (const CppCommon::Timespan &timeout) |
| |
| | HTTPSession (const std::shared_ptr< HTTPServer > &server) |
| |
| | HTTPSession (const HTTPSession &)=delete |
| |
| | HTTPSession (HTTPSession &&)=delete |
| |
| virtual | ~HTTPSession ()=default |
| |
| HTTPSession & | operator= (const HTTPSession &)=delete |
| |
| HTTPSession & | operator= (HTTPSession &&)=delete |
| |
| CppCommon::FileCache & | cache () noexcept |
| | Get the static content cache.
|
| |
| const CppCommon::FileCache & | cache () const noexcept |
| |
| HTTPResponse & | response () noexcept |
| | Get the HTTP response.
|
| |
| const HTTPResponse & | response () const noexcept |
| |
| size_t | SendResponse () |
| | Send the current HTTP response (synchronous)
|
| |
| size_t | SendResponse (const HTTPResponse &response) |
| | Send the HTTP response (synchronous)
|
| |
| size_t | SendResponseBody (std::string_view body) |
| | Send the HTTP response body (synchronous)
|
| |
| size_t | SendResponseBody (const void *buffer, size_t size) |
| | Send the HTTP response body (synchronous)
|
| |
| size_t | SendResponse (const CppCommon::Timespan &timeout) |
| | Send the current HTTP response with timeout (synchronous)
|
| |
| size_t | SendResponse (const HTTPResponse &response, const CppCommon::Timespan &timeout) |
| | Send the HTTP response with timeout (synchronous)
|
| |
| size_t | SendResponseBody (std::string_view body, const CppCommon::Timespan &timeout) |
| | Send the HTTP response body with timeout (synchronous)
|
| |
| size_t | SendResponseBody (const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| | Send the HTTP response body with timeout (synchronous)
|
| |
| bool | SendResponseAsync () |
| | Send the current HTTP response (asynchronous)
|
| |
| bool | SendResponseAsync (const HTTPResponse &response) |
| | Send the HTTP response (asynchronous)
|
| |
| bool | SendResponseBodyAsync (std::string_view body) |
| | Send the HTTP response body (asynchronous)
|
| |
| bool | SendResponseBodyAsync (const void *buffer, size_t size) |
| | Send the HTTP response body (asynchronous)
|
| |
| | TCPSession (const std::shared_ptr< TCPServer > &server) |
| | Initialize the session with a given server.
|
| |
| | TCPSession (const TCPSession &)=delete |
| |
| | TCPSession (TCPSession &&)=delete |
| |
| virtual | ~TCPSession ()=default |
| |
| TCPSession & | operator= (const TCPSession &)=delete |
| |
| TCPSession & | operator= (TCPSession &&)=delete |
| |
| const CppCommon::UUID & | id () const noexcept |
| | Get the session Id.
|
| |
| std::shared_ptr< TCPServer > & | server () noexcept |
| | Get the server.
|
| |
| std::shared_ptr< asio::io_service > & | io_service () noexcept |
| | Get the Asio IO service.
|
| |
| asio::io_service::strand & | strand () noexcept |
| | Get the Asio service strand for serialized handler execution.
|
| |
| asio::ip::tcp::socket & | socket () noexcept |
| | Get the session socket.
|
| |
| uint64_t | bytes_pending () const noexcept |
| | Get the number of bytes pending sent by the session.
|
| |
| uint64_t | bytes_sent () const noexcept |
| | Get the number of bytes sent by the session.
|
| |
| uint64_t | bytes_received () const noexcept |
| | Get the number of bytes received by the session.
|
| |
| size_t | option_receive_buffer_limit () const noexcept |
| | Get the option: receive buffer limit.
|
| |
| size_t | option_receive_buffer_size () const |
| | Get the option: receive buffer size.
|
| |
| size_t | option_send_buffer_limit () const noexcept |
| | Get the option: send buffer limit.
|
| |
| size_t | option_send_buffer_size () const |
| | Get the option: send buffer size.
|
| |
| bool | IsConnected () const noexcept |
| | Is the session connected?
|
| |
| virtual bool | Disconnect () |
| | Disconnect the session.
|
| |
| virtual size_t | Send (const void *buffer, size_t size) |
| | Send data to the client (synchronous)
|
| |
| virtual size_t | Send (std::string_view text) |
| | Send text to the client (synchronous)
|
| |
| virtual size_t | Send (const void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| | Send data to the client with timeout (synchronous)
|
| |
| virtual size_t | Send (std::string_view text, const CppCommon::Timespan &timeout) |
| | Send text to the client with timeout (synchronous)
|
| |
| virtual bool | SendAsync (const void *buffer, size_t size) |
| | Send data to the client (asynchronous)
|
| |
| virtual bool | SendAsync (std::string_view text) |
| | Send text to the client (asynchronous)
|
| |
| virtual size_t | Receive (void *buffer, size_t size) |
| | Receive data from the client (synchronous)
|
| |
| virtual std::string | Receive (size_t size) |
| | Receive text from the client (synchronous)
|
| |
| virtual size_t | Receive (void *buffer, size_t size, const CppCommon::Timespan &timeout) |
| | Receive data from the client with timeout (synchronous)
|
| |
| virtual std::string | Receive (size_t size, const CppCommon::Timespan &timeout) |
| | Receive text from the client with timeout (synchronous)
|
| |
| virtual void | ReceiveAsync () |
| | Receive data from the client (asynchronous)
|
| |
| void | SetupReceiveBufferLimit (size_t limit) noexcept |
| | Setup option: receive buffer limit.
|
| |
| void | SetupReceiveBufferSize (size_t size) |
| | Setup option: receive buffer size.
|
| |
| void | SetupSendBufferLimit (size_t limit) noexcept |
| | Setup option: send buffer limit.
|
| |
| void | SetupSendBufferSize (size_t size) |
| | Setup option: send buffer size.
|
| |
|
| void | onDisconnected () override |
| | Handle session disconnected notification.
|
| |
| void | onReceived (const void *buffer, size_t size) override |
| | Handle buffer received notification.
|
| |
| void | onReceivedRequestHeader (const HTTP::HTTPRequest &request) override |
| | Handle HTTP request header received notification.
|
| |
| void | onReceivedRequest (const HTTP::HTTPRequest &request) override |
| | Handle HTTP request received notification.
|
| |
| void | onReceivedRequestError (const HTTP::HTTPRequest &request, const std::string &error) override |
| | Handle HTTP request error notification.
|
| |
| void | onWSClose (const void *buffer, size_t size, int status=1000) override |
| | Handle WebSocket close notification.
|
| |
| void | onWSPing (const void *buffer, size_t size) override |
| | Handle WebSocket ping notification.
|
| |
| void | onWSError (const std::string &message) override |
| | Handle WebSocket error notification.
|
| |
| virtual void | onReceivedCachedRequest (const HTTPRequest &request, std::string_view content) |
| | Handle HTTP cached request received notification.
|
| |
| virtual void | onConnected () |
| | Handle session connected notification.
|
| |
| virtual void | onSent (size_t sent, size_t pending) |
| | Handle buffer sent notification.
|
| |
| virtual void | onEmpty () |
| | Handle empty send buffer notification.
|
| |
| virtual void | onError (int error, const std::string &category, const std::string &message) |
| | Handle error notification.
|
| |
| virtual void | onWSConnecting (HTTP::HTTPRequest &request) |
| | Handle WebSocket client connecting notification.
|
| |
| virtual void | onWSConnected (const HTTP::HTTPResponse &response) |
| | Handle WebSocket client connected notification.
|
| |
| virtual bool | onWSConnecting (const HTTP::HTTPRequest &request, HTTP::HTTPResponse &response) |
| | Handle WebSocket server session validating notification.
|
| |
| virtual void | onWSConnected (const HTTP::HTTPRequest &request) |
| | Handle WebSocket server session connected notification.
|
| |
| virtual void | onWSDisconnected () |
| | Handle WebSocket client disconnected notification.
|
| |
| virtual void | onWSReceived (const void *buffer, size_t size) |
| | Handle WebSocket received notification.
|
| |
| virtual void | onWSPong (const void *buffer, size_t size) |
| | Handle WebSocket pong notification.
|
| |
| | WebSocket () |
| |
| | WebSocket (const WebSocket &)=delete |
| |
| | WebSocket (WebSocket &&)=delete |
| |
| | ~WebSocket ()=default |
| |
| WebSocket & | operator= (const WebSocket &)=delete |
| |
| WebSocket & | operator= (WebSocket &&)=delete |
| |
| std::string_view | ws_nonce () const noexcept |
| | Get the WebSocket random nonce.
|
| |
| bool | PerformClientUpgrade (const HTTP::HTTPResponse &response, const CppCommon::UUID &id) |
| | Perform WebSocket client upgrade.
|
| |
| bool | PerformServerUpgrade (const HTTP::HTTPRequest &request, HTTP::HTTPResponse &response) |
| | Perform WebSocket server upgrade.
|
| |
| void | PrepareSendFrame (uint8_t opcode, bool mask, const void *buffer, size_t size, int status=0) |
| | Prepare WebSocket send frame.
|
| |
| void | PrepareReceiveFrame (const void *buffer, size_t size) |
| | Prepare WebSocket receive frame.
|
| |
| size_t | RequiredReceiveFrameSize () |
| | Required WebSocket receive frame size.
|
| |
| void | ClearWSBuffers () |
| | Clear WebSocket send/receive buffers.
|
| |
| void | InitWSNonce () |
| | Initialize WebSocket random nonce.
|
| |