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


Public Member Functions | |
| 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 |
Protected Member Functions | |
| 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 all network components.
This interface defines the common contract for both client and server network components, providing basic lifecycle query methods.
All methods must be implemented as thread-safe.
This interface is part of the composition-based architecture that replaces the CRTP base classes. It enables:
Definition at line 44 of file i_network_component.h.
|
virtualdefault |
Virtual destructor for proper cleanup of derived classes.
|
delete |
|
delete |
|
protecteddefault |
Default constructor (only for derived classes)
|
nodiscardprotectedpure virtual |
Checks if the component is currently running.
This method must be thread-safe and use atomic operations for the running state.
Implemented in kcenon::network::core::messaging_client, kcenon::network::core::messaging_client, kcenon::network::core::messaging_quic_client, kcenon::network::core::messaging_quic_server, kcenon::network::core::messaging_udp_client, kcenon::network::core::messaging_udp_client, kcenon::network::core::messaging_udp_server, kcenon::network::core::messaging_udp_server, kcenon::network::core::messaging_ws_client, kcenon::network::core::messaging_ws_server, kcenon::network::core::unified_udp_messaging_client< TlsPolicy >, kcenon::network::core::unified_udp_messaging_server< TlsPolicy >, kcenon::network::internal::adapters::http_client_adapter, kcenon::network::internal::adapters::http_server_adapter, kcenon::network::internal::adapters::quic_client_adapter, kcenon::network::internal::adapters::quic_server_adapter, kcenon::network::internal::adapters::tcp_server_adapter, kcenon::network::internal::adapters::udp_client_adapter, kcenon::network::internal::adapters::udp_server_adapter, kcenon::network::internal::adapters::ws_client_adapter, and kcenon::network::internal::adapters::ws_server_adapter.
|
delete |
|
delete |
|
protectedpure virtual |
Blocks until the component has stopped.
This method should be used to synchronize shutdown operations. It returns immediately if the component is not running.
Safe to call from any thread. Uses internal synchronization.
Implemented in kcenon::network::core::messaging_client, kcenon::network::core::messaging_quic_client, kcenon::network::core::messaging_quic_server, kcenon::network::core::messaging_udp_client, kcenon::network::core::messaging_udp_server, kcenon::network::core::messaging_ws_client, kcenon::network::core::messaging_ws_server, kcenon::network::core::unified_udp_messaging_client< TlsPolicy >, kcenon::network::core::unified_udp_messaging_server< TlsPolicy >, kcenon::network::internal::adapters::http_client_adapter, kcenon::network::internal::adapters::http_server_adapter, kcenon::network::internal::adapters::quic_client_adapter, kcenon::network::internal::adapters::quic_server_adapter, kcenon::network::internal::adapters::tcp_server_adapter, kcenon::network::internal::adapters::udp_client_adapter, kcenon::network::internal::adapters::udp_server_adapter, kcenon::network::internal::adapters::ws_client_adapter, and kcenon::network::internal::adapters::ws_server_adapter.