Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
StartingLog.hpp
Go to the documentation of this file.
1#ifndef IV_SRC_LOGS_STARTINGLOG_HPP_
2#define IV_SRC_LOGS_STARTINGLOG_HPP_
3
5
6#include <memory>
7
8namespace iv::logs
9{
10
12{
13 static std::shared_ptr<StartingLog> m_instance;
14
15public:
16 static std::weak_ptr<StartingLog> createNewInstance();
17 static std::weak_ptr<StartingLog> get();
18 static void deleteInstance();
19
20 StartingLog() = default;
21 ~StartingLog() override = default;
22
23 void message(const std::string &txtMessage) override;
24 void warning(const std::string &txtWarning) override;
25 void error(const std::string &txtError) override;
26
31 void critical(std::string_view txtCritical);
32
33 [[nodiscard]] bool hasWarnings() const;
34 [[nodiscard]] bool hasError() const override;
35 [[nodiscard]] bool hasCriticals() const;
36
37 [[nodiscard]] const std::vector<std::string> &getMessages() const;
38 [[nodiscard]] const std::vector<std::string> &getWarnings() const;
39 [[nodiscard]] const std::vector<std::string> &getErrors() const;
40 [[nodiscard]] const std::vector<std::string> &getCriticalMessages() const;
41
42private:
43 std::vector<std::string> m_messages {};
44 std::vector<std::string> m_warnings {};
45 std::vector<std::string> m_errors {};
46 std::vector<std::string> m_criticals {};
47};
48
49}// namespace iv::logs
50
51#endif//IV_SRC_LOGS_STARTINGLOG_HPP_
Definition AbstractLog.hpp:9
Definition StartingLog.hpp:12
bool hasWarnings() const
Definition StartingLog.cpp:45
void message(const std::string &txtMessage) override
Definition StartingLog.cpp:25
const std::vector< std::string > & getCriticalMessages() const
Definition StartingLog.cpp:75
static std::weak_ptr< StartingLog > get()
Definition StartingLog.cpp:15
const std::vector< std::string > & getWarnings() const
Definition StartingLog.cpp:65
const std::vector< std::string > & getMessages() const
Definition StartingLog.cpp:60
bool hasError() const override
Definition StartingLog.cpp:50
void warning(const std::string &txtWarning) override
Definition StartingLog.cpp:30
static std::weak_ptr< StartingLog > createNewInstance()
Definition StartingLog.cpp:8
void critical(std::string_view txtCritical)
Add a critical message that will prevent program from starting.
Definition StartingLog.cpp:40
~StartingLog() override=default
static void deleteInstance()
Definition StartingLog.cpp:20
void error(const std::string &txtError) override
Definition StartingLog.cpp:35
std::vector< std::string > m_warnings
Definition StartingLog.hpp:44
std::vector< std::string > m_criticals
Definition StartingLog.hpp:46
std::vector< std::string > m_errors
Definition StartingLog.hpp:45
static std::shared_ptr< StartingLog > m_instance
Definition StartingLog.hpp:13
const std::vector< std::string > & getErrors() const
Definition StartingLog.cpp:70
bool hasCriticals() const
Definition StartingLog.cpp:55
std::vector< std::string > m_messages
Definition StartingLog.hpp:43
Definition DownloadLogger.cpp:19