From 8a0b56e2fc3f5c0ec71ca79e4c64e34bea29c043 Mon Sep 17 00:00:00 2001 From: eportnov Date: Wed, 14 Sep 2022 10:37:58 +0300 Subject: add logger --- CMakeLists.txt | 2 ++ src/file/mail.cpp | 8 ++++---- src/file/settings.cpp | 8 ++++---- src/managment/logger.cpp | 12 ++++++++++++ src/managment/logger.hpp | 13 +++++++++++++ src/message/sender.cpp | 9 ++++----- 6 files changed, 39 insertions(+), 13 deletions(-) create mode 100644 src/managment/logger.cpp create mode 100644 src/managment/logger.hpp diff --git a/CMakeLists.txt b/CMakeLists.txt index e894480..11f62b1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -112,6 +112,8 @@ set(SRC_FILES ${MANAGMENT_DIR}/mail.cpp ${MANAGMENT_DIR}/settings.hpp ${MANAGMENT_DIR}/settings.cpp + ${MANAGMENT_DIR}/logger.hpp + ${MANAGMENT_DIR}/logger.cpp ${MANAGMENT_DIR}/general.hpp ${FILE_DIR}/mail.hpp diff --git a/src/file/mail.cpp b/src/file/mail.cpp index 1516880..96d760b 100644 --- a/src/file/mail.cpp +++ b/src/file/mail.cpp @@ -1,6 +1,7 @@ #include #include "mail.hpp" +#include "managment/logger.hpp" namespace smtp::file { @@ -14,8 +15,8 @@ namespace smtp::file std::ifstream mail_file{ mPathFile, std::fstream::in }; if ( !mail_file.is_open() ) { - //TODO new file - // std::cerr << "Failed to open pcie_devices database \n"; + manage::Logger::LogError( "Unable to open file to read " + mPathFile ); + return {}; } std::string line{}; manage::MailsSet result; @@ -37,8 +38,7 @@ namespace smtp::file std::ofstream mail_file{ mPathFile, std::fstream::out | std::fstream::trunc }; if ( !mail_file.is_open() ) { - //TODO new file - // std::cerr << "Failed to open pcie_devices database \n"; + manage::Logger::LogError( "Unable to open file to write " + mPathFile ); return false; } for( const auto& pair : data ) diff --git a/src/file/settings.cpp b/src/file/settings.cpp index df619c9..83c1037 100644 --- a/src/file/settings.cpp +++ b/src/file/settings.cpp @@ -1,6 +1,7 @@ #include #include "settings.hpp" +#include "managment/logger.hpp" namespace smtp::file { @@ -27,8 +28,8 @@ namespace smtp::file std::ifstream settings_file{ mPathFile, std::fstream::in }; if ( !settings_file.is_open() ) { - //TODO new file - // std::cerr << "Failed to open pcie_devices database \n"; + manage::Logger::LogError( "Unable to open file to read " + mPathFile ); + return {}; } std::string line{}; ParsedStoreType result; @@ -47,8 +48,7 @@ namespace smtp::file std::ofstream settings_file{ mPathFile, std::fstream::out | std::fstream::trunc }; if ( !settings_file.is_open() ) { - //TODO new file - // std::cerr << "Failed to open pcie_devices database \n"; + manage::Logger::LogError( "Unable to open file to write " + mPathFile ); return false; } for( const auto& data : parsed_data ) diff --git a/src/managment/logger.cpp b/src/managment/logger.cpp new file mode 100644 index 0000000..0c55394 --- /dev/null +++ b/src/managment/logger.cpp @@ -0,0 +1,12 @@ +#include + +#include "logger.hpp" + +namespace smtp::manage +{ + void Logger::LogError( std::string const& message ) + { + std::cout << message << std::endl; + } + +} diff --git a/src/managment/logger.hpp b/src/managment/logger.hpp new file mode 100644 index 0000000..315e17e --- /dev/null +++ b/src/managment/logger.hpp @@ -0,0 +1,13 @@ +#pragma once + +#include + +namespace smtp::manage +{ + class Logger + { + public: + Logger() = default; + static void LogError( std::string const& message ); + }; +} diff --git a/src/message/sender.cpp b/src/message/sender.cpp index f8950f4..4f903e8 100644 --- a/src/message/sender.cpp +++ b/src/message/sender.cpp @@ -7,7 +7,7 @@ #include "builder/subject.hpp" #include "builder/text.hpp" #include "builder/from.hpp" -#include +#include "managment/logger.hpp" namespace smtp::message { @@ -36,6 +36,7 @@ namespace smtp::message //TODO сделать инициализацию через регистратор инициализаторов if( !InitCurl( curl, upload_ctx, mail_from ) ) { + manage::Logger::LogError("Error to initializate curl"); return false; } FillRecipients( curl, recipients ); @@ -45,8 +46,8 @@ namespace smtp::message if ( result != CURLE_OK ) { - //TODO LOG - fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror( result )); + std::string message = "Error to send messge: " + std::to_string( *curl_easy_strerror( result )); + manage::Logger::LogError(message); return false; } //TODO сделать деинициализацию через регистратор деинициализаторов @@ -62,7 +63,6 @@ namespace smtp::message { if( !curl ) { - //TODO LOG return false; } curl_easy_setopt(curl, CURLOPT_USERNAME, mSettingsStorage.GetUserName().c_str()); @@ -89,7 +89,6 @@ namespace smtp::message .Apply( std::make_shared( mail_to ) ) .Apply( std::make_shared() ); mText = text_decorator->Get(); - std::cout << mText << std::endl; } void Sender::FillRecipients( CURL* curl, curl_slist* recipients ) -- cgit v1.2.3