#pragma once #include #include "management/settings.hpp" #include "management/mail.hpp" #include "thread/queue.hpp" namespace smtp::message { class QueueSender { public: QueueSender( manage::Settings const& settings_storage, manage::Mail& mail_to, thread::Queue& message_queue, std::shared_ptr connection ); ~QueueSender() = default; void SendMessages(); private: std::string GetMailfrom() const; std::string GetDefaultMailfrom() const; manage::Settings const& mSettingsStorage; manage::Mail& mMailTo; thread::Queue& mMessageQueue; std::shared_ptr mConnection; }; }