From b6d8476958e5bcf80dd0559a2ed7445aa721b265 Mon Sep 17 00:00:00 2001 From: astanislawska Date: Wed, 12 Aug 2020 10:00:28 +0200 Subject: Raise an error when PNF in service model but not in userParams Issue-ID: SO-2785 Signed-off-by: astanislawska Change-Id: I55ef6aac83eff1c33f09ce0de380330e4ccccce4 Signed-off-by: astanislawska --- .../so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java index 44a99b88c5..75d3ddf2e6 100644 --- a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java +++ b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java @@ -759,6 +759,7 @@ public class WorkflowAction { throws JsonProcessingException, VrfBondingServiceException { String modelUUID = sIRequest.getRequestDetails().getModelInfo().getModelVersionId(); org.onap.so.db.catalog.beans.Service service = catalogDbClient.getServiceByID(modelUUID); + if (service == null) { buildAndThrowException(execution, "Could not find the service model in catalog db."); } else { @@ -767,6 +768,7 @@ public class WorkflowAction { bbInputSetupUtils.getRelatedInstanceByType(sIRequest.getRequestDetails(), ModelType.vpnBinding); RelatedInstance relatedLocalNetwork = bbInputSetupUtils.getRelatedInstanceByType(sIRequest.getRequestDetails(), ModelType.network); + if (relatedVpnBinding != null && relatedLocalNetwork != null) { traverseVrfConfiguration(aaiResourceIds, resourceList, service, relatedVpnBinding, relatedLocalNetwork); } else { @@ -850,6 +852,10 @@ public class WorkflowAction { buildAndThrowException(execution, "Cannot orchestrate Service-Macro-Create without user params with a vnf. Please update ASDC model for new macro orchestration support or add service_recipe records to route to old macro flows"); } + if (isPnfCustomizationsInTheService(service)) { + buildAndThrowException(execution, + "Cannot orchestrate Service-Macro-Create without user params with a pnf. Please update ASDC model for new macro orchestration support or add service_recipe records to route to old macro flows"); + } List customizations = service.getCollectionResourceCustomizations(); if (customizations.isEmpty()) { logger.debug("No Collections found. CollectionResourceCustomization list is empty."); @@ -967,6 +973,10 @@ public class WorkflowAction { return !(service.getVnfCustomizations() == null || service.getVnfCustomizations().isEmpty()); } + private boolean isPnfCustomizationsInTheService(org.onap.so.db.catalog.beans.Service service) { + return !(service.getPnfCustomizations() == null || service.getPnfCustomizations().isEmpty()); + } + protected void traverseAAIService(DelegateExecution execution, List resourceList, String resourceId, List> aaiResourceIds) { try { -- cgit 1.2.3-korg