summaryrefslogtreecommitdiff
path: root/src/converter/string.hpp
blob: 555e04b00127f9a68bb8be407c1cfa8902979892 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#pragma once

#include <unordered_map>
#include <string>

#include "management/general.hpp"

namespace smtp::converter
{
    class String
    {
    public:
        String() = default;
        ~String() = default;

        std::string Convert( manage::SettingsFields const& from  ) const;
    private:
        void ApplyAuth( manage::SettingsFields const& from, std::string& result ) const;
        void ApplySsl( manage::SettingsFields const& from, std::string& result ) const;

        void ApplyUsername( manage::SettingsFields const& from, std::string& result ) const;
        void ApplyPassword( manage::SettingsFields const& from, std::string& result ) const;
        void ApplyHost( manage::SettingsFields const& from, std::string& result ) const;
        void ApplyPort( manage::SettingsFields const& from, std::string& result ) const;

        std::string GetStringParam( std::string const& field, std::string const& param ) const;
        std::string GetBoolParam( std::string const& field, bool param ) const;
    };
}