From 9a9bb39f7641a818434cafa0dae0c8aa47124c0b Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Thu, 21 Jul 2016 21:28:23 +0200 Subject: Incremental fetch of mails --- common/remoteidmap.cpp | 17 +++++++++++++++++ common/remoteidmap.h | 3 +++ 2 files changed, 20 insertions(+) (limited to 'common') diff --git a/common/remoteidmap.cpp b/common/remoteidmap.cpp index 20a054d..2c3e5c7 100644 --- a/common/remoteidmap.cpp +++ b/common/remoteidmap.cpp @@ -75,3 +75,20 @@ QByteArray RemoteIdMap::resolveLocalId(const QByteArray &bufferType, const QByte return remoteId; } +QByteArray RemoteIdMap::readValue(const QByteArray &key) +{ + QByteArray value; + mTransaction.openDatabase("values").scan(key, [&value](const QByteArray &, const QByteArray &v) { + value = v; + return false; + }, [](const Sink::Storage::Error &) { + //Ignore errors because we may not find the value + }); + return value; +} + +void RemoteIdMap::writeValue(const QByteArray &key, const QByteArray &value) +{ + mTransaction.openDatabase("values").write(key, value); +} + diff --git a/common/remoteidmap.h b/common/remoteidmap.h index 12891dc..bf08621 100644 --- a/common/remoteidmap.h +++ b/common/remoteidmap.h @@ -54,6 +54,9 @@ public: */ QByteArray resolveLocalId(const QByteArray &bufferType, const QByteArray &localId); + QByteArray readValue(const QByteArray &key); + void writeValue(const QByteArray &key, const QByteArray &value); + private: Sink::Storage::Transaction &mTransaction; }; -- cgit v1.2.3