X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fpostgresqlstorage.h;h=f78422a010c667c1b5593480ab13cab00451aad1;hp=f699ca11b94f6e34e3f4007f0c54cf8b3ef886df;hb=aca3263f8f94e0d6640bdf857e71115151b85037;hpb=698bd631332040f9a988ae8f31a80688893ca6f3 diff --git a/src/core/postgresqlstorage.h b/src/core/postgresqlstorage.h index f699ca11..f78422a0 100644 --- a/src/core/postgresqlstorage.h +++ b/src/core/postgresqlstorage.h @@ -130,8 +130,6 @@ private: QString _userName; QString _password; - static int _maxRetryCount; - typedef QHash QueryHash; QHash _preparedQueries; // one query hash per db connection QMutex _queryHashMutex; @@ -140,4 +138,42 @@ private: inline void PostgreSqlStorage::safeExec(QSqlQuery &query) { query.exec(); } + +// ======================================== +// PostgreSqlMigration +// ======================================== +class PostgreSqlMigrationWriter : public PostgreSqlStorage, public AbstractSqlMigrationWriter { + Q_OBJECT + +public: + PostgreSqlMigrationWriter(); + +// virtual bool writeUser(const QuasselUserMO &user); +// virtual bool writeSender(const SenderMO &sender); +// virtual bool writeIdentity(const IdentityMO &identity); +// virtual bool writeIdentityNick(const IdentityNickMO &identityNick); +// virtual bool writeNetwork(const NetworkMO &network); +// virtual bool writeBuffer(const BufferMO &buffer); +// virtual bool writeBacklog(const BacklogMO &backlog); +// virtual bool writeIrcServer(const IrcServerMO &ircserver); +// virtual bool writeUserSetting(const UserSettingMO &userSetting); + + virtual bool writeMo(const QuasselUserMO &user); + virtual bool writeMo(const SenderMO &sender); + virtual bool writeMo(const IdentityMO &identity); + virtual bool writeMo(const IdentityNickMO &identityNick); + virtual bool writeMo(const NetworkMO &network); + virtual bool writeMo(const BufferMO &buffer); + virtual bool writeMo(const BacklogMO &backlog); + virtual bool writeMo(const IrcServerMO &ircserver); + virtual bool writeMo(const UserSettingMO &userSetting); + + bool prepareQuery(MigrationObject mo); + +protected: + virtual inline bool transaction() { return logDb().transaction(); } + virtual inline void rollback() { logDb().rollback(); } + virtual inline bool commit() { return logDb().commit(); } +}; + #endif