Example #1
0
 def get(cluster_id):
     cluc = ClusterController()
     cluster = cluc.get(id=cluster_id)
     if cluster.user_id != current_identity.id:
         raise Forbidden()
     code = 200
     if not cluster.read:
         cluc.update({'id': cluster_id},
                     {'read': True,
                      'read_reason': ReadReason.read})
         READ.labels(reason=ReadReason.read.value).inc()
         cluster.read = True
         cluster.read_reason = ReadReason.read
         code = 226
     return cluster, code
Example #2
0
 def put(cluster_id):
     cctrl = ClusterController(current_identity.id)
     attrs = parse_meaningful_params(cluster_parser)
     if 'read_reason' in attrs:
         pass  # not overriding given read reason
     elif 'read' in attrs and attrs.get('read'):
         attrs['read_reason'] = ReadReason.marked
         READ.labels(reason=ReadReason.marked.value).inc()
     elif 'read' in attrs and not attrs.get('read'):
         attrs['read_reason'] = None
     changed = cctrl.update({'id': cluster_id}, attrs)
     if not changed:
         cctrl.assert_right_ok(cluster_id)
     return None, 204