|
Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
|
Facade coordinating logger system components. More...
#include <logger_context.h>

Public Member Functions | |
| logger_context () | |
| Default constructor - creates default implementations. | |
| logger_context (std::shared_ptr< security::signal_manager_interface > signal_mgr) | |
| ~logger_context () | |
| Destructor - ensures clean shutdown. | |
| logger_context (const logger_context &)=delete | |
| logger_context & | operator= (const logger_context &)=delete |
| logger_context (logger_context &&)=delete | |
| logger_context & | operator= (logger_context &&)=delete |
| auto | signal_context () -> signal_manager_context & |
| Access signal manager context component. | |
| auto | signal_context () const -> const signal_manager_context & |
| Access signal manager context component (const) | |
| auto | registry () -> logger_registry & |
| Access logger registry component. | |
| auto | registry () const -> const logger_registry & |
| Access logger registry component (const) | |
| std::shared_ptr< security::signal_manager_interface > | get_signal_manager () const |
| Get signal manager instance. | |
| void | set_signal_manager (std::shared_ptr< security::signal_manager_interface > signal_mgr) |
| Set signal manager (for dynamic reconfiguration) | |
| bool | is_initialized () const |
| Check if context is initialized. | |
| void | register_logger (security::critical_logger_interface *log) |
| Register a logger. | |
| void | unregister_logger (security::critical_logger_interface *log) |
| Unregister a logger. | |
Private Attributes | |
| signal_manager_context | signal_context_ |
| Signal manager lifecycle management. | |
| logger_registry | registry_ |
| Logger registration tracking. | |
Facade coordinating logger system components.
This class acts as a facade pattern, coordinating specialized components following the Single Responsibility Principle:
Benefits:
Thread Safety: All methods are thread-safe. Each component provides its own thread safety guarantees.
Definition at line 76 of file logger_context.h.
| kcenon::logger::core::logger_context::logger_context | ( | ) |
Default constructor - creates default implementations.
Creates a context with default implementations:
Definition at line 10 of file logger_context.cpp.
|
explicit |
Definition at line 16 of file logger_context.cpp.
|
default |
Destructor - ensures clean shutdown.
|
delete |
|
delete |
|
inline |
Get signal manager instance.
Convenience method that delegates to signal_context(). Maintained for backward compatibility.
Definition at line 169 of file logger_context.h.
|
inline |
Check if context is initialized.
Convenience method that delegates to signal_context(). Maintained for backward compatibility.
Definition at line 191 of file logger_context.h.
|
delete |
|
delete |
|
inline |
Register a logger.
| log | Logger implementing critical_logger_interface |
Registers the logger in both:
Convenience method combining registry and signal manager operations.
Definition at line 207 of file logger_context.h.
|
inline |
Access logger registry component.
Provides direct access to logger registration component. Use this for querying registered loggers.
Definition at line 146 of file logger_context.h.
|
inline |
Access logger registry component (const)
Definition at line 154 of file logger_context.h.
|
inline |
Set signal manager (for dynamic reconfiguration)
| signal_mgr | New signal manager implementation |
Convenience method that delegates to signal_context(). Maintained for backward compatibility.
Definition at line 180 of file logger_context.h.
|
inline |
Access signal manager context component.
Provides direct access to signal manager management component. Use this for advanced scenarios requiring fine-grained control.
Definition at line 127 of file logger_context.h.
|
inline |
Access signal manager context component (const)
Definition at line 135 of file logger_context.h.
|
inline |
Unregister a logger.
| log | Logger to unregister |
Unregisters the logger from both:
Convenience method combining registry and signal manager operations.
Definition at line 230 of file logger_context.h.
|
private |
Logger registration tracking.
Definition at line 246 of file logger_context.h.
|
private |
Signal manager lifecycle management.
Definition at line 243 of file logger_context.h.