diff options
author | eportnov <eportnov@ibs.ru> | 2022-10-03 11:38:05 +0300 |
---|---|---|
committer | eportnov <eportnov@ibs.ru> | 2022-10-03 11:38:05 +0300 |
commit | 2b03fece7f5895591eabd2f04baa2df19b4c3417 (patch) | |
tree | f68d57d9b472cbe1186f235034b97a1be75cac08 /src/converter/file_to_struct.hpp | |
parent | 7e2843c706c1a6e033662c45957a76e01d167438 (diff) | |
parent | e41b247e61ce4d4cc96badab3a14bf413e4f46f2 (diff) | |
download | obmc-sila-smtp-2b03fece7f5895591eabd2f04baa2df19b4c3417.tar.xz |
Merge branch 'refactor/3009'
Diffstat (limited to 'src/converter/file_to_struct.hpp')
-rw-r--r-- | src/converter/file_to_struct.hpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/converter/file_to_struct.hpp b/src/converter/file_to_struct.hpp new file mode 100644 index 0000000..1eb7fce --- /dev/null +++ b/src/converter/file_to_struct.hpp @@ -0,0 +1,30 @@ +#pragma once + +#include <unordered_map> +#include <string> + +#include "management/general.hpp" + +namespace smtp::converter +{ + class FileToStruct + { + public: + FileToStruct() = default; + ~FileToStruct() = default; + + manage::SettingsFields Convert( manage::SettingsFileDataType const& from ) const; + private: + void ApplyAuth( manage::SettingsFields& result, manage::SettingsFileDataType const& from ) const; + void ApplySsl( manage::SettingsFields& result, manage::SettingsFileDataType const& from ) const; + void ApplyBool( manage::SettingsFileDataType const& from, std::string const& search_field, bool& field ) const; + + void ApplyUsername( manage::SettingsFields& result, manage::SettingsFileDataType const& from ) const; + void ApplyPassword( manage::SettingsFields& result, manage::SettingsFileDataType const& from ) const; + void ApplyHost( manage::SettingsFields& result, manage::SettingsFileDataType const& from ) const; + void ApplyPort( manage::SettingsFields& result, manage::SettingsFileDataType const& from ) const; + void ApplyString( manage::SettingsFileDataType const& from, std::string const& search_field, std::string& field ) const; + }; +} + + |