Common System 0.2.0
Common interfaces and patterns for system integration
Loading...
Searching...
No Matches
kcenon::common::interfaces::ILoggerRegistry Interface Referenceabstractexport

Phase 2: Global logger registry interface. More...

#include <logger_interface.h>

Inheritance diagram for kcenon::common::interfaces::ILoggerRegistry:
Inheritance graph
Collaboration diagram for kcenon::common::interfaces::ILoggerRegistry:
Collaboration graph

Public Member Functions

virtual ~ILoggerRegistry ()=default
 
virtual VoidResult register_logger (const std::string &name, std::shared_ptr< ILogger > logger)=0
 Register a logger with a name.
 
virtual std::shared_ptr< ILoggerget_logger (const std::string &name)=0
 Get a logger by name.
 
virtual VoidResult unregister_logger (const std::string &name)=0
 Remove a logger by name.
 
virtual std::shared_ptr< ILoggerget_default_logger ()=0
 Get the default logger.
 
virtual VoidResult set_default_logger (std::shared_ptr< ILogger > logger)=0
 Set the default logger.
 
virtual ~ILoggerRegistry ()=default
 
virtual VoidResult register_logger (const std::string &name, std::shared_ptr< ILogger > logger)=0
 
virtual std::shared_ptr< ILoggerget_logger (const std::string &name)=0
 
virtual VoidResult unregister_logger (const std::string &name)=0
 
virtual std::shared_ptr< ILoggerget_default_logger ()=0
 
virtual VoidResult set_default_logger (std::shared_ptr< ILogger > logger)=0
 

Detailed Description

Phase 2: Global logger registry interface.

Provides thread-safe access to named logger instances

Definition at line 135 of file logger.cppm.

Constructor & Destructor Documentation

◆ ~ILoggerRegistry() [1/2]

virtual kcenon::common::interfaces::ILoggerRegistry::~ILoggerRegistry ( )
virtualdefault

◆ ~ILoggerRegistry() [2/2]

virtual kcenon::common::interfaces::ILoggerRegistry::~ILoggerRegistry ( )
exportvirtualdefault

Member Function Documentation

◆ get_default_logger() [1/2]

virtual std::shared_ptr< ILogger > kcenon::common::interfaces::ILoggerRegistry::get_default_logger ( )
pure virtual

Get the default logger.

Returns
Default logger instance or nullptr

Implemented in kcenon::common::interfaces::GlobalLoggerRegistry.

◆ get_default_logger() [2/2]

virtual std::shared_ptr< ILogger > kcenon::common::interfaces::ILoggerRegistry::get_default_logger ( )
exportpure virtual

◆ get_logger() [1/2]

virtual std::shared_ptr< ILogger > kcenon::common::interfaces::ILoggerRegistry::get_logger ( const std::string & name)
pure virtual

Get a logger by name.

Parameters
nameLogger name
Returns
Logger instance or nullptr if not found

Implemented in kcenon::common::interfaces::GlobalLoggerRegistry.

◆ get_logger() [2/2]

virtual std::shared_ptr< ILogger > kcenon::common::interfaces::ILoggerRegistry::get_logger ( const std::string & name)
exportpure virtual

◆ register_logger() [1/2]

virtual VoidResult kcenon::common::interfaces::ILoggerRegistry::register_logger ( const std::string & name,
std::shared_ptr< ILogger > logger )
pure virtual

Register a logger with a name.

Parameters
nameLogger name
loggerLogger instance
Returns
VoidResult indicating success or error

Implemented in kcenon::common::interfaces::GlobalLoggerRegistry.

◆ register_logger() [2/2]

virtual VoidResult kcenon::common::interfaces::ILoggerRegistry::register_logger ( const std::string & name,
std::shared_ptr< ILogger > logger )
exportpure virtual

◆ set_default_logger() [1/2]

virtual VoidResult kcenon::common::interfaces::ILoggerRegistry::set_default_logger ( std::shared_ptr< ILogger > logger)
pure virtual

Set the default logger.

Parameters
loggerLogger instance
Returns
VoidResult indicating success or error

Implemented in kcenon::common::interfaces::GlobalLoggerRegistry.

◆ set_default_logger() [2/2]

virtual VoidResult kcenon::common::interfaces::ILoggerRegistry::set_default_logger ( std::shared_ptr< ILogger > logger)
exportpure virtual

◆ unregister_logger() [1/2]

virtual VoidResult kcenon::common::interfaces::ILoggerRegistry::unregister_logger ( const std::string & name)
pure virtual

Remove a logger by name.

Parameters
nameLogger name
Returns
VoidResult indicating success or error

Implemented in kcenon::common::interfaces::GlobalLoggerRegistry.

◆ unregister_logger() [2/2]

virtual VoidResult kcenon::common::interfaces::ILoggerRegistry::unregister_logger ( const std::string & name)
exportpure virtual

The documentation for this interface was generated from the following files: