X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.h;h=04381e2ac3946015b516ddd84ac3e71df9cfa76a;hp=fb84b342847aa5869cca6501c2820822c90db164;hb=8f976cfdc7090cf4a752dab08126cc6107aa9626;hpb=5b686746c880e5cda6d5de3e08180ea4332ff222 diff --git a/src/core/sqlitestorage.h b/src/core/sqlitestorage.h index fb84b342..04381e2a 100644 --- a/src/core/sqlitestorage.h +++ b/src/core/sqlitestorage.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2012 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()}; }