# HG changeset patch # User Ralph Meijer # Date 1157547473 0 # Node ID 84cfe9fe38c51b7c8b1772714d7e1a2fa12ede2e # Parent d0dfc01f76389c8508ad810ed2ac039625aa2661 Comply with the access model 'open'. Currently, the only implemented access model is 'open', so we should not check for the subscription of the requestor for item retrieval. We do reject outcasts. diff -r d0dfc01f7638 -r 84cfe9fe38c5 NEWS --- a/NEWS Wed Sep 06 12:43:10 2006 +0000 +++ b/NEWS Wed Sep 06 12:57:53 2006 +0000 @@ -4,6 +4,7 @@ - Bring errors up to date with version 1.8 of JEP-0060. - Add new retrieve-default feature for retrieval of default node configuration. + - Fully comply with access model 'open'. 0.5.0 (2006-08-17) ================== diff -r d0dfc01f7638 -r 84cfe9fe38c5 idavoll/generic_backend.py --- a/idavoll/generic_backend.py Wed Sep 06 12:43:10 2006 +0000 +++ b/idavoll/generic_backend.py Wed Sep 06 12:57:53 2006 +0000 @@ -265,20 +265,15 @@ def get_items(self, node_id, requestor, max_items=None, item_ids=[]): d = self.parent.storage.get_node(node_id) - d.addCallback(self._is_subscribed, requestor) + d.addCallback(_get_affiliation, requestor) d.addCallback(self._do_get_items, max_items, item_ids) return d - def _is_subscribed(self, node, subscriber): - d = node.is_subscribed(subscriber) - d.addCallback(lambda subscribed: (node, subscribed)) - return d + def _do_get_items(self, result, max_items, item_ids): + node, affiliation = result - def _do_get_items(self, result, max_items, item_ids): - node, subscribed = result - - if not subscribed: - raise backend.NotSubscribed + if affiliation == 'outcast': + raise backend.Forbidden if item_ids: return node.get_items_by_id(item_ids)