networkservice
Public Member Functions | Private Attributes | List of all members
service::plugins::logger::Logger Class Reference

Print logs to help understanding what the service is doing. More...

#include "plugins/logger/Logger.h"

Inheritance diagram for service::plugins::logger::Logger:
Inheritance graph
[legend]
Collaboration diagram for service::plugins::logger::Logger:
Collaboration graph
[legend]

Public Member Functions

 Logger ()
 
 ~Logger () override
 
 Logger (const Logger &)=delete
 
Loggeroperator= (const Logger &)=delete
 
 Logger (Logger &&)=delete
 
Loggeroperator= (Logger &&)=delete
 
void debug (const std::string &message) const override
 Print debug-level logs. More...
 
void info (const std::string &message) const override
 Print info-level logs. More...
 
void warn (const std::string &message) const override
 Print warning-level logs. More...
 
void error (const std::string &message) const override
 Print error-level logs. More...
 
- Public Member Functions inherited from service::plugins::logger::ILogger
 ILogger ()=default
 
virtual ~ILogger ()=default
 
 ILogger (const ILogger &)=delete
 
ILoggeroperator= (const ILogger &)=delete
 
 ILogger (ILogger &&)=delete
 
ILoggeroperator= (ILogger &&)=delete
 

Private Attributes

std::unique_ptr< Internal > m_internal
 

Detailed Description

Print logs to help understanding what the service is doing.

This class is the "low level class" that implements ILogger.h

Note
Copy contructor, copy-assignment operator, move constructor and move-assignment operator are defined to be compliant with the "Rule of five"
See also
https://en.cppreference.com/w/cpp/language/rule_of_three
Author
Boubacar DIENE bouba.nosp@m.car..nosp@m.diene.nosp@m.@gma.nosp@m.il.co.nosp@m.m
Date
April 2020

Constructor & Destructor Documentation

◆ Logger() [1/3]

service::plugins::logger::Logger::Logger ( )
explicit

Class constructor

◆ ~Logger()

service::plugins::logger::Logger::~Logger ( )
override

Class destructor

Note
The override specifier aims at making the compiler warn if the base class's destructor is not virtual.

◆ Logger() [2/3]

service::plugins::logger::Logger::Logger ( const Logger )
delete

Class copy constructor

◆ Logger() [3/3]

service::plugins::logger::Logger::Logger ( Logger &&  )
delete

Class move constructor

Member Function Documentation

◆ debug()

void service::plugins::logger::Logger::debug ( const std::string &  message) const
overridevirtual

Print debug-level logs.

Parameters
messageThe log message to print

Implements service::plugins::logger::ILogger.

◆ error()

void service::plugins::logger::Logger::error ( const std::string &  message) const
overridevirtual

Print error-level logs.

Parameters
messageThe log message to print

Implements service::plugins::logger::ILogger.

◆ info()

void service::plugins::logger::Logger::info ( const std::string &  message) const
overridevirtual

Print info-level logs.

Parameters
messageThe log message to print

Implements service::plugins::logger::ILogger.

◆ operator=() [1/2]

Logger& service::plugins::logger::Logger::operator= ( const Logger )
delete

Class copy-assignment operator

◆ operator=() [2/2]

Logger& service::plugins::logger::Logger::operator= ( Logger &&  )
delete

Class move-assignment operator

◆ warn()

void service::plugins::logger::Logger::warn ( const std::string &  message) const
overridevirtual

Print warning-level logs.

Parameters
messageThe log message to print

Implements service::plugins::logger::ILogger.

Member Data Documentation

◆ m_internal

std::unique_ptr<Internal> service::plugins::logger::Logger::m_internal
private

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