From: fujinhua Date: Fri, 12 Jul 2019 03:32:14 +0000 (+0800) Subject: Refactor codes for del and get ns X-Git-Tag: 1.3.4~27 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=17a30cc7369e240b50a7f60f407e97caef47439d;p=vfc%2Fnfvo%2Flcm.git Refactor codes for del and get ns Change-Id: I773cd98f28a2b27f7ccebceec1a6cdd0e491bada Issue-ID: VFC-1429 Signed-off-by: fujinhua --- diff --git a/lcm/ns/views/deprecated/get_del_ns_view.py b/lcm/ns/views/deprecated/get_del_ns_view.py index 2bb34c05..db5a4466 100644 --- a/lcm/ns/views/deprecated/get_del_ns_view.py +++ b/lcm/ns/views/deprecated/get_del_ns_view.py @@ -12,7 +12,6 @@ # See the License for the specific language governing permissions and # limitations under the License. import logging -import traceback from drf_yasg.utils import swagger_auto_schema from rest_framework import status @@ -23,6 +22,7 @@ from lcm.ns.biz.ns_delete import DeleteNsService from lcm.ns.biz.ns_get import GetNSInfoService from lcm.pub.exceptions import NSLCMException from lcm.ns.serializers.deprecated.ns_serializers import _QueryNsRespSerializer +from .common import view_safe_call_with_log logger = logging.getLogger(__name__) @@ -36,22 +36,18 @@ class NSDetailView(APIView): status.HTTP_404_NOT_FOUND: "Ns instance does not exist" } ) + @view_safe_call_with_log(logger=logger) def get(self, request, ns_instance_id): - try: - logger.debug("Enter NSDetailView::get ns(%s)", ns_instance_id) - ns_filter = {"ns_inst_id": ns_instance_id} - ret = GetNSInfoService(ns_filter).get_ns_info() - if not ret: - return Response(status=status.HTTP_404_NOT_FOUND) - logger.debug("Leave NSDetailView::get::ret=%s", ret) - resp_serializer = _QueryNsRespSerializer(data=ret[0]) - if not resp_serializer.is_valid(): - raise NSLCMException(resp_serializer.errors) - return Response(data=resp_serializer.data, status=status.HTTP_200_OK) - except Exception as e: - logger.error(traceback.format_exc()) - logger.error("Exception in GetNSDetail: %s", e.args[0]) - return Response(data={'error': e.args[0]}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) + logger.debug("Enter NSDetailView::get ns(%s)", ns_instance_id) + ns_filter = {"ns_inst_id": ns_instance_id} + ret = GetNSInfoService(ns_filter).get_ns_info() + if not ret: + return Response(status=status.HTTP_404_NOT_FOUND) + logger.debug("Leave NSDetailView::get::ret=%s", ret) + resp_serializer = _QueryNsRespSerializer(data=ret[0]) + if not resp_serializer.is_valid(): + raise NSLCMException(resp_serializer.errors) + return Response(data=resp_serializer.data, status=status.HTTP_200_OK) @swagger_auto_schema( request_body=None, @@ -60,12 +56,8 @@ class NSDetailView(APIView): status.HTTP_500_INTERNAL_SERVER_ERROR: "Inner error" } ) + @view_safe_call_with_log(logger=logger) def delete(self, request, ns_instance_id): - try: - logger.debug("Enter NSDetailView::delete ns(%s)", ns_instance_id) - DeleteNsService(ns_instance_id).do_biz() - return Response(data={}, status=status.HTTP_204_NO_CONTENT) - except Exception as e: - logger.error(traceback.format_exc()) - logger.error("Exception in delete NS: %s", e.args[0]) - return Response(data={'error': e.args[0]}, status=status.HTTP_500_INTERNAL_SERVER_ERROR) + logger.debug("Enter NSDetailView::delete ns(%s)", ns_instance_id) + DeleteNsService(ns_instance_id).do_biz() + return Response(data={}, status=status.HTTP_204_NO_CONTENT)