X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fpostgresqlstorage.h;h=f93bf69129c6e01e1715b035776aad8a3462741e;hb=8efbb2ef22f5f007b5dc6d5b15ecf070ccef08ca;hp=a90c881594a2985cf179b502ab9c6097a9486137;hpb=c1cf157116de7fc3da96203aa6f03c38c7ebb650;p=quassel.git diff --git a/src/core/postgresqlstorage.h b/src/core/postgresqlstorage.h index a90c8815..f93bf691 100644 --- a/src/core/postgresqlstorage.h +++ b/src/core/postgresqlstorage.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2018 by the Quassel Project * + * Copyright (C) 2005-2019 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -137,8 +137,24 @@ protected: QString userName() override { return _userName; } QString password() override { return _password; } int installedSchemaVersion() override; - bool updateSchemaVersion(int newVersion) override; + bool updateSchemaVersion(int newVersion, bool clearUpgradeStep) override; bool setupSchemaVersion(int version) override; + + /** + * Gets the last successful schema upgrade step, or an empty string if no upgrade is in progress + * + * @return Filename of last successful schema upgrade query, or empty string if not upgrading + */ + QString schemaVersionUpgradeStep() override; + + /** + * Sets the last successful schema upgrade step + * + * @param upgradeQuery The filename of the last successful schema upgrade query + * @return True if successfully set, otherwise false + */ + virtual bool setSchemaVersionUpgradeStep(QString upgradeQuery) override; + void safeExec(QSqlQuery& query); bool beginTransaction(QSqlDatabase& db);