Common System 0.2.0
Common interfaces and patterns for system integration
Loading...
Searching...
No Matches
kcenon::common::interfaces::NullLogger Class Reference

A no-op logger implementation for fallback scenarios. More...

#include <global_logger_registry.h>

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

Public Member Functions

 NullLogger ()=default
 
 ~NullLogger () override=default
 
VoidResult log (log_level, const std::string &) override
 Log a message with specified level.
 
VoidResult log (log_level, std::string_view, const source_location &=source_location::current()) override
 Log with source_location (no-op)
 
VoidResult log (const log_entry &) override
 Log a structured entry.
 
bool is_enabled (log_level) const override
 Check if logging is enabled for the specified level.
 
VoidResult set_level (log_level) override
 Set the minimum log level.
 
log_level get_level () const override
 Get the current minimum log level.
 
VoidResult flush () override
 Flush any buffered log messages.
 
- Public Member Functions inherited from kcenon::common::interfaces::ILogger
virtual ~ILogger ()=default
 
virtual ~ILogger ()=default
 

Detailed Description

A no-op logger implementation for fallback scenarios.

NullLogger provides a safe default when no logger has been registered. All logging operations are no-ops that return success without performing any actual logging. This prevents null pointer dereferences and allows code to function (silently) even when logging is not configured.

Note
Issue #177: Updated to support source_location-based logging.
Issue #217: Removed deprecated file/line/function API in v3.0.0.

Definition at line 52 of file global_logger_registry.h.

Constructor & Destructor Documentation

◆ NullLogger()

kcenon::common::interfaces::NullLogger::NullLogger ( )
default

◆ ~NullLogger()

kcenon::common::interfaces::NullLogger::~NullLogger ( )
overridedefault

Member Function Documentation

◆ flush()

VoidResult kcenon::common::interfaces::NullLogger::flush ( )
inlineoverridevirtual

Flush any buffered log messages.

Returns
VoidResult indicating success or error

Implements kcenon::common::interfaces::ILogger.

Definition at line 87 of file global_logger_registry.h.

87 {
88 return VoidResult::ok({});
89 }
static Result< T > ok(U &&value)
Create a successful result with value (static factory)
Definition core.h:223

References kcenon::common::Result< T >::ok().

Here is the call graph for this function:

◆ get_level()

log_level kcenon::common::interfaces::NullLogger::get_level ( ) const
inlineoverridevirtual

Get the current minimum log level.

Returns
Current minimum log level

Implements kcenon::common::interfaces::ILogger.

Definition at line 83 of file global_logger_registry.h.

References kcenon::common::interfaces::off.

◆ is_enabled()

bool kcenon::common::interfaces::NullLogger::is_enabled ( log_level level) const
inlineoverridevirtual

Check if logging is enabled for the specified level.

Parameters
levelLog level to check
Returns
true if logging is enabled for this level

Implements kcenon::common::interfaces::ILogger.

Definition at line 75 of file global_logger_registry.h.

75 {
76 return false;
77 }

◆ log() [1/3]

VoidResult kcenon::common::interfaces::NullLogger::log ( const log_entry & entry)
inlineoverridevirtual

Log a structured entry.

Parameters
entryLog entry containing all information
Returns
VoidResult indicating success or error

Implements kcenon::common::interfaces::ILogger.

Definition at line 71 of file global_logger_registry.h.

71 {
72 return VoidResult::ok({});
73 }

References kcenon::common::Result< T >::ok().

Here is the call graph for this function:

◆ log() [2/3]

VoidResult kcenon::common::interfaces::NullLogger::log ( log_level level,
const std::string & message )
inlineoverridevirtual

Log a message with specified level.

Parameters
levelLog level
messageLog message
Returns
VoidResult indicating success or error

Implements kcenon::common::interfaces::ILogger.

Definition at line 57 of file global_logger_registry.h.

57 {
58 return VoidResult::ok({});
59 }

References kcenon::common::Result< T >::ok().

Here is the call graph for this function:

◆ log() [3/3]

VoidResult kcenon::common::interfaces::NullLogger::log ( log_level ,
std::string_view ,
const source_location & = source_location::current() )
inlineoverridevirtual

Log with source_location (no-op)

Note
Issue #177: Preferred logging method with source_location.

Implements kcenon::common::interfaces::ILogger.

Definition at line 65 of file global_logger_registry.h.

67 {
68 return VoidResult::ok({});
69 }

References kcenon::common::Result< T >::ok().

Here is the call graph for this function:

◆ set_level()

VoidResult kcenon::common::interfaces::NullLogger::set_level ( log_level level)
inlineoverridevirtual

Set the minimum log level.

Parameters
levelMinimum level for messages to be logged
Returns
VoidResult indicating success or error

Implements kcenon::common::interfaces::ILogger.

Definition at line 79 of file global_logger_registry.h.

79 {
80 return VoidResult::ok({});
81 }

References kcenon::common::Result< T >::ok().

Here is the call graph for this function:

The documentation for this class was generated from the following file: