|
Network System 0.1.1
High-performance modular networking library for scalable client-server applications
|
Base interface for server-side network components. More...
#include <i_server.h>


Public Types | |
| using | connection_callback_t = std::function<void(std::shared_ptr<i_session>)> |
| Callback type for new connections. | |
| using | disconnection_callback_t = std::function<void(std::string_view)> |
| Callback type for disconnections (session_id) | |
| using | receive_callback_t = std::function<void(std::string_view, const std::vector<uint8_t>&)> |
| Callback type for received data (session_id, data) | |
| using | error_callback_t = std::function<void(std::string_view, std::error_code)> |
| Callback type for errors (session_id, error) | |
Public Member Functions | |
| virtual auto | start (uint16_t port) -> VoidResult=0 |
| Starts the server and begins listening for connections. | |
| virtual auto | stop () -> VoidResult=0 |
| Stops the server and closes all connections. | |
| virtual auto | connection_count () const -> size_t=0 |
| Gets the number of active connections. | |
| virtual auto | set_connection_callback (connection_callback_t callback) -> void=0 |
| Sets the callback for new connections. | |
| virtual auto | set_disconnection_callback (disconnection_callback_t callback) -> void=0 |
| Sets the callback for disconnections. | |
| virtual auto | set_receive_callback (receive_callback_t callback) -> void=0 |
| Sets the callback for received data. | |
| virtual auto | set_error_callback (error_callback_t callback) -> void=0 |
| Sets the callback for errors. | |
Public Member Functions inherited from kcenon::network::interfaces::i_network_component | |
| virtual | ~i_network_component ()=default |
| Virtual destructor for proper cleanup of derived classes. | |
| i_network_component (const i_network_component &)=delete | |
| i_network_component & | operator= (const i_network_component &)=delete |
| i_network_component (i_network_component &&)=delete | |
| i_network_component & | operator= (i_network_component &&)=delete |
Additional Inherited Members | |
Protected Member Functions inherited from kcenon::network::interfaces::i_network_component | |
| i_network_component ()=default | |
| Default constructor (only for derived classes) | |
| virtual auto | is_running () const -> bool=0 |
| Checks if the component is currently running. | |
| virtual auto | wait_for_stop () -> void=0 |
| Blocks until the component has stopped. | |
Base interface for server-side network components.
This interface extends i_network_component with server-specific operations such as listening for connections, managing sessions, and broadcasting data.
Definition at line 60 of file i_server.h.
| using kcenon::network::interfaces::i_server::connection_callback_t = std::function<void(std::shared_ptr<i_session>)> |
Callback type for new connections.
Definition at line 64 of file i_server.h.
| using kcenon::network::interfaces::i_server::disconnection_callback_t = std::function<void(std::string_view)> |
Callback type for disconnections (session_id)
Definition at line 66 of file i_server.h.
| using kcenon::network::interfaces::i_server::error_callback_t = std::function<void(std::string_view, std::error_code)> |
Callback type for errors (session_id, error)
Definition at line 70 of file i_server.h.
| using kcenon::network::interfaces::i_server::receive_callback_t = std::function<void(std::string_view, const std::vector<uint8_t>&)> |
Callback type for received data (session_id, data)
Definition at line 68 of file i_server.h.
|
nodiscardpure virtual |
Gets the number of active connections.
|
pure virtual |
Sets the callback for new connections.
| callback | The callback function. |
|
pure virtual |
Sets the callback for disconnections.
| callback | The callback function. |
|
pure virtual |
Sets the callback for errors.
| callback | The callback function. |
|
pure virtual |
Sets the callback for received data.
| callback | The callback function. |
|
nodiscardpure virtual |
Starts the server and begins listening for connections.
| port | The port number to listen on. |
Thread-safe. Only one start operation can succeed at a time.
|
nodiscardpure virtual |