def _parse(r): if r.OK: object_name = r.request._object.get_name() obj = Object(name=object_name) obj.set_metadata(r.metadata) d.callback((r, obj)) elif r.status_code == 401: d.errback(NotAuthenticatedException('failed to set object metadata, not authorised')) elif r.status_code == 404: d.errback(NotAuthenticatedException('failed to set object metadata, object does not exist')) else: d.errback(ResponseException('failed to set object metadata'))