summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2017-10-05 16:59:48 +0300
committerLars Wirzenius <liw@liw.fi>2017-10-05 18:02:52 +0300
commitfc55fe367504c7dc82c7729c0543df3541ac596e (patch)
tree552847f61494d2899b7642cb80a152aa642b0b62
parent58728183fbf65fcf8c7bd4ade792def49d4b847e (diff)
downloadqvisqve-fc55fe367504c7dc82c7729c0543df3541ac596e.tar.gz
Fix: only nofify POST to listeners who want them
-rw-r--r--qvarn/api.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/qvarn/api.py b/qvarn/api.py
index 6b62c25..6d76edf 100644
--- a/qvarn/api.py
+++ b/qvarn/api.py
@@ -402,7 +402,9 @@ class QvarnAPI:
qvarn.Equal('listener_id', rid)
)
pairs = self._store.find_objects(cond)
- qvarn.log.log('xxx', pairs=pairs)
+ qvarn.log.log(
+ 'trace', msg_text='Found notifications',
+ notifications=pairs)
body = {
'resources': [
{
@@ -424,7 +426,9 @@ class QvarnAPI:
qvarn.Equal('id', notification_id),
)
pairs = self._store.find_objects(cond)
- qvarn.log.log('xxx', pairs=pairs)
+ qvarn.log.log(
+ 'trace', msg_text='Found notifications',
+ notifications=pairs)
if len(pairs) == 0:
return no_such_resource_response(notification_id)
if len(pairs) > 1:
@@ -461,7 +465,7 @@ class QvarnAPI:
def listener_matches(self, obj, rid, change): # pragma: no cover
if change == 'created' and obj.get('notify_of_new'):
return True
- if obj.get('listen_on_all'):
+ if change == 'updated' and obj.get('listen_on_all'):
return True
if rid in obj.get('listen_on', []):
return True
@@ -525,14 +529,13 @@ class QvarnAPI:
# changed later.
return bad_request_response(str(e))
- self.notify(result_body['id'], result_body['revision'], 'updated')
+ self.notify(
+ result_body['id'], result_body['revision'], 'updated')
return ok_response(result_body)
return wrapper
def put_subpath_callback(self, coll, subpath): # pragma: no cover
def wrapper(content_type, body, **kwargs):
- qvarn.log.log('xxx', body=body)
-
if content_type != 'application/json':
raise NotJson(content_type)