X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/c44a8344b51fce4348e0b2d31111bf38ed554496..f907011b4827e85763372cdea76944b3b1cc3fd2:/projects/stargazer/plugins/store/postgresql/postgresql_store.h diff --git a/projects/stargazer/plugins/store/postgresql/postgresql_store.h b/projects/stargazer/plugins/store/postgresql/postgresql_store.h index ea2ec4f3..a88df88b 100644 --- a/projects/stargazer/plugins/store/postgresql/postgresql_store.h +++ b/projects/stargazer/plugins/store/postgresql/postgresql_store.h @@ -35,15 +35,17 @@ #include #include -#include "base_store.h" +#include "stg/store.h" // Minimal DB version is 5 // Recommended DB version is 6 (support FreeMb logging on disconnects) #define DB_MIN_VERSION 5 -extern "C" BASE_STORE * GetStore(); +extern "C" STORE * GetStore(); -class POSTGRESQL_STORE : public BASE_STORE { +class STG_LOGGER; + +class POSTGRESQL_STORE : public STORE { public: POSTGRESQL_STORE(); virtual ~POSTGRESQL_STORE(); @@ -72,7 +74,7 @@ public: double cash, double freeMb, const std::string & reason) const; - int WriteDetailedStat(const std::map & statTree, + int WriteDetailedStat(const TRAFF_STAT & statTree, time_t lastStat, const std::string & login) const; @@ -121,6 +123,9 @@ public: inline const string & GetStrError() const { return strError; }; inline const string & GetVersion() const { return versionString; }; private: + POSTGRESQL_STORE(const POSTGRESQL_STORE & rvalue); + POSTGRESQL_STORE & operator=(const POSTGRESQL_STORE & rvalue); + int StartTransaction() const; int CommitTransaction() const; int RollbackTransaction() const; @@ -152,8 +157,11 @@ private: MODULE_SETTINGS settings; mutable pthread_mutex_t mutex; mutable int version; + int retries; PGconn * connection; + + STG_LOGGER & WriteServLog; }; extern const volatile time_t stgTime;