summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/remoteidmap.cpp17
-rw-r--r--common/remoteidmap.h3
2 files changed, 20 insertions, 0 deletions
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
75 return remoteId; 75 return remoteId;
76} 76}
77 77
78QByteArray RemoteIdMap::readValue(const QByteArray &key)
79{
80 QByteArray value;
81 mTransaction.openDatabase("values").scan(key, [&value](const QByteArray &, const QByteArray &v) {
82 value = v;
83 return false;
84 }, [](const Sink::Storage::Error &) {
85 //Ignore errors because we may not find the value
86 });
87 return value;
88}
89
90void RemoteIdMap::writeValue(const QByteArray &key, const QByteArray &value)
91{
92 mTransaction.openDatabase("values").write(key, value);
93}
94
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:
54 */ 54 */
55 QByteArray resolveLocalId(const QByteArray &bufferType, const QByteArray &localId); 55 QByteArray resolveLocalId(const QByteArray &bufferType, const QByteArray &localId);
56 56
57 QByteArray readValue(const QByteArray &key);
58 void writeValue(const QByteArray &key, const QByteArray &value);
59
57private: 60private:
58 Sink::Storage::Transaction &mTransaction; 61 Sink::Storage::Transaction &mTransaction;
59}; 62};