46#include "kcenon/network/internal/integration/bridge_interface.h"
47#include "kcenon/network/internal/integration/thread_pool_bridge.h"
49#include "kcenon/network/internal/integration/logger_integration.h"
50#include "kcenon/network/internal/integration/monitoring_integration.h"
53#if KCENON_WITH_COMMON_SYSTEM
54#include <kcenon/common/interfaces/executor_interface.h>
55#include <kcenon/common/interfaces/logger_interface.h>
56#include <kcenon/common/interfaces/monitoring_interface.h>
334 const std::
string& pool_name = "network_pool");
336#if KCENON_WITH_COMMON_SYSTEM
357 static std::shared_ptr<NetworkSystemBridge> with_common_system(
358 std::shared_ptr<::kcenon::common::interfaces::IExecutor> executor,
359 std::shared_ptr<::kcenon::common::interfaces::ILogger> logger =
nullptr,
360 std::shared_ptr<::kcenon::common::interfaces::IMonitor> monitor =
nullptr);
372 static std::shared_ptr<NetworkSystemBridge>
with_custom(
373 std::shared_ptr<thread_pool_interface> thread_pool =
nullptr,
374 std::shared_ptr<logger_interface> logger =
nullptr,
375 std::shared_ptr<monitoring_interface> monitoring =
nullptr);
Unified facade for all network_system integration bridges.
~NetworkSystemBridge()
Destructor.
NetworkSystemBridge & operator=(const NetworkSystemBridge &)=delete
static std::shared_ptr< NetworkSystemBridge > create_default()
Create bridge with default configuration.
std::shared_ptr< thread_pool_interface > get_thread_pool() const
Get thread pool interface.
std::shared_ptr< logger_interface > get_logger() const
Get logger interface.
static std::shared_ptr< NetworkSystemBridge > with_custom(std::shared_ptr< thread_pool_interface > thread_pool=nullptr, std::shared_ptr< logger_interface > logger=nullptr, std::shared_ptr< monitoring_interface > monitoring=nullptr)
Create bridge with custom components.
std::unique_ptr< Impl > pimpl_
VoidResult set_thread_pool_bridge(std::shared_ptr< ThreadPoolBridge > bridge)
Set custom thread pool bridge.
bool is_initialized() const
Check if the bridge is initialized.
std::shared_ptr< ThreadPoolBridge > get_thread_pool_bridge() const
Get thread pool bridge.
BridgeMetrics get_metrics() const
Get aggregated metrics from all bridges.
static std::shared_ptr< NetworkSystemBridge > with_thread_system(const std::string &pool_name="network_pool")
Create bridge with thread_system integration.
NetworkSystemBridge(const NetworkSystemBridge &)=delete
std::shared_ptr< monitoring_interface > get_monitoring() const
Get monitoring interface.
NetworkSystemBridge(NetworkSystemBridge &&) noexcept
VoidResult shutdown()
Shutdown all bridges.
VoidResult set_monitoring(std::shared_ptr< monitoring_interface > monitoring)
Set custom monitoring.
NetworkSystemBridge()
Default constructor.
VoidResult set_logger(std::shared_ptr< logger_interface > logger)
Set custom logger.
Bridge for thread pool integration implementing INetworkBridge.
Interface for logger integration.
Interface for monitoring integration.
Interface for thread pool integration.
Public header for compile-time feature flags.
VoidResult initialize()
Initialize the network system with default production configuration.
Metrics and health information for a bridge.
Configuration for NetworkSystemBridge.
std::map< std::string, std::string > monitoring_properties
Monitoring configuration properties.
std::map< std::string, std::string > logger_properties
Logger configuration properties.
bool enable_thread_pool
Enable thread pool integration.
bool enable_logger
Enable logger integration.
bool enable_monitoring
Enable monitoring integration.
std::string integration_name
Global integration name.
std::map< std::string, std::string > thread_pool_properties
Thread pool configuration properties.
Thread system integration interface for network_system.