X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fpostgresqlstorage.h;h=06edadbb29bf0e7210baf86b2a20cd999cbac9a6;hp=346f7cd52eb1ac92e0938d9c94ab2b7ae4017221;hb=502b47a608a55374bd28b6b698971f9f697e2d20;hpb=921e54680da16fcf2adb7a90506875aceb6633a4 diff --git a/src/core/postgresqlstorage.h b/src/core/postgresqlstorage.h index 346f7cd5..06edadbb 100644 --- a/src/core/postgresqlstorage.h +++ b/src/core/postgresqlstorage.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2016 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -34,25 +34,26 @@ public: PostgreSqlStorage(QObject *parent = 0); virtual ~PostgreSqlStorage(); - virtual AbstractSqlMigrationWriter *createMigrationWriter(); + virtual std::unique_ptr createMigrationWriter(); public slots: /* General */ virtual bool isAvailable() const; + virtual QString backendId() const; virtual QString displayName() const; virtual QString description() const; - virtual QStringList setupKeys() const; - virtual QVariantMap setupDefaults() const; + virtual QVariantList setupData() const; // TODO: Add functions for configuring the backlog handling, i.e. defining auto-cleanup settings etc /* User handling */ - virtual UserId addUser(const QString &user, const QString &password); + virtual UserId addUser(const QString &user, const QString &password, const QString &authenticator = "Database"); virtual bool updateUser(UserId user, const QString &password); virtual void renameUser(UserId user, const QString &newName); virtual UserId validateUser(const QString &user, const QString &password); virtual UserId getUserId(const QString &username); + virtual QString getUserAuthenticator(const UserId userid); virtual UserId internalUser(); virtual void delUser(UserId user); virtual void setUserSetting(UserId userId, const QString &settingName, const QVariant &data); @@ -95,6 +96,9 @@ public slots: virtual QHash bufferLastSeenMsgIds(UserId user); virtual void setBufferMarkerLineMsg(UserId user, const BufferId &bufferId, const MsgId &msgId); virtual QHash bufferMarkerLineMsgIds(UserId user); + virtual void setBufferActivity(UserId id, const BufferId &bufferId, const Message::Types &type); + virtual QHash bufferActivities(UserId id); + virtual Message::Types bufferActivity(BufferId &bufferId, MsgId &lastSeenMsgId); /* Message handling */ virtual bool logMessage(Message &msg);