X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.h;h=04381e2ac3946015b516ddd84ac3e71df9cfa76a;hp=ea3c578f73412409ef79eb4b54289b89a1b6863a;hb=8f976cfdc7090cf4a752dab08126cc6107aa9626;hpb=76db8cdfbeffaaba359c8e80cf2146da9e9e7f8a diff --git a/src/core/sqlitestorage.h b/src/core/sqlitestorage.h index ea3c578f..04381e2a 100644 --- a/src/core/sqlitestorage.h +++ b/src/core/sqlitestorage.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2013 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 * @@ -35,25 +35,26 @@ public: SqliteStorage(QObject *parent = 0); virtual ~SqliteStorage(); - virtual AbstractSqlMigrationReader *createMigrationReader(); + virtual std::unique_ptr createMigrationReader(); public slots: /* General */ bool isAvailable() const; + QString backendId() const; QString displayName() const; - virtual inline QStringList setupKeys() const { return QStringList(); } - virtual inline QVariantMap setupDefaults() const { return QVariantMap(); } + virtual inline QVariantList setupData() const { return {}; } QString description() 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); @@ -96,6 +97,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) override; + virtual Message::Types bufferActivity(BufferId &bufferId, const MsgId &lastSeenMsgId); /* Message handling */ virtual bool logMessage(Message &msg); @@ -160,9 +164,9 @@ private: }; -inline AbstractSqlMigrationReader *SqliteStorage::createMigrationReader() +inline std::unique_ptr SqliteStorage::createMigrationReader() { - return new SqliteMigrationReader(); + return std::unique_ptr{new SqliteMigrationReader()}; }