]> git.stg.codes - stg.git/blobdiff - libs/srvconf/parsers/chg_admin.cpp
Fight Optional
[stg.git] / libs / srvconf / parsers / chg_admin.cpp
index 14679dff6f04c8d0c61d2d6bc6b914ff1e450279..bb4d86823f5676025246399d0569f7e7ca30b7a5 100644 (file)
 
 using namespace STG;
 
-std::string CHG_ADMIN::Serialize(const ADMIN_CONF_RES & conf, const std::string & /*encoding*/)
+std::string ChgAdmin::serialize(const AdminConfOpt& conf, const std::string& /*encoding*/)
 {
-std::string params;
-if (!conf.login.empty())
-    params += " login=\"" + conf.login.data() + "\"";
-if (!conf.password.empty())
-    params += " password=\"" + conf.password.data() + "\"";
-if (!conf.priv.empty())
-    params += " priv=\"" + unsigned2str(conf.priv.data().ToInt()) + "\"";
-return params;
+    std::string params;
+    if (conf.login)
+        params += " login=\"" + conf.login.value() + "\"";
+    if (conf.password)
+        params += " password=\"" + conf.password.value() + "\"";
+    if (conf.priv)
+        params += " priv=\"" + std::to_string(conf.priv.value().toInt()) + "\"";
+    return params;
 }