Merge "Raise an error when PNF in service model but not in userParams"
authorLukasz Muszkieta <lukasz.muszkieta@nokia.com>
Wed, 12 Aug 2020 15:44:56 +0000 (15:44 +0000)
committerGerrit Code Review <gerrit@onap.org>
Wed, 12 Aug 2020 15:44:56 +0000 (15:44 +0000)
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowAction.java

index 44a99b8..75d3ddf 100644 (file)
@@ -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<CollectionResourceCustomization> 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<Resource> resourceList, String resourceId,
             List<Pair<WorkflowType, String>> aaiResourceIds) {
         try {