mso to add validation for vf module instantiation 82/108782/1
authorPlummer, Brittany <brittany.plummer@att.com>
Thu, 4 Jun 2020 16:52:07 +0000 (12:52 -0400)
committerBenjamin, Max (mb388a) <mb388a@att.com>
Thu, 4 Jun 2020 16:52:07 +0000 (12:52 -0400)
Updated validator to accept action on validate
Added VnfInServiceValidator and unit tests

Issue-ID: SO-2975
Signed-off-by: Benjamin, Max (mb388a) <mb388a@att.com>
Change-Id: I5e1d7a40dab6a447588cac55edade5e2823e7dac

mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/infra/rest/validators/NetworkDeleteValidator.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/infra/rest/validators/RequestValidator.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/infra/rest/validators/RequestValidatorListenerRunner.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/infra/rest/validators/ServiceInstanceDeleteValidator.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/infra/rest/validators/VnfDeleteValidator.java
mso-api-handlers/mso-api-handler-infra/src/main/java/org/onap/so/apihandlerinfra/infra/rest/validators/VolumeGroupDeleteValidator.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/onap/so/apihandlerinfra/infra/rest/validator/NetworkDeleteValidatorTest.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/onap/so/apihandlerinfra/infra/rest/validator/ServiceInstanceDeleteValidatorTest.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/onap/so/apihandlerinfra/infra/rest/validator/VnfDeleteValidatorTest.java
mso-api-handlers/mso-api-handler-infra/src/test/java/org/onap/so/apihandlerinfra/infra/rest/validator/VolumeGroupDeleteValidatorTest.java

