# HG changeset patch # User Goffi # Date 1584898522 -3600 # Node ID 843a9279fb5a90ca06d3f27fa93290d123ce641c # Parent 0404b306641db83b45fb97cddc8991c4a9eb5115 core (memory/persistent): implemented `aset` and `adel`: those methods are async variants of __setitem__ and __delitem__, they return a Deferred fired when the value is actually set/removed from storage. diff -r 0404b306641d -r 843a9279fb5a sat/memory/persistent.py --- a/sat/memory/persistent.py Sun Mar 22 14:31:48 2020 +0100 +++ b/sat/memory/persistent.py Sun Mar 22 18:35:22 2020 +0100 @@ -127,6 +127,18 @@ def get(self, key, default=None): return self._cache.get(key, default) + def aset(self, key, value): + """Async set, return a Deferred fired when value is actually stored""" + self._cache.__setitem__(key, value) + return self.storage.setPrivateValue(self.namespace, key, value, + self.binary, self.profile) + + def adel(self, key): + """Async del, return a Deferred fired when value is actually deleted""" + self._cache.__delitem__(key) + return self.storage.delPrivateValue( + self.namespace, key, self.binary, self.profile) + def setdefault(self, key, default): try: return self._cache[key]