summaryrefslogtreecommitdiff
path: root/src/converter
diff options
context:
space:
mode:
Diffstat (limited to 'src/converter')
-rw-r--r--src/converter/file_to_string.cpp24
-rw-r--r--src/converter/file_to_string.hpp19
-rw-r--r--src/converter/struct_to_file.hpp5
3 files changed, 44 insertions, 4 deletions
diff --git a/src/converter/file_to_string.cpp b/src/converter/file_to_string.cpp
new file mode 100644
index 0000000..3d8860e
--- /dev/null
+++ b/src/converter/file_to_string.cpp
@@ -0,0 +1,24 @@
+#include "file_to_string.hpp"
+
+namespace smtp::converter
+{
+
+ std::list<std::string> FileToString::Convert( manage::SettingsFileDataType const& from) const
+ {
+ std::list<std::string> result;
+ for(auto const& settings_line : from)
+ {
+ result.push_back(BuildParam(settings_line));
+ }
+ return result;
+ }
+
+ std::string FileToString::BuildParam( std::pair < std::string, std::string > const& data ) const
+ {
+ std::string result;
+ result += data.first;
+ result += '=';
+ result += data.second;
+ return result;
+ }
+}
diff --git a/src/converter/file_to_string.hpp b/src/converter/file_to_string.hpp
new file mode 100644
index 0000000..14e1633
--- /dev/null
+++ b/src/converter/file_to_string.hpp
@@ -0,0 +1,19 @@
+#pragma once
+
+#include "management/general.hpp"
+
+namespace smtp::converter
+{
+ class FileToString
+ {
+ public:
+ FileToString() = default;
+ ~FileToString() = default;
+
+ std::list<std::string> Convert( manage::SettingsFileDataType const& from ) const;
+ private:
+ std::string BuildParam( std::pair < std::string, std::string > const& data ) const;
+ };
+}
+
+
diff --git a/src/converter/struct_to_file.hpp b/src/converter/struct_to_file.hpp
index 22f7260..67a9f96 100644
--- a/src/converter/struct_to_file.hpp
+++ b/src/converter/struct_to_file.hpp
@@ -1,8 +1,5 @@
#pragma once
-#include <unordered_map>
-#include <string>
-
#include "management/general.hpp"
namespace smtp::converter
@@ -13,7 +10,7 @@ namespace smtp::converter
StructToFile() = default;
~StructToFile() = default;
- std::unordered_map<std::string, std::string> Convert( manage::SettingsFields const& from ) const;
+ manage::SettingsFileDataType Convert( manage::SettingsFields const& from ) const;
private:
void ApplyAuth( manage::SettingsFields const& from, manage::SettingsFileDataType& result ) const;
void ApplySsl( manage::SettingsFields const& from, manage::SettingsFileDataType& result ) const;