index 89c5cbe..c875764 100644 (file)
@@ -25,7 +25,7 @@ public class NetworkDeleteValidator implements RequestValidator {
 
     @Override
     public Optional<String> validate(Map<String, String> instanceIdMap, ServiceInstancesRequest request,
-            Map<String, String> queryParams) {
+            Map<String, String> queryParams, Actions action) {
         if (aaiDataRetrieval.isNetworkRelatedToModules(instanceIdMap.get("networkInstanceId"))) {
             return Optional.of("Cannot delete network it is still related to existing vf-modules");
         } else {
index 50938e6..dc6d01e 100644 (file)
@@ -39,5 +39,5 @@ public interface RequestValidator {
 
 
     public Optional<String> validate(Map<String, String> instanceIdMap, ServiceInstancesRequest request,
-            Map<String, String> queryParams);
+            Map<String, String> queryParams, Actions action);
 }
index 3aba39b..7ab761a 100644 (file)
@@ -73,8 +73,8 @@ public class RequestValidatorListenerRunner extends ListenerRunner {
                 filterListeners(validators, (item -> item.shouldRunFor(requestURI, request, action)));
 
         List<Pair<String, Optional<String>>> results = new ArrayList<>();
-        filtered.forEach(item -> results
-                .add(new Pair<>(item.getClass().getName(), item.validate(instanceIdMap, request, queryParams))));
+        filtered.forEach(item -> results.add(
+                new Pair<>(item.getClass().getName(), item.validate(instanceIdMap, request, queryParams, action))));
 
         return results.stream().filter(item -> item.getValue1().isPresent()).collect(Collectors.toList());
     }
index 843d94c..74dbf57 100644 (file)
@@ -34,7 +34,7 @@ public class ServiceInstanceDeleteValidator implements RequestValidator {
 
     @Override
     public Optional<String> validate(Map<String, String> instanceIdMap, ServiceInstancesRequest request,
-            Map<String, String> queryParams) {
+            Map<String, String> queryParams, Actions action) {
         if (aaiDataRetrieval.isServiceRelatedToGenericVnf(instanceIdMap.get("serviceInstanceId"))) {
             return Optional.of("Cannot delete service it is still related to existing vf-modules");
         } else if (aaiDataRetrieval.isServiceRelatedToNetworks(instanceIdMap.get("serviceInstanceId"))) {
index a48fca8..44bab7e 100644 (file)
@@ -24,7 +24,7 @@ public class VnfDeleteValidator implements RequestValidator {
 
     @Override
     public Optional<String> validate(Map<String, String> instanceIdMap, ServiceInstancesRequest request,
-            Map<String, String> queryParams) {
+            Map<String, String> queryParams, Actions action) {
         final Optional<String> volumeGroupIds =
                 aaiDataRetrieval.getVolumeGroupIdsByVnfId(instanceIdMap.get("vnfInstanceId"));
         final Optional<String> vfModuleIds = aaiDataRetrieval.getVfModuleIdsByVnfId(instanceIdMap.get("vnfInstanceId"));
index e3598af..550db19 100644 (file)
@@ -24,7 +24,7 @@ public class VolumeGroupDeleteValidator implements RequestValidator {
 
     @Override
     public Optional<String> validate(Map<String, String> instanceIdMap, ServiceInstancesRequest request,
-            Map<String, String> queryParams) {
+            Map<String, String> queryParams, Actions action) {
         if (aaiDataRetrieval.isVolumeGroupRelatedToVFModule(instanceIdMap.get("volumeGroupInstanceId"))) {
             return Optional.of("Cannot delete volume group it is related to existing vf-modules");
         } else {
index 7780f0e..20ec6d6 100644 (file)
@@ -58,7 +58,7 @@ public class NetworkDeleteValidatorTest {
     public void validateSuccessTest() {
         instanceIdMap.put("networkInstanceId", "1");
         when(aaiDataRetrieval.isNetworkRelatedToModules("1")).thenReturn(false);
-        Optional<String> result = networkValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = networkValidator.validate(instanceIdMap, null, null, null);
         assertEquals(false, result.isPresent());
     }
 
@@ -66,7 +66,7 @@ public class NetworkDeleteValidatorTest {
     public void validateFailureTest() {
         instanceIdMap.put("networkInstanceId", "1");
         when(aaiDataRetrieval.isNetworkRelatedToModules("1")).thenReturn(true);
-        Optional<String> result = networkValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = networkValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }
 
index f461df3..c082c96 100644 (file)
@@ -76,7 +76,7 @@ public class ServiceInstanceDeleteValidatorTest {
         when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(false);
         when(aaiDataRetrieval.isServiceRelatedToNetworks("1")).thenReturn(false);
         when(aaiDataRetrieval.isServiceRelatedToConfiguration("1")).thenReturn(false);
-        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null, null);
         assertEquals(false, result.isPresent());
     }
 
@@ -84,7 +84,7 @@ public class ServiceInstanceDeleteValidatorTest {
     public void validateFailureVnfTest() {
         instanceIdMap.put("serviceInstanceId", "1");
         when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(true);
-        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }
 
@@ -93,7 +93,7 @@ public class ServiceInstanceDeleteValidatorTest {
         instanceIdMap.put("serviceInstanceId", "1");
         when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(false);
         when(aaiDataRetrieval.isServiceRelatedToNetworks("1")).thenReturn(true);
-        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }
 
@@ -103,7 +103,7 @@ public class ServiceInstanceDeleteValidatorTest {
         when(aaiDataRetrieval.isServiceRelatedToGenericVnf("1")).thenReturn(false);
         when(aaiDataRetrieval.isServiceRelatedToNetworks("1")).thenReturn(false);
         when(aaiDataRetrieval.isServiceRelatedToConfiguration("1")).thenReturn(true);
-        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = serviceValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }
 
index 65ce355..6eb6fc9 100644 (file)
@@ -53,7 +53,7 @@ public class VnfDeleteValidatorTest {
     public void validateFailureVfModuleVnfTest() {
         instanceIdMap.put("vnfInstanceId", "1");
         doReturn(Optional.of("test")).when(aaiDataRetrieval).getVfModuleIdsByVnfId("1");
-        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }
 
@@ -61,7 +61,7 @@ public class VnfDeleteValidatorTest {
     public void validateSuccessVfModuleVnfTest() {
         instanceIdMap.put("vnfInstanceId", "1");
         doReturn(Optional.empty()).when(aaiDataRetrieval).getVfModuleIdsByVnfId("1");
-        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null, null);
         assertEquals(false, result.isPresent());
     }
 
@@ -69,7 +69,7 @@ public class VnfDeleteValidatorTest {
     public void validateFailureVolumeGroupVnfTest() {
         instanceIdMap.put("vnfInstanceId", "1");
         doReturn(Optional.of("test")).when(aaiDataRetrieval).getVolumeGroupIdsByVnfId("1");
-        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }
 
@@ -77,7 +77,7 @@ public class VnfDeleteValidatorTest {
     public void validateSuccessVolumeGroupVnfTest() {
         instanceIdMap.put("vnfInstanceId", "1");
         doReturn(Optional.empty()).when(aaiDataRetrieval).getVolumeGroupIdsByVnfId("1");
-        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = vnfValidator.validate(instanceIdMap, null, null, null);
         assertEquals(false, result.isPresent());
     }
 }
index 3d81ee6..7aa12a6 100644 (file)
@@ -54,7 +54,7 @@ public class VolumeGroupDeleteValidatorTest {
     public void validateSuccessTest() {
         instanceIdMap.put("volumeGroupInstanceId", "1");
         when(aaiDataRetrieval.isVolumeGroupRelatedToVFModule("1")).thenReturn(false);
-        Optional<String> result = volumeGroupDeleteValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = volumeGroupDeleteValidator.validate(instanceIdMap, null, null, null);
         assertEquals(false, result.isPresent());
     }
 
@@ -62,7 +62,7 @@ public class VolumeGroupDeleteValidatorTest {
     public void validateFailureVnfTest() {
         instanceIdMap.put("volumeGroupInstanceId", "1");
         when(aaiDataRetrieval.isVolumeGroupRelatedToVFModule("1")).thenReturn(true);
-        Optional<String> result = volumeGroupDeleteValidator.validate(instanceIdMap, null, null);
+        Optional<String> result = volumeGroupDeleteValidator.validate(instanceIdMap, null, null, null);
         assertEquals(true, result.isPresent());
     }