def POST(self):
"""
Declare a list of bad replicas.
HTTP Success:
200 OK
HTTP Error:
401 Unauthorized
500 InternalError
"""
json_data = data()
pfns = []
header('Content-Type', 'application/x-json-stream')
try:
params = parse_response(json_data)
if 'pfns' in params:
pfns = params['pfns']
if 'reason' in params:
reason = params['reason']
except ValueError:
raise generate_http_error(400, 'ValueError', 'Cannot decode json parameter list')
not_declared_files = {}
try:
not_declared_files = declare_bad_file_replicas(pfns=pfns, reason=reason, issuer=ctx.env.get('issuer'))
except ReplicaNotFound, e:
raise generate_http_error(404, 'ReplicaNotFound', e.args[0][0])
except RucioException, e:
raise generate_http_error(500, e.__class__.__name__, e.args[0][0])
except Exception, e:
print format_exc()
raise InternalError(e)
raise Created(dumps(not_declared_files))
评论列表
文章目录