43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
#ifndef OMEMO_DB_H
|
|
#define OMEMO_DB_H
|
|
|
|
#include "jiddb.h"
|
|
#include <QXmppGlobal.h>
|
|
#include <QXmppOmemoStorage.h>
|
|
#include <QXmppPromise.h>
|
|
#include <QXmppTask.h>
|
|
#include <qt5keychain/keychain.h>
|
|
#include <QDateTime>
|
|
#include <QByteArray>
|
|
#include <QString>
|
|
#include <QSqlDatabase>
|
|
#include <cstdint>
|
|
|
|
class OmemoDb : public QObject, public QXmppOmemoStorage
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
OmemoDb(const JidDb &db);
|
|
QXmppTask<OmemoData> allData() override;
|
|
QXmppTask<void> setOwnDevice(
|
|
const std::optional<OwnDevice> &device) override;
|
|
QXmppTask<void> addSignedPreKeyPair(uint32_t keyId,
|
|
const SignedPreKeyPair &keyPair) override;
|
|
QXmppTask<void> removeSignedPreKeyPair(uint32_t keyId) override;
|
|
QXmppTask<void> addPreKeyPairs(
|
|
const QHash<uint32_t, QByteArray> &keyPairs) override;
|
|
QXmppTask<void> removePreKeyPair(uint32_t keyId) override;
|
|
QXmppTask<void> addDevice(const QString &jid,
|
|
uint32_t deviceId, const Device &device) override;
|
|
QXmppTask<void> removeDevice(const QString &jid,
|
|
uint32_t deviceId) override;
|
|
QXmppTask<void> removeDevices(const QString &jid) override;
|
|
QXmppTask<void> resetAll() override;
|
|
|
|
private:
|
|
const JidDb &db;
|
|
};
|
|
|
|
#endif
|