X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/64b687f8ec36a103865044613cb0f42f98aeda3a..8c6fa3fbaccc22127280bf77a48fab5a3ee0716e:/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp diff --git a/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp b/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp index 5e2d8ae6..a9836911 100644 --- a/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp +++ b/projects/stargazer/plugins/store/postgresql/postgresql_store.cpp @@ -40,14 +40,17 @@ #include "postgresql_store.h" +#include "postgresql_store_utils.h" +#include "postgresql_store.h" + #include "stg/module_settings.h" #include "stg/plugin_creator.h" -#include - #include #include +#include + namespace { PLUGIN_CREATOR pgsc; @@ -64,14 +67,11 @@ return pgsc.GetPlugin(); //----------------------------------------------------------------------------- POSTGRESQL_STORE::POSTGRESQL_STORE() : versionString("postgresql_store v.1.3"), - strError(), server("localhost"), database("stargazer"), user("stg"), password("123456"), clientEncoding("KOI8"), - settings(), - mutex(), version(0), retries(3), connection(NULL), @@ -95,22 +95,34 @@ std::vector::iterator i; for(i = settings.moduleParams.begin(); i != settings.moduleParams.end(); ++i) { - std::string param(ToLower(i->param)); - if (param == "server") - server = *(i->value.begin()); - else if (param == "database") - database = *(i->value.begin()); - else if (param == "user") - user = *(i->value.begin()); - else if (param == "password") - password = *(i->value.begin()); - else if (param == "retries") - if (str2x(*(i->value.begin()), retries)) + if (i->value.empty()) + continue; + std::string s = ToLower(i->param); + if (s == "server") + { + server = i->value.front(); + } + if (s == "database") + { + database = i->value.front(); + } + if (s == "user") + { + user = i->value.front(); + } + if (s == "password") + { + password = i->value.front(); + } + if (s == "retries") + { + if (str2x(i->value.front(), retries)) { strError = "Invalid 'retries' value"; printfd(__FILE__, "POSTGRESQL_STORE::ParseSettings(): '%s'\n", strError.c_str()); return -1; } + } } clientEncoding = "KOI8"; @@ -224,6 +236,8 @@ if (CommitTransaction()) return -1; } +logger("POSTGRESQL_STORE: Current DB schema version: %d", version); + return 0; } //-----------------------------------------------------------------------------