Common System 0.2.0
Common interfaces and patterns for system integration
Loading...
Searching...
No Matches
unified_config.h File Reference

Unified configuration schema for the entire system. More...

#include <chrono>
#include <optional>
#include <string>
#include <vector>
Include dependency graph for unified_config.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::common::config::thread_config
 Thread pool configuration. More...
 
struct  kcenon::common::config::logger_config
 Logging system configuration. More...
 
struct  kcenon::common::config::tracing_config
 Distributed tracing configuration. More...
 
struct  kcenon::common::config::monitoring_config
 Monitoring system configuration. More...
 
struct  kcenon::common::config::pool_config
 Database connection pool configuration. More...
 
struct  kcenon::common::config::database_config
 Database system configuration. More...
 
struct  kcenon::common::config::tls_config
 TLS/SSL configuration. More...
 
struct  kcenon::common::config::network_config
 Network system configuration. More...
 
struct  kcenon::common::config::unified_config
 Root configuration structure for the unified system. More...
 
struct  kcenon::common::config::field_metadata
 Configuration field metadata for validation and documentation. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::common
 Core interfaces.
 
namespace  kcenon::common::config
 

Functions

std::vector< field_metadatakcenon::common::config::get_config_metadata ()
 Get metadata for all configuration fields.
 
bool kcenon::common::config::is_hot_reloadable (const std::string &field_path)
 Check if a configuration field supports hot-reload.
 

Variables

constexpr const char * kcenon::common::config::ENV_PREFIX = "UNIFIED_"
 Environment variable prefix for configuration overrides.
 

Detailed Description

Unified configuration schema for the entire system.

This header defines the configuration structures for all subsystems. It provides a type-safe, hierarchical configuration schema with default values and validation support.

Configuration Priority (highest to lowest):

  1. CLI arguments (–set key=value)
  2. Environment variables (UNIFIED_*)
  3. Configuration file (YAML)
  4. Default values
See also
TICKET-201 for design requirements.
config_loader.h for loading implementation.

Definition in file unified_config.h.