From: fujinhua Date: Tue, 30 Jan 2018 08:54:29 +0000 (+0800) Subject: Add get vl swagger generate logic X-Git-Tag: v1.1.0~194 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F13%2F29613%2F2;p=vfc%2Fnfvo%2Flcm.git Add get vl swagger generate logic Change-Id: I91071d655d97b59d4363741ac748598e5a14cb32 Issue-ID: VFC-688 Signed-off-by: fujinhua --- diff --git a/lcm/ns/vls/views.py b/lcm/ns/vls/views.py index e04992cf..b669195b 100644 --- a/lcm/ns/vls/views.py +++ b/lcm/ns/vls/views.py @@ -21,6 +21,7 @@ from lcm.ns.vls.create_vls import CreateVls from lcm.ns.vls.delete_vls import DeleteVls from lcm.ns.vls.get_vls import GetVls from lcm.ns.vls.serializers import CreateVlReqSerializer, CreateVlRespSerializer +from lcm.ns.vls.serializers import GetVlRespSerializer import logging @@ -55,14 +56,30 @@ class VlView(APIView): class VlDetailView(APIView): + @swagger_auto_schema( + request_body=None, + responses={ + status.HTTP_200_OK: GetVlRespSerializer(), + status.HTTP_404_NOT_FOUND: "VL instance is not found", + status.HTTP_500_INTERNAL_SERVER_ERROR: "Inner error" + } + ) def get(self, request, vl_inst_id): logger.debug("VlDetailView--get::> %s" % vl_inst_id) vl_inst_info = GetVls(vl_inst_id).do() if not vl_inst_info: return Response(status=status.HTTP_404_NOT_FOUND) - return Response(status=status.HTTP_200_OK, data={'vlId': vl_inst_id, - 'vlName': vl_inst_info[0].vlinstancename, - 'vlStatus': "active"}) + + resp_serializer = GetVlRespSerializer(data={ + 'vlId': vl_inst_id, + 'vlName': vl_inst_info[0].vlinstancename, + 'vlStatus': "active"}) + if not resp_serializer.is_valid(): + logger.error(resp_serializer.errors) + return Response(data={'error': resp_serializer.errors}, + status=status.HTTP_500_INTERNAL_SERVER_ERROR) + + return Response(status=status.HTTP_200_OK, data=resp_serializer.data) def delete(self, request_paras, vl_inst_id): logger.debug("VlDetailView--delete::> %s" % vl_inst_id)