|
Network System 0.1.1
High-performance modular networking library for scalable client-server applications
|
Simplified facade for creating QUIC clients and servers. More...
#include <quic_facade.h>

Classes | |
| struct | client_config |
| Configuration for creating a QUIC client. More... | |
| struct | server_config |
| Configuration for creating a QUIC server. More... | |
Public Member Functions | |
| auto | create_client (const client_config &config) const -> Result< std::shared_ptr< interfaces::i_protocol_client > > |
| Creates a QUIC client with the specified configuration. | |
| auto | create_server (const server_config &config) const -> Result< std::shared_ptr< interfaces::i_protocol_server > > |
| Creates a QUIC server with the specified configuration. | |
Static Private Member Functions | |
| static auto | generate_client_id () -> std::string |
| Generates a unique client ID. | |
| static auto | generate_server_id () -> std::string |
| Generates a unique server ID. | |
| static auto | validate_client_config (const client_config &config) -> VoidResult |
| Validates client configuration. | |
| static auto | validate_server_config (const server_config &config) -> VoidResult |
| Validates server configuration. | |
Simplified facade for creating QUIC clients and servers.
This facade provides a simple, unified API for creating QUIC protocol clients and servers, hiding the complexity of experimental API opt-in, configuration details, and implementation specifics from the user.
All methods are thread-safe and can be called concurrently.
Definition at line 80 of file quic_facade.h.
|
nodiscard |
Creates a QUIC client with the specified configuration.
| config | Client configuration. |
For QUIC-specific features (multi-stream, 0-RTT, ALPN), use messaging_quic_client directly instead of the facade.
Definition at line 93 of file quic_facade.cpp.
References config, kcenon::network::error, and kcenon::network::ok().
Referenced by main().


|
nodiscard |
Creates a QUIC server with the specified configuration.
| config | Server configuration. |
For QUIC-specific features (multi-stream, broadcast), use messaging_quic_server directly instead of the facade.
Definition at line 129 of file quic_facade.cpp.
References config, kcenon::network::error, and kcenon::network::ok().
Referenced by main().


|
staticnodiscardprivate |
Generates a unique client ID.
Definition at line 27 of file quic_facade.cpp.
|
staticnodiscardprivate |
Generates a unique server ID.
Definition at line 35 of file quic_facade.cpp.
|
staticprivate |
Validates client configuration.
Definition at line 43 of file quic_facade.cpp.
References config, kcenon::network::error_void(), and kcenon::network::ok().

|
staticprivate |
Validates server configuration.
Definition at line 63 of file quic_facade.cpp.
References config, kcenon::network::error_void(), and kcenon::network::ok().
