keeping up with qxmpp
This commit is contained in:
parent
73d83f55af
commit
3c6b611a41
10 changed files with 146 additions and 153 deletions
|
@ -16,6 +16,7 @@
|
|||
|
||||
#include "trusthandler.h"
|
||||
#include "core/account.h"
|
||||
#include "core/adapterfunctions.h"
|
||||
|
||||
using namespace Core;
|
||||
|
||||
|
@ -75,37 +76,25 @@ Core::TrustHandler::KeyCache * Core::TrustHandler::createNewCache(const QString&
|
|||
return cache;
|
||||
}
|
||||
|
||||
|
||||
QFuture<void> Core::TrustHandler::emptyVoidFuture() {
|
||||
QFutureInterface<QXmppOmemoStorage::OmemoData> result(QFutureInterfaceBase::Started);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
}
|
||||
|
||||
|
||||
QFuture<void> Core::TrustHandler::resetAll(const QString& encryption) {
|
||||
QXmppTask<void> Core::TrustHandler::resetAll(const QString& encryption) {
|
||||
securityPolicies->removeRecord(encryption);
|
||||
ownKeys->removeRecord(encryption);
|
||||
getCache(encryption)->drop();
|
||||
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<QXmpp::TrustLevel> Core::TrustHandler::trustLevel(
|
||||
QXmppTask<QXmpp::TrustLevel> Core::TrustHandler::trustLevel(
|
||||
const QString& encryption,
|
||||
const QString& keyOwnerJid,
|
||||
const QByteArray& keyId)
|
||||
{
|
||||
Keys map = getCache(encryption)->getRecord(keyOwnerJid);
|
||||
Shared::TrustLevel level = map.at(keyId);
|
||||
|
||||
QFutureInterface<QXmpp::TrustLevel> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(convert(level));
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(convert(level)));
|
||||
}
|
||||
|
||||
QFuture<QHash<QString, QMultiHash<QString, QByteArray>>> Core::TrustHandler::setTrustLevel(
|
||||
QXmppTask<QHash<QString, QMultiHash<QString, QByteArray>>> Core::TrustHandler::setTrustLevel(
|
||||
const QString& encryption,
|
||||
const QList<QString>& keyOwnerJids,
|
||||
QXmpp::TrustLevel oldTrustLevel,
|
||||
|
@ -130,14 +119,10 @@ QFuture<QHash<QString, QMultiHash<QString, QByteArray>>> Core::TrustHandler::set
|
|||
cache->changeRecord(keyOwnerJid, map);
|
||||
}
|
||||
}
|
||||
|
||||
QFutureInterface<QHash<QString, QMultiHash<QString, QByteArray>>> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(modifiedKeys);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(modifiedKeys));
|
||||
}
|
||||
|
||||
QFuture<QHash<QString, QMultiHash<QString, QByteArray>>> Core::TrustHandler::setTrustLevel(
|
||||
QXmppTask<QHash<QString, QMultiHash<QString, QByteArray>>> Core::TrustHandler::setTrustLevel(
|
||||
const QString& encryption,
|
||||
const QMultiHash<QString, QByteArray>& keyIds,
|
||||
QXmpp::TrustLevel trustLevel)
|
||||
|
@ -160,14 +145,10 @@ QFuture<QHash<QString, QMultiHash<QString, QByteArray>>> Core::TrustHandler::set
|
|||
cache->changeRecord(keyOwnerJid, map);
|
||||
}
|
||||
}
|
||||
|
||||
QFutureInterface<QHash<QString, QMultiHash<QString, QByteArray>>> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(modifiedKeys);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(modifiedKeys));
|
||||
}
|
||||
|
||||
QFuture<bool> TrustHandler::hasKey(const QString& encryption,
|
||||
QXmppTask<bool> TrustHandler::hasKey(const QString& encryption,
|
||||
const QString& keyOwnerJid,
|
||||
QXmpp::TrustLevels trustLevels)
|
||||
{
|
||||
|
@ -182,14 +163,10 @@ QFuture<bool> TrustHandler::hasKey(const QString& encryption,
|
|||
}
|
||||
}
|
||||
} catch (const DataBase::NotFound& e) {}
|
||||
|
||||
QFutureInterface<bool> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(found);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(found));
|
||||
}
|
||||
|
||||
QFuture<QHash<QString, QHash<QByteArray, QXmpp::TrustLevel>>> TrustHandler::keys(
|
||||
QXmppTask<QHash<QString, QHash<QByteArray, QXmpp::TrustLevel>>> TrustHandler::keys(
|
||||
const QString& encryption,
|
||||
const QList<QString>& keyOwnerJids,
|
||||
QXmpp::TrustLevels trustLevels)
|
||||
|
@ -209,14 +186,10 @@ QFuture<QHash<QString, QHash<QByteArray, QXmpp::TrustLevel>>> TrustHandler::keys
|
|||
}
|
||||
} catch (const DataBase::NotFound& e) {}
|
||||
}
|
||||
|
||||
QFutureInterface<HSHBTL> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(res);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(res));
|
||||
}
|
||||
|
||||
QFuture<QHash<QXmpp::TrustLevel, QMultiHash<QString, QByteArray>>> TrustHandler::keys(
|
||||
QXmppTask<QHash<QXmpp::TrustLevel, QMultiHash<QString, QByteArray>>> TrustHandler::keys(
|
||||
const QString& encryption,
|
||||
QXmpp::TrustLevels trustLevels)
|
||||
{
|
||||
|
@ -231,24 +204,20 @@ QFuture<QHash<QXmpp::TrustLevel, QMultiHash<QString, QByteArray>>> TrustHandler:
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
QFutureInterface<QHash<TL, MultySB>> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(res);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(res));
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::removeKeys(const QString& encryption) {
|
||||
QXmppTask<void> TrustHandler::removeKeys(const QString& encryption) {
|
||||
getCache(encryption)->drop();
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::removeKeys(const QString& encryption, const QString& keyOwnerJid) {
|
||||
QXmppTask<void> TrustHandler::removeKeys(const QString& encryption, const QString& keyOwnerJid) {
|
||||
getCache(encryption)->removeRecord(keyOwnerJid);
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::removeKeys(const QString& encryption, const QList<QByteArray>& keyIds) {
|
||||
QXmppTask<void> TrustHandler::removeKeys(const QString& encryption, const QList<QByteArray>& keyIds) {
|
||||
std::set<QByteArray> set;
|
||||
for (const QByteArray& keyId : keyIds) {
|
||||
set.insert(keyId);
|
||||
|
@ -278,10 +247,10 @@ QFuture<void> TrustHandler::removeKeys(const QString& encryption, const QList<QB
|
|||
cache->replaceAll(data);
|
||||
}
|
||||
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::addKeys(
|
||||
QXmppTask<void> TrustHandler::addKeys(
|
||||
const QString& encryption,
|
||||
const QString& keyOwnerJid,
|
||||
const QList<QByteArray>& keyIds,
|
||||
|
@ -308,61 +277,53 @@ QFuture<void> TrustHandler::addKeys(
|
|||
cache->addRecord(keyOwnerJid, data);
|
||||
}
|
||||
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<QByteArray> TrustHandler::ownKey(const QString& encryption) {
|
||||
QXmppTask<QByteArray> TrustHandler::ownKey(const QString& encryption) {
|
||||
QByteArray res;
|
||||
try {
|
||||
res = ownKeys->getRecord(encryption);
|
||||
} catch (const DataBase::NotFound& e) {}
|
||||
|
||||
QFutureInterface<QByteArray> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(res);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(res));
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::resetOwnKey(const QString& encryption) {
|
||||
QXmppTask<void> TrustHandler::resetOwnKey(const QString& encryption) {
|
||||
try {
|
||||
ownKeys->removeRecord(encryption);
|
||||
} catch (const DataBase::NotFound& e) {}
|
||||
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::setOwnKey(const QString& encryption, const QByteArray& keyId) {
|
||||
QXmppTask<void> TrustHandler::setOwnKey(const QString& encryption, const QByteArray& keyId) {
|
||||
ownKeys->forceRecord(encryption, keyId);
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<QXmpp::TrustSecurityPolicy> TrustHandler::securityPolicy(const QString& encryption) {
|
||||
QXmppTask<QXmpp::TrustSecurityPolicy> TrustHandler::securityPolicy(const QString& encryption) {
|
||||
QXmpp::TrustSecurityPolicy res;
|
||||
try {
|
||||
res = static_cast<QXmpp::TrustSecurityPolicy>(securityPolicies->getRecord(encryption));
|
||||
} catch (const DataBase::NotFound& e) {}
|
||||
|
||||
QFutureInterface<QXmpp::TrustSecurityPolicy> result(QFutureInterfaceBase::Started);
|
||||
result.reportResult(res);
|
||||
result.reportFinished();
|
||||
return result.future();
|
||||
return Core::makeReadyTask(std::move(res));
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::resetSecurityPolicy(const QString& encryption) {
|
||||
QXmppTask<void> TrustHandler::resetSecurityPolicy(const QString& encryption) {
|
||||
try {
|
||||
securityPolicies->removeRecord(encryption);
|
||||
} catch (const DataBase::NotFound& e) {}
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
QFuture<void> TrustHandler::setSecurityPolicy(
|
||||
QXmppTask<void> TrustHandler::setSecurityPolicy(
|
||||
const QString& encryption,
|
||||
QXmpp::TrustSecurityPolicy securityPolicy)
|
||||
{
|
||||
uint8_t pol = securityPolicy;
|
||||
securityPolicies->forceRecord(encryption, pol);
|
||||
|
||||
return emptyVoidFuture();
|
||||
return Core::makeReadyTask();
|
||||
}
|
||||
|
||||
Shared::TrustLevel Core::TrustHandler::convert(Core::TrustHandler::TL level)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue