Update SO to handle Async VNF operations to SDNC 10/91810/1
authorSmokowski, Steven <steve.smokowski@att.com>
Mon, 22 Jul 2019 13:42:42 +0000 (08:42 -0500)
committerBenjamin, Max (mb388a) <mb388a@att.com>
Mon, 22 Jul 2019 13:42:43 +0000 (08:42 -0500)
Update SO to handle Async VNF operations to SDNC

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

15 files changed:
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/AbstractSDNCTask.java [new file with mode: 0644]
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCActivateTasks.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCAssignTasks.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCChangeAssignTasks.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCDeactivateTasks.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCUnassignTasks.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/orchestration/SDNCVnfResources.java
bpmn/so-bpmn-tasks/src/main/java/org/onap/so/client/sdnc/mapper/VnfTopologyOperationRequestMapper.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCActivateTaskTest.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCAssignTasksTest.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCChangeAssignTasksTest.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCDeactivateTaskTest.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/SDNCUnassignTasksTest.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/client/orchestration/SDNCVnfResourcesTest.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/client/sdnc/mapper/VnfTopologyOperationRequestMapperTest.java

diff --git a/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/AbstractSDNCTask.java b/bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/sdnc/tasks/AbstractSDNCTask.java
new file mode 100644 (file)
index 0000000..c134f31
--- /dev/null
@@ -0,0 +1,22 @@
+package org.onap.so.bpmn.infrastructure.sdnc.tasks;
+
+import java.net.URI;
+import javax.ws.rs.core.UriBuilder;
+import org.onap.so.client.sdnc.beans.SDNCRequest;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
+import org.springframework.stereotype.Component;
+
+@Component
+public class AbstractSDNCTask {
+
+    @Autowired
+    Environment env;
+
+
+    public URI buildCallbackURI(SDNCRequest sdncRequest) {
+        UriBuilder builder = UriBuilder.fromPath(env.getRequiredProperty("mso.workflow.message.endpoint"))
+                .path(sdncRequest.getCorrelationName()).path(sdncRequest.getCorrelationValue());
+        return builder.build();
+    }
+}
index e4dd355..b85e331 100644 (file)
@@ -22,8 +22,6 @@
 
 package org.onap.so.bpmn.infrastructure.sdnc.tasks;
 
-import java.net.URI;
-import javax.ws.rs.core.UriBuilder;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiNetworkOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVfModuleOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVnfOperationInformation;
@@ -52,7 +50,7 @@ import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Component;
 
 @Component
-public class SDNCActivateTasks {
+public class SDNCActivateTasks extends AbstractSDNCTask {
 
     public static final String SDNC_REQUEST = "SDNCRequest";
     @Autowired
@@ -77,9 +75,9 @@ public class SDNCActivateTasks {
             GenericVnf vnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID);
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
             Customer customer = gBBInput.getCustomer();
-            GenericResourceApiVnfOperationInformation req =
-                    sdncVnfResources.activateVnf(vnf, serviceInstance, customer, cloudRegion, requestContext);
             SDNCRequest sdncRequest = new SDNCRequest();
+            GenericResourceApiVnfOperationInformation req = sdncVnfResources.activateVnf(vnf, serviceInstance, customer,
+                    cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VNF);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
@@ -127,11 +125,8 @@ public class SDNCActivateTasks {
             Customer customer = gBBInput.getCustomer();
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
             SDNCRequest sdncRequest = new SDNCRequest();
-            UriBuilder builder = UriBuilder.fromPath(env.getRequiredProperty("mso.workflow.message.endpoint"))
-                    .path(sdncRequest.getCorrelationName()).path(sdncRequest.getCorrelationValue());
-            URI uri = builder.build();
             GenericResourceApiVfModuleOperationInformation req = sdncVfModuleResources.activateVfModule(vfModule, vnf,
-                    serviceInstance, customer, cloudRegion, requestContext, uri);
+                    serviceInstance, customer, cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VFMODULE);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
index c100cd6..ab2647a 100644 (file)
@@ -22,8 +22,6 @@
 
 package org.onap.so.bpmn.infrastructure.sdnc.tasks;
 
-import java.net.URI;
-import javax.ws.rs.core.UriBuilder;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiNetworkOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiServiceOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVfModuleOperationInformation;
@@ -55,7 +53,7 @@ import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Component;
 
 @Component
-public class SDNCAssignTasks {
+public class SDNCAssignTasks extends AbstractSDNCTask {
     private static final Logger logger = LoggerFactory.getLogger(SDNCAssignTasks.class);
     public static final String SDNC_REQUEST = "SDNCRequest";
     @Autowired
@@ -100,9 +98,11 @@ public class SDNCAssignTasks {
             GenericVnf vnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID);
             Customer customer = gBBInput.getCustomer();
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
-            GenericResourceApiVnfOperationInformation req = sdncVnfResources.assignVnf(vnf, serviceInstance, customer,
-                    cloudRegion, requestContext, Boolean.TRUE.equals(vnf.isCallHoming()));
             SDNCRequest sdncRequest = new SDNCRequest();
+
+            GenericResourceApiVnfOperationInformation req =
+                    sdncVnfResources.assignVnf(vnf, serviceInstance, customer, cloudRegion, requestContext,
+                            Boolean.TRUE.equals(vnf.isCallHoming()), buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VNF);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
@@ -128,11 +128,9 @@ public class SDNCAssignTasks {
             Customer customer = gBBInput.getCustomer();
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
             SDNCRequest sdncRequest = new SDNCRequest();
-            UriBuilder builder = UriBuilder.fromPath(env.getRequiredProperty("mso.workflow.message.endpoint"))
-                    .path(sdncRequest.getCorrelationName()).path(sdncRequest.getCorrelationValue());
-            URI uri = builder.build();
-            GenericResourceApiVfModuleOperationInformation req = sdncVfModuleResources.assignVfModule(vfModule,
-                    volumeGroup, vnf, serviceInstance, customer, cloudRegion, requestContext, uri);
+            GenericResourceApiVfModuleOperationInformation req =
+                    sdncVfModuleResources.assignVfModule(vfModule, volumeGroup, vnf, serviceInstance, customer,
+                            cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VFMODULE);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
index acf48ac..c5ebc5e 100644 (file)
@@ -20,8 +20,6 @@
 
 package org.onap.so.bpmn.infrastructure.sdnc.tasks;
 
-import java.net.URI;
-import javax.ws.rs.core.UriBuilder;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiNetworkOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiServiceOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVfModuleOperationInformation;
@@ -49,7 +47,7 @@ import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Component;
 
 @Component
-public class SDNCChangeAssignTasks {
+public class SDNCChangeAssignTasks extends AbstractSDNCTask {
     public static final String SDNC_REQUEST = "SDNCRequest";
     @Autowired
     private SDNCNetworkResources sdncNetworkResources;
@@ -88,9 +86,10 @@ public class SDNCChangeAssignTasks {
             GenericVnf genericVnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID);
             ServiceInstance serviceInstance =
                     extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
-            GenericResourceApiVnfOperationInformation req = sdncVnfResources.changeModelVnf(genericVnf, serviceInstance,
-                    gBBInput.getCustomer(), gBBInput.getCloudRegion(), gBBInput.getRequestContext());
             SDNCRequest sdncRequest = new SDNCRequest();
+            GenericResourceApiVnfOperationInformation req =
+                    sdncVnfResources.changeModelVnf(genericVnf, serviceInstance, gBBInput.getCustomer(),
+                            gBBInput.getCloudRegion(), gBBInput.getRequestContext(), buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VNF);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
@@ -127,11 +126,8 @@ public class SDNCChangeAssignTasks {
             VfModule vfModule = extractPojosForBB.extractByKey(execution, ResourceKey.VF_MODULE_ID);
             Customer customer = gBBInput.getCustomer();
             SDNCRequest sdncRequest = new SDNCRequest();
-            UriBuilder builder = UriBuilder.fromPath(env.getRequiredProperty("mso.workflow.message.endpoint"))
-                    .path(sdncRequest.getCorrelationName()).path(sdncRequest.getCorrelationValue());
-            URI uri = builder.build();
             GenericResourceApiVfModuleOperationInformation req = sdncVfModuleResources.changeAssignVfModule(vfModule,
-                    vnf, serviceInstance, customer, cloudRegion, requestContext, uri);
+                    vnf, serviceInstance, customer, cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VFMODULE);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
index 3fc2519..3c42f76 100644 (file)
@@ -22,8 +22,6 @@
 
 package org.onap.so.bpmn.infrastructure.sdnc.tasks;
 
-import java.net.URI;
-import javax.ws.rs.core.UriBuilder;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiNetworkOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiServiceOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVfModuleOperationInformation;
@@ -53,7 +51,7 @@ import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Component;
 
 @Component
-public class SDNCDeactivateTasks {
+public class SDNCDeactivateTasks extends AbstractSDNCTask {
 
     public static final String SDNC_REQUEST = "SDNCRequest";
     @Autowired
@@ -82,11 +80,8 @@ public class SDNCDeactivateTasks {
             Customer customer = gBBInput.getCustomer();
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
             SDNCRequest sdncRequest = new SDNCRequest();
-            UriBuilder builder = UriBuilder.fromPath(env.getRequiredProperty("mso.workflow.message.endpoint"))
-                    .path(sdncRequest.getCorrelationName()).path(sdncRequest.getCorrelationValue());
-            URI uri = builder.build();
             GenericResourceApiVfModuleOperationInformation req = sdncVfModuleResources.deactivateVfModule(vfModule, vnf,
-                    serviceInstance, customer, cloudRegion, requestContext, uri);
+                    serviceInstance, customer, cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VFMODULE);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
@@ -111,9 +106,9 @@ public class SDNCDeactivateTasks {
             vnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID);
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
             Customer customer = gBBInput.getCustomer();
-            GenericResourceApiVnfOperationInformation req =
-                    sdncVnfResources.deactivateVnf(vnf, serviceInstance, customer, cloudRegion, requestContext);
             SDNCRequest sdncRequest = new SDNCRequest();
+            GenericResourceApiVnfOperationInformation req = sdncVnfResources.deactivateVnf(vnf, serviceInstance,
+                    customer, cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VNF);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
index 4721bf5..e3c9785 100644 (file)
@@ -22,8 +22,6 @@
 
 package org.onap.so.bpmn.infrastructure.sdnc.tasks;
 
-import java.net.URI;
-import javax.ws.rs.core.UriBuilder;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiNetworkOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiServiceOperationInformation;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVfModuleOperationInformation;
@@ -53,7 +51,7 @@ import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Component;
 
 @Component
-public class SDNCUnassignTasks {
+public class SDNCUnassignTasks extends AbstractSDNCTask {
 
     public static final String SDNC_REQUEST = "SDNCRequest";
     @Autowired
@@ -98,11 +96,8 @@ public class SDNCUnassignTasks {
             RequestContext requestContext = gBBInput.getRequestContext();
             VfModule vfModule = extractPojosForBB.extractByKey(execution, ResourceKey.VF_MODULE_ID);
             SDNCRequest sdncRequest = new SDNCRequest();
-            UriBuilder builder = UriBuilder.fromPath(env.getRequiredProperty("mso.workflow.message.endpoint"))
-                    .path(sdncRequest.getCorrelationName()).path(sdncRequest.getCorrelationValue());
-            URI uri = builder.build();
-            GenericResourceApiVfModuleOperationInformation req =
-                    sdncVfModuleResources.unassignVfModule(vfModule, vnf, serviceInstance, requestContext, uri);
+            GenericResourceApiVfModuleOperationInformation req = sdncVfModuleResources.unassignVfModule(vfModule, vnf,
+                    serviceInstance, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VFMODULE);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
@@ -120,9 +115,9 @@ public class SDNCUnassignTasks {
             RequestContext requestContext = gBBInput.getRequestContext();
             Customer customer = gBBInput.getCustomer();
             CloudRegion cloudRegion = gBBInput.getCloudRegion();
-            GenericResourceApiVnfOperationInformation req =
-                    sdncVnfResources.unassignVnf(vnf, serviceInstance, customer, cloudRegion, requestContext);
             SDNCRequest sdncRequest = new SDNCRequest();
+            GenericResourceApiVnfOperationInformation req = sdncVnfResources.unassignVnf(vnf, serviceInstance, customer,
+                    cloudRegion, requestContext, buildCallbackURI(sdncRequest));
             sdncRequest.setSDNCPayload(req);
             sdncRequest.setTopology(SDNCTopology.VNF);
             execution.setVariable(SDNC_REQUEST, sdncRequest);
index 0e32955..12aae1e 100644 (file)
@@ -22,6 +22,7 @@
 
 package org.onap.so.client.orchestration;
 
+import java.net.URI;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiRequestActionEnumeration;
 import org.onap.sdnc.northbound.client.model.GenericResourceApiVnfOperationInformation;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion;
@@ -50,47 +51,48 @@ public class SDNCVnfResources {
     private SDNCClient sdncClient;
 
     public GenericResourceApiVnfOperationInformation assignVnf(GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, boolean homing) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, boolean homing,
+            URI callbackURI) {
         return sdncRM.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.ASSIGN,
                 GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, vnf, serviceInstance, customer,
-                cloudRegion, requestContext, homing);
+                cloudRegion, requestContext, homing, callbackURI);
     }
 
     public GenericResourceApiVnfOperationInformation activateVnf(GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, URI callbackURI) {
         return sdncRM.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.ACTIVATE,
                 GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, vnf, serviceInstance, customer,
-                cloudRegion, requestContext, false);
+                cloudRegion, requestContext, false, callbackURI);
     }
 
 
     public GenericResourceApiVnfOperationInformation deactivateVnf(GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, URI callbackURI) {
         return sdncRM.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.DEACTIVATE,
                 GenericResourceApiRequestActionEnumeration.DELETEVNFINSTANCE, vnf, serviceInstance, customer,
-                cloudRegion, requestContext, false);
+                cloudRegion, requestContext, false, callbackURI);
     }
 
 
     public GenericResourceApiVnfOperationInformation unassignVnf(GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, URI callbackURI) {
         return sdncRM.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.UNASSIGN,
                 GenericResourceApiRequestActionEnumeration.DELETEVNFINSTANCE, vnf, serviceInstance, customer,
-                cloudRegion, requestContext, false);
+                cloudRegion, requestContext, false, callbackURI);
     }
 
     public GenericResourceApiVnfOperationInformation deleteVnf(GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, URI callbackURI) {
         return sdncRM.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.DEACTIVATE,
                 GenericResourceApiRequestActionEnumeration.DELETEVNFINSTANCE, vnf, serviceInstance, customer,
-                cloudRegion, requestContext, false);
+                cloudRegion, requestContext, false, callbackURI);
     }
 
     public GenericResourceApiVnfOperationInformation changeModelVnf(GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, URI callbackURI) {
         return sdncRM.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.CHANGE_ASSIGN,
                 GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, vnf, serviceInstance, customer,
-                cloudRegion, requestContext, false);
+                cloudRegion, requestContext, false, callbackURI);
     }
 
     public String queryVnf(GenericVnf vnf) throws MapperException, BadResponseException {
index e39e202..bef4ec3 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.onap.so.client.sdnc.mapper;
 
+import java.net.URI;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -56,7 +57,8 @@ public class VnfTopologyOperationRequestMapper {
 
     public GenericResourceApiVnfOperationInformation reqMapper(SDNCSvcOperation svcOperation, SDNCSvcAction svcAction,
             GenericResourceApiRequestActionEnumeration requestAction, GenericVnf vnf, ServiceInstance serviceInstance,
-            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, boolean homing) {
+            Customer customer, CloudRegion cloudRegion, RequestContext requestContext, boolean homing,
+            URI callbackUrl) {
         String sdncReqId = UUID.randomUUID().toString();
         String msoRequestId = UUID.randomUUID().toString();
         if (requestContext != null && requestContext.getMsoRequestId() != null) {
@@ -64,7 +66,7 @@ public class VnfTopologyOperationRequestMapper {
         }
         GenericResourceApiVnfOperationInformation req = new GenericResourceApiVnfOperationInformation();
         GenericResourceApiSdncrequestheaderSdncRequestHeader sdncRequestHeader =
-                generalTopologyObjectMapper.buildSdncRequestHeader(svcAction, sdncReqId);
+                generalTopologyObjectMapper.buildSdncRequestHeader(svcAction, sdncReqId, callbackUrl.toString());
         GenericResourceApiRequestinformationRequestInformation requestInformation = generalTopologyObjectMapper
                 .buildGenericResourceApiRequestinformationRequestInformation(msoRequestId, requestAction);
         GenericResourceApiServiceinformationServiceInformation serviceInformation =
index ffd4f74..510dc47 100644 (file)
@@ -94,11 +94,11 @@ public class SDNCActivateTaskTest extends BaseTaskTest {
 
     @Test
     public void activateVnfTest() throws Exception {
-        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).activateVnf(genericVnf,
-                serviceInstance, customer, cloudRegion, requestContext);
+        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).activateVnf(eq(genericVnf),
+                eq(serviceInstance), eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncActivateTasks.activateVnf(execution);
-        verify(sdncVnfResources, times(1)).activateVnf(genericVnf, serviceInstance, customer, cloudRegion,
-                requestContext);
+        verify(sdncVnfResources, times(1)).activateVnf(eq(genericVnf), eq(serviceInstance), eq(customer),
+                eq(cloudRegion), eq(requestContext), any(URI.class));
         SDNCRequest sdncRequest = execution.getVariable("SDNCRequest");
         assertEquals(SDNCTopology.VNF, sdncRequest.getTopology());
     }
@@ -106,8 +106,8 @@ public class SDNCActivateTaskTest extends BaseTaskTest {
     @Test
     public void activateVnfTestException() throws Exception {
         expectedException.expect(BpmnError.class);
-        doThrow(RuntimeException.class).when(sdncVnfResources).activateVnf(genericVnf, serviceInstance, customer,
-                cloudRegion, requestContext);
+        doThrow(RuntimeException.class).when(sdncVnfResources).activateVnf(eq(genericVnf), eq(serviceInstance),
+                eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncActivateTasks.activateVnf(execution);
     }
 
index 982868d..b72766c 100644 (file)
@@ -113,12 +113,12 @@ public class SDNCAssignTasksTest extends BaseTaskTest {
 
     @Test
     public void assignVnfTest() throws Exception {
-        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).assignVnf(genericVnf,
-                serviceInstance, customer, cloudRegion, requestContext, false);
+        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).assignVnf(eq(genericVnf),
+                eq(serviceInstance), eq(customer), eq(cloudRegion), eq(requestContext), eq(false), any(URI.class));
         execution.setVariable("generalBuildingBlock", gBBInput);
         sdncAssignTasks.assignVnf(execution);
-        verify(sdncVnfResources, times(1)).assignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext,
-                false);
+        verify(sdncVnfResources, times(1)).assignVnf(eq(genericVnf), eq(serviceInstance), eq(customer), eq(cloudRegion),
+                eq(requestContext), eq(false), any(URI.class));
         SDNCRequest sdncRequest = execution.getVariable("SDNCRequest");
         assertEquals(SDNCTopology.VNF, sdncRequest.getTopology());
     }
@@ -126,8 +126,8 @@ public class SDNCAssignTasksTest extends BaseTaskTest {
     @Test
     public void assignVnfExceptionTest() throws Exception {
         expectedException.expect(BpmnError.class);
-        doThrow(RuntimeException.class).when(sdncVnfResources).assignVnf(genericVnf, serviceInstance, customer,
-                cloudRegion, requestContext, false);
+        doThrow(RuntimeException.class).when(sdncVnfResources).assignVnf(eq(genericVnf), eq(serviceInstance),
+                eq(customer), eq(cloudRegion), eq(requestContext), eq(false), any(URI.class));
         sdncAssignTasks.assignVnf(execution);
     }
 
index 8c25bea..96ff01f 100644 (file)
@@ -80,11 +80,11 @@ public class SDNCChangeAssignTasksTest extends BaseTaskTest {
 
     @Test
     public void changeModelVnfTest() throws Exception {
-        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).changeModelVnf(genericVnf,
-                serviceInstance, customer, cloudRegion, requestContext);
+        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).changeModelVnf(eq(genericVnf),
+                eq(serviceInstance), eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncChangeAssignTasks.changeModelVnf(execution);
-        verify(sdncVnfResources, times(1)).changeModelVnf(genericVnf, serviceInstance, customer, cloudRegion,
-                requestContext);
+        verify(sdncVnfResources, times(1)).changeModelVnf(eq(genericVnf), eq(serviceInstance), eq(customer),
+                eq(cloudRegion), eq(requestContext), any(URI.class));
         SDNCRequest sdncRequest = execution.getVariable("SDNCRequest");
         assertEquals(SDNCTopology.VNF, sdncRequest.getTopology());
     }
@@ -92,8 +92,8 @@ public class SDNCChangeAssignTasksTest extends BaseTaskTest {
     @Test
     public void changeModelVnfExceptionTest() throws Exception {
         expectedException.expect(BpmnError.class);
-        doThrow(RuntimeException.class).when(sdncVnfResources).changeModelVnf(genericVnf, serviceInstance, customer,
-                cloudRegion, requestContext);
+        doThrow(RuntimeException.class).when(sdncVnfResources).changeModelVnf(eq(genericVnf), eq(serviceInstance),
+                eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncChangeAssignTasks.changeModelVnf(execution);
     }
 
index d8a1b01..3714f9d 100644 (file)
@@ -107,19 +107,19 @@ public class SDNCDeactivateTaskTest extends BaseTaskTest {
 
     @Test
     public void deactivateVnfTest() throws Exception {
-        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).deactivateVnf(genericVnf,
-                serviceInstance, customer, cloudRegion, requestContext);
+        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).deactivateVnf(eq(genericVnf),
+                eq(serviceInstance), eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncDeactivateTasks.deactivateVnf(execution);
-        verify(sdncVnfResources, times(1)).deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion,
-                requestContext);
+        verify(sdncVnfResources, times(1)).deactivateVnf(eq(genericVnf), eq(serviceInstance), eq(customer),
+                eq(cloudRegion), eq(requestContext), any(URI.class));
         SDNCRequest sdncRequest = execution.getVariable("SDNCRequest");
         assertEquals(SDNCTopology.VNF, sdncRequest.getTopology());
     }
 
     @Test
     public void deactivateVnfExceptionTest() throws Exception {
-        doThrow(RuntimeException.class).when(sdncVnfResources).deactivateVnf(genericVnf, serviceInstance, customer,
-                cloudRegion, requestContext);
+        doThrow(RuntimeException.class).when(sdncVnfResources).deactivateVnf(eq(genericVnf), eq(serviceInstance),
+                eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         expectedException.expect(BpmnError.class);
         sdncDeactivateTasks.deactivateVnf(execution);
     }
index b29d15c..98f6bfa 100644 (file)
@@ -125,11 +125,11 @@ public class SDNCUnassignTasksTest extends BaseTaskTest {
 
     @Test
     public void unassignVnfTest() throws Exception {
-        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).unassignVnf(genericVnf,
-                serviceInstance, customer, cloudRegion, requestContext);
+        doReturn(new GenericResourceApiVnfOperationInformation()).when(sdncVnfResources).unassignVnf(eq(genericVnf),
+                eq(serviceInstance), eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncUnassignTasks.unassignVnf(execution);
-        verify(sdncVnfResources, times(1)).unassignVnf(genericVnf, serviceInstance, customer, cloudRegion,
-                requestContext);
+        verify(sdncVnfResources, times(1)).unassignVnf(eq(genericVnf), eq(serviceInstance), eq(customer),
+                eq(cloudRegion), eq(requestContext), any(URI.class));
         SDNCRequest sdncRequest = execution.getVariable("SDNCRequest");
         assertEquals(SDNCTopology.VNF, sdncRequest.getTopology());
     }
@@ -137,8 +137,8 @@ public class SDNCUnassignTasksTest extends BaseTaskTest {
     @Test
     public void unassignVnfExceptionTest() throws Exception {
         expectedException.expect(BpmnError.class);
-        doThrow(RuntimeException.class).when(sdncVnfResources).unassignVnf(genericVnf, serviceInstance, customer,
-                cloudRegion, requestContext);
+        doThrow(RuntimeException.class).when(sdncVnfResources).unassignVnf(eq(genericVnf), eq(serviceInstance),
+                eq(customer), eq(cloudRegion), eq(requestContext), any(URI.class));
         sdncUnassignTasks.unassignVnf(execution);
     }
 
index 4c0e2b8..0ccf056 100644 (file)
@@ -28,6 +28,8 @@ import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.doThrow;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
+import java.net.URI;
+import java.net.URISyntaxException;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -66,6 +68,7 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
     private CloudRegion cloudRegion;
     private RequestContext requestContext;
     private GenericResourceApiVnfOperationInformation sdncReq;
+    private URI testURI;
 
     @Before
     public void before() {
@@ -75,6 +78,11 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
         cloudRegion = buildCloudRegion();
         requestContext = buildRequestContext();
         sdncReq = new GenericResourceApiVnfOperationInformation();
+        try {
+            testURI = new URI("http://localhost:9800");
+        } catch (URISyntaxException e) {
+
+        }
     }
 
     @Test
@@ -82,12 +90,12 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.assignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, false);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.assignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, false, testURI);
         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
+                anyBoolean(), any(URI.class));
     }
 
     @Test
@@ -95,12 +103,12 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.activateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.activateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
+                anyBoolean(), any(URI.class));
     }
 
     @Test
@@ -108,12 +116,12 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.deleteVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.deleteVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
+                anyBoolean(), any(URI.class));
     }
 
     @Test
@@ -137,11 +145,12 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
         doReturn(sdncReq).when(MOCK_vnfTopologyOperationRequestMapper).reqMapper(isA(SDNCSvcOperation.class),
                 isA(SDNCSvcAction.class), isA(GenericResourceApiRequestActionEnumeration.class), isA(GenericVnf.class),
                 isA(ServiceInstance.class), isA(Customer.class), isA(CloudRegion.class), isA(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.changeModelVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
-        verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION,
-                SDNCSvcAction.CHANGE_ASSIGN, GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, genericVnf,
-                serviceInstance, customer, cloudRegion, requestContext, false);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.changeModelVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
+        verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION),
+                eq(SDNCSvcAction.CHANGE_ASSIGN), eq(GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE),
+                eq(genericVnf), eq(serviceInstance), eq(customer), eq(cloudRegion), eq(requestContext), eq(false),
+                any(URI.class));
     }
 
     @Test
@@ -150,12 +159,12 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.DEACTIVATE),
                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION),
                 eq(SDNCSvcAction.DEACTIVATE), isA(GenericResourceApiRequestActionEnumeration.class),
                 any(GenericVnf.class), any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class),
-                any(RequestContext.class), anyBoolean());
+                any(RequestContext.class), anyBoolean(), any(URI.class));
 
     }
 
@@ -166,8 +175,8 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.DEACTIVATE),
                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.deactivateVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
     }
 
     @Test
@@ -176,12 +185,12 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.UNASSIGN),
                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.unassignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.unassignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
         verify(MOCK_vnfTopologyOperationRequestMapper, times(1)).reqMapper(eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION),
                 eq(SDNCSvcAction.UNASSIGN), isA(GenericResourceApiRequestActionEnumeration.class),
                 any(GenericVnf.class), any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class),
-                any(RequestContext.class), anyBoolean());
+                any(RequestContext.class), anyBoolean(), any(URI.class));
     }
 
     @Test
@@ -191,7 +200,7 @@ public class SDNCVnfResourcesTest extends TestDataSetup {
                 eq(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION), eq(SDNCSvcAction.UNASSIGN),
                 isA(GenericResourceApiRequestActionEnumeration.class), any(GenericVnf.class),
                 any(ServiceInstance.class), any(Customer.class), any(CloudRegion.class), any(RequestContext.class),
-                anyBoolean());
-        sdncVnfResources.unassignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext);
+                anyBoolean(), any(URI.class));
+        sdncVnfResources.unassignVnf(genericVnf, serviceInstance, customer, cloudRegion, requestContext, testURI);
     }
 }
