summary refs log tree commit diff
path: root/synapse/util
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2015-08-06 13:37:56 +0100
committerErik Johnston <erik@matrix.org>2015-08-06 13:37:56 +0100
commitf596ff402e49c963b94c398cfb9dbc9d92046b82 (patch)
treecfaaa4e7f18a6379562bcae641cffad37d6b4327 /synapse/util
parentMerge branch 'erikj/cached_keyword_args' of github.com:matrix-org/synapse int... (diff)
parentMerge branch 'erikj/cached_keyword_args' into erikj/cache_deferreds (diff)
downloadsynapse-f596ff402e49c963b94c398cfb9dbc9d92046b82.tar.xz
Merge branch 'erikj/cache_deferreds' into erikj/dictionary_cache
Diffstat (limited to 'synapse/util')
-rw-r--r--synapse/util/async.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/synapse/util/async.py b/synapse/util/async.py

index 5a1d545c96..7bf2d38bb8 100644 --- a/synapse/util/async.py +++ b/synapse/util/async.py
@@ -51,7 +51,7 @@ class ObservableDeferred(object): object.__setattr__(self, "_observers", set()) def callback(r): - self._result = (True, r) + object.__setattr__(self, "_result", (True, r)) while self._observers: try: self._observers.pop().callback(r) @@ -60,7 +60,7 @@ class ObservableDeferred(object): return r def errback(f): - self._result = (False, f) + object.__setattr__(self, "_result", (False, f)) while self._observers: try: self._observers.pop().errback(f) @@ -97,3 +97,8 @@ class ObservableDeferred(object): def __setattr__(self, name, value): setattr(self._deferred, name, value) + + def __repr__(self): + return "<ObservableDeferred object at %s, result=%r, _deferred=%r>" % ( + id(self), self._result, self._deferred, + )