Add scale vnf swagger genereate logic 25/30625/1
authorfujinhua <fu.jinhua@zte.com.cn>
Wed, 7 Feb 2018 08:31:39 +0000 (16:31 +0800)
committerfujinhua <fu.jinhua@zte.com.cn>
Wed, 7 Feb 2018 08:31:39 +0000 (16:31 +0800)
Change-Id: I0da2052bb5a4244e7e620ff55bdd38901e02df74
Issue-ID: VFC-714
Signed-off-by: fujinhua <fu.jinhua@zte.com.cn>
lcm/ns/vnfs/views.py

index 45d46f4..0479d1a 100644 (file)
@@ -40,6 +40,8 @@ from lcm.ns.vnfs.serializers import TerminateVnfRespSerializer
 from lcm.ns.vnfs.serializers import GrantVnfReqSerializer
 from lcm.ns.vnfs.serializers import GrantVnfRespSerializer
 from lcm.ns.vnfs.serializers import NotifyLcmReqSerializer
+from lcm.ns.vnfs.serializers import ScaleVnfReqSerializer
+from lcm.ns.vnfs.serializers import ScaleVnfRespSerializer
 
 logger = logging.getLogger(__name__)
 
@@ -195,10 +197,20 @@ class LcmNotify(APIView):
 
 
 class NfScaleView(APIView):
-    def post(self, request_paras, vnfinstid):
-        logger.debug("NfScaleView--post::> %s" % request_paras.data)
+    @swagger_auto_schema(
+        request_body=ScaleVnfReqSerializer(),
+        responses={
+            status.HTTP_202_ACCEPTED: ScaleVnfRespSerializer(),
+            status.HTTP_409_CONFLICT: "Inner error"
+        }
+    )
+    def post(self, request, vnfinstid):
+        logger.debug("NfScaleView--post::> %s" % request.data)
         try:
-            NFManualScaleService(vnfinstid, request_paras.data).start()
+            req_serializer = ScaleVnfReqSerializer(data=request.data)
+            if not req_serializer.is_valid():
+                raise Exception(req_serializer.errors)
+            NFManualScaleService(vnfinstid, request.data).start()
             return Response(data={}, status=status.HTTP_202_ACCEPTED)
         except Exception as e:
             logger.error(e.message)