index cecf34e..0083617 100644 (file)
@@ -23,15 +23,18 @@ package org.onap.so.client.sdnc.mapper;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
+import java.net.URI;
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.Map;
 import java.util.List;
+import java.util.Map;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.mockito.InjectMocks;
 import org.mockito.Spy;
 import org.mockito.junit.MockitoJUnitRunner;
+import org.onap.sdnc.northbound.client.model.GenericResourceApiRequestActionEnumeration;
+import org.onap.sdnc.northbound.client.model.GenericResourceApiVnfOperationInformation;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.Customer;
 import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
@@ -45,8 +48,6 @@ import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoInstanceGroup;
 import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoServiceInstance;
 import org.onap.so.client.sdnc.beans.SDNCSvcAction;
 import org.onap.so.client.sdnc.beans.SDNCSvcOperation;
-import org.onap.sdnc.northbound.client.model.GenericResourceApiRequestActionEnumeration;
-import org.onap.sdnc.northbound.client.model.GenericResourceApiVnfOperationInformation;
 
 @RunWith(MockitoJUnitRunner.class)
 public class VnfTopologyOperationRequestMapperTest {
@@ -127,11 +128,11 @@ public class VnfTopologyOperationRequestMapperTest {
         GenericResourceApiVnfOperationInformation vnfOpInformation =
                 mapper.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.ASSIGN,
                         GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, vnf, serviceInstance, customer,
-                        cloudRegion, requestContext, true);
+                        cloudRegion, requestContext, true, new URI("http://localhost:8080"));
         GenericResourceApiVnfOperationInformation vnfOpInformationNullReqContext =
                 mapper.reqMapper(SDNCSvcOperation.VNF_TOPOLOGY_OPERATION, SDNCSvcAction.ASSIGN,
                         GenericResourceApiRequestActionEnumeration.CREATEVNFINSTANCE, vnf, serviceInstance, customer,
-                        cloudRegion, null, true);
+                        cloudRegion, null, true, new URI("http://localhost:8080"));
 
         assertNull(vnfOpInformation.getServiceInformation().getOnapModelInformation().getModelCustomizationUuid());
         assertEquals("vnfModelCustomizationUUID",