X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.h;h=58ae08c8adcb84a33beae8f8c15ba9ef467e9900;hp=367c644d4bf04a925659c08b5d6fc957e3497bb7;hb=8f2ee00f4edef1693628d3af0bdee84d725eb754;hpb=88ce73ff525535c00cc979fff357fbe4cb8cdc2b diff --git a/src/core/sqlitestorage.h b/src/core/sqlitestorage.h index 367c644d..58ae08c8 100644 --- a/src/core/sqlitestorage.h +++ b/src/core/sqlitestorage.h @@ -31,8 +31,7 @@ class SqliteStorage : public AbstractSqlStorage Q_OBJECT public: - SqliteStorage(QObject *parent = 0); - ~SqliteStorage() override; + SqliteStorage(QObject *parent = nullptr); std::unique_ptr createMigrationReader() override; @@ -58,6 +57,8 @@ public slots: void delUser(UserId user) override; void setUserSetting(UserId userId, const QString &settingName, const QVariant &data) override; QVariant getUserSetting(UserId userId, const QString &settingName, const QVariant &defaultData = QVariant()) override; + void setCoreState(const QVariantList &data) override; + QVariantList getCoreState(const QVariantList &data) override; /* Identity handling */ IdentityId createIdentity(UserId user, CoreIdentity &identity) override; @@ -109,14 +110,26 @@ public slots: bool logMessage(Message &msg) override; bool logMessages(MessageList &msgs) override; QList requestMsgs(UserId user, BufferId bufferId, MsgId first = -1, MsgId last = -1, int limit = -1) override; + QList requestMsgsFiltered(UserId user, BufferId bufferId, MsgId first = -1, MsgId last = -1, + int limit = -1, Message::Types type = Message::Types{-1}, + Message::Flags flags = Message::Flags{-1}) override; QList requestAllMsgs(UserId user, MsgId first = -1, MsgId last = -1, int limit = -1) override; + QList requestAllMsgsFiltered(UserId user, MsgId first = -1, MsgId last = -1, int limit = -1, + Message::Types type = Message::Types{-1}, + Message::Flags flags = Message::Flags{-1}) override; /* Sysident handling */ QMap getAllAuthUserNames() override; - QString getAuthUserName(UserId user) override; protected: - void setConnectionProperties(const QVariantMap & /* properties */) override {} + void setConnectionProperties(const QVariantMap &properties, + const QProcessEnvironment &environment, + bool loadFromEnvironment) override { + Q_UNUSED(properties); + Q_UNUSED(environment); + Q_UNUSED(loadFromEnvironment); + } + // SQLite does not have any connection properties to set QString driverName() override { return "QSQLITE"; } QString databaseName() override { return backlogFile(); } int installedSchemaVersion() override; @@ -156,10 +169,11 @@ public: bool readMo(BacklogMO &backlog) override; bool readMo(IrcServerMO &ircserver) override; bool readMo(UserSettingMO &userSetting) override; + bool readMo(CoreStateMO &coreState) override; bool prepareQuery(MigrationObject mo) override; - int stepSize() { return 50000; } + qint64 stepSize() { return 50000; } protected: bool transaction() override { return logDb().transaction(); } @@ -168,7 +182,7 @@ protected: private: void setMaxId(MigrationObject mo); - int _maxId; + qint64 _maxId{0}; };