- logger.debug("InstantiateVnf--post::> %s" % request.data)\r
-\r
- instantiate_vnf_request_serializer = InstantiateVnfRequestSerializer(data=request.data)\r
- if not instantiate_vnf_request_serializer.is_valid():\r
- raise NFLCMException(instantiate_vnf_request_serializer.errors)\r
-\r
- vnf_insts = NfInstModel.objects.filter(nfinstid=instanceid)\r
- if not vnf_insts.exists():\r
- raise NFLCMExceptionNotFound("VNF instanceid(%s) does not exist." % instanceid)\r
- if vnf_insts[0].status == 'INSTANTIATED':\r
- raise NFLCMExceptionConflict('VNF(%s) is already INSTANTIATED.' % instanceid)\r
-\r
- job_id = JobUtil.create_job('NF', 'INSTANTIATE', instanceid)\r
- JobUtil.add_job_status(job_id, 0, "INST_VNF_READY")\r
- InstantiateVnf(instantiate_vnf_request_serializer.data, instanceid, job_id).start()\r
-\r
- job_identifier_serializer = JobIdentifierSerializer(data={"jobId": job_id})\r
- resp_isvalid = job_identifier_serializer.is_valid()\r
- if not resp_isvalid:\r
- raise NFLCMException(job_identifier_serializer.errors)\r
-\r
- return Response(data=job_identifier_serializer.data, status=status.HTTP_202_ACCEPTED)\r
+ return deal_vnf_action(\r
+ logger=logger,\r
+ opt_type=OPERATION_TYPE.INSTANTIATE,\r
+ opt_status=VNF_STATUS.INSTANTIATING,\r
+ instid=instanceid,\r
+ req=request,\r
+ req_serializer=InstantiateVnfRequestSerializer,\r
+ act_task=InstantiateVnf\r
+ )\r