#include "settings.hpp" #include "converter/struct_to_string.hpp" namespace smtp::manage { Settings::Settings( file::settings::Settings const& file_reader ) : mFileReader( file_reader ) , mSettingsFields( mFileReader.Read() ) { } bool Settings::SetSettings( manage::SettingsFields const& settings_fields ) { auto result = mFileReader.Write( settings_fields ); mSettingsFields = mFileReader.Read(); return result; } std::string Settings::GetSettings() { mSettingsFields = mFileReader.Read(); return converter::StructToString{}.Convert( mSettingsFields ); } bool Settings::IsNeedAuth() const noexcept { return mSettingsFields.is_need_auth; } bool Settings::IsNeedSsl() const noexcept { return mSettingsFields.is_need_ssl; } std::string Settings::GetUserName() const { return mSettingsFields.username; } std::string Settings::GetPassword() const { return mSettingsFields.password; } std::string Settings::GetHost() const { return mSettingsFields.host; } std::string Settings::GetPort() const { return mSettingsFields.port; } }