xxcc/atm_db.h

38 lines
1.2 KiB
C++

#ifndef ATM_DB_H
#define ATM_DB_H
#include "jiddb.h"
#include "trust_db.h"
#include <QXmppAtmTrustStorage.h>
#include <QXmppTask.h>
#include <QXmppTrustMessageKeyOwner.h>
#include <QByteArray>
#include <QHash>
#include <QMultiHash>
#include <QList>
#include <QString>
class AtmDb : public TrustDb, virtual public QXmppAtmTrustStorage
{
public:
AtmDb(const QString &jid, const JidDb &db);
QXmppTask<void> addKeysForPostponedTrustDecisions(
const QString &encryption, const QByteArray &senderKeyId,
const QList<QXmppTrustMessageKeyOwner> &keyOwners) override;
QXmppTask<void> removeKeysForPostponedTrustDecisions(
const QString &encryption,
const QList<QByteArray> &keyIdsForAuthentication,
const QList<QByteArray> &keyIdsForDistrusting) override;
QXmppTask<void> removeKeysForPostponedTrustDecisions(
const QString &encryption,
const QList<QByteArray> &senderKeyIds) override;
QXmppTask<void> removeKeysForPostponedTrustDecisions(
const QString &encryption) override;
QXmppTask<QHash<bool, QMultiHash<QString, QByteArray>>>
keysForPostponedTrustDecisions(const QString &encryption,
const QList<QByteArray> &senderKeyIds = {}) override;
};
#endif