// SPDX-FileCopyrightText: 2021 Melvin Keskin // // SPDX-License-Identifier: LGPL-2.1-or-later #ifndef QXMPPTRUSTMEMORYSTORAGE_H #define QXMPPTRUSTMEMORYSTORAGE_H #include "QXmppTrustStorage.h" #include class QXmppTrustMemoryStoragePrivate; class QXMPP_EXPORT QXmppTrustMemoryStorage : virtual public QXmppTrustStorage { public: QXmppTrustMemoryStorage(); ~QXmppTrustMemoryStorage(); /// \cond QFuture setSecurityPolicy(const QString &encryption, QXmpp::TrustSecurityPolicy securityPolicy) override; QFuture resetSecurityPolicy(const QString &encryption) override; QFuture securityPolicy(const QString &encryption) override; QFuture setOwnKey(const QString &encryption, const QByteArray &keyId) override; QFuture resetOwnKey(const QString &encryption) override; QFuture ownKey(const QString &encryption) override; QFuture addKeys(const QString &encryption, const QString &keyOwnerJid, const QList &keyIds, QXmpp::TrustLevel trustLevel = QXmpp::TrustLevel::AutomaticallyDistrusted) override; QFuture removeKeys(const QString &encryption, const QList &keyIds) override; QFuture removeKeys(const QString &encryption, const QString &keyOwnerJid) override; QFuture removeKeys(const QString &encryption) override; QFuture>> keys(const QString &encryption, QXmpp::TrustLevels trustLevels = {}) override; QFuture>> keys(const QString &encryption, const QList &keyOwnerJids, QXmpp::TrustLevels trustLevels = {}) override; QFuture hasKey(const QString &encryption, const QString &keyOwnerJid, QXmpp::TrustLevels trustLevels) override; QFuture>> setTrustLevel(const QString &encryption, const QMultiHash &keyIds, QXmpp::TrustLevel trustLevel) override; QFuture>> setTrustLevel(const QString &encryption, const QList &keyOwnerJids, QXmpp::TrustLevel oldTrustLevel, QXmpp::TrustLevel newTrustLevel) override; QFuture trustLevel(const QString &encryption, const QString &keyOwnerJid, const QByteArray &keyId) override; QFuture resetAll(const QString &encryption) override; /// \endcond private: std::unique_ptr d; }; #endif // QXMPPTRUSTMEMORYSTORAGE_H