#pragma once #include #include #include "general/struct.hpp" namespace smtp::converter { class StructToString { public: StructToString() = default; ~StructToString() = default; std::string Convert( general::SettingsFields const& from ) const; private: void ApplyAuth( general::SettingsFields const& from, std::string& result ) const; void ApplySsl( general::SettingsFields const& from, std::string& result ) const; void ApplyUsername( general::SettingsFields const& from, std::string& result ) const; void ApplyPassword( general::SettingsFields const& from, std::string& result ) const; void ApplyHost( general::SettingsFields const& from, std::string& result ) const; void ApplyPort( general::SettingsFields const& from, std::string& result ) const; std::string GetStringParam( std::string const& field, std::string const& param ) const; std::string GetBoolParam( std::string const& field, bool param ) const; }; }