From 898449a5d41b777ebe271bcae9c0ba511fecdb1f Mon Sep 17 00:00:00 2001
From: "Benjamin, Max (mb388a)" <mb388a@us.att.com>
Date: Fri, 16 Nov 2018 20:37:57 -0500
Subject: Bug Fixes November 16th

fix failing junit when heatID not available
provide name if ID is not present on delete op
removed logic to skip unassign sdnc in rollback flows
Move default settings to CrVfModRequest pojo.
Check for null backout and failIfExists params - 1810.
Updated exception message and test
Added tests for networkCustomization not found
Added tests for delete and update network
Separated networkResourceCustomization and networkResource lookups
Removed version check as not necessary for setting boolean

Change-Id: Ia4b409244dc5ebdbb163d4a178713115719366ca
Issue-ID: SO-1231
Signed-off-by: Benjamin, Max (mb388a) <mb388a@us.att.com>
---
 .../onap/so/apihandlerinfra/ServiceInstances.java    | 20 +++++++++++++-------
 .../validation/RelatedInstancesValidation.java       |  2 +-
 2 files changed, 14 insertions(+), 8 deletions(-)

(limited to 'mso-api-handlers/mso-api-handler-infra/src/main/java')

diff --git a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/ServiceInstances.java b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/ServiceInstances.java
index 8047893bb4..04a707c4ad 100644
--- a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/ServiceInstances.java
+++ b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/ServiceInstances.java
@@ -50,6 +50,7 @@ import org.onap.so.apihandlerinfra.exceptions.ValidateException;
 import org.onap.so.apihandlerinfra.exceptions.VfModuleNotFoundException;
 import org.onap.so.apihandlerinfra.logging.ErrorLoggerInfo;
 import org.onap.so.db.catalog.beans.NetworkResource;
+import org.onap.so.db.catalog.beans.NetworkResourceCustomization;
 import org.onap.so.db.catalog.beans.Recipe;
 import org.onap.so.db.catalog.beans.ServiceRecipe;
 import org.onap.so.db.catalog.beans.VfModule;
@@ -1530,14 +1531,19 @@ public class ServiceInstances {
 		Recipe recipe = null;
 
 		if(modelInfo.getModelCustomizationId()!=null){
-            NetworkResource networkResource = catalogDbClient.getNetworkResourceCustomizationByModelCustomizationUUID(modelInfo.getModelCustomizationId()).getNetworkResource();
-			if(networkResource!=null){
-				if(modelInfo.getModelVersionId() == null) {
-					modelInfo.setModelVersionId(networkResource.getModelUUID());
+            NetworkResourceCustomization networkResourceCustomization = catalogDbClient.getNetworkResourceCustomizationByModelCustomizationUUID(modelInfo.getModelCustomizationId());
+			if(networkResourceCustomization != null){
+				NetworkResource networkResource = networkResourceCustomization.getNetworkResource();
+	            if(networkResource!=null){
+					if(modelInfo.getModelVersionId() == null) {
+						modelInfo.setModelVersionId(networkResource.getModelUUID());
+					}
+					recipe = catalogDbClient.getFirstNetworkRecipeByModelNameAndAction(networkResource.getModelName(), action.toString());
+				}else{
+					throw new ValidationException("no catalog entry found");
 				}
-				recipe = catalogDbClient.getFirstNetworkRecipeByModelNameAndAction(networkResource.getModelName(), action.toString());
-			}else{
-				throw new ValidationException("no catalog entry found");
+			}else if(action != Action.deleteInstance){
+				throw new ValidationException("modelCustomizationId for networkResourceCustomization lookup", true);
 			}
 		}else{
 			//ok for version < 3 and action delete
diff --git a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/validation/RelatedInstancesValidation.java b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/validation/RelatedInstancesValidation.java
index f22294b33f..9af26af91c 100644
--- a/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/validation/RelatedInstancesValidation.java
+++ b/mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/validation/RelatedInstancesValidation.java
@@ -128,7 +128,7 @@ public class RelatedInstancesValidation implements ValidationRule{
 		          		if(InstanceDirection.source.equals(relatedInstance.getInstanceDirection()) && relatedInstanceModelInfo.getModelType().equals(ModelType.vnf)) {
 		          			isSourceVnfPresent = true;
 		          		} else if(InstanceDirection.destination.equals(relatedInstance.getInstanceDirection()) && 
-		          				(relatedInstanceModelInfo.getModelType().equals(ModelType.vnf) || (relatedInstanceModelInfo.getModelType().equals(ModelType.pnf) && reqVersion == 6))) {
+		          				(relatedInstanceModelInfo.getModelType().equals(ModelType.vnf) || (relatedInstanceModelInfo.getModelType().equals(ModelType.pnf)))) {
 		          			isDestinationVnfPresent = true;
 		          		}
 		          	}
-- 
cgit 1.2.3-korg