blob: 509f652764c413a37816b8e58f07507ad8c92077 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
from twisted.internet import defer
class StateMixin(object):
## state management
_objectid = None
@defer.inlineCallbacks
def getState(self, *args, **kwargs):
# get the objectid, if not known
if self._objectid is None:
self._objectid = yield self.master.db.state.getObjectId(self.name,
self.__class__.__name__)
rv = yield self.master.db.state.getState(self._objectid, *args,
**kwargs)
defer.returnValue(rv)
@defer.inlineCallbacks
def setState(self, key, value):
# get the objectid, if not known
if self._objectid is None:
self._objectid = yield self.master.db.state.getObjectId(self.name,
self.__class__.__name__)
yield self.master.db.state.setState(self._objectid, key, value)
|