Merge "Deal with pnf descriptor"
authorFu Jinhua <fu.jinhua@zte.com.cn>
Wed, 29 Aug 2018 08:01:20 +0000 (08:01 +0000)
committerGerrit Code Review <gerrit@onap.org>
Wed, 29 Aug 2018 08:01:20 +0000 (08:01 +0000)
1  2 
catalog/packages/biz/pnf_descriptor.py
catalog/packages/views/pnf_descriptor_views.py

@@@ -133,9 -128,9 +130,9 @@@ def delete_single(pnfd_info_id)
      logger.info('Start to delete PNFD(%s)...' % pnfd_info_id)
      pnf_pkgs = PnfPackageModel.objects.filter(pnfPackageId=pnfd_info_id)
      if not pnf_pkgs.exists():
 -        logger.info('PNFD(%s) is deleted.' % pnfd_info_id)
 +        logger.info('PNFD(%s) has been deleted.' % pnfd_info_id)
          return
+     '''
      if pnf_pkgs[0].usageState != 'NOT_IN_USE':
          logger.info('PNFD(%s) shall be NOT_IN_USE.' % pnfd_info_id)
          raise CatalogException('PNFD(%s) shall be NOT_IN_USE.' % pnfd_info_id)
@@@ -164,11 -173,19 +172,17 @@@ def pnfd_content_ru(request, *args, **k
  
      if request.method == 'GET':
          try:
 -            file_path = download(pnfd_info_id)
 -            file_name = file_path.split('/')[-1]
 -            file_name = file_name.split('\\')[-1]
 +            file_path, file_name, file_size = download(pnfd_info_id)
              response = FileResponse(open(file_path, 'rb'), status=status.HTTP_200_OK)
              response['Content-Disposition'] = 'attachment; filename=%s' % file_name.encode('utf-8')
 -            response['Content-Length'] = os.path.getsize(file_path)
 +            response['Content-Length'] = file_size
              return response
+         except ResourceNotFoundException as e:
+             logger.error(e.message)
+             return Response(data={'error': "PNFD does not exist."}, status=status.HTTP_404_NOT_FOUND)
+         except CatalogException as e:
+             logger.error(e.message)
+             error_msg = {'error': 'Downloading PNFD content failed.'}
          except Exception as e:
              logger.error(e.message)
              logger.error(traceback.format_exc())