modify pnf descriptor 78/86578/1
authorhewei-cmss <hewei@cmss.chinamobile.com>
Tue, 30 Apr 2019 01:12:47 +0000 (09:12 +0800)
committerhewei-cmss <hewei@cmss.chinamobile.com>
Tue, 30 Apr 2019 01:12:47 +0000 (09:12 +0800)
Fix "" to {} when can not get dict key, and refactor code

Issue-ID: VFC-1370

Change-Id: I10c533c8adf5f2c4b75e883bdbde64d771d48ab2
Signed-off-by: hewei-cmss <hewei@cmss.chinamobile.com>
catalog/packages/biz/pnf_descriptor.py
catalog/packages/views/pnf_descriptor_views.py

index ddadb4c..e2a027b 100644 (file)
@@ -53,7 +53,8 @@ class PnfDescriptor(object):
         logger.info('A PNFD(%s) has been created.' % data['id'])
         return data
 
-    def query_multiple(self, pnfdId=None):
+    def query_multiple(self, request):
+        pnfdId = request.query_params.get('pnfdId')
         if pnfdId:
             pnf_pkgs = PnfPackageModel.objects.filter(pnfdId=pnfdId)
         else:
@@ -140,10 +141,10 @@ class PnfDescriptor(object):
         pnfdName = ""
         if pnfd.get("pnf", "") != "":
             if pnfd["pnf"].get("properties", "") != "":
-                pnfd_id = pnfd["pnf"].get("properties", "").get("descriptor_id", "")
-                pnfdVersion = pnfd["pnf"].get("properties", "").get("version", "")
-                pnfdProvider = pnfd["pnf"].get("properties", "").get("provider", "")
-                pnfdName = pnfd["pnf"].get("properties", "").get("name", "")
+                pnfd_id = pnfd["pnf"].get("properties", {}).get("descriptor_id", "")
+                pnfdVersion = pnfd["pnf"].get("properties", {}).get("version", "")
+                pnfdProvider = pnfd["pnf"].get("properties", {}).get("provider", "")
+                pnfdName = pnfd["pnf"].get("properties", {}).get("name", "")
         if pnfd_id == "":
             pnfd_id = pnfd["metadata"].get("descriptor_id", "")
             if pnfd_id == "":
@@ -212,7 +213,6 @@ class PnfDescriptor(object):
         pnf_pkg.update(onboardingState=PKG_STATUS.CREATED)
 
     def parse_pnfd(self, csar_id, inputs):
-        ret = None
         try:
             pnf_pkg = PnfPackageModel.objects.filter(pnfPackageId=csar_id)
             if not pnf_pkg:
index 2b99fd9..0545bfb 100644 (file)
@@ -99,11 +99,7 @@ def pnf_descriptors_rc(request):
         return Response(data=pnfd_info.data, status=status.HTTP_201_CREATED)
 
     if request.method == 'GET':
-        pnfdId = request.query_params.get('pnfdId', None)
-        if pnfdId:
-            data = PnfDescriptor().query_multiple(pnfdId)
-        else:
-            data = PnfDescriptor().query_multiple()
+        data = PnfDescriptor().query_multiple(request)
         pnfd_infos = validate_data(data, PnfdInfosSerializer)
         return Response(data=pnfd_infos.data, status=status.HTTP_200_OK)