summaryrefslogtreecommitdiff
path: root/src/management/settings.cpp
diff options
context:
space:
mode:
authorclaiff <claiff@mail.ru>2022-10-19 18:17:37 +0300
committerclaiff <claiff@mail.ru>2022-10-19 18:17:37 +0300
commit6e7f337d4d52debc0211cb5e083a27cd97a8ba4b (patch)
tree19840073cd01ccee5ed9a3159d8f1db88991f050 /src/management/settings.cpp
parentebd8670701c6adc7bee929bd9911ca335b3223c5 (diff)
parent235b75103d5fd2e7d0f8027d7b7e3b50a7deed2b (diff)
downloadobmc-sila-smtp-6e7f337d4d52debc0211cb5e083a27cd97a8ba4b.tar.xz
Merge branch 'feature/queuered_sender'
Diffstat (limited to 'src/management/settings.cpp')
-rw-r--r--src/management/settings.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/management/settings.cpp b/src/management/settings.cpp
index 02392e0..8cee4e7 100644
--- a/src/management/settings.cpp
+++ b/src/management/settings.cpp
@@ -9,8 +9,16 @@ namespace smtp::manage
{
}
+ Settings::Settings( smtp::manage::Settings const& settings )
+ : mFileReader( settings.mFileReader )
+ , mSettingsFields( settings.mSettingsFields )
+ {
+ }
+
bool Settings::SetSettings( general::SettingsFields const& settings_fields )
{
+ std::lock_guard<std::mutex> lock{mMutex};
+
auto result = mFileReader.Write( settings_fields );
mSettingsFields = mFileReader.Read();
@@ -19,6 +27,8 @@ namespace smtp::manage
std::string Settings::GetSettings()
{
+ std::lock_guard<std::mutex> lock{mMutex};
+
mSettingsFields = mFileReader.Read();
return converter::StructToString{}.Convert( mSettingsFields );
}