Public Types | Public Member Functions | Protected Member Functions | List of all members
Atom::Handlers::WebSocketHandler Class Referenceabstract
Inheritance diagram for Atom::Handlers::WebSocketHandler:
Inheritance graph
[legend]
Collaboration diagram for Atom::Handlers::WebSocketHandler:
Collaboration graph
[legend]

Public Types

using VectorSocket = std::vector< const WebSocketHandler * >
 
- Public Types inherited from Atom::HTTP::Request
using HTTPServerRequestPtr = std::optional< HTTPServerRequest * >
 
using HTTPServerResponsePtr = std::optional< HTTPServerResponse * >
 
- Public Types inherited from Atom::HTTP::Methods
using MethodProcess = std::function< void(HTTP::Methods &)>
 
- Public Types inherited from Atom::HTTP::Body
enum class  Type { kFormMultipart , kFormURLEncoded , kJSON , kURI }
 
using Ptr = std::shared_ptr< Body >
 

Public Member Functions

void Send_ (std::string message) const
 
- Public Member Functions inherited from Atom::Handlers::RootHandler
std::shared_ptr< Atom::Tools::Route > & get_requested_route ()
 
Functions::FunctionsManagerget_functions_manager ()
 
Functions::Function::Ptr & get_current_function ()
 
virtual void handleRequest (HTTPServerRequest &request, HTTPServerResponse &response)
 
bool SetupSSL_ ()
 
Functions::Function::Ptr AddFunction_ (std::string endpoint, HTTP::EnumMethods method)
 
bool VerifySession_ ()
 
bool VerifyPermissions_ ()
 
bool IdentifyRoute_ ()
 
void ManageRequestBody_ ()
 
- Public Member Functions inherited from Atom::HTTP::CommonResponses
std::map< HTTP::Status, Attributes > & get_responses_ ()
 
void CompoundResponse_ (HTTP::Status status, JSON::Object::Ptr result_json)
 
void CompoundFillResponse_ (HTTP::Status status, JSON::Object::Ptr result_json, std::string message)
 
void JSONResponse_ (HTTP::Status status, std::string message)
 
void HTMLResponse_ (HTTP::Status status, std::string message)
 
void CustomHTMLResponse_ (HTTP::Status status, std::string html_message)
 
void FileResponse_ (HTTP::Status status, std::string address)
 
- Public Member Functions inherited from Atom::HTTP::Request
HTTPServerRequestPtr & get_http_server_request ()
 
HTTPServerResponsePtr & get_http_server_response ()
 
std::vector< HTTP::Headerget_headers ()
 
std::vector< HTTP::Cookieget_cookies ()
 
std::string get_uri () const
 
std::string get_method () const
 
std::string get_content_type () const
 
Net::NameValueCollection get_content_type_parameters () const
 
void AddHeader_ (std::string name, std::string value)
 
void AddCookie_ (std::string name, std::string value)
 
- Public Member Functions inherited from Atom::HTTP::Methods
std::map< const std::string, EnumMethods > & get_map_string_methods ()
 
std::map< EnumMethods, const std::string > & get_map_enum_methods ()
 
EnumMethods GetMethod_ (const std::string method)
 
const std::string GetMethod_ (EnumMethods &method)
 
void AddProcess_ (const std::string method, MethodProcess process)
 
bool EvaluateProcess_ (std::string request_method)
 
- Public Member Functions inherited from Atom::Extras::SecurityVerification
Security::PermissionsManagerget_permissions_manager ()
 
Security::UsersManagerget_users_manager ()
 
Extras::SecurityType get_security_type () const
 
void set_security_type (Extras::SecurityType security_type)
 
bool VerifyRoutesPermissions_ (Tools::Route &route, std::string action_type)
 
- Public Member Functions inherited from Atom::HTTP::Body
Type get_body_type () const
 
URI::QueryParameters & get_query_parameters ()
 
Files::FileManagerget_files_parameters ()
 
std::shared_ptr< HTMLForm > & get_form ()
 
void ReadFormMultipart_ (Net::HTTPServerRequest &request)
 
void ReadFormURLEncoded_ (Net::HTTPServerRequest &request, std::istream &stream)
 
void ReadJSON_ (std::istream &stream)
 
void ReadFromURI_ (std::string &uri)
 
- Public Member Functions inherited from Atom::Tools::ManageJSON
JSON::Array::Ptr get_json_array () const
 
JSON::Object::Ptr get_json_object () const
 
JSON::Array::Ptr & get_json_array ()
 
JSON::Object::Ptr & get_json_object ()
 
void set_json_array (JSON::Array::Ptr json_array)
 
void set_json_object (JSON::Object::Ptr json_object)
 
void Parse_ (std::string &string_to_parse)
 
JSON::Object::Ptr ExtractObject_ (Dynamic::Var &object)
 
JSON::Array::Ptr ExtractArray_ (Dynamic::Var &object)
 

Protected Member Functions

virtual void Process_ () override
 
void Transfer_ ()
 
virtual void HandleNewConnection_ (HTTP::Request &request, const WebSocketHandler &websocket_handler)=0
 
virtual void HandleNewMessage_ (const WebSocketHandler &websocket_handler, std::string message)=0
 
virtual void HandleConnectionClosed_ (const WebSocketHandler &websocket_handler)=0
 
- Protected Member Functions inherited from Atom::HTTP::CommonResponses
void FillResponses_ ()
 
void FillStatusMessage_ (JSON::Object::Ptr json_object, HTTP::Status status, std::string message)
 
- Protected Member Functions inherited from Atom::HTTP::Request
void SetupRequest_ (Net::HTTPServerRequest &request)
 
void SetupResponse_ (Net::HTTPServerResponse &response)
 
void SetupHeaders_ ()
 
void SetupCookies_ ()
 
- Protected Member Functions inherited from Atom::HTTP::Methods
void MapMethods_ ()