diff options
Diffstat (limited to 'catalog/packages/views/ns_descriptor_views.py')
-rw-r--r-- | catalog/packages/views/ns_descriptor_views.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/catalog/packages/views/ns_descriptor_views.py b/catalog/packages/views/ns_descriptor_views.py index 3b8c1f92..d0de5aec 100644 --- a/catalog/packages/views/ns_descriptor_views.py +++ b/catalog/packages/views/ns_descriptor_views.py @@ -137,3 +137,21 @@ def nsd_content_ru(request, **kwargs): file_range = request.META.get('HTTP_RANGE') file_iterator = NsDescriptor().download(nsd_info_id, file_range) return StreamingHttpResponse(file_iterator, status=status.HTTP_200_OK) + + +@swagger_auto_schema( + method='PUT', + operation_description="Update a NSD", + request_body=no_body, + responses={ + status.HTTP_202_ACCEPTED: "Successfully", + status.HTTP_500_INTERNAL_SERVER_ERROR: "Internal error" + } +) +@api_view(http_method_names=['PUT']) +@view_safe_call_with_log(logger=logger) +def ns_descriptors_u(request, **kwargs): + if request.method == 'PUT': + nsd_info_id = kwargs.get("nsdInfoId") + NsDescriptor().update(request.data, nsd_info_id) + return Response(data=None, status=status.HTTP_202_ACCEPTED) |