diff options
author | claiff <claiff@mail.ru> | 2022-10-05 15:57:43 +0300 |
---|---|---|
committer | claiff <claiff@mail.ru> | 2022-10-05 15:57:43 +0300 |
commit | 43e721305c866ad4b2c4c35d1133f169e41dd49b (patch) | |
tree | c7ae9c113d29aa3350eca04f27a933bd3b5f769c /src/file/settings/settings.cpp | |
parent | 9ed43c1057eeec6a01b8fdfd4d2ee54f9df39670 (diff) | |
download | obmc-sila-smtp-43e721305c866ad4b2c4c35d1133f169e41dd49b.tar.xz |
file reader/writer split by decorators
Diffstat (limited to 'src/file/settings/settings.cpp')
-rw-r--r-- | src/file/settings/settings.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/file/settings/settings.cpp b/src/file/settings/settings.cpp new file mode 100644 index 0000000..48232e6 --- /dev/null +++ b/src/file/settings/settings.cpp @@ -0,0 +1,31 @@ +#include <fstream> + +#include "settings.hpp" +#include "logger/logger_set.hpp" +#include "converter/file_to_struct.hpp" +#include "converter/struct_to_file.hpp" + +namespace smtp::file::settings +{ + + Settings::Settings( types::IFileManipulatorPtr const& file_manipulator) + : mFileManipulator( file_manipulator ) + { + + } + // + //Public methods + // + + manage::SettingsFields Settings::Read() const + { + auto parsed_store = mFileManipulator->Read(); + return converter::FileToStruct{}.Convert( parsed_store ); + } + + bool Settings::Write( manage::SettingsFields const& settings_fields ) const + { + auto parsed_data = converter::StructToFile{}.Convert( settings_fields ); + return mFileManipulator->Write( parsed_data ); + } +} |