X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fpostgresqlstorage.h;h=3643ecc3e10d8830f969c4b6557a36314aa97f39;hp=81439bbb5ae2f29dc169e740c3dd5715b32f62a7;hb=3a3e844f9fcfd12235a0086af75ecd503b621ef4;hpb=6422c61b11d97f905b6a27f2d280e9ec0d8bb3e2 diff --git a/src/core/postgresqlstorage.h b/src/core/postgresqlstorage.h index 81439bbb..3643ecc3 100644 --- a/src/core/postgresqlstorage.h +++ b/src/core/postgresqlstorage.h @@ -30,7 +30,7 @@ class PostgreSqlStorage : public AbstractSqlStorage Q_OBJECT public: - PostgreSqlStorage(QObject *parent = 0); + PostgreSqlStorage(QObject *parent = nullptr); ~PostgreSqlStorage() override; std::unique_ptr createMigrationWriter() override; @@ -57,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; @@ -98,20 +100,32 @@ public slots: void setBufferActivity(UserId id, BufferId bufferId, Message::Types type) override; QHash bufferActivities(UserId id) override; Message::Types bufferActivity(BufferId bufferId, MsgId lastSeenMsgId) override; + void setHighlightCount(UserId id, BufferId bufferId, int count) override; + QHash highlightCounts(UserId id) override; + int highlightCount(BufferId bufferId, MsgId lastSeenMsgId) override; + QHash bufferCiphers(UserId user, const NetworkId &networkId) override; + void setBufferCipher(UserId user, const NetworkId &networkId, const QString &bufferName, const QByteArray &cipher) override; /* Message handling */ 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: bool initDbSession(QSqlDatabase &db) override; - void setConnectionProperties(const QVariantMap &properties) override; + void setConnectionProperties(const QVariantMap &properties, + const QProcessEnvironment &environment, + bool loadFromEnvironment) override; QString driverName() override { return "QPSQL"; } QString hostName() override { return _hostName; } int port() override { return _port; } @@ -167,6 +181,7 @@ public: bool writeMo(const BacklogMO &backlog) override; bool writeMo(const IrcServerMO &ircserver) override; bool writeMo(const UserSettingMO &userSetting) override; + bool writeMo(const CoreStateMO &coreState) override; bool prepareQuery(MigrationObject mo) override;