diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAICreateResources.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAICreateResources.java
new file mode 100644
index 0000000..a47b16f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAICreateResources.java
@@ -0,0 +1,90 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Optional;
+
+import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
+import org.onap.so.client.aai.AAIObjectType;
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.onap.so.client.aai.entities.AAIResultWrapper;
+import org.onap.so.client.aai.entities.uri.AAIResourceUri;
+import org.onap.so.client.aai.entities.uri.AAIUriFactory;
+
+public class AAICreateResources extends AAIResource {
+
+
+	public void createAAIProject (String projectName, String serviceInstance){
+		AAIResourceUri projectURI = AAIUriFactory.createResourceUri(AAIObjectType.PROJECT, projectName);
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
+		getAaiClient().createIfNotExists(projectURI, Optional.empty()).connect(projectURI, serviceInstanceURI);
+		
+	}
+	
+	public void createAAIOwningEntity(String owningEntityId, String owningEntityName,String serviceInstance){
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
+		Map<String, String> hashMap= new HashMap<>();
+		hashMap.put("owning-entity-name", owningEntityName);	
+		getAaiClient().createIfNotExists(owningEntityURI, Optional.of(hashMap)).connect(owningEntityURI, serviceInstanceURI);
+	}
+
+	public boolean existsOwningEntity(String owningEntityId){
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		return getAaiClient().exists(owningEntityURI);
+	}
+	
+	public void connectOwningEntityandServiceInstance (String owningEntityId, String serviceInstance){
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
+		getAaiClient().connect(owningEntityURI, serviceInstanceURI);
+	}
+	
+	public void createAAIPlatform(String platformName,String vnfId){
+		AAIResourceUri platformURI = AAIUriFactory.createResourceUri(AAIObjectType.PLATFORM, platformName);
+		AAIResourceUri genericVnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF,vnfId);
+		getAaiClient().createIfNotExists(platformURI, Optional.empty()).connect(platformURI, genericVnfURI);
+	}
+	
+	public void createAAILineOfBusiness(String lineOfBusiness,String vnfId){
+		AAIResourceUri lineOfBusinessURI = AAIUriFactory.createResourceUri(AAIObjectType.LINE_OF_BUSINESS, lineOfBusiness);
+		AAIResourceUri genericVnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF,vnfId);
+		getAaiClient().createIfNotExists(lineOfBusinessURI, Optional.empty()).connect(lineOfBusinessURI, genericVnfURI);
+	}
+	public void createAAIServiceInstance(String globalCustomerId, String serviceType, String serviceInstanceId){
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, globalCustomerId,serviceType,serviceInstanceId);
+		getAaiClient().createIfNotExists(serviceInstanceURI, Optional.empty());
+	}
+	
+	public Optional<GenericVnf> getVnfInstance(String vnfId){
+		try{
+			AAIResourceUri vnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId);
+			AAIResultWrapper aaiResponse = getAaiClient().get(vnfURI);
+			Optional<GenericVnf> vnf = aaiResponse.asBean(GenericVnf.class);
+			return vnf;
+		} catch (Exception ex){
+			return Optional.empty();
+		}
+	}
+	
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIDeleteServiceInstance.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIDeleteServiceInstance.java
new file mode 100644
index 0000000..cea6fe7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIDeleteServiceInstance.java
@@ -0,0 +1,49 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.onap.so.bpmn.common.scripts.ExceptionUtil;
+import org.onap.so.client.aai.AAIObjectType;
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.onap.so.client.aai.entities.uri.AAIResourceUri;
+import org.onap.so.client.aai.entities.uri.AAIUriFactory;
+import org.springframework.stereotype.Component;
+
+public class AAIDeleteServiceInstance extends AAIResource implements JavaDelegate{
+
+	ExceptionUtil exceptionUtil = new ExceptionUtil();
+	public void execute(DelegateExecution execution) throws Exception {
+		try{
+			String serviceInstanceId = (String) execution.getVariable("serviceInstanceId");
+			AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE,
+					serviceInstanceId);
+			getAaiClient().delete(serviceInstanceURI);
+			execution.setVariable("GENDS_SuccessIndicator",true);
+		} catch(Exception ex){
+			String msg = "Exception in Delete Serivce Instance. Service Instance could not be deleted in AAI." + ex.getMessage();
+			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg);
+		}
+		
+	}
+	
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIResource.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIResource.java
new file mode 100644
index 0000000..3bc02be
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIResource.java
@@ -0,0 +1,40 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.springframework.stereotype.Component;
+
+@Component
+public abstract class AAIResource {	
+	private AAIResourcesClient aaiClient;
+
+	public AAIResourcesClient getAaiClient() {
+		if(aaiClient == null)
+			return new AAIResourcesClient();
+		else
+			return aaiClient;
+	}
+
+	public void setAaiClient(AAIResourcesClient aaiClient) {
+		this.aaiClient = aaiClient;
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIServiceInstance.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIServiceInstance.java
new file mode 100644
index 0000000..67ba155
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/AAIServiceInstance.java
@@ -0,0 +1,94 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+public class AAIServiceInstance {
+	String serviceInstanceName;		
+	String serviceType;
+	String serviceRole;
+	String orchestrationStatus;	
+	String modelInvariantUuid;	
+	String modelVersionId;		
+	String environmentContext;
+	String workloadContext;
+	public AAIServiceInstance(String serviceInstanceName, String serviceType, String serviceRole,
+			String orchestrationStatus, String modelInvariantUuid, String modelVersionId, String environmentContext,
+			String workloadContext) {
+		this.serviceInstanceName = serviceInstanceName;
+		this.serviceType = serviceType;
+		this.serviceRole = serviceRole;
+		this.orchestrationStatus = orchestrationStatus;
+		this.modelInvariantUuid = modelInvariantUuid;
+		this.modelVersionId = modelVersionId;
+		this.environmentContext = environmentContext;
+		this.workloadContext = workloadContext;
+	}
+	public String getServiceInstanceName() {
+		return serviceInstanceName;
+	}
+	public void setServiceInstanceName(String serviceInstanceName) {
+		this.serviceInstanceName = serviceInstanceName;
+	}
+	public String getServiceType() {
+		return serviceType;
+	}
+	public void setServiceType(String serviceType) {
+		this.serviceType = serviceType;
+	}
+	public String getServiceRole() {
+		return serviceRole;
+	}
+	public void setServiceRole(String serviceRole) {
+		this.serviceRole = serviceRole;
+	}
+	public String getOrchestrationStatus() {
+		return orchestrationStatus;
+	}
+	public void setOrchestrationStatus(String orchestrationStatus) {
+		this.orchestrationStatus = orchestrationStatus;
+	}
+	public String getModelInvariantUuid() {
+		return modelInvariantUuid;
+	}
+	public void setModelInvariantUuid(String modelInvariantUuid) {
+		this.modelInvariantUuid = modelInvariantUuid;
+	}
+	public String getModelVersionId() {
+		return modelVersionId;
+	}
+	public void setModelVersionId(String modelVersionId) {
+		this.modelVersionId = modelVersionId;
+	}
+	public String getEnvironmentContext() {
+		return environmentContext;
+	}
+	public void setEnvironmentContext(String environmentContext) {
+		this.environmentContext = environmentContext;
+	}
+	public String getWorkloadContext() {
+		return workloadContext;
+	}
+	public void setWorkloadContext(String workloadContext) {
+		this.workloadContext = workloadContext;
+	}
+	
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAICreateResources.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAICreateResources.java
new file mode 100644
index 0000000..c04c2dc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAICreateResources.java
@@ -0,0 +1,123 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai.groovyflows;
+
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Optional;
+
+import javax.ws.rs.NotFoundException;
+
+import org.onap.aai.domain.yang.ServiceInstance;
+import org.onap.aai.domain.yang.ServiceInstances;
+import org.onap.aai.domain.yang.OwningEntities;
+import org.onap.aai.domain.yang.OwningEntity;
+import org.onap.so.bpmn.servicedecomposition.tasks.BBInputSetupUtils;
+import org.onap.so.client.aai.AAIObjectPlurals;
+import org.onap.so.client.aai.AAIObjectType;
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.onap.so.client.aai.entities.uri.AAIResourceUri;
+import org.onap.so.client.aai.entities.uri.AAIUriFactory;
+import org.onap.so.logger.MsoLogger;
+
+public class AAICreateResources {
+	
+	private static final MsoLogger msoLogger = MsoLogger.getMsoLogger(MsoLogger.Catalog.BPEL, AAICreateResources.class);
+
+	public void createAAIProject (String projectName, String serviceInstance){
+		AAIResourceUri projectURI = AAIUriFactory.createResourceUri(AAIObjectType.PROJECT, projectName);
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
+		AAIResourcesClient aaiRC = new AAIResourcesClient();	  
+		aaiRC.createIfNotExists(projectURI, Optional.empty()).connect(projectURI, serviceInstanceURI);
+		
+	}
+	
+	public void createAAIOwningEntity(String owningEntityId, String owningEntityName,String serviceInstance){
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createNodesUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
+		Map<String, String> hashMap= new HashMap<>();
+		hashMap.put("owning-entity-name", owningEntityName);	
+		AAIResourcesClient aaiRC = new AAIResourcesClient();
+		aaiRC.createIfNotExists(owningEntityURI, Optional.of(hashMap)).connect(owningEntityURI, serviceInstanceURI);
+	}
+
+	public boolean existsOwningEntity(String owningEntityId){
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		AAIResourcesClient aaiRC = new AAIResourcesClient();	  
+		return aaiRC.exists(owningEntityURI);
+	}
+	
+	protected OwningEntities getOwningEntityName(String owningEntityName){
+		
+		AAIResourcesClient aaiRC = new AAIResourcesClient();
+		return aaiRC.get(OwningEntities.class,
+				AAIUriFactory
+						.createResourceUri(AAIObjectPlurals.OWNING_ENTITIES)
+						.queryParam("owning-entity-name", owningEntityName))
+				.orElseGet(() -> {
+					msoLogger.debug("No Owning Entity matched by name");
+					return null;
+				});
+		
+	}
+	
+	public Optional<OwningEntity> getOwningEntityNames(String owningEntityName) throws Exception{
+		OwningEntity owningEntity = null;
+		OwningEntities owningEntities = null;
+		owningEntities = getOwningEntityName(owningEntityName);
+
+		if (owningEntities == null) {
+			return Optional.empty();
+		} else if (owningEntities.getOwningEntity().size() > 1) {
+			throw new Exception("Multiple OwningEntities Returned");
+		} else {
+			owningEntity = owningEntities.getOwningEntity().get(0);
+		}
+		return Optional.of(owningEntity);
+	}
+	
+	public void connectOwningEntityandServiceInstance (String owningEntityId, String serviceInstance){
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, serviceInstance);
+		AAIResourcesClient aaiRC = new AAIResourcesClient();
+		aaiRC.connect(owningEntityURI, serviceInstanceURI);
+	}
+	
+	public void createAAIPlatform(String platformName,String vnfId){
+		AAIResourceUri platformURI = AAIUriFactory.createResourceUri(AAIObjectType.PLATFORM, platformName);
+		AAIResourceUri genericVnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF,vnfId);
+		AAIResourcesClient aaiRC = new AAIResourcesClient();				  
+		aaiRC.createIfNotExists(platformURI, Optional.empty()).connect(platformURI, genericVnfURI);
+	}
+	
+	public void createAAILineOfBusiness(String lineOfBusiness,String vnfId){
+		AAIResourceUri lineOfBusinessURI = AAIUriFactory.createResourceUri(AAIObjectType.LINE_OF_BUSINESS, lineOfBusiness);
+		AAIResourceUri genericVnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF,vnfId);
+		AAIResourcesClient aaiRC = new AAIResourcesClient();				  
+		aaiRC.createIfNotExists(lineOfBusinessURI, Optional.empty()).connect(lineOfBusinessURI, genericVnfURI);
+	}
+	public void createAAIServiceInstance(String globalCustomerId, String serviceType, String serviceInstanceId){
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, globalCustomerId,serviceType,serviceInstanceId);
+		AAIResourcesClient aaiRC = new AAIResourcesClient();	  
+		aaiRC.createIfNotExists(serviceInstanceURI, Optional.empty());
+	}
+	
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAIDeleteServiceInstance.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAIDeleteServiceInstance.java
new file mode 100644
index 0000000..495c772
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAIDeleteServiceInstance.java
@@ -0,0 +1,49 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai.groovyflows;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.onap.so.bpmn.common.scripts.ExceptionUtil;
+import org.onap.so.client.aai.AAIObjectType;
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.onap.so.client.aai.entities.uri.AAIResourceUri;
+import org.onap.so.client.aai.entities.uri.AAIUriFactory;
+
+public class AAIDeleteServiceInstance implements JavaDelegate{
+
+	ExceptionUtil exceptionUtil = new ExceptionUtil();
+	public void execute(DelegateExecution execution) throws Exception {
+		try{
+			String serviceInstanceId = (String) execution.getVariable("serviceInstanceId");
+			AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE,
+					serviceInstanceId);
+			AAIResourcesClient aaiRC = new AAIResourcesClient();
+			aaiRC.delete(serviceInstanceURI);
+			execution.setVariable("GENDS_SuccessIndicator",true);
+		} catch(Exception ex){
+			String msg = "Exception in Delete Serivce Instance. Service Instance could not be deleted in AAI." + ex.getMessage();
+			exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg);
+		}
+		
+	}
+	
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAIServiceInstance.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAIServiceInstance.java
new file mode 100644
index 0000000..805ece9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/aai/groovyflows/AAIServiceInstance.java
@@ -0,0 +1,94 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai.groovyflows;
+
+public class AAIServiceInstance {
+	String serviceInstanceName;		
+	String serviceType;
+	String serviceRole;
+	String orchestrationStatus;	
+	String modelInvariantUuid;	
+	String modelVersionId;		
+	String environmentContext;
+	String workloadContext;
+	public AAIServiceInstance(String serviceInstanceName, String serviceType, String serviceRole,
+			String orchestrationStatus, String modelInvariantUuid, String modelVersionId, String environmentContext,
+			String workloadContext) {
+		this.serviceInstanceName = serviceInstanceName;
+		this.serviceType = serviceType;
+		this.serviceRole = serviceRole;
+		this.orchestrationStatus = orchestrationStatus;
+		this.modelInvariantUuid = modelInvariantUuid;
+		this.modelVersionId = modelVersionId;
+		this.environmentContext = environmentContext;
+		this.workloadContext = workloadContext;
+	}
+	public String getServiceInstanceName() {
+		return serviceInstanceName;
+	}
+	public void setServiceInstanceName(String serviceInstanceName) {
+		this.serviceInstanceName = serviceInstanceName;
+	}
+	public String getServiceType() {
+		return serviceType;
+	}
+	public void setServiceType(String serviceType) {
+		this.serviceType = serviceType;
+	}
+	public String getServiceRole() {
+		return serviceRole;
+	}
+	public void setServiceRole(String serviceRole) {
+		this.serviceRole = serviceRole;
+	}
+	public String getOrchestrationStatus() {
+		return orchestrationStatus;
+	}
+	public void setOrchestrationStatus(String orchestrationStatus) {
+		this.orchestrationStatus = orchestrationStatus;
+	}
+	public String getModelInvariantUuid() {
+		return modelInvariantUuid;
+	}
+	public void setModelInvariantUuid(String modelInvariantUuid) {
+		this.modelInvariantUuid = modelInvariantUuid;
+	}
+	public String getModelVersionId() {
+		return modelVersionId;
+	}
+	public void setModelVersionId(String modelVersionId) {
+		this.modelVersionId = modelVersionId;
+	}
+	public String getEnvironmentContext() {
+		return environmentContext;
+	}
+	public void setEnvironmentContext(String environmentContext) {
+		this.environmentContext = environmentContext;
+	}
+	public String getWorkloadContext() {
+		return workloadContext;
+	}
+	public void setWorkloadContext(String workloadContext) {
+		this.workloadContext = workloadContext;
+	}
+	
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/common/name/generation/AAIObjectInstanceNameGenerator.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/common/name/generation/AAIObjectInstanceNameGenerator.java
new file mode 100644
index 0000000..3b443cb
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/common/name/generation/AAIObjectInstanceNameGenerator.java
@@ -0,0 +1,40 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.common.name.generation;
+
+import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.InstanceGroup;
+import org.springframework.stereotype.Component;
+
+@Component
+public class AAIObjectInstanceNameGenerator {
+
+	public String generateInstanceGroupName(InstanceGroup instanceGroup, GenericVnf vnf) {
+		if(vnf.getVnfName() != null && instanceGroup.getModelInfoInstanceGroup().getFunction() != null) {
+		return vnf.getVnfName() + "_" + instanceGroup.getModelInfoInstanceGroup().getFunction();
+		} else {
+			throw new IllegalArgumentException("Cannot generate instance group name because either one or both fields are null: "
+					+ " Vnf Instance Name: " + vnf.getVnfName()
+					+ ", Instance Group Function: " + instanceGroup.getModelInfoInstanceGroup().getFunction());
+		}
+	}
+	
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/aai/AaiConnectionImpl.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/aai/AaiConnectionImpl.java
new file mode 100644
index 0000000..fa40e86
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/aai/AaiConnectionImpl.java
@@ -0,0 +1,44 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.aai;
+
+import java.io.IOException;
+import java.util.Optional;
+import java.util.UUID;
+
+import org.onap.aai.domain.yang.Pnf;
+import org.onap.so.bpmn.infrastructure.pnf.implementation.AaiConnection;
+import org.onap.so.client.aai.AAIRestClientImpl;
+
+public class AaiConnectionImpl implements AaiConnection {
+
+    @Override
+    public Optional<Pnf> getEntryFor(String correlationId) throws IOException {
+        AAIRestClientImpl restClient = new AAIRestClientImpl();
+        return restClient.getPnfByName(correlationId, UUID.randomUUID().toString());
+    }
+
+    @Override
+    public void createEntry(String correlationId, Pnf entry) throws IOException {
+        AAIRestClientImpl restClient = new AAIRestClientImpl();
+        restClient.createPnf(correlationId, UUID.randomUUID().toString(), entry);
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CancelDmaapSubscription.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CancelDmaapSubscription.java
new file mode 100644
index 0000000..85cbe2b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CancelDmaapSubscription.java
@@ -0,0 +1,42 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.delegate;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.onap.so.bpmn.infrastructure.pnf.dmaap.DmaapClient;
+import org.springframework.beans.factory.annotation.Autowired;
+
+public class CancelDmaapSubscription implements JavaDelegate {
+
+    private DmaapClient dmaapClient;
+
+    @Override
+    public void execute(DelegateExecution execution) throws Exception {
+        String correlationId = (String) execution.getVariable(ExecutionVariableNames.CORRELATION_ID);
+        dmaapClient.unregister(correlationId);
+    }
+
+    @Autowired
+    public void setDmaapClient(DmaapClient dmaapClient) {
+        this.dmaapClient = dmaapClient;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CheckAaiForCorrelationIdDelegate.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CheckAaiForCorrelationIdDelegate.java
new file mode 100644
index 0000000..63db293
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CheckAaiForCorrelationIdDelegate.java
@@ -0,0 +1,76 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.delegate;
+
+import static org.onap.so.bpmn.infrastructure.pnf.delegate.ExecutionVariableNames.AAI_CONTAINS_INFO_ABOUT_IP;
+import static org.onap.so.bpmn.infrastructure.pnf.delegate.ExecutionVariableNames.AAI_CONTAINS_INFO_ABOUT_PNF;
+import static org.onap.so.bpmn.infrastructure.pnf.delegate.ExecutionVariableNames.CORRELATION_ID;
+
+import java.io.IOException;
+import org.camunda.bpm.engine.delegate.BpmnError;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.onap.so.bpmn.common.scripts.ExceptionUtil;
+import org.onap.so.bpmn.infrastructure.pnf.implementation.AaiConnection;
+import org.onap.so.bpmn.infrastructure.pnf.implementation.AaiResponse;
+import org.onap.so.bpmn.infrastructure.pnf.implementation.CheckAaiForCorrelationIdImplementation;
+import org.onap.so.logger.MsoLogger;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * Implementation of "Check AAI for correlation_id" task in CreateAndActivatePnfResource.bpmn
+ *
+ * Inputs:
+ * - correlationId - String
+ *
+ * Outputs:
+ * - AAI_CONTAINS_INFO_ABOUT_PNF - local Boolean
+ * - aaiContainsInfoAboutIp - local Boolean
+ */
+
+public class CheckAaiForCorrelationIdDelegate implements JavaDelegate {
+	private static MsoLogger LOGGER = MsoLogger.getMsoLogger(MsoLogger.Catalog.GENERAL, CheckAaiForCorrelationIdDelegate.class);
+    private CheckAaiForCorrelationIdImplementation implementation = new CheckAaiForCorrelationIdImplementation();
+    private AaiConnection aaiConnection;
+
+    @Autowired
+    public void setAaiConnection(AaiConnection aaiConnection) {
+        this.aaiConnection = aaiConnection;
+    }
+
+    @Override
+    public void execute(DelegateExecution execution) throws Exception {
+        String correlationId = (String) execution.getVariable(CORRELATION_ID);
+        if (correlationId == null) {
+            new ExceptionUtil().buildAndThrowWorkflowException(execution, 500, CORRELATION_ID + " is not set");
+        }
+
+        try {
+            AaiResponse aaiResponse = implementation.check(correlationId, aaiConnection);
+
+            execution.setVariableLocal(AAI_CONTAINS_INFO_ABOUT_PNF, aaiResponse.getContainsInfoAboutPnf());
+            execution.setVariableLocal(AAI_CONTAINS_INFO_ABOUT_IP, aaiResponse.getContainsInfoAboutIp());
+        } catch (IOException e) {
+        	LOGGER.error("IOException",e);
+            new ExceptionUtil().buildAndThrowWorkflowException(execution, 9999, e.getMessage());
+        }
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CreateAaiEntryWithPnfIdDelegate.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CreateAaiEntryWithPnfIdDelegate.java
new file mode 100644
index 0000000..ec1ef21
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/CreateAaiEntryWithPnfIdDelegate.java
@@ -0,0 +1,55 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.delegate;
+
+import static org.onap.so.bpmn.infrastructure.pnf.delegate.ExecutionVariableNames.CORRELATION_ID;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.onap.aai.domain.yang.Pnf;
+import org.onap.so.bpmn.infrastructure.pnf.implementation.AaiConnection;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ * Implementation of "Create AAI entry with pnf-id = correlation_id" task in CreateAndActivatePnfResource.bpmn
+ *
+ * Inputs:
+ *  - correlationId - String
+ */
+public class CreateAaiEntryWithPnfIdDelegate implements JavaDelegate {
+
+    private AaiConnection aaiConnection;
+
+    @Autowired
+    public void setAaiConnection(AaiConnection aaiConnection) {
+        this.aaiConnection = aaiConnection;
+    }
+
+    @Override
+    public void execute(DelegateExecution execution) throws Exception {
+        String correlationId = (String) execution.getVariable(CORRELATION_ID);
+        Pnf pnf = new Pnf();
+        pnf.setInMaint(true);
+        pnf.setPnfId(correlationId);
+        pnf.setPnfName(correlationId);
+        aaiConnection.createEntry(correlationId, pnf);
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/ExecutionVariableNames.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/ExecutionVariableNames.java
new file mode 100644
index 0000000..b3f2f72
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/ExecutionVariableNames.java
@@ -0,0 +1,33 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.delegate;
+
+@SuppressWarnings("ALL")
+public class ExecutionVariableNames {
+
+    private ExecutionVariableNames() {}
+
+    public final static String CORRELATION_ID = "correlationId";
+    public final static String AAI_CONTAINS_INFO_ABOUT_PNF = "aaiContainsInfoAboutPnf";
+    public final static String AAI_CONTAINS_INFO_ABOUT_IP = "aaiContainsInfoAboutIp";
+    public final static String DMAAP_MESSAGE = "dmaapMessage";
+    public final static String TIMEOUT_FOR_NOTIFICATION = "timeoutForPnfEntryNotification";
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/InformDmaapClient.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/InformDmaapClient.java
new file mode 100644
index 0000000..bb490a0
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/delegate/InformDmaapClient.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.delegate;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.delegate.JavaDelegate;
+import org.onap.so.bpmn.infrastructure.pnf.dmaap.DmaapClient;
+import org.springframework.beans.factory.annotation.Autowired;
+
+public class InformDmaapClient implements JavaDelegate {
+
+    private DmaapClient dmaapClient;
+
+    @Override
+    public void execute(DelegateExecution execution) throws Exception {
+        String correlationId = (String) execution.getVariable(ExecutionVariableNames.CORRELATION_ID);
+        dmaapClient.registerForUpdate(correlationId, () -> execution.getProcessEngineServices().getRuntimeService()
+                .createMessageCorrelation("WorkflowMessage")
+                .processInstanceBusinessKey(execution.getProcessBusinessKey())
+                .correlateWithResult());
+    }
+
+    @Autowired
+    public void setDmaapClient(DmaapClient dmaapClient) {
+        this.dmaapClient = dmaapClient;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/DmaapClient.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/DmaapClient.java
new file mode 100644
index 0000000..c7e7c78
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/DmaapClient.java
@@ -0,0 +1,28 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.dmaap;
+
+public interface DmaapClient {
+
+    void registerForUpdate(String correlationId, Runnable informConsumer);
+
+    Runnable unregister(String correlationId);
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/JsonUtilForCorrelationId.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/JsonUtilForCorrelationId.java
new file mode 100644
index 0000000..90b48ab
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/JsonUtilForCorrelationId.java
@@ -0,0 +1,71 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.dmaap;
+
+import com.google.gson.JsonArray;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParser;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Optional;
+import java.util.Spliterator;
+
+public final class JsonUtilForCorrelationId {
+
+    private static final String JSON_HEADER = "pnfRegistrationFields";
+    private static final String JSON_CORRELATION_ID_FIELD_NAME = "correlationId";
+
+    static List<String> parseJsonToGelAllCorrelationId(String json) {
+        List<String> list = new ArrayList<>();
+        JsonElement je = new JsonParser().parse(json);
+        if (je.isJsonObject()) {
+            getCorrelationIdFromJsonObject(je.getAsJsonObject()).ifPresent(corr -> list.add(corr));
+        } else {
+            JsonArray array = je.getAsJsonArray();
+            Spliterator<JsonElement> spliterator = array.spliterator();
+            spliterator.forEachRemaining(jsonElement -> {
+                parseJsonElementToJsonObject(jsonElement)
+                        .ifPresent(jsonObject -> getCorrelationIdFromJsonObject(jsonObject)
+                                .ifPresent(correlationId -> list.add(correlationId)));
+            });
+        }
+        return list;
+    }
+
+    private static Optional<JsonObject> parseJsonElementToJsonObject(JsonElement jsonElement) {
+        if (jsonElement.isJsonObject()) {
+            return Optional.ofNullable(jsonElement.getAsJsonObject());
+        }
+        return Optional.ofNullable(new JsonParser().parse(jsonElement.getAsString()).getAsJsonObject());
+    }
+
+    private static Optional<String> getCorrelationIdFromJsonObject(JsonObject jsonObject) {
+        if (jsonObject.has(JSON_HEADER)) {
+            JsonObject jo = jsonObject.getAsJsonObject(JSON_HEADER);
+            if (jo.has(JSON_CORRELATION_ID_FIELD_NAME)) {
+                return Optional.ofNullable(jo.get(JSON_CORRELATION_ID_FIELD_NAME).getAsString());
+            }
+        }
+        return Optional.empty();
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/PnfEventReadyDmaapClient.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/PnfEventReadyDmaapClient.java
new file mode 100644
index 0000000..353b4e3
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/PnfEventReadyDmaapClient.java
@@ -0,0 +1,178 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.dmaap;
+
+import java.io.IOException;
+import java.net.URI;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.TimeUnit;
+
+import javax.ws.rs.core.UriBuilder;
+
+import org.apache.http.HttpResponse;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.HttpClientBuilder;
+import org.apache.http.util.EntityUtils;
+import org.onap.so.logger.MsoLogger;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
+import org.springframework.core.env.Environment;
+import org.springframework.stereotype.Component;
+
+@Component
+@Scope("prototype")
+public class PnfEventReadyDmaapClient implements DmaapClient {
+
+    private static final MsoLogger LOGGER = MsoLogger.getMsoLogger(MsoLogger.Catalog.RA, PnfEventReadyDmaapClient.class);
+
+    private static final String JSON_PATH_CORRELATION_ID = "$.pnfRegistrationFields.correlationId";
+    
+    @Autowired
+    private Environment env;
+    private HttpClient httpClient;
+    private String dmaapHost;
+    private int dmaapPort;
+    private String dmaapProtocol;
+    private String dmaapUriPathPrefix;
+    private String dmaapTopicName;
+    private String consumerId;
+    private String consumerGroup;
+    private Map<String, Runnable> pnfCorrelationIdToThreadMap;
+    private HttpGet getRequest;
+    private ScheduledExecutorService executor;
+    private int dmaapClientDelayInSeconds;
+    private volatile boolean dmaapThreadListenerIsRunning;
+
+    public void init() {
+        httpClient = HttpClientBuilder.create().build();
+        pnfCorrelationIdToThreadMap = new ConcurrentHashMap<>();
+        dmaapHost = env.getProperty("pnf.dmaap.host");
+        dmaapPort = env.getProperty("pnf.dmaap.port", Integer.class);
+        executor = null;
+        getRequest = new HttpGet(buildURI());
+    }
+
+    @Override
+    public synchronized void registerForUpdate(String correlationId, Runnable informConsumer) {
+        LOGGER.debug("registering for pnf ready dmaap event for correlation id: " + correlationId);
+        pnfCorrelationIdToThreadMap.put(correlationId, informConsumer);
+        if (!dmaapThreadListenerIsRunning) {
+            startDmaapThreadListener();
+        }
+    }
+
+    @Override
+    public synchronized Runnable unregister(String correlationId) {
+        LOGGER.debug("unregistering from pnf ready dmaap event for correlation id: " + correlationId);
+        Runnable runnable = pnfCorrelationIdToThreadMap.remove(correlationId);
+        if (pnfCorrelationIdToThreadMap.isEmpty()) {
+            stopDmaapThreadListener();
+        }
+        return runnable;
+    }
+
+    private synchronized void startDmaapThreadListener() {
+        if (!dmaapThreadListenerIsRunning) {
+            executor = Executors.newScheduledThreadPool(1);
+            executor.scheduleWithFixedDelay(new DmaapTopicListenerThread(), 0,
+                    dmaapClientDelayInSeconds, TimeUnit.SECONDS);
+            dmaapThreadListenerIsRunning = true;
+        }
+    }
+
+    private synchronized void stopDmaapThreadListener() {
+        if (dmaapThreadListenerIsRunning) {
+            executor.shutdownNow();
+            dmaapThreadListenerIsRunning = false;
+            executor = null;
+        }
+    }
+
+    private URI buildURI() {
+        return UriBuilder.fromUri(dmaapUriPathPrefix)
+                .scheme(dmaapProtocol)
+                .host(dmaapHost)
+                .port(dmaapPort).path(dmaapTopicName)
+                .path(consumerGroup).path(consumerId).build();
+    }
+
+    public void setDmaapProtocol(String dmaapProtocol) {
+        this.dmaapProtocol = dmaapProtocol;
+    }
+
+    public void setDmaapUriPathPrefix(String dmaapUriPathPrefix) {
+        this.dmaapUriPathPrefix = dmaapUriPathPrefix;
+    }
+
+    public void setDmaapTopicName(String dmaapTopicName) {
+        this.dmaapTopicName = dmaapTopicName;
+    }
+
+    public void setConsumerId(String consumerId) {
+        this.consumerId = consumerId;
+    }
+
+    public void setConsumerGroup(String consumerGroup) {
+        this.consumerGroup = consumerGroup;
+    }
+
+    public void setDmaapClientDelayInSeconds(int dmaapClientDelayInSeconds) {
+        this.dmaapClientDelayInSeconds = dmaapClientDelayInSeconds;
+    }
+
+    class DmaapTopicListenerThread implements Runnable {
+
+        @Override
+        public void run() {
+            try {
+                HttpResponse response = httpClient.execute(getRequest);
+                getCorrelationIdListFromResponse(response).forEach(this::informAboutPnfReadyIfCorrelationIdFound);
+            } catch (IOException e) {
+                LOGGER.error("Exception caught during sending rest request to dmaap for listening event topic", e);
+            }
+        }
+
+        private List<String> getCorrelationIdListFromResponse(HttpResponse response) throws IOException {
+            if (response.getStatusLine().getStatusCode() == 200) {
+                String responseString = EntityUtils.toString(response.getEntity(), "UTF-8");
+                if (responseString != null) {
+                    return JsonUtilForCorrelationId.parseJsonToGelAllCorrelationId(responseString);
+                }
+            }
+            return Collections.emptyList();
+        }
+
+        private synchronized void informAboutPnfReadyIfCorrelationIdFound(String correlationId) {
+            Runnable runnable = unregister(correlationId);
+            if (runnable != null) {
+                LOGGER.debug("pnf ready event got from dmaap for correlationId: " + correlationId);
+                runnable.run();
+            }
+        }
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/AaiConnection.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/AaiConnection.java
new file mode 100644
index 0000000..5165912
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/AaiConnection.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.implementation;
+
+import java.io.IOException;
+import java.util.Optional;
+import org.onap.aai.domain.yang.Pnf;
+
+public interface AaiConnection {
+
+    Optional<Pnf> getEntryFor(String correlationId) throws IOException;
+
+    void createEntry(String correlationId, Pnf entry) throws IOException;
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/AaiResponse.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/AaiResponse.java
new file mode 100644
index 0000000..32ecff1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/AaiResponse.java
@@ -0,0 +1,48 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.implementation;
+
+import java.util.Optional;
+import javax.annotation.Nullable;
+import javax.validation.constraints.NotNull;
+
+public enum AaiResponse {
+    NO_ENTRY(false, false),
+    ENTRY_NO_IP(true, false),
+    ENTRY_WITH_IP(true, true);
+
+    private boolean containsInfoAboutPnf;
+    private boolean containsInfoAboutIp;
+
+    AaiResponse(boolean containsInfoAboutPnf, boolean containsInfoAboutIp) {
+        this.containsInfoAboutPnf = containsInfoAboutPnf;
+        this.containsInfoAboutIp = containsInfoAboutIp;
+    }
+
+    public boolean getContainsInfoAboutPnf() {
+        return containsInfoAboutPnf;
+    }
+
+    public boolean getContainsInfoAboutIp() {
+        return containsInfoAboutIp;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/CheckAaiForCorrelationIdImplementation.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/CheckAaiForCorrelationIdImplementation.java
new file mode 100644
index 0000000..e5fc87d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/pnf/implementation/CheckAaiForCorrelationIdImplementation.java
@@ -0,0 +1,50 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.implementation;
+
+import java.io.IOException;
+import java.util.Optional;
+import org.onap.aai.domain.yang.Pnf;
+
+public class CheckAaiForCorrelationIdImplementation {
+
+    public AaiResponse check(String correlationId, AaiConnection aaiConnection) throws IOException {
+        Optional<Pnf> pnf = aaiConnection.getEntryFor(correlationId);
+        if (!pnf.isPresent()) {
+            return AaiResponse.NO_ENTRY;
+        }
+
+        if(extractIp(pnf.get()).isPresent()) {
+            return AaiResponse.ENTRY_WITH_IP;
+        } else {
+            return AaiResponse.ENTRY_NO_IP;
+        }
+    }
+
+    private Optional<String> extractIp(Pnf pnf) {
+        if (pnf.getIpaddressV4Oam() != null) {
+            return Optional.of(pnf.getIpaddressV4Oam());
+        } else {
+            return Optional.ofNullable(pnf.getIpaddressV6Oam());
+        }
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/properties/BPMNProperties.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/properties/BPMNProperties.java
new file mode 100644
index 0000000..60f109a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/properties/BPMNProperties.java
@@ -0,0 +1,46 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.so.bpmn.infrastructure.properties;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.onap.so.bpmn.core.UrnPropertiesReader;
+import org.onap.so.logger.MsoLogger;
+
+public class BPMNProperties {
+
+    public static String getProperty(String key, String defaultValue) {
+       String value = UrnPropertiesReader.getVariable(key);
+       if (value == null) {
+    	   return defaultValue;
+       } else {
+    	   return value;
+       }
+    }
+
+    public static List<String> getResourceSequenceProp(String input) {
+        String resourceSequence = getProperty("mso.workflow.custom." + input + ".resource.sequence", null);
+        if (resourceSequence != null) {
+            return Arrays.asList(resourceSequence.split(","));
+        }
+        return null;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/LocationConstraint.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/LocationConstraint.java
new file mode 100644
index 0000000..e3c6dce
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/LocationConstraint.java
@@ -0,0 +1,73 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+/**
+ * <br>
+ * <p>
+ * </p>
+ *
+ * @author
+ * @version ONAP Amsterdam Release 2017-9-6
+ */
+public class LocationConstraint {
+
+    /**
+     * vnf profile id
+     */
+    private String vnfProfileId;
+
+    /**
+     * location constraints: vimId
+     */
+    private VimLocation locationConstraints;
+
+    /**
+     * @return Returns the vnfProfileId.
+     */
+    public String getVnfProfileId() {
+        return vnfProfileId;
+    }
+
+    /**
+     * @param vnfProfileId The vnfProfileId to set.
+     */
+    public void setVnfProfileId(String vnfProfileId) {
+        this.vnfProfileId = vnfProfileId;
+    }
+
+
+    /**
+     * @return Returns the locationConstraints.
+     */
+    public VimLocation getLocationConstraints() {
+        return locationConstraints;
+    }
+
+
+    /**
+     * @param locationConstraints The locationConstraints to set.
+     */
+    public void setLocationConstraints(VimLocation locationConstraints) {
+        this.locationConstraints = locationConstraints;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NSResourceInputParameter.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NSResourceInputParameter.java
new file mode 100644
index 0000000..ae320bd
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NSResourceInputParameter.java
@@ -0,0 +1,116 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+import org.onap.so.logger.MsoLogger;
+
+
+/**
+ * NS Create Input Parameter For VFC Adapter<br>
+ * <p>
+ * </p>
+ *
+ * @version ONAP Beijing Release 2018/2/5
+ */
+public class NSResourceInputParameter {
+
+    private NsOperationKey nsOperationKey;
+
+    private String nsServiceName;
+
+    private String nsServiceDescription;
+
+    private NsParameters nsParameters;
+
+    private NsScaleParameters nsScaleParameters;
+
+
+
+
+    /**
+     * @return Returns the nsServiceName.
+     */
+    public String getNsServiceName() {
+        return nsServiceName;
+    }
+
+
+    /**
+     * @param nsServiceName The nsServiceName to set.
+     */
+    public void setNsServiceName(String nsServiceName) {
+        this.nsServiceName = nsServiceName;
+    }
+
+
+    /**
+     * @return Returns the nsServiceDescription.
+     */
+    public String getNsServiceDescription() {
+        return nsServiceDescription;
+    }
+
+
+    /**
+     * @param nsServiceDescription The nsServiceDescription to set.
+     */
+    public void setNsServiceDescription(String nsServiceDescription) {
+        this.nsServiceDescription = nsServiceDescription;
+    }
+
+    /**
+     * @return Returns the nsParameters.
+     */
+    public NsParameters getNsParameters() {
+        return nsParameters;
+    }
+
+    /**
+     * @param nsParameters The nsParameters to set.
+     */
+    public void setNsParameters(NsParameters nsParameters) {
+        this.nsParameters = nsParameters;
+    }
+
+    public NsOperationKey getNsOperationKey() {
+        return nsOperationKey;
+    }
+
+    public void setNsOperationKey(NsOperationKey nsOperationKey) {
+        this.nsOperationKey = nsOperationKey;
+    }
+
+    /**
+     * @return Returns the nsScaleParameters.
+     */
+    public NsScaleParameters getNsScaleParameters() {
+        return nsScaleParameters;
+    }
+
+    /**
+     * @param nsScaleParameters The nsScaleParameters to set.
+     */
+    public void setNsScaleParameters(NsScaleParameters nsScaleParameters) {
+        this.nsScaleParameters = nsScaleParameters;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsOperationKey.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsOperationKey.java
new file mode 100644
index 0000000..81826a2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsOperationKey.java
@@ -0,0 +1,141 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+/**
+ * The operation key object for NS
+ * <br>
+ * <p>
+ * </p>
+ *
+ * @author
+ * @version ONAP Amsterdam Release 2017-09-15
+ */
+public class NsOperationKey {
+
+    /**
+     * The subscriber id
+     */
+    private String globalSubscriberId;
+
+    /**
+     * The serviceType
+     */
+    private String serviceType;
+
+    /**
+     * The service ID
+     */
+    private String serviceId;
+
+    /**
+     * The Operation ID
+     */
+    private String operationId;
+
+    /**
+     * the NS template uuid
+     */
+    private String nodeTemplateUUID;
+
+    /**
+     * @return Returns the globalSubscriberId.
+     */
+    public String getGlobalSubscriberId() {
+        return globalSubscriberId;
+    }
+
+    /**
+     * @param globalSubscriberId The globalSubscriberId to set.
+     */
+    public void setGlobalSubscriberId(String globalSubscriberId) {
+        this.globalSubscriberId = globalSubscriberId;
+    }
+
+    /**
+     * @return Returns the serviceType.
+     */
+    public String getServiceType() {
+        return serviceType;
+    }
+
+    /**
+     * @param serviceType The serviceType to set.
+     */
+    public void setServiceType(String serviceType) {
+        this.serviceType = serviceType;
+    }
+
+    /**
+     * <br>
+     *
+     * @return
+     * @since ONAP Amsterdam Release
+     */
+    public String getServiceId() {
+        return serviceId;
+    }
+
+    /**
+     * <br>
+     *
+     * @param serviceId
+     * @since ONAP Amsterdam Release
+     */
+    public void setServiceId(String serviceId) {
+        this.serviceId = serviceId;
+    }
+
+    /**
+     * <br>
+     *
+     * @return
+     * @since ONAP Amsterdam Release
+     */
+    public String getOperationId() {
+        return operationId;
+    }
+
+    /**
+     * <br>
+     *
+     * @param operationId
+     * @since ONAP Amsterdam Release
+     */
+    public void setOperationId(String operationId) {
+        this.operationId = operationId;
+    }
+
+    /**
+     * @return Returns the nodeTemplateUUID.
+     */
+    public String getNodeTemplateUUID() {
+        return nodeTemplateUUID;
+    }
+
+    /**
+     * @param nodeTemplateUUID The nodeTemplateUUID to set.
+     */
+    public void setNodeTemplateUUID(String nodeTemplateUUID) {
+        this.nodeTemplateUUID = nodeTemplateUUID;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsParameters.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsParameters.java
new file mode 100644
index 0000000..0d8f2fc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsParameters.java
@@ -0,0 +1,70 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <br>
+ * <p>
+ * </p>
+ *
+ * @author
+ * @version ONAP Amsterdam Release 2017-9-6
+ */
+public class NsParameters {
+
+    private List<LocationConstraint> locationConstraints;
+
+    private Map<String, Object> additionalParamForNs = new HashMap<String,Object>();
+    /**
+     * @return Returns the locationConstraints.
+     */
+    public List<LocationConstraint> getLocationConstraints() {
+        return locationConstraints;
+    }
+
+    /**
+     * @param locationConstraints The locationConstraints to set.
+     */
+    public void setLocationConstraints(List<LocationConstraint> locationConstraints) {
+        this.locationConstraints = locationConstraints;
+    }
+
+
+    /**
+     * @return Returns the additionalParamForNs.
+     */
+    public Map<String, Object> getAdditionalParamForNs() {
+        return additionalParamForNs;
+    }
+
+
+    /**
+     * @param additionalParamForNs The additionalParamForNs to set.
+     */
+    public void setAdditionalParamForNs(Map<String, Object> additionalParamForNs) {
+        this.additionalParamForNs = additionalParamForNs;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsScaleParameters.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsScaleParameters.java
new file mode 100644
index 0000000..3340176
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/NsScaleParameters.java
@@ -0,0 +1,78 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+import java.util.List;
+
+/**
+ * <br>
+ * <p>
+ * </p>
+ *
+ * @author
+ * @version ONAP Amsterdam Release 2017-9-26
+ */
+public class NsScaleParameters {
+
+    private List<ScaleNsByStepsData> scaleNsByStepsData;
+
+    private String scaleType;
+
+
+    private String nsInstanceId;
+
+    /**
+     * @return Returns the scaleNsByStepsData.
+     */
+    public List<ScaleNsByStepsData> getScaleNsByStepsData() {
+        return scaleNsByStepsData;
+    }
+
+    /**
+     * @param scaleNsByStepsData The scaleNsByStepsData to set.
+     */
+    public void setScaleNsByStepsData(List<ScaleNsByStepsData> scaleNsByStepsData) {
+        this.scaleNsByStepsData = scaleNsByStepsData;
+    }
+
+    /**
+     * @return Returns the scale Type.
+     */
+    public String getScaleType() {
+        return scaleType;
+    }
+
+    /**
+     * @param scaleType The scaleType to set.
+     */
+    public void setScaleType(String scaleType) {
+        this.scaleType = scaleType;
+    }
+
+    public String getNsInstanceId() {
+        return nsInstanceId;
+    }
+
+    public void setNsInstanceId(String nsInstanceId) {
+        this.nsInstanceId = nsInstanceId;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleNsByStepsData.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleNsByStepsData.java
new file mode 100644
index 0000000..bbf189a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleNsByStepsData.java
@@ -0,0 +1,91 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+
+/**
+ * <br>
+ * <p>
+ * </p>
+ *
+ * @author
+ * @version ONAP Amsterdam Release 2017-9-26
+ */
+public class ScaleNsByStepsData {
+
+    /**
+     * scaling Direction
+     */
+    private String scalingDirection;
+
+    /**
+     * aspect ID
+     */
+    private String aspectId;
+
+    /**
+     * number of Steps
+     */
+    private int numberOfSteps;
+
+    /**
+     * @return Returns the scalingDirection.
+     */
+    public String getScalingDirection() {
+        return scalingDirection;
+    }
+
+    /**
+     * @param scalingDirection The scalingDirection to set.
+     */
+    public void setScalingDirection(String scalingDirection) {
+        this.scalingDirection = scalingDirection;
+    }
+
+    /**
+     * @return Returns the aspectId.
+     */
+    public String getAspectId() {
+        return aspectId;
+    }
+
+    /**
+     * @param aspectId The aspectId to set.
+     */
+    public void setAspectId(String aspectId) {
+        this.aspectId = aspectId;
+    }
+
+    /**
+     * @return Returns the numberofSteps.
+     */
+    public int getNumberOfSteps() {
+        return numberOfSteps;
+    }
+
+    /**
+     * @param numberOfSteps The numberofSteps to set.
+     */
+    public void setNumberOfSteps(int numberOfSteps) {
+        this.numberOfSteps = numberOfSteps;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleNsData.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleNsData.java
new file mode 100644
index 0000000..0f72045
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleNsData.java
@@ -0,0 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+public class ScaleNsData {
+
+    private ScaleNsByStepsData scaleNsByStepsData;
+
+    public ScaleNsByStepsData getScaleNsByStepsData() {
+        return scaleNsByStepsData;
+    }
+
+    public void setScaleNsByStepsData(ScaleNsByStepsData scaleNsByStepsData) {
+        this.scaleNsByStepsData = scaleNsByStepsData;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleResource.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleResource.java
new file mode 100644
index 0000000..4791338
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/ScaleResource.java
@@ -0,0 +1,55 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+public class ScaleResource {
+
+    private String resourceInstanceId;
+
+    private String scaleType;
+
+    private ScaleNsData scaleNsData;
+
+    public String getResourceInstanceId() {
+        return resourceInstanceId;
+    }
+
+    public void setResourceInstanceId(String resourceInstanceId) {
+        this.resourceInstanceId = resourceInstanceId;
+    }
+
+    public String getScaleType() {
+        return scaleType;
+    }
+
+    public void setScaleType(String scaleType) {
+        this.scaleType = scaleType;
+    }
+
+    public ScaleNsData getScaleNsData() {
+        return scaleNsData;
+    }
+
+    public void setScaleNsData(ScaleNsData scaleNsData) {
+        this.scaleNsData = scaleNsData;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/VimLocation.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/VimLocation.java
new file mode 100644
index 0000000..970fa43
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/vfcmodel/VimLocation.java
@@ -0,0 +1,52 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 CMCC. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+
+/**
+ *
+ * <br>
+ * <p>
+ * </p>
+ *
+ * @author
+ * @version     ONAP Amsterdam Release  2017-10-18
+ */
+public class VimLocation {
+    private String vimId;
+
+
+    /**
+     * @return Returns the vimId.
+     */
+    public String getVimId() {
+        return vimId;
+    }
+
+
+    /**
+     * @param vimId The vimId to set.
+     */
+    public void setVimId(String vimId) {
+        this.vimId = vimId;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/AbstractSdncOperationTask.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/AbstractSdncOperationTask.java
new file mode 100644
index 0000000..3c4a357
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/AbstractSdncOperationTask.java
@@ -0,0 +1,350 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask;
+
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.ContentType;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.json.JSONObject;
+import org.onap.msb.sdk.discovery.common.RouteException;
+import org.onap.msb.sdk.httpclient.RestServiceCreater;
+import org.onap.msb.sdk.httpclient.msb.MSBServiceClient;
+import org.onap.so.bpmn.core.BaseTask;
+import org.onap.so.bpmn.core.UrnPropertiesReader;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.GenericResourceApi;
+import org.onap.so.db.request.beans.ResourceOperationStatus;
+import org.onap.so.logger.MessageEnum;
+import org.onap.so.logger.MsoLogger;
+import org.onap.so.requestsdb.RequestsDbConstant;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+public abstract class AbstractSdncOperationTask extends BaseTask {
+
+    private static final Logger logger = LoggerFactory.getLogger(AbstractSdncOperationTask.class);
+    protected static MsoLogger msoLogger = MsoLogger.getMsoLogger(MsoLogger.Catalog.RA, AbstractSdncOperationTask.class);
+    
+    @Autowired
+    private Environment env;
+    private static final String DEFAULT_MSB_IP = "127.0.0.1";
+    private static final int DEFAULT_MSB_PORT = 80;
+    private static final String SDCADAPTOR_INPUTS = "resourceParameters";
+    private static final String TOPOLOGY_PROPERTIES = "topology.properties";
+    public static final String ONAP_IP = "ONAP_IP";
+
+    private static final String POST_BODY_TEMPLATE = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ns=\"http://org.onap.so/requestsdb\"><soapenv:Header/><soapenv:Body>\n"+
+            "     <ns:updateResourceOperationStatus>\n"+
+            "                <errorCode>$errorCode</errorCode>\n"+
+            "                <jobId>$jobId</jobId>\n"+
+            "                <operType>$operType</operType>\n"+
+            "                <operationId>$operationId</operationId>\n"+
+            "                <progress>$progress</progress>\n"+
+            "                <resourceTemplateUUID>$resourceTemplateUUID</resourceTemplateUUID>\n"+
+            "                <serviceId>$serviceId</serviceId>\n"+
+            "                <status>$status</status>\n"+
+            "                <statusDescription>$statusDescription</statusDescription>\n"+
+            "     </ns:updateResourceOperationStatus></soapenv:Body></soapenv:Envelope>";
+
+    private static final String GET_BODY_TEMPLATE = " <soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ns=\"http://org.onap.so/requestsdb\"><soapenv:Header/><soapenv:Body>\n" +
+            "     <ns:getResourceOperationStatus>\n" +
+            "                <operationId>$operationId</operationId>\n" +
+            "                <resourceTemplateUUID>$resourceTemplateUUID</resourceTemplateUUID>\n" +
+            "                <serviceId>$serviceId</serviceId>\n" +
+            "     </ns:getResourceOperationStatus></soapenv:Body></soapenv:Envelope>";
+
+
+    private void updateResOperStatus(ResourceOperationStatus resourceOperationStatus) throws RouteException {
+        logger.info("AbstractSdncOperationTask.updateResOperStatus begin!");
+		String requestsdbEndPoint = env.getProperty("mso.adapters.openecomp.db.endpoint");
+        HttpPost httpPost = new HttpPost(requestsdbEndPoint);
+        httpPost.addHeader("Authorization", "Basic QlBFTENsaWVudDpwYXNzd29yZDEk");
+        httpPost.addHeader("Content-type", "application/soap+xml");
+        String postBody = getPostStringBody(resourceOperationStatus);
+        httpPost.setEntity(new StringEntity(postBody, ContentType.APPLICATION_XML));
+        httpPost(requestsdbEndPoint, httpPost);
+        logger.info("AbstractSdncOperationTask.updateResOperStatus end!");
+    }
+
+    protected String getPostbody(Object inputEntity) {
+        ObjectMapper objectMapper = new ObjectMapper();
+        String postBody = null;
+        try {
+            objectMapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
+            postBody = objectMapper.writeValueAsString(inputEntity);
+        } catch (JsonProcessingException e) {
+            logger.error(Arrays.toString(e.getStackTrace()));
+        }
+        return postBody;
+    }
+
+    protected String httpPost(String url, HttpPost httpPost) throws RouteException {
+        logger.info("AbstractSdncOperationTask.httpPost begin!");
+        String result = null;
+
+        String errorMsg;
+        try(CloseableHttpClient httpClient = HttpClients.createDefault()) {
+            CloseableHttpResponse closeableHttpResponse = httpClient.execute(httpPost);
+            result = EntityUtils.toString(closeableHttpResponse.getEntity());
+            logger.info("result = {}", result);
+            if(closeableHttpResponse.getStatusLine().getStatusCode() != 200) {
+                logger.info("exception: fail for status code = {}", closeableHttpResponse.getStatusLine().getStatusCode());
+                throw new RouteException(result, "SERVICE_GET_ERR");
+            }
+
+            closeableHttpResponse.close();
+        } catch (IOException e) {
+            errorMsg = url + ":httpPostWithJSON connect faild";
+            logger.info("exception: POST_CONNECT_FAILD : {}", errorMsg);
+            throwsRouteException(errorMsg, e, "POST_CONNECT_FAILD");
+        }
+
+        logger.info("AbstractSdncOperationTask.httpPost end!");
+        return result;
+    }
+
+    private static void throwsRouteException(String errorMsg, Exception e, String errorCode) throws RouteException {
+        String msg = errorMsg + ".errorMsg:" + e.getMessage();
+        logger.info("exception: {}", msg);
+        throw new RouteException(errorMsg, errorCode);
+    }
+
+    private String getPostStringBody(ResourceOperationStatus resourceOperationStatus) {
+        logger.info("AbstractSdncOperationTask.getPostStringBody begin!");
+        String postBody = POST_BODY_TEMPLATE;
+        postBody = postBody.replace("$errorCode", resourceOperationStatus.getErrorCode());
+        postBody = postBody.replace("$jobId", resourceOperationStatus.getJobId());
+        postBody = postBody.replace("$operType", resourceOperationStatus.getOperType());
+        postBody = postBody.replace("$operationId", resourceOperationStatus.getOperationId());
+        postBody = postBody.replace("$progress", resourceOperationStatus.getProgress());
+        postBody = postBody.replace("$resourceTemplateUUID", resourceOperationStatus.getResourceTemplateUUID());
+        postBody = postBody.replace("$serviceId", resourceOperationStatus.getServiceId());
+        postBody = postBody.replace("$status", resourceOperationStatus.getStatus());
+        postBody = postBody.replace("$statusDescription", resourceOperationStatus.getStatusDescription());
+        logger.info("AbstractSdncOperationTask.getPostStringBody end!");
+        return postBody;
+    }
+
+    private String getGetStringBody(String serviceId, String operationId, String resourceTemplateUUID) {
+        logger.info("AbstractSdncOperationTask.getGetStringBody begin!");
+        String getBody = GET_BODY_TEMPLATE;
+        getBody = getBody.replace("$operationId", operationId);
+        getBody = getBody.replace("$resourceTemplateUUID", resourceTemplateUUID);
+        getBody = getBody.replace("$serviceId", serviceId);
+        logger.info("AbstractSdncOperationTask.getGetStringBody end!");
+        return getBody;
+    }
+
+    private ResourceOperationStatus getResourceOperationStatus(String serviceId, String operationId, String resourceTemplateUUID) throws RouteException {
+        logger.info("AbstractSdncOperationTask.getResourceOperationStatus begin!");
+		String requestsdbEndPoint = env.getProperty("mso.adapters.openecomp.db.endpoint");
+        HttpPost httpPost = new HttpPost(requestsdbEndPoint);
+        httpPost.addHeader("Authorization", "Basic QlBFTENsaWVudDpwYXNzd29yZDEk");
+        httpPost.addHeader("Content-type", "application/soap+xml");
+        String getBody = getGetStringBody(serviceId, operationId, resourceTemplateUUID);
+        httpPost.setEntity(new StringEntity(getBody, ContentType.APPLICATION_XML));
+        String result = httpPost(requestsdbEndPoint, httpPost);
+        ResourceOperationStatus resourceOperationStatus = getResourceOperationStatusFromXmlString(result);
+        logger.info("AbstractSdncOperationTask.getResourceOperationStatus end!");
+        return resourceOperationStatus;
+    }
+
+    private ResourceOperationStatus getResourceOperationStatusFromXmlString(String result) {
+        logger.info("AbstractSdncOperationTask.getResourceOperationStatusFromXmlString begin!");
+        ResourceOperationStatus resourceOperationStatus = new ResourceOperationStatus();
+        resourceOperationStatus.setErrorCode(getValueByName("errorCode", result));
+        resourceOperationStatus.setJobId(getValueByName("jobId", result));
+        resourceOperationStatus.setOperType(getValueByName("operType", result));
+        resourceOperationStatus.setOperationId(getValueByName("operationId", result));
+        resourceOperationStatus.setProgress(getValueByName("progress", result));
+        resourceOperationStatus.setResourceTemplateUUID(getValueByName("resourceTemplateUUID", result));
+        resourceOperationStatus.setServiceId(getValueByName("serviceId", result));
+        resourceOperationStatus.setStatus(getValueByName("status", result));
+        resourceOperationStatus.setStatusDescription(getValueByName("statusDescription", result));
+        logger.info("AbstractSdncOperationTask.getResourceOperationStatusFromXmlString end!");
+        return resourceOperationStatus;
+    }
+
+    private String getValueByName(String name, String xml) {
+        if (!StringUtils.isBlank(xml) && xml.contains(name)) {
+            String start = "<" + name + ">";
+            String end = "</" + name + ">";
+            return xml.substring(xml.indexOf(start), xml.indexOf(end)).replace(start, "");
+        }
+        return "";
+    }
+
+    @Override
+    public void execute(DelegateExecution execution) {
+        logger.info("AbstractSdncOperationTask.execute begin!");
+        GenericResourceApi genericResourceApiClient = getGenericResourceApiClient();
+        try {
+            Map<String, String> inputs = getInputs(execution);
+
+            sendRestrequestAndHandleResponse(execution, inputs, genericResourceApiClient);
+            execution.setVariable("SDNCA_SuccessIndicator", true);
+        } catch (Exception e) {
+            logger.info("exception: AbstractSdncOperationTask.fail!");
+            logger.error("exception: AbstractSdncOperationTask.fail!:", e);
+            logger.error(Arrays.toString(e.getStackTrace()));
+            execution.setVariable("SDNCA_SuccessIndicator", false);
+            updateProgress(execution, RequestsDbConstant.Status.ERROR, null, "100", "sendRestrequestAndHandleResponse finished!");
+
+        }
+        logger.info("AbstractSdncOperationTask.execute end!");
+    }
+
+    protected Map<String, String> getInputs(DelegateExecution execution) {
+        logger.info("AbstractSdncOperationTask.getInputs begin!");
+        Map<String, String> inputs = new HashMap<>();
+        String json = (String) execution.getVariable(SDCADAPTOR_INPUTS);
+        if (!StringUtils.isBlank(json)) {
+            JSONObject jsonObject = new JSONObject(json);
+            JSONObject paras = jsonObject.getJSONObject("additionalParamForNs");
+            Iterator<String> iterator = paras.keys();
+            while (iterator.hasNext()) {
+                String key = iterator.next();
+                inputs.put(key, paras.getString(key));
+            }
+        }
+        logger.info("AbstractSdncOperationTask.getInputs end!");
+        return inputs;
+    }
+
+    public abstract void sendRestrequestAndHandleResponse(DelegateExecution execution,
+                                                          Map<String, String> inputs,
+                                                          GenericResourceApi genericResourceApiClient) throws Exception;
+
+    public void updateProgress(DelegateExecution execution,
+                               String status,
+                               String errorCode,
+                               String progress,
+                               String statusDescription) {
+        logger.info("AbstractSdncOperationTask.updateProgress begin!");
+        String serviceId = (String) execution.getVariable("serviceId");
+        serviceId = StringUtils.isBlank(serviceId) ? (String) execution.getVariable("serviceInstanceId") : serviceId;
+        String operationId = (String) execution.getVariable("operationId");
+        String resourceTemplateUUID = (String) execution.getVariable("resourceUUID");
+        String resourceTemplateId = (String) execution.getVariable("resourceTemplateId");
+        resourceTemplateId = StringUtils.isBlank(resourceTemplateId) ? "" : resourceTemplateUUID;
+        resourceTemplateUUID = StringUtils.isBlank(resourceTemplateUUID) ? resourceTemplateId : resourceTemplateUUID;
+        try {
+            ResourceOperationStatus resourceOperationStatus = getResourceOperationStatus(serviceId, operationId, resourceTemplateUUID);
+            if (!StringUtils.isBlank(status)) {
+                resourceOperationStatus.setStatus(status);
+            }
+            if (!StringUtils.isBlank(errorCode)) {
+                resourceOperationStatus.setErrorCode(errorCode);
+            }
+            if (!StringUtils.isBlank(progress)) {
+                resourceOperationStatus.setProgress(progress);
+            }
+            if (!StringUtils.isBlank(statusDescription)) {
+                resourceOperationStatus.setStatusDescription(statusDescription);
+            }
+            updateResOperStatus(resourceOperationStatus);
+            logger.info("AbstractSdncOperationTask.updateProgress end!");
+        } catch (Exception exception) {
+            logger.info("exception: AbstractSdncOperationTask.updateProgress fail!");
+            logger.error("exception: AbstractSdncOperationTask.updateProgress fail:", exception);
+            msoLogger.error(MessageEnum.GENERAL_EXCEPTION, " updateProgress catch exception: ", "", this.getTaskName(), MsoLogger.ErrorCode.UnknownError, exception.getClass().toString());
+        }
+    }
+
+
+    protected boolean isSend2SdncDirectly() {
+        logger.info("AbstractSdncOperationTask.isSend2SdncDirectly begin!");
+            String sdncIp = UrnPropertiesReader.getVariable("sdnc-ip");
+            String sdncPort = UrnPropertiesReader.getVariable("sdnc-port");
+            if (!StringUtils.isBlank(sdncIp) && isIp(sdncIp) && !StringUtils.isBlank(sdncPort)) {
+                logger.info("AbstractSdncOperationTask.isSend2SdncDirectly = true.");
+                return true;
+            }
+        
+        logger.info("AbstractSdncOperationTask.isSend2SdncDirectly = false.");
+        return false;
+    }
+
+    protected String getSdncIp() {
+        logger.info("AbstractSdncOperationTask.getSdncIp begin.");
+        String sdncIp = null;
+         sdncIp = UrnPropertiesReader.getVariable("sdnc-ip");
+        String returnIp = StringUtils.isBlank(sdncIp) || !isIp(sdncIp) ? null : sdncIp;
+        logger.info("AbstractSdncOperationTask.getSdncIp: sdncIp = {}", returnIp);
+        return returnIp;
+    }
+
+    protected String getSdncPort() {
+        logger.info("AbstractSdncOperationTask.getSdncPort begin.");
+        String sdncPort = UrnPropertiesReader.getVariable("sdnc-port");
+        String returnPort = StringUtils.isBlank(sdncPort) ? null : sdncPort;
+        logger.info("AbstractSdncOperationTask.getSdncPort: returnPort = {}", sdncPort);
+        return returnPort;
+    }
+
+    private GenericResourceApi getGenericResourceApiClient() {
+        logger.info("AbstractSdncOperationTask.getGenericResourceApiClient begin!");
+        String msbIp = System.getenv().get(ONAP_IP);
+        int msbPort = DEFAULT_MSB_PORT;
+        if (StringUtils.isBlank(msbIp) || !isIp(msbIp)) {
+            msbIp = env.getProperty("msb-ip");
+            if (StringUtils.isBlank(msbIp)) {
+                msbIp = env.getProperty("msb.address", DEFAULT_MSB_IP);
+            }
+        }
+        String strMsbPort = env.getProperty("msb-port");
+        if (StringUtils.isBlank(strMsbPort)) {
+            strMsbPort = env.getProperty("msb.port", String.valueOf(DEFAULT_MSB_PORT));
+        }
+        msbPort = Integer.valueOf(strMsbPort);
+        
+        logger.info("AbstractSdncOperationTask.getGenericResourceApiClient msbIp = " + msbIp + " msbPort = " + msbPort);
+        MSBServiceClient msbClient = new MSBServiceClient(msbIp, msbPort);
+        RestServiceCreater restServiceCreater = new RestServiceCreater(msbClient);
+        logger.info("AbstractSdncOperationTask.getGenericResourceApiClient end!");
+        return restServiceCreater.createService(GenericResourceApi.class);
+    }
+
+    protected boolean isIp(String msbIp) {
+        return !StringUtils.isBlank(msbIp) && msbIp.split("\\.").length == 4;
+    }
+
+    public String getProcessKey(DelegateExecution execution) {
+        return execution.getProcessEngineServices().getRepositoryService().getProcessDefinition(execution.getProcessDefinitionId()).getKey();
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncNetworkTopologyOperationTask.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncNetworkTopologyOperationTask.java
new file mode 100644
index 0000000..3ef1410
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncNetworkTopologyOperationTask.java
@@ -0,0 +1,102 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask;
+
+import java.util.Map;
+
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.ContentType;
+import org.apache.http.entity.StringEntity;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.onap.msb.sdk.discovery.common.RouteException;
+import org.onap.so.bpmn.core.WorkflowException;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.GenericResourceApi;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.HeaderUtil;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder.NetworkRpcInputEntityBuilder;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcNetworkTopologyOperationInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcNetworkTopologyOperationOutputEntity;
+import org.onap.so.logger.MessageEnum;
+import org.onap.so.requestsdb.RequestsDbConstant;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SdncNetworkTopologyOperationTask extends AbstractSdncOperationTask {
+    private static final Logger sdncLogger = LoggerFactory.getLogger(SdncNetworkTopologyOperationTask.class);
+
+
+    private static final String URL = "/restconf/operations/GENERIC-RESOURCE-API:network-topology-operation";
+
+    @Override
+    public void sendRestrequestAndHandleResponse(DelegateExecution execution,
+                                                 Map<String, String> inputs,
+                                                 GenericResourceApi genericResourceApiClient) throws Exception {
+        sdncLogger.info("SdncNetworkTopologyOperationTask.sendRestrequestAndHandleResponse begin!");
+        updateProgress(execution, RequestsDbConstant.Status.PROCESSING, null, "40", "sendRestrequestAndHandleResponse begin!");
+        NetworkRpcInputEntityBuilder builder = new NetworkRpcInputEntityBuilder();
+        RpcNetworkTopologyOperationInputEntity inputEntity = builder.build(execution, inputs);
+        updateProgress(execution, RequestsDbConstant.Status.PROCESSING, null, "50", "RequestBody build finished!");
+        RpcNetworkTopologyOperationOutputEntity outputEntity;
+        if (!isSend2SdncDirectly()) {
+            outputEntity = genericResourceApiClient.postNetworkTopologyOperation
+                    (HeaderUtil.DefaulAuth, inputEntity).execute().body();
+        updateProgress(execution, null, null, "90", "sendRestrequestAndHandleResponse finished!");
+        saveOutput(execution, outputEntity);
+        } else {
+            send2SdncDirectly(HeaderUtil.DefaulAuth, inputEntity);
+        }
+        updateProgress(execution, RequestsDbConstant.Status.FINISHED, null, RequestsDbConstant.Progress.ONE_HUNDRED, "execute finished!");
+        sdncLogger.info("SdncNetworkTopologyOperationTask.sendRestrequestAndHandleResponse end!");
+    }
+
+    private void send2SdncDirectly(String defaulAuth,
+                                   RpcNetworkTopologyOperationInputEntity inputEntity) throws RouteException {
+        sdncLogger.info("SdncNetworkTopologyOperationTask.send2SdncDirectly begin!");
+        String url = "http://" + getSdncIp() + ":" + getSdncPort() + URL;
+        HttpPost httpPost = new HttpPost(url);
+        httpPost.addHeader("Authorization", defaulAuth);
+        httpPost.addHeader("Content-type", "application/json");
+        String postBody = getPostbody(inputEntity);
+        msoLogger.info(MessageEnum.RA_SEND_REQUEST_SDNC, postBody, "SDNC", "");
+        httpPost.setEntity(new StringEntity(postBody, ContentType.APPLICATION_XML));
+        httpPost(url, httpPost);
+        sdncLogger.info("SdncNetworkTopologyOperationTask.send2SdncDirectly end!");
+    }
+
+    private void saveOutput(DelegateExecution execution, RpcNetworkTopologyOperationOutputEntity output) throws RouteException {
+        sdncLogger.info("SdncNetworkTopologyOperationTask.saveOutput begin!");
+        String responseCode = output.getOutput().getResponseCode();
+        if (!"200".equals(responseCode)) {
+            String processKey = getProcessKey(execution);
+            int errorCode = Integer.parseInt(responseCode);
+            String errorMessage = output.getOutput().getResponseMessage();
+            WorkflowException workflowException = new WorkflowException(processKey, errorCode, errorMessage);
+            execution.setVariable("SDNCA_SuccessIndicator", workflowException);
+            updateProgress(execution, RequestsDbConstant.Status.ERROR, String.valueOf(errorCode), "100", errorMessage);
+            sdncLogger.info("exception: SdncNetworkTopologyOperationTask.saveOutput fail!");
+            throw new RouteException();
+        }
+
+        sdncLogger.info("SdncNetworkTopologyOperationTask.saveOutput end!");
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncServiceTopologyOperationTask.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncServiceTopologyOperationTask.java
new file mode 100644
index 0000000..8e41d0d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncServiceTopologyOperationTask.java
@@ -0,0 +1,101 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask;
+
+
+import java.util.Map;
+
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.ContentType;
+import org.apache.http.entity.StringEntity;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.onap.msb.sdk.discovery.common.RouteException;
+import org.onap.so.bpmn.core.WorkflowException;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.GenericResourceApi;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.HeaderUtil;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder.ServiceRpcInputEntityBuilder;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcServiceTopologyOperationInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcServiceTopologyOperationOutputEntity;
+import org.onap.so.logger.MessageEnum;
+import org.onap.so.requestsdb.RequestsDbConstant;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SdncServiceTopologyOperationTask extends AbstractSdncOperationTask {
+    private static final Logger sdncLogger = LoggerFactory.getLogger(SdncServiceTopologyOperationTask.class);
+
+
+    private static final String URL = "/restconf/operations/GENERIC-RESOURCE-API:service-topology-operation";
+
+    @Override
+    public void sendRestrequestAndHandleResponse(DelegateExecution execution,
+                                                 Map<String, String> inputs,
+                                                 GenericResourceApi genericResourceApiClient) throws Exception {
+        sdncLogger.info("SdncServiceTopologyOperationTask.sendRestrequestAndHandleResponse begin!");
+        updateProgress(execution, null, null, "40", "sendRestrequestAndHandleResponse begin!");
+        ServiceRpcInputEntityBuilder builder = new ServiceRpcInputEntityBuilder();
+        RpcServiceTopologyOperationInputEntity inputEntity = builder.build(execution, inputs);
+        updateProgress(execution, null, null, "50", "RequestBody build finished!");
+        RpcServiceTopologyOperationOutputEntity outputEntity;
+        if (!isSend2SdncDirectly()) {
+            outputEntity = genericResourceApiClient.postServiceTopologyOperation
+                    (HeaderUtil.DefaulAuth, inputEntity).execute().body();
+        updateProgress(execution, null, null, "90", "sendRestrequestAndHandleResponse finished!");
+        saveOutput(execution, outputEntity);
+        } else {
+            send2SdncDirectly(HeaderUtil.DefaulAuth, inputEntity);
+        }
+        sdncLogger.info("SdncServiceTopologyOperationTask.sendRestrequestAndHandleResponse end!");
+
+    }
+
+    private void send2SdncDirectly(String defaulAuth,
+                                   RpcServiceTopologyOperationInputEntity inputEntity) throws RouteException {
+        sdncLogger.info("SdncServiceTopologyOperationTask.send2SdncDirectly begin!");
+        String url = "http://" + getSdncIp() + ":" + getSdncPort() + URL;
+        HttpPost httpPost = new HttpPost(url);
+        httpPost.addHeader("Authorization", defaulAuth);
+        httpPost.addHeader("Content-type", "application/json");
+        String postBody = getPostbody(inputEntity);
+        msoLogger.info(MessageEnum.RA_SEND_REQUEST_SDNC, postBody, "SDNC", "");
+        httpPost.setEntity(new StringEntity(postBody, ContentType.APPLICATION_XML));
+        httpPost(url, httpPost);
+        sdncLogger.info("SdncServiceTopologyOperationTask.send2SdncDirectly end!");
+    }
+
+    private void saveOutput(DelegateExecution execution, RpcServiceTopologyOperationOutputEntity output) throws Exception {
+        sdncLogger.info("SdncServiceTopologyOperationTask.saveOutput begin!");
+        String responseCode = output.getOutput().getResponseCode();
+        if (!"200".equals(responseCode)) {
+            String processKey = getProcessKey(execution);
+            int errorCode = Integer.parseInt(responseCode);
+            String errorMessage = output.getOutput().getResponseMessage();
+            WorkflowException workflowException = new WorkflowException(processKey, errorCode, errorMessage);
+            execution.setVariable("SDNCA_SuccessIndicator", workflowException);
+            updateProgress(execution, RequestsDbConstant.Status.ERROR, String.valueOf(errorCode), null, errorMessage);
+            sdncLogger.info("exception: SdncServiceTopologyOperationTask.saveOutput fail!");
+            throw new RouteException();
+        }
+        sdncLogger.info("SdncServiceTopologyOperationTask.saveOutput end!");
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncUnderlayVpnOperationClient.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncUnderlayVpnOperationClient.java
new file mode 100644
index 0000000..fd84464
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncUnderlayVpnOperationClient.java
@@ -0,0 +1,116 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask;
+
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+import org.onap.msb.sdk.httpclient.RestServiceCreater;
+import org.onap.msb.sdk.httpclient.msb.MSBServiceClient;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.GenericResourceApi;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.HeaderUtil;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder.NetworkRpcInputEntityBuilder;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcNetworkTopologyOperationInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcNetworkTopologyOperationOutputEntity;
+import org.onap.so.db.request.beans.ResourceOperationStatus;
+import org.onap.so.db.request.beans.ResourceOperationStatusId;
+import org.onap.so.db.request.data.repository.ResourceOperationStatusRepository;
+import org.onap.so.logger.MsoLogger;
+import org.onap.so.requestsdb.RequestsDbConstant;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SdncUnderlayVpnOperationClient {
+
+    private static final String DEFAULT_MSB_IP = "127.0.0.1";
+    private static final int DEFAULT_MSB_PORT = 10081;
+
+    private static MsoLogger logger = MsoLogger.getMsoLogger(MsoLogger.Catalog.GENERAL, SdncUnderlayVpnOperationClient.class);
+
+    public boolean excute(String msbIp,
+                       int msbPort,
+                       Map<String, String> inputs,
+                       String iServiceID,
+                       String iOperationID,
+                       String resourceTemplateUUID_i){
+    	ResourceOperationStatusId id = new ResourceOperationStatusId(iServiceID, iOperationID, resourceTemplateUUID_i);
+        GenericResourceApi genericResourceApiClient = getGenericResourceApiClient(msbIp, msbPort);
+        updateProgress(id, RequestsDbConstant.Status.PROCESSING, null, "10", "execute begin!");
+        return sendRestrequestAndHandleResponse(id, inputs, genericResourceApiClient);
+    }
+
+    public boolean sendRestrequestAndHandleResponse(ResourceOperationStatusId id, Map<String, String> inputs, GenericResourceApi genericResourceApiClient){
+        updateProgress(id, null, null, "40", "sendRestrequestAndHandleResponse begin!");
+        NetworkRpcInputEntityBuilder builder = new NetworkRpcInputEntityBuilder();
+        RpcNetworkTopologyOperationInputEntity body = builder.build(null, inputs);
+        updateProgress(id, null, null, "50", "RequestBody build finished!");
+        //RpcNetworkTopologyOperationOutputEntity networkRpcOutputEntiy = null;
+        try {
+            genericResourceApiClient.postNetworkTopologyOperation(HeaderUtil.DefaulAuth ,body).execute().body();
+        } catch (Exception e) {
+            logger.debug("Exception: ", e);
+            updateProgress(id, RequestsDbConstant.Status.ERROR, null, null, "sendRestrequestAndHandleResponse exception:" + e.getMessage());
+            return false;
+        }
+        updateProgress(id, null, null, "90", "sendRestrequestAndHandleResponse finished!");
+        updateProgress(id, RequestsDbConstant.Status.FINISHED, null, RequestsDbConstant.Progress.ONE_HUNDRED, "execute finished!");
+        return true;
+    }
+
+    private GenericResourceApi getGenericResourceApiClient(String msbIp, int msbPort) {
+        if (StringUtils.isBlank(msbIp)) {
+            msbIp = DEFAULT_MSB_IP;
+        }
+        if (msbPort <= 0) {
+            msbPort = DEFAULT_MSB_PORT;
+        }
+        MSBServiceClient msbClient = new MSBServiceClient(msbIp, msbPort);
+        RestServiceCreater restServiceCreater = new RestServiceCreater(msbClient);
+        return restServiceCreater.createService(GenericResourceApi.class);
+    }
+
+    public void updateProgress(ResourceOperationStatusId id, String status,
+                               String errorCode,
+                               String progress,
+                               String statusDescription) {
+    	
+    	
+        ResourceOperationStatus resourceOperationStatus = new ResourceOperationStatus();//rosRepo.getOne(id);
+        if (!StringUtils.isBlank(status)) {
+            resourceOperationStatus.setStatus(status);
+        }
+        if (!StringUtils.isBlank(errorCode)) {
+            resourceOperationStatus.setErrorCode(errorCode);
+        }
+        if (!StringUtils.isBlank(progress)) {
+            resourceOperationStatus.setProgress(progress);
+        }
+        if (!StringUtils.isBlank(statusDescription)) {
+            resourceOperationStatus.setStatusDescription(statusDescription);
+        }
+        //rosRepo.save(resourceOperationStatus);
+    }
+
+    private void saveOutput() {
+        // Not implemented.
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncUnderlayVpnPreprocessTask.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncUnderlayVpnPreprocessTask.java
new file mode 100644
index 0000000..5bd3297
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/SdncUnderlayVpnPreprocessTask.java
@@ -0,0 +1,51 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask;
+
+import org.apache.commons.lang3.StringUtils;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.onap.so.bpmn.core.BaseTask;
+import org.onap.so.db.request.beans.ResourceOperationStatus;
+import org.onap.so.db.request.beans.ResourceOperationStatusId;
+import org.onap.so.db.request.data.repository.ResourceOperationStatusRepository;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class SdncUnderlayVpnPreprocessTask extends BaseTask {
+    public static final String RESOURCE_OPER_TYPE = "resourceOperType";
+
+    @Override
+    public void execute(DelegateExecution execution) {
+        String operType = getOperType(execution);
+        execution.setVariable(RESOURCE_OPER_TYPE, operType);
+    }
+
+    private String getOperType(DelegateExecution execution) {
+        String serviceId = (String) execution.getVariable("serviceId");
+        serviceId = StringUtils.isBlank(serviceId) ? (String) execution.getVariable("serviceInstanceId") : serviceId;
+        String operationId = (String) execution.getVariable("operationId");
+        String resourceTemplateUUID = (String) execution.getVariable("resourceTemplateUUID");
+        resourceTemplateUUID = StringUtils.isBlank(resourceTemplateUUID) ? (String) execution.getVariable("resourceTemplateId") : resourceTemplateUUID;
+        ResourceOperationStatus resourceOperationStatus = new ResourceOperationStatus();//rosRepo.getOne(new ResourceOperationStatusId(serviceId, operationId, resourceTemplateUUID));
+        return resourceOperationStatus.getOperType();
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/GenericResourceApi.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/GenericResourceApi.java
new file mode 100644
index 0000000..a837782
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/GenericResourceApi.java
@@ -0,0 +1,48 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client;
+
+import okhttp3.RequestBody;
+import okhttp3.ResponseBody;
+import org.onap.msb.sdk.httpclient.annotaion.ServiceHttpEndPoint;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.*;
+import retrofit2.Call;
+import retrofit2.http.Body;
+import retrofit2.http.Header;
+import retrofit2.http.POST;
+
+@ServiceHttpEndPoint(serviceName = "sdnc", serviceVersion = "v1")
+public interface GenericResourceApi {
+
+    @POST("/restconf/operations/GENERIC-RESOURCE-API:network-topology-operation")
+    Call<ResponseBody> postNetworkTopologyOperation(@Header("Authorization") String authorization,
+                                                    @Body RequestBody input);
+
+    @POST("/restconf/operations/GENERIC-RESOURCE-API:network-topology-operation")
+    Call<RpcNetworkTopologyOperationOutputEntity> postNetworkTopologyOperation(@Header("Authorization") String authorization,
+                                                                               @Body RpcNetworkTopologyOperationInputEntity input);
+
+    @POST("/restconf/operations/GENERIC-RESOURCE-API:service-topology-operation")
+    Call<RpcServiceTopologyOperationOutputEntity> postServiceTopologyOperation(@Header("Authorization") String authorization,
+                                                                               @Body RpcServiceTopologyOperationInputEntity input);
+
+}
+
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/HeaderUtil.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/HeaderUtil.java
new file mode 100644
index 0000000..696be02
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/HeaderUtil.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client;
+
+import java.util.Base64;
+
+public class HeaderUtil {
+
+    public static final String USER = "admin";
+    public static final String PASS = "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U";
+    public static final String DefaulAuth = getAuthorization(USER, PASS);
+
+    public static String getAuthorization(String usr, String pwd) {
+
+        return "Basic " + base64Encode(usr + ":" + pwd);
+    }
+
+    private static String base64Encode(String str) {
+        String base64 = str;
+        try {
+            base64 = Base64.getEncoder()
+                .encodeToString(str.getBytes("utf-8"));
+        } catch (Exception ex) {
+        }
+        return base64;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java
new file mode 100644
index 0000000..961b846
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilder.java
@@ -0,0 +1,239 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+
+import org.apache.commons.lang3.StringUtils;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.OnapModelInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ParamEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RequestInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ServiceInformationEntity;
+import org.onap.so.requestsdb.RequestsDbConstant;
+
+public abstract class AbstractBuilder<I, O> {
+
+     public static final String OPERATION_TYPE = "operationType";
+     public static final String RESOURCE_TYPE = "resourceType";
+
+     public enum RequestAction {
+          CREATE_NETWORK_INSTANCE(0, "CreateNetworkInstance"),
+          ACTIVATE_NETWORK_INSTANCE(1, "ActivateNetworkInstance"),
+          CREATE_SERVICE_INSTANCE(2, "CreateServiceInstance"),
+          DELETE_SERVICE_INSTANCE(3, "DeleteServiceInstance"),
+          DELETE_NETWORK_INSTANCE(4, "DeleteNetworkInstance"),
+          CREATE_VNF_INSTANCE(5, "CreateVnfInstance"),
+          ACTIVATE_VNF_INSTANCE(6, "ActivateVnfInstance"),
+          DELETE_VNF_INSTANCE(7, "DeleteVnfInstance"),
+          CREATE_VF_MODULE_INSTANCE(8, "CreateVfModuleInstance"),
+          ACTIVATE_VF_MODULE_INSTANCE(9, "ActivateVfModuleInstance"),
+          DELETE_VF_MODULE_INSTANCE(10, "DeleteVfModuleInstance"),
+          CREATE_CONTRAIL_ROUTE_INSTANCE(11, "CreateContrailRouteInstance"),
+          DELETE_CONTRAIL_ROUTE_INSTANCE(12, "DeleteContrailRouteInstance"),
+          CREATE_SECURITY_ZONE_INSTANCE(13, "CreateSecurityZoneInstance"),
+          DELETE_SECURITY_ZONE_INSTANCE(14, "DeleteSecurityZoneInstance"),
+          ACTIVATE_DCI_NETWORK_INSTANCE(15, "ActivateDCINetworkInstance"),
+          DEACTIVATE_DCI_NETWORK_INSTANCE(16, "DeActivateDCINetworkInstance");
+
+          String name;
+          int value;
+
+          private RequestAction(int value, String name) {
+               this.value = value;
+               this.name = name;
+          }
+
+          public String getName() {
+               return this.name;
+          }
+
+          public int getIntValue() {
+               return this.value;
+          }
+     }
+
+     public enum SvcAction {
+          RESERVE(0, "reserve"),
+          ASSIGN(1, "assign"),
+          ACTIVATE(2, "activate"),
+          DELETE(3, "delete"),
+          CHANGEASSIGN(4, "changeassign"),
+          CHANGEDELETE(5, "changedelete"),
+          ROLLBACK(6, "rollback"),
+          DEACTIVATE(7, "deactivate"),
+          UNASSIGN(8, "unassign"),
+          CREATE(9, "create");
+
+          String name;
+          int value;
+
+          private SvcAction(int value, String name) {
+               this.value = value;
+               this.name = name;
+          }
+
+          public String getName() {
+               return this.name;
+          }
+
+          public int getIntValue() {
+               return this.value;
+          }
+     }
+
+     protected String requestId = null;
+
+     abstract O build(DelegateExecution execution, I input) throws Exception;
+
+     protected String getRequestAction(DelegateExecution execution) {
+          String action = /*RequestInformation.*/RequestAction.CREATE_NETWORK_INSTANCE.getName();
+          String operType = (String) execution.getVariable(OPERATION_TYPE);
+          String resourceType = (String)execution.getVariable(RESOURCE_TYPE);
+          if (!StringUtils.isBlank(operType)) {
+               if (RequestsDbConstant.OperationType.DELETE.equalsIgnoreCase(operType)) {
+                    if (isOverlay(resourceType)) {
+                         action = /*RequestInformation.*/RequestAction.DEACTIVATE_DCI_NETWORK_INSTANCE.getName();
+                    } else if (isUnderlay(resourceType)) {
+                         action = /*RequestInformation.*/RequestAction.DELETE_NETWORK_INSTANCE.getName();
+                    } else {
+                         action = /*RequestInformation.*/RequestAction.DELETE_SERVICE_INSTANCE.getName();
+                    }
+               } else if (RequestsDbConstant.OperationType.CREATE.equalsIgnoreCase(operType)) {
+                    if (isOverlay(resourceType)) {
+                         action = /*RequestInformation.*/RequestAction.ACTIVATE_DCI_NETWORK_INSTANCE.getName();
+                    } else if (isUnderlay(resourceType)) {
+                         action = /*RequestInformation.*/RequestAction.CREATE_NETWORK_INSTANCE.getName();
+                    } else {
+                         action = /*RequestInformation.*/RequestAction.CREATE_SERVICE_INSTANCE.getName();
+                    }
+               }
+          }
+          return action;
+     }
+
+     private boolean isOverlay(String resourceType) {
+          return !StringUtils.isBlank(resourceType) && resourceType.toLowerCase().contains("overlay");
+     }
+
+     private boolean isUnderlay(String resourceType) {
+          return !StringUtils.isBlank(resourceType) && resourceType.toLowerCase().contains("underlay");
+     }
+
+     protected String getSvcAction(DelegateExecution execution) {
+          String action = /*SdncRequestHeader.*/SvcAction.CREATE.getName();
+          String operType = (String) execution.getVariable(OPERATION_TYPE);
+          String resourceType = (String)execution.getVariable(RESOURCE_TYPE);
+          if (!StringUtils.isBlank(operType)) {
+               if (RequestsDbConstant.OperationType.DELETE.equalsIgnoreCase(operType)) {
+                    if (isOverlay(resourceType)) {
+                         action = /*SdncRequestHeader.*/SvcAction.DEACTIVATE.getName();
+                    } else if (isUnderlay(resourceType)) {
+                         action = /*SdncRequestHeader.*/SvcAction.DELETE.getName();
+                    } else {
+                         action = /*SdncRequestHeader.*/SvcAction.UNASSIGN.getName();
+                    }
+               } else if (RequestsDbConstant.OperationType.CREATE.equalsIgnoreCase(operType)) {
+                    if (isOverlay(resourceType)) {
+                         action = /*SdncRequestHeader.*/SvcAction.ACTIVATE.getName();
+                    } else if (isUnderlay(resourceType)) {
+                         action = /*SdncRequestHeader.*/SvcAction.CREATE.getName();
+                    } else {
+                         action = /*SdncRequestHeader.*/SvcAction.ASSIGN.getName();
+                    }
+               }
+          }
+          return action;
+     }
+
+     protected synchronized String getRequestId(DelegateExecution execution) {
+          if (StringUtils.isBlank(requestId)) {
+               requestId = (String) execution.getVariable("msoRequestId");
+               if (StringUtils.isBlank(requestId)) {
+                    requestId = UUID.randomUUID().toString();
+               }
+          }
+          return requestId;
+     }
+
+     protected OnapModelInformationEntity getOnapServiceModelInformationEntity(DelegateExecution execution) {
+          OnapModelInformationEntity onapModelInformationEntity = new OnapModelInformationEntity();
+          String modelInvariantUuid = (String) execution.getVariable("modelInvariantUuid");
+          String modelVersion = (String) execution.getVariable("modelVersion");
+          String modelUuid = (String) execution.getVariable("modelUuid");
+          String modelName = (String) execution.getVariable("serviceModelName");
+          onapModelInformationEntity.setModelInvariantUuid(modelInvariantUuid);
+          onapModelInformationEntity.setModelVersion(modelVersion);
+          onapModelInformationEntity.setModelUuid(modelUuid);
+          onapModelInformationEntity.setModelName(modelName);
+          return onapModelInformationEntity;
+     }
+     
+     protected OnapModelInformationEntity getOnapNetworkModelInformationEntity(DelegateExecution execution) {
+         OnapModelInformationEntity onapModelInformationEntity = new OnapModelInformationEntity();
+         String modelInvariantUuid = (String) execution.getVariable("resourceInvariantUUID");
+         String modelVersion = (String) execution.getVariable("modelVersion");
+         String modelUuid = (String) execution.getVariable("resourceUUID");
+         String modelName = (String) execution.getVariable(RESOURCE_TYPE);
+         onapModelInformationEntity.setModelInvariantUuid(modelInvariantUuid);
+         onapModelInformationEntity.setModelVersion(modelVersion);
+         onapModelInformationEntity.setModelUuid(modelUuid);
+         onapModelInformationEntity.setModelName(modelName);
+         return onapModelInformationEntity;
+    }
+
+     protected List<ParamEntity> getParamEntities(Map<String, String> inputs) {
+          List<ParamEntity> paramEntityList = new ArrayList<>();
+          if (inputs != null && !inputs.isEmpty()) {
+               inputs.keySet().forEach(key -> {
+                    ParamEntity paramEntity = new ParamEntity();
+                    paramEntity.setName(key);
+                    paramEntity.setValue(inputs.get(key));
+                    paramEntityList.add(paramEntity);
+               });
+          }
+          return paramEntityList;
+     }
+
+     protected RequestInformationEntity getRequestInformationEntity(DelegateExecution execution) {
+          RequestInformationEntity requestInformationEntity = new RequestInformationEntity();
+          requestInformationEntity.setRequestId(getRequestId(execution));
+          requestInformationEntity.setRequestAction(getRequestAction(execution));
+          return requestInformationEntity;
+     }
+
+     protected ServiceInformationEntity getServiceInformationEntity(DelegateExecution execution) {
+          ServiceInformationEntity serviceInformationEntity = new ServiceInformationEntity();
+          serviceInformationEntity.setServiceId((String) execution.getVariable("serviceInstanceId"));
+          serviceInformationEntity.setSubscriptionServiceType((String) execution.getVariable("serviceType"));
+          serviceInformationEntity.setOnapModelInformation(getOnapServiceModelInformationEntity(execution));
+          serviceInformationEntity.setServiceInstanceId((String) execution.getVariable("serviceInstanceId"));
+          serviceInformationEntity.setGlobalCustomerId((String) execution.getVariable("globalSubscriberId"));
+          return serviceInformationEntity;
+     }
+
+     protected String getServiceInstanceName(DelegateExecution execution) {
+          return (String) execution.getVariable("serviceInstanceName");
+     }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkRpcInputEntityBuilder.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkRpcInputEntityBuilder.java
new file mode 100644
index 0000000..547df2b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkRpcInputEntityBuilder.java
@@ -0,0 +1,90 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder;
+
+import java.util.List;
+import java.util.Map;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.NetworkInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.NetworkInputParametersEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.NetworkRequestInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.NetworkTopologyOperationInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.OnapModelInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ParamEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RequestInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcNetworkTopologyOperationInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.SdncRequestHeaderEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ServiceInformationEntity;
+
+public class NetworkRpcInputEntityBuilder extends AbstractBuilder<Map<String, String>, RpcNetworkTopologyOperationInputEntity> {
+
+    @Override
+    public RpcNetworkTopologyOperationInputEntity build(DelegateExecution execution, Map<String, String> inputs) {
+        RpcNetworkTopologyOperationInputEntity rpcNetworkTopologyOperationInputEntity = new RpcNetworkTopologyOperationInputEntity();
+        NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity = getNetworkTopologyOperationInputEntity(execution, inputs);
+        rpcNetworkTopologyOperationInputEntity.setInput(networkTopologyOperationInputEntity);
+        return rpcNetworkTopologyOperationInputEntity;
+    }
+
+    private void loadNetwrokRequestInputEntity(Map<String, String> inputs, NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity) {
+        NetworkRequestInputEntity networkRequestInputEntity = new NetworkRequestInputEntity();
+	    NetworkInputParametersEntity networkInputParametersEntity = new NetworkInputParametersEntity();
+        List<ParamEntity> paramEntityList = getParamEntities(inputs);
+        networkInputParametersEntity.setParamList(paramEntityList);
+	    networkRequestInputEntity.setNetworkInputPaarameters(networkInputParametersEntity);
+        networkTopologyOperationInputEntity.setNetworkRequestInput(networkRequestInputEntity);
+    }
+
+    private void loadRequestInformationEntity(NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity, DelegateExecution execution) {
+        RequestInformationEntity requestInformationEntity = getRequestInformationEntity(execution);
+        networkTopologyOperationInputEntity.setRequestInformation(requestInformationEntity);
+    }
+
+    private void loadSdncRequestHeaderEntity(NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity, DelegateExecution execution) {
+        SdncRequestHeaderEntity sdncRequestHeaderEntity = new SdncRequestHeaderEntity();
+        sdncRequestHeaderEntity.setSvcRequestId(getRequestId(execution));
+        sdncRequestHeaderEntity.setSvcAction(getSvcAction(execution));
+        networkTopologyOperationInputEntity.setSdncRequestHeader(sdncRequestHeaderEntity);
+    }
+
+    private void loadServiceInformation(NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity, DelegateExecution execution) {
+        ServiceInformationEntity serviceInformationEntity = getServiceInformationEntity(execution);
+        networkTopologyOperationInputEntity.setServiceInformation(serviceInformationEntity);
+    }
+
+    private NetworkTopologyOperationInputEntity getNetworkTopologyOperationInputEntity(DelegateExecution execution, Map<String, String> inputs) {
+        NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity = new NetworkTopologyOperationInputEntity();
+        loadSdncRequestHeaderEntity(networkTopologyOperationInputEntity, execution);
+        loadRequestInformationEntity(networkTopologyOperationInputEntity, execution);
+        loadServiceInformation(networkTopologyOperationInputEntity, execution);
+        loadNetworkInformationEntity(execution, networkTopologyOperationInputEntity);
+        loadNetwrokRequestInputEntity(inputs, networkTopologyOperationInputEntity);
+        return networkTopologyOperationInputEntity;
+    }
+
+    private void loadNetworkInformationEntity(DelegateExecution execution, NetworkTopologyOperationInputEntity networkTopologyOperationInputEntity) {
+        NetworkInformationEntity networkInformationEntity = new NetworkInformationEntity();
+        OnapModelInformationEntity onapModelInformationEntity = getOnapNetworkModelInformationEntity(execution);
+        networkInformationEntity.setOnapModelInformation(onapModelInformationEntity);
+        networkTopologyOperationInputEntity.setNetworkInformation(networkInformationEntity);
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/ServiceRpcInputEntityBuilder.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/ServiceRpcInputEntityBuilder.java
new file mode 100644
index 0000000..466652e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/ServiceRpcInputEntityBuilder.java
@@ -0,0 +1,73 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder;
+
+import java.util.Map;
+
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RequestInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.RpcServiceTopologyOperationInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.SdncRequestHeaderEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ServiceInformationEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ServiceRequestInputEntity;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ServiceTopologyOperationInputEntity;
+
+public class ServiceRpcInputEntityBuilder extends AbstractBuilder<Map<String, String>, RpcServiceTopologyOperationInputEntity> {
+    @Override
+    public RpcServiceTopologyOperationInputEntity build(DelegateExecution execution, Map<String, String> inputs) throws Exception {
+        RpcServiceTopologyOperationInputEntity rpcServiceTopologyOperationInputEntity = new RpcServiceTopologyOperationInputEntity();
+        ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity = new ServiceTopologyOperationInputEntity();
+        loadSdncRequestHeaderEntity(serviceTopologyOperationInputEntity, execution);
+        loadRequestInformationEntity(serviceTopologyOperationInputEntity, execution);
+        loadServiceInformation(serviceTopologyOperationInputEntity, execution);
+        loadServiceRequestInputEntity(serviceTopologyOperationInputEntity, execution);
+        rpcServiceTopologyOperationInputEntity.setServiceTopologyOperationInputEntity(serviceTopologyOperationInputEntity);
+        return rpcServiceTopologyOperationInputEntity;
+    }
+
+    private void loadServiceRequestInputEntity(ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity, DelegateExecution execution) {
+        ServiceRequestInputEntity serviceRequestInputEntity = getServiceRequestInputEntity(execution);
+        serviceTopologyOperationInputEntity.setServiceRequestInput(serviceRequestInputEntity);
+    }
+
+    private ServiceRequestInputEntity getServiceRequestInputEntity(DelegateExecution execution) {
+        ServiceRequestInputEntity serviceRequestInputEntity = new ServiceRequestInputEntity();
+        serviceRequestInputEntity.setServiceInstanceName(getServiceInstanceName(execution));
+        return serviceRequestInputEntity;
+    }
+
+    private void loadServiceInformation(ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity, DelegateExecution execution) {
+        ServiceInformationEntity serviceInformationEntity = getServiceInformationEntity(execution);
+        serviceTopologyOperationInputEntity.setServiceInformation(serviceInformationEntity);
+    }
+
+    private void loadRequestInformationEntity(ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity, DelegateExecution execution) {
+        RequestInformationEntity requestInformationEntity = getRequestInformationEntity(execution);
+        serviceTopologyOperationInputEntity.setRequestInformation(requestInformationEntity);
+    }
+
+    private void loadSdncRequestHeaderEntity(ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity, DelegateExecution execution) {
+        SdncRequestHeaderEntity sdncRequestHeaderEntity = new SdncRequestHeaderEntity();
+        sdncRequestHeaderEntity.setSvcRequestId(getRequestId(execution));
+        sdncRequestHeaderEntity.setSvcAction(getSvcAction(execution));
+        serviceTopologyOperationInputEntity.setSdncRequestHeader(sdncRequestHeaderEntity);
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkInformationEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkInformationEntity.java
new file mode 100644
index 0000000..6ef9676
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkInformationEntity.java
@@ -0,0 +1,58 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class NetworkInformationEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:network-id")
+    private String networkId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:network-type")
+    private String networkType;
+
+    @JsonProperty("GENERIC-RESOURCE-API:onap-model-information")
+    private OnapModelInformationEntity onapModelInformation;
+
+    public String getNetworkId() {
+        return networkId;
+    }
+
+    public void setNetworkId(String networkId) {
+        this.networkId = networkId;
+    }
+
+    public String getNetworkType() {
+        return networkType;
+    }
+
+    public void setNetworkType(String networkType) {
+        this.networkType = networkType;
+    }
+
+    public OnapModelInformationEntity getOnapModelInformation() {
+        return onapModelInformation;
+    }
+
+    public void setOnapModelInformation(OnapModelInformationEntity onapModelInformation) {
+        this.onapModelInformation = onapModelInformation;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkInputParametersEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkInputParametersEntity.java
new file mode 100644
index 0000000..0863917
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkInputParametersEntity.java
@@ -0,0 +1,38 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+import java.util.List;
+
+public class NetworkInputParametersEntity {
+	@JsonProperty("GENERIC-RESOURCE-API:param")
+    private List<ParamEntity> paramList;
+	
+    public List<ParamEntity> getParamList() {
+        return paramList;
+    }
+
+    public void setParamList(List<ParamEntity> paramList) {
+        this.paramList = paramList;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkRequestInputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkRequestInputEntity.java
new file mode 100644
index 0000000..e43291c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkRequestInputEntity.java
@@ -0,0 +1,80 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class NetworkRequestInputEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:network-name")
+    private String networkName;
+
+    @JsonProperty("GENERIC-RESOURCE-API:tenant")
+    private String tenant;
+
+    @JsonProperty("GENERIC-RESOURCE-API:aic-cloud-region")
+    private String aicCloudRegion;
+
+    @JsonProperty("GENERIC-RESOURCE-API:aic-clli")
+    private String aicClli;
+
+    @JsonProperty("GENERIC-RESOURCE-API:network-input-parameters")
+    private NetworkInputParametersEntity networkInputPaarameters;
+
+    public String getNetworkName() {
+        return networkName;
+    }
+
+    public void setNetworkName(String networkName) {
+        this.networkName = networkName;
+    }
+
+    public String getTenant() {
+        return tenant;
+    }
+
+    public void setTenant(String tenant) {
+        this.tenant = tenant;
+    }
+
+    public String getAicCloudRegion() {
+        return aicCloudRegion;
+    }
+
+    public void setAicCloudRegion(String aicCloudRegion) {
+        this.aicCloudRegion = aicCloudRegion;
+    }
+
+    public String getAicClli() {
+        return aicClli;
+    }
+
+    public void setAicClli(String aicClli) {
+        this.aicClli = aicClli;
+    }
+
+    public NetworkInputParametersEntity getNetworkInputPaarameters() {
+        return networkInputPaarameters;
+    }
+
+    public void setNetworkInputPaarameters(NetworkInputParametersEntity networkInputPaarameters) {
+        this.networkInputPaarameters = networkInputPaarameters;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkResponseInformationEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkResponseInformationEntity.java
new file mode 100644
index 0000000..3094ea2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkResponseInformationEntity.java
@@ -0,0 +1,47 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class NetworkResponseInformationEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:instance-id")
+    private String instanceId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:object-path")
+    private String objectPath;
+
+    public String getInstanceId() {
+        return instanceId;
+    }
+
+    public void setInstanceId(String instanceId) {
+        this.instanceId = instanceId;
+    }
+
+    public String getObjectPath() {
+        return objectPath;
+    }
+
+    public void setObjectPath(String objectPath) {
+        this.objectPath = objectPath;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkTopologyOperationInputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkTopologyOperationInputEntity.java
new file mode 100644
index 0000000..e4e3747
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkTopologyOperationInputEntity.java
@@ -0,0 +1,80 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class NetworkTopologyOperationInputEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:sdnc-request-header")
+    private SdncRequestHeaderEntity sdncRequestHeader;
+
+    @JsonProperty("GENERIC-RESOURCE-API:request-information")
+    private RequestInformationEntity requestInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-information")
+    private ServiceInformationEntity serviceInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:network-information")
+    private NetworkInformationEntity networkInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:network-request-input")
+    private NetworkRequestInputEntity networkRequestInput;
+
+    public SdncRequestHeaderEntity getSdncRequestHeader() {
+        return sdncRequestHeader;
+    }
+
+    public void setSdncRequestHeader(SdncRequestHeaderEntity sdncRequestHeader) {
+        this.sdncRequestHeader = sdncRequestHeader;
+    }
+
+    public RequestInformationEntity getRequestInformation() {
+        return requestInformation;
+    }
+
+    public void setRequestInformation(RequestInformationEntity requestInformation) {
+        this.requestInformation = requestInformation;
+    }
+
+    public ServiceInformationEntity getServiceInformation() {
+        return serviceInformation;
+    }
+
+    public void setServiceInformation(ServiceInformationEntity serviceInformation) {
+        this.serviceInformation = serviceInformation;
+    }
+
+    public NetworkInformationEntity getNetworkInformation() {
+        return networkInformation;
+    }
+
+    public void setNetworkInformation(NetworkInformationEntity networkInformation) {
+        this.networkInformation = networkInformation;
+    }
+
+    public NetworkRequestInputEntity getNetworkRequestInput() {
+        return networkRequestInput;
+    }
+
+    public void setNetworkRequestInput(NetworkRequestInputEntity networkRequestInput) {
+        this.networkRequestInput = networkRequestInput;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkTopologyOperationOutputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkTopologyOperationOutputEntity.java
new file mode 100644
index 0000000..19fca65
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/NetworkTopologyOperationOutputEntity.java
@@ -0,0 +1,91 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class NetworkTopologyOperationOutputEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:svc-request-id")
+    private String svcRequestId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:response-code")
+    private String responseCode;
+
+    @JsonProperty("GENERIC-RESOURCE-API:response-message")
+    private String responseMessage;
+
+    @JsonProperty("GENERIC-RESOURCE-API:ack-final-indicator")
+    private String ackFinalIndicator;
+
+    @JsonProperty("GENERIC-RESOURCE-API:network-response-information")
+    private NetworkResponseInformationEntity networkResponseInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-response-information")
+    private ServiceResponseInformationEntity serviceResponseInformation;
+
+    public String getSvcRequestId() {
+        return svcRequestId;
+    }
+
+    public void setSvcRequestId(String svcRequestId) {
+        this.svcRequestId = svcRequestId;
+    }
+
+    public String getResponseCode() {
+        return responseCode;
+    }
+
+    public void setResponseCode(String responseCode) {
+        this.responseCode = responseCode;
+    }
+
+    public String getResponseMessage() {
+        return responseMessage;
+    }
+
+    public void setResponseMessage(String responseMessage) {
+        this.responseMessage = responseMessage;
+    }
+
+    public String getAckFinalIndicator() {
+        return ackFinalIndicator;
+    }
+
+    public void setAckFinalIndicator(String ackFinalIndicator) {
+        this.ackFinalIndicator = ackFinalIndicator;
+    }
+
+    public NetworkResponseInformationEntity getNetworkResponseInformation() {
+        return networkResponseInformation;
+    }
+
+    public void setNetworkResponseInformation(NetworkResponseInformationEntity networkResponseInformation) {
+        this.networkResponseInformation = networkResponseInformation;
+    }
+
+    public ServiceResponseInformationEntity getServiceResponseInformation() {
+        return serviceResponseInformation;
+    }
+
+    public void setServiceResponseInformation(ServiceResponseInformationEntity serviceResponseInformation) {
+        this.serviceResponseInformation = serviceResponseInformation;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/OnapModelInformationEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/OnapModelInformationEntity.java
new file mode 100644
index 0000000..c5e9f5e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/OnapModelInformationEntity.java
@@ -0,0 +1,80 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class OnapModelInformationEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:model-invariant-uuid")
+    private String modelInvariantUuid;
+
+    @JsonProperty("GENERIC-RESOURCE-API:model-customization-uuid")
+    private String modelCustomizationUuid;
+
+    @JsonProperty("GENERIC-RESOURCE-API:model-uuid")
+    private String modelUuid;
+
+    @JsonProperty("GENERIC-RESOURCE-API:model-version")
+    private String modelVersion;
+
+    @JsonProperty("GENERIC-RESOURCE-API:model-name")
+    private String modelName;
+
+    public String getModelInvariantUuid() {
+        return modelInvariantUuid;
+    }
+
+    public void setModelInvariantUuid(String modelInvariantUuid) {
+        this.modelInvariantUuid = modelInvariantUuid;
+    }
+
+    public String getModelCustomizationUuid() {
+        return modelCustomizationUuid;
+    }
+
+    public void setModelCustomizationUuid(String modelCustomizationUuid) {
+        this.modelCustomizationUuid = modelCustomizationUuid;
+    }
+
+    public String getModelUuid() {
+        return modelUuid;
+    }
+
+    public void setModelUuid(String modelUuid) {
+        this.modelUuid = modelUuid;
+    }
+
+    public String getModelVersion() {
+        return modelVersion;
+    }
+
+    public void setModelVersion(String modelVersion) {
+        this.modelVersion = modelVersion;
+    }
+
+    public String getModelName() {
+        return modelName;
+    }
+
+    public void setModelName(String modelName) {
+        this.modelName = modelName;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ParamEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ParamEntity.java
new file mode 100644
index 0000000..05f8d40
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ParamEntity.java
@@ -0,0 +1,47 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ParamEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:name")
+    private String name;
+
+    @JsonProperty("GENERIC-RESOURCE-API:value")
+    private String value;
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RequestInformationEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RequestInformationEntity.java
new file mode 100644
index 0000000..af44894
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RequestInformationEntity.java
@@ -0,0 +1,91 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class RequestInformationEntity {
+	@JsonProperty("GENERIC-RESOURCE-API:request-id")
+    private String requestId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:request-action")
+    private String requestAction;
+
+    @JsonProperty("GENERIC-RESOURCE-API:source")
+    private String source;
+
+    @JsonProperty("GENERIC-RESOURCE-API:notification-url")
+    private String notificationUrl;
+
+    @JsonProperty("GENERIC-RESOURCE-API:order-number")
+    private String orderUnmber;
+
+    @JsonProperty("GENERIC-RESOURCE-API:order-version")
+    private String orerVersion;
+    
+    public String getRequestId() {
+        return requestId;
+    }
+
+    public void setRequestId(String requestId) {
+        this.requestId = requestId;
+    }
+
+    public String getRequestAction() {
+        return requestAction;
+    }
+
+    public void setRequestAction(String requestAction) {
+        this.requestAction = requestAction;
+    }
+
+    public String getSource() {
+        return source;
+    }
+
+    public void setSource(String source) {
+        this.source = source;
+    }
+
+    public String getNotificationUrl() {
+        return notificationUrl;
+    }
+
+    public void setNotificationUrl(String notificationUrl) {
+        this.notificationUrl = notificationUrl;
+    }
+
+    public String getOrderUnmber() {
+        return orderUnmber;
+    }
+
+    public void setOrderUnmber(String orderUnmber) {
+        this.orderUnmber = orderUnmber;
+    }
+
+    public String getOrerVersion() {
+        return orerVersion;
+    }
+
+    public void setOrerVersion(String orerVersion) {
+        this.orerVersion = orerVersion;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcNetworkTopologyOperationInputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcNetworkTopologyOperationInputEntity.java
new file mode 100644
index 0000000..4e58a61
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcNetworkTopologyOperationInputEntity.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class RpcNetworkTopologyOperationInputEntity {
+	@JsonProperty("GENERIC-RESOURCE-API:input")
+    private NetworkTopologyOperationInputEntity input = null;
+	
+    public NetworkTopologyOperationInputEntity getInput() {
+        return input;
+    }
+
+    public void setInput(NetworkTopologyOperationInputEntity input) {
+        this.input = input;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcNetworkTopologyOperationOutputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcNetworkTopologyOperationOutputEntity.java
new file mode 100644
index 0000000..915a8a5
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcNetworkTopologyOperationOutputEntity.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class RpcNetworkTopologyOperationOutputEntity {
+	@JsonProperty("GENERIC-RESOURCE-API:output")
+    private NetworkTopologyOperationOutputEntity output;
+	
+    public NetworkTopologyOperationOutputEntity getOutput() {
+        return output;
+    }
+
+    public void setOutput(NetworkTopologyOperationOutputEntity output) {
+        this.output = output;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcServiceTopologyOperationInputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcServiceTopologyOperationInputEntity.java
new file mode 100644
index 0000000..145759e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcServiceTopologyOperationInputEntity.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class RpcServiceTopologyOperationInputEntity {
+	@JsonProperty("GENERIC-RESOURCE-API:input")
+    private ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity;
+	
+    public ServiceTopologyOperationInputEntity getServiceTopologyOperationInputEntity() {
+        return serviceTopologyOperationInputEntity;
+    }
+
+    public void setServiceTopologyOperationInputEntity(ServiceTopologyOperationInputEntity serviceTopologyOperationInputEntity) {
+        this.serviceTopologyOperationInputEntity = serviceTopologyOperationInputEntity;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcServiceTopologyOperationOutputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcServiceTopologyOperationOutputEntity.java
new file mode 100644
index 0000000..bccd8c3
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/RpcServiceTopologyOperationOutputEntity.java
@@ -0,0 +1,36 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class RpcServiceTopologyOperationOutputEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:output")
+    private ServiceTopologyOperationOutputEntity output;
+
+    public ServiceTopologyOperationOutputEntity getOutput() {
+        return output;
+    }
+
+    public void setOutput(ServiceTopologyOperationOutputEntity output) {
+        this.output = output;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/SdncRequestHeaderEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/SdncRequestHeaderEntity.java
new file mode 100644
index 0000000..a5d806a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/SdncRequestHeaderEntity.java
@@ -0,0 +1,59 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class SdncRequestHeaderEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:svc-request-id")
+    private String svcRequestId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:svc-action")
+    private String svcAction;
+
+    @JsonProperty("GENERIC-RESOURCE-API:svc-notification-url")
+    private String svcNotificationUrl;
+
+    public String getSvcRequestId() {
+        return svcRequestId;
+    }
+
+    public void setSvcRequestId(String svcRequestId) {
+        this.svcRequestId = svcRequestId;
+    }
+
+    public String getSvcAction() {
+        return svcAction;
+    }
+
+    public void setSvcAction(String svcAction) {
+        this.svcAction = svcAction;
+    }
+
+    public String getSvcNotificationUrl() {
+        return svcNotificationUrl;
+    }
+
+    public void setSvcNotificationUrl(String svcNotificationUrl) {
+        this.svcNotificationUrl = svcNotificationUrl;
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceInformationEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceInformationEntity.java
new file mode 100644
index 0000000..1b6ac49
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceInformationEntity.java
@@ -0,0 +1,91 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ServiceInformationEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:service-id")
+    private String serviceId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:subscription-service-type")
+    private String subscriptionServiceType;
+
+    @JsonProperty("GENERIC-RESOURCE-API:onap-model-information")
+    private OnapModelInformationEntity onapModelInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-instance-id")
+    private String serviceInstanceId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:global-customer-id")
+    private String globalCustomerId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:subscriber-name")
+    private String subscriberName;
+
+    public String getServiceId() {
+        return serviceId;
+    }
+
+    public void setServiceId(String serviceId) {
+        this.serviceId = serviceId;
+    }
+
+    public String getSubscriptionServiceType() {
+        return subscriptionServiceType;
+    }
+
+    public void setSubscriptionServiceType(String subscriptionServiceType) {
+        this.subscriptionServiceType = subscriptionServiceType;
+    }
+
+    public OnapModelInformationEntity getOnapModelInformation() {
+        return onapModelInformation;
+    }
+
+    public void setOnapModelInformation(OnapModelInformationEntity onapModelInformation) {
+        this.onapModelInformation = onapModelInformation;
+    }
+
+    public String getServiceInstanceId() {
+        return serviceInstanceId;
+    }
+
+    public void setServiceInstanceId(String serviceInstanceId) {
+        this.serviceInstanceId = serviceInstanceId;
+    }
+
+    public String getGlobalCustomerId() {
+        return globalCustomerId;
+    }
+
+    public void setGlobalCustomerId(String globalCustomerId) {
+        this.globalCustomerId = globalCustomerId;
+    }
+
+    public String getSubscriberName() {
+        return subscriberName;
+    }
+
+    public void setSubscriberName(String subscriberName) {
+        this.subscriberName = subscriberName;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceInputParametersEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceInputParametersEntity.java
new file mode 100644
index 0000000..c1ba7dc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceInputParametersEntity.java
@@ -0,0 +1,38 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+import java.util.List;
+
+public class ServiceInputParametersEntity {
+	@JsonProperty("GENERIC-RESOURCE-API:param")
+    private List<ParamEntity> paramList;
+	
+    public List<ParamEntity> getParamList() {
+        return paramList;
+    }
+
+    public void setParamList(List<ParamEntity> paramList) {
+        this.paramList = paramList;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceRequestInputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceRequestInputEntity.java
new file mode 100644
index 0000000..0bdb9cf
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceRequestInputEntity.java
@@ -0,0 +1,48 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ServiceRequestInputEntity {
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-instance-name")
+    private String serviceInstanceName;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-input-parameters")
+    private ServiceInputParametersEntity serviceInputParametersEntity;
+
+    public String getServiceInstanceName() {
+        return serviceInstanceName;
+    }
+
+    public void setServiceInstanceName(String serviceInstanceName) {
+        this.serviceInstanceName = serviceInstanceName;
+    }
+
+    public ServiceInputParametersEntity getServiceInputParametersEntity() {
+        return serviceInputParametersEntity;
+    }
+
+    public void setServiceInputParametersEntity(ServiceInputParametersEntity serviceInputParametersEntity) {
+        this.serviceInputParametersEntity = serviceInputParametersEntity;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceResponseInformationEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceResponseInformationEntity.java
new file mode 100644
index 0000000..8a50f90
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceResponseInformationEntity.java
@@ -0,0 +1,47 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ServiceResponseInformationEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:instance-id")
+    private String instanceId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:object-path")
+    private String objectPath;
+
+    public String getInstanceId() {
+        return instanceId;
+    }
+
+    public void setInstanceId(String instanceId) {
+        this.instanceId = instanceId;
+    }
+
+    public String getObjectPath() {
+        return objectPath;
+    }
+
+    public void setObjectPath(String objectPath) {
+        this.objectPath = objectPath;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceTopologyOperationInputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceTopologyOperationInputEntity.java
new file mode 100644
index 0000000..ff3d394
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceTopologyOperationInputEntity.java
@@ -0,0 +1,69 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ServiceTopologyOperationInputEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:sdnc-request-header")
+    private SdncRequestHeaderEntity sdncRequestHeader;
+
+    @JsonProperty("GENERIC-RESOURCE-API:request-information")
+    private RequestInformationEntity requestInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-information")
+    private ServiceInformationEntity serviceInformation;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-request-input")
+    private ServiceRequestInputEntity serviceRequestInput;
+
+    public SdncRequestHeaderEntity getSdncRequestHeader() {
+        return sdncRequestHeader;
+    }
+
+    public void setSdncRequestHeader(SdncRequestHeaderEntity sdncRequestHeader) {
+        this.sdncRequestHeader = sdncRequestHeader;
+    }
+
+    public RequestInformationEntity getRequestInformation() {
+        return requestInformation;
+    }
+
+    public void setRequestInformation(RequestInformationEntity requestInformation) {
+        this.requestInformation = requestInformation;
+    }
+
+    public ServiceInformationEntity getServiceInformation() {
+        return serviceInformation;
+    }
+
+    public void setServiceInformation(ServiceInformationEntity serviceInformation) {
+        this.serviceInformation = serviceInformation;
+    }
+
+    public ServiceRequestInputEntity getServiceRequestInput() {
+        return serviceRequestInput;
+    }
+
+    public void setServiceRequestInput(ServiceRequestInputEntity serviceRequestInput) {
+        this.serviceRequestInput = serviceRequestInput;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceTopologyOperationOutputEntity.java b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceTopologyOperationOutputEntity.java
new file mode 100644
index 0000000..502b897
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ServiceTopologyOperationOutputEntity.java
@@ -0,0 +1,80 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class ServiceTopologyOperationOutputEntity {
+    @JsonProperty("GENERIC-RESOURCE-API:svc-request-id")
+    private String svcRequestId;
+
+    @JsonProperty("GENERIC-RESOURCE-API:response-code")
+    private String responseCode;
+
+    @JsonProperty("GENERIC-RESOURCE-API:response-message")
+    private String responseMessage;
+
+    @JsonProperty("GENERIC-RESOURCE-API:ack-final-indicator")
+    private String ackFinalIndicator;
+
+    @JsonProperty("GENERIC-RESOURCE-API:service-response-information")
+    private ServiceResponseInformationEntity serviceResponseInformation;
+
+    public String getSvcRequestId() {
+        return svcRequestId;
+    }
+
+    public void setSvcRequestId(String svcRequestId) {
+        this.svcRequestId = svcRequestId;
+    }
+
+    public String getResponseCode() {
+        return responseCode;
+    }
+
+    public void setResponseCode(String responseCode) {
+        this.responseCode = responseCode;
+    }
+
+    public String getResponseMessage() {
+        return responseMessage;
+    }
+
+    public void setResponseMessage(String responseMessage) {
+        this.responseMessage = responseMessage;
+    }
+
+    public String getAckFinalIndicator() {
+        return ackFinalIndicator;
+    }
+
+    public void setAckFinalIndicator(String ackFinalIndicator) {
+        this.ackFinalIndicator = ackFinalIndicator;
+    }
+
+    public ServiceResponseInformationEntity getServiceResponseInformation() {
+        return serviceResponseInformation;
+    }
+
+    public void setServiceResponseInformation(ServiceResponseInformationEntity serviceResponseInformation) {
+        this.serviceResponseInformation = serviceResponseInformation;
+    }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/main/resources/dmaap.properties b/bpmn/so-bpmn-infrastructure-common/src/main/resources/dmaap.properties
new file mode 100644
index 0000000..a1286b0
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/main/resources/dmaap.properties
@@ -0,0 +1,8 @@
+protocol=http
+uriPathPrefix = events
+eventReadyTopicName=unauthenticated.PNF_READY
+consumerId=consumerId
+consumerGroup=group
+clientThreadDelayInSeconds=5
+
+pnfDefaultTimeout=P14D
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllBPMNTestSuites.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllBPMNTestSuites.java
new file mode 100644
index 0000000..0f77e41
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllBPMNTestSuites.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn;
+import org.junit.runner.RunWith;
+
+import com.googlecode.junittoolbox.SuiteClasses;
+import com.googlecode.junittoolbox.WildcardPatternSuite;
+
+@RunWith(WildcardPatternSuite.class)
+@SuiteClasses({"**/service/*Test.class", "**/process/*Test.class", "**/subprocess/*Test.class"})
+public class AllBPMNTestSuites {
+  // the class remains empty,
+  // used only as a holder for the above annotations
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllTasksTestsTestSuite.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllTasksTestsTestSuite.java
new file mode 100644
index 0000000..57d842f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllTasksTestsTestSuite.java
@@ -0,0 +1,32 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn;
+import org.junit.runner.RunWith;
+
+import com.googlecode.junittoolbox.SuiteClasses;
+import com.googlecode.junittoolbox.WildcardPatternSuite;
+
+@RunWith(WildcardPatternSuite.class)
+@SuiteClasses({"**/tasks/*Test.class","**/infrastructure/aai/*Test.class"})
+public class AllTasksTestsTestSuite {
+  // the class remains empty,
+  // used only as a holder for the above annotations
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllTestsTestSuite.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllTestsTestSuite.java
new file mode 100644
index 0000000..0c0f38c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/AllTestsTestSuite.java
@@ -0,0 +1,35 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn;
+
+import org.junit.runner.RunWith;
+
+import com.googlecode.junittoolbox.SuiteClasses;
+import com.googlecode.junittoolbox.WildcardPatternSuite;
+
+@RunWith(WildcardPatternSuite.class)
+@SuiteClasses({"!**/service/*Test.class", "!**/subprocess/*Test.class", "!**/process/*Test.class", 
+	"!**/tasks/*Test.class", "!**/infrastructure/aai/*Test.class", 
+	"!**/scripts/*Test.class", "**/*Test.class"})
+public class AllTestsTestSuite {
+	// the class remains empty,
+	// used only as a holder for the above annotations
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/BeansTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/BeansTest.java
new file mode 100644
index 0000000..f69521f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/BeansTest.java
@@ -0,0 +1,72 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure;
+
+import org.junit.Test;
+
+import com.openpojo.validation.Validator;
+import com.openpojo.validation.ValidatorBuilder;
+import com.openpojo.validation.rule.impl.GetterMustExistRule;
+import com.openpojo.validation.rule.impl.SetterMustExistRule;
+import com.openpojo.validation.test.impl.GetterTester;
+import com.openpojo.validation.test.impl.SetterTester;
+import com.openpojo.reflection.PojoClass;
+import com.openpojo.reflection.PojoClassFilter;
+import com.openpojo.reflection.filters.FilterEnum;
+import com.openpojo.reflection.filters.FilterNonConcrete;
+import com.openpojo.reflection.filters.FilterPackageInfo;
+
+
+public class BeansTest {
+
+
+	private PojoClassFilter filterTestClasses = new FilterTestClasses();
+	
+	private PojoClassFilter  enumFilter = new FilterEnum();
+	
+
+	@Test
+	public void pojoStructure() {	
+		test("org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity");		
+	}
+
+	private void test(String pojoPackage) {		
+		Validator validator = ValidatorBuilder.create()
+				.with(new GetterMustExistRule())
+				.with(new SetterMustExistRule())
+				
+				.with(new SetterTester())
+				.with(new GetterTester())			 
+				.with(new SetterTester())
+				.with(new GetterTester())	
+						     
+				.build();
+
+
+		validator.validate(pojoPackage, new FilterPackageInfo(), filterTestClasses,enumFilter,new FilterNonConcrete());
+	}
+	
+	private static class FilterTestClasses implements PojoClassFilter {
+		public boolean include(PojoClass pojoClass) {
+			return !pojoClass.getSourcePath().contains("/test-classes/");
+		}
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/WebSecurityConfigImpl.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/WebSecurityConfigImpl.java
new file mode 100644
index 0000000..ad9e210
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/WebSecurityConfigImpl.java
@@ -0,0 +1,52 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure;
+
+import org.onap.so.security.MSOSpringFirewall;
+import org.onap.so.security.WebSecurityConfig;
+import org.springframework.security.config.annotation.web.builders.HttpSecurity;
+import org.springframework.security.config.annotation.web.builders.WebSecurity;
+import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
+import org.springframework.security.web.firewall.StrictHttpFirewall;
+import org.springframework.util.StringUtils;
+
+@EnableWebSecurity
+public class WebSecurityConfigImpl extends WebSecurityConfig {
+
+	@Override
+	protected void configure(HttpSecurity http) throws Exception {
+		http.csrf().disable()
+		.authorizeRequests()
+		.antMatchers("/manage/health","/manage/info").permitAll()
+		.antMatchers("/async/services/**", "/workflow/services/*", "/SDNCAdapterCallbackService", "/WorkflowMessage", "/vnfAdapterNotify", "/vnfAdapterRestNotify")
+		.hasAnyRole(StringUtils.collectionToDelimitedString(getRoles(),",").toString())
+		.and()
+		.httpBasic();
+	}
+	
+	@Override
+	public void configure(WebSecurity web) throws Exception {
+		super.configure(web);
+		StrictHttpFirewall firewall = new MSOSpringFirewall();
+		web.httpFirewall(firewall);
+	}
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAICreateResourcesTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAICreateResourcesTest.java
new file mode 100644
index 0000000..7d3d298
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAICreateResourcesTest.java
@@ -0,0 +1,197 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Matchers.isA;
+import static org.mockito.Mockito.doNothing;
+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.util.HashMap;
+import java.util.Optional;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.mockito.Spy;
+import org.mockito.runners.MockitoJUnitRunner;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
+import org.onap.so.client.aai.AAIObjectType;
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.onap.so.client.aai.entities.AAIResultWrapper;
+import org.onap.so.client.aai.entities.uri.AAIResourceUri;
+import org.onap.so.client.aai.entities.uri.AAIUriFactory;
+
+@RunWith(MockitoJUnitRunner.class)
+public class AAICreateResourcesTest {
+	
+	private AAICreateResources aaiCreateResources;
+	
+	private String projectName;
+	private String serviceInstanceId;
+	private String owningEntityId;
+	private String owningEntityName;
+	private String platformName;
+	private String vnfId;
+	private String lineOfBusiness;
+	private String globalCustomerId;
+	private String serviceType;
+	
+	@Spy
+	private AAIResourcesClient aaiResourcesClient;
+	
+	@Before
+	public void before() {
+		
+		
+		aaiCreateResources = new AAICreateResources();
+		aaiCreateResources.setAaiClient(aaiResourcesClient);
+		
+		projectName = "projectName";
+		serviceInstanceId = "serviceInstanceId";
+		owningEntityId = "owningEntityId";
+		owningEntityName = "owningEntityName";
+		platformName = "platformName";
+		vnfId = "vnfId";
+		lineOfBusiness = "lineOfBusiness";
+		globalCustomerId = "globalCustomerId";
+		serviceType = "serviceType";
+	}
+	
+	@Test
+	public void createAAIProjectTest() {
+		doReturn(aaiResourcesClient).when(aaiResourcesClient).createIfNotExists(isA(AAIResourceUri.class), isA(Optional.class));
+		doNothing().when(aaiResourcesClient).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+		doNothing().when(aaiResourcesClient).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+
+		aaiCreateResources.createAAIProject(projectName, serviceInstanceId);
+		
+		AAIResourceUri projectURI = AAIUriFactory.createResourceUri(AAIObjectType.PROJECT, projectName);
+		
+		verify(aaiResourcesClient, times(1)).createIfNotExists(projectURI, Optional.empty());
+		verify(aaiResourcesClient, times(1)).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+	}
+	
+	@Test
+	public void createAAIOwningEntityTest() {
+		doReturn(aaiResourcesClient).when(aaiResourcesClient).createIfNotExists(isA(AAIResourceUri.class), isA(Optional.class));
+		doNothing().when(aaiResourcesClient).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+		
+		aaiCreateResources.createAAIOwningEntity(owningEntityId, owningEntityName, serviceInstanceId);
+		
+		HashMap<String, String> owningEntityMap = new HashMap<>();
+		owningEntityMap.put("owning-entity-name", owningEntityName);
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		
+		verify(aaiResourcesClient, times(1)).createIfNotExists(owningEntityURI, Optional.of(owningEntityMap));
+		verify(aaiResourcesClient, times(1)).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+	}
+	
+	@Test
+	public void existsOwningEntityTest() {
+		doReturn(true).when(aaiResourcesClient).exists(isA(AAIResourceUri.class));
+		
+		boolean expectedBoolean = aaiCreateResources.existsOwningEntity(owningEntityId);
+		
+		AAIResourceUri owningEntityURI = AAIUriFactory.createResourceUri(AAIObjectType.OWNING_ENTITY, owningEntityId);
+		
+		verify(aaiResourcesClient, times(1)).exists(owningEntityURI);
+		assertTrue(expectedBoolean);
+	}
+	
+	@Test
+	public void connectOwningEntityandServiceInstanceTest() {
+		doNothing().when(aaiResourcesClient).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+		
+		aaiCreateResources.connectOwningEntityandServiceInstance(owningEntityId, serviceInstanceId);
+		
+		verify(aaiResourcesClient, times(1)).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+	}
+	
+	@Test
+	public void createAAIPlatformTest() {
+		doReturn(aaiResourcesClient).when(aaiResourcesClient).createIfNotExists(isA(AAIResourceUri.class), isA(Optional.class));
+		doNothing().when(aaiResourcesClient).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+
+		aaiCreateResources.createAAIPlatform(platformName, vnfId);
+		
+		AAIResourceUri platformURI = AAIUriFactory.createResourceUri(AAIObjectType.PLATFORM, platformName);
+		
+		verify(aaiResourcesClient, times(1)).createIfNotExists(platformURI, Optional.empty());
+		verify(aaiResourcesClient, times(1)).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+	}
+	
+	@Test
+	public void createAAILineOfBusinessTest() {
+		doReturn(aaiResourcesClient).when(aaiResourcesClient).createIfNotExists(isA(AAIResourceUri.class), isA(Optional.class));
+		doNothing().when(aaiResourcesClient).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+
+		aaiCreateResources.createAAILineOfBusiness(lineOfBusiness, vnfId);
+		
+		AAIResourceUri lineOfBusinessURI = AAIUriFactory.createResourceUri(AAIObjectType.LINE_OF_BUSINESS, lineOfBusiness);
+		
+		verify(aaiResourcesClient, times(1)).createIfNotExists(lineOfBusinessURI, Optional.empty());
+		verify(aaiResourcesClient, times(1)).connect(isA(AAIResourceUri.class), isA(AAIResourceUri.class));
+	}
+	
+	@Test
+	public void createAAIServiceInstanceTest() {
+		doReturn(aaiResourcesClient).when(aaiResourcesClient).createIfNotExists(isA(AAIResourceUri.class), isA(Optional.class));
+		
+		aaiCreateResources.createAAIServiceInstance(globalCustomerId, serviceType, serviceInstanceId);
+		
+		AAIResourceUri serviceInstanceURI = AAIUriFactory.createResourceUri(AAIObjectType.SERVICE_INSTANCE, globalCustomerId,serviceType,serviceInstanceId);
+		
+		verify(aaiResourcesClient, times(1)).createIfNotExists(serviceInstanceURI, Optional.empty());
+	}
+	
+	@Test
+	public void getVnfInstanceTest() {
+		AAIResultWrapper aaiResultWrapper = new AAIResultWrapper("vnfUriAaiResponse");
+		
+		doReturn(aaiResultWrapper).when(aaiResourcesClient).get(isA(AAIResourceUri.class));
+		
+		Optional<GenericVnf> actualVnf = aaiCreateResources.getVnfInstance(vnfId);
+		
+		AAIResourceUri vnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId);
+		
+		verify(aaiResourcesClient, times(1)).get(vnfURI);
+		assertEquals(actualVnf, aaiResultWrapper.asBean(GenericVnf.class));
+	}
+	
+	@Test
+	public void getVnfInstanceExceptionTest() {
+		doThrow(Exception.class).when(aaiResourcesClient).get(isA(AAIResourceUri.class));
+		
+		Optional<GenericVnf> actualVnf = aaiCreateResources.getVnfInstance(vnfId);
+		
+		AAIResourceUri vnfURI = AAIUriFactory.createResourceUri(AAIObjectType.GENERIC_VNF, vnfId);
+		
+		verify(aaiResourcesClient, times(1)).get(vnfURI);
+		assertEquals(actualVnf, Optional.empty());
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAIDeleteServiceInstanceTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAIDeleteServiceInstanceTest.java
new file mode 100644
index 0000000..5808a33
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAIDeleteServiceInstanceTest.java
@@ -0,0 +1,84 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+import static org.mockito.Matchers.isA;
+import static org.mockito.Mockito.doNothing;
+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 org.camunda.bpm.engine.delegate.BpmnError;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.onap.so.client.aai.AAIResourcesClient;
+import org.onap.so.client.aai.entities.uri.AAIResourceUri;
+
+public class AAIDeleteServiceInstanceTest  {
+	private AAIDeleteServiceInstance aaiDeleteServiceInstance;
+	@Mock
+	private DelegateExecution execution;
+	
+	@Mock
+	private AAIResourcesClient aaiResourcesClient;
+	
+	@Rule
+	public ExpectedException expectedException = ExpectedException.none();
+	
+	
+	@Before
+	public void before() {
+		MockitoAnnotations.initMocks(this);
+		
+		aaiDeleteServiceInstance = new AAIDeleteServiceInstance();
+		aaiDeleteServiceInstance.setAaiClient(aaiResourcesClient);
+	}
+	
+	@Test
+	public void executeTest() throws Exception {
+		doReturn("serviceInstanceId").when(execution).getVariable("serviceInstanceId");
+		doNothing().when(aaiResourcesClient).delete(isA(AAIResourceUri.class));
+		doNothing().when(execution).setVariable(isA(String.class), isA(Boolean.class));
+		
+		aaiDeleteServiceInstance.execute(execution);
+		
+		verify(execution, times(1)).getVariable("serviceInstanceId");
+		verify(aaiResourcesClient, times(1)).delete(isA(AAIResourceUri.class));
+		verify(execution, times(1)).setVariable("GENDS_SuccessIndicator", true);
+	}
+	
+	@Test
+	public void executeExceptionTest() throws Exception {
+		expectedException.expect(BpmnError.class);
+		
+		doReturn("testProcessKey").when(execution).getVariable("testProcessKey");
+		doReturn("serviceInstanceId").when(execution).getVariable("serviceInstanceId");
+		doThrow(Exception.class).when(aaiResourcesClient).delete(isA(AAIResourceUri.class));
+		
+		aaiDeleteServiceInstance.execute(execution);
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAIServiceInstanceTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAIServiceInstanceTest.java
new file mode 100644
index 0000000..e17d3f8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/aai/AAIServiceInstanceTest.java
@@ -0,0 +1,114 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+
+package org.onap.so.bpmn.infrastructure.aai;
+
+import org.junit.Test;
+
+
+public class AAIServiceInstanceTest {
+
+    AAIServiceInstance test = new AAIServiceInstance("serviceInstanceName","serviceType","serviceRole","orchestrationStatus","modelInvariantUuid","modelVersionId","environmentContext","workloadContext");
+
+    @Test
+    public void getServiceInstanceNameTest() throws Exception {
+        test.getServiceInstanceName();
+    }
+
+    @Test
+    public void setServiceInstanceNameTest() throws Exception {
+        test.setServiceInstanceName("serviceInstanceName");
+    }
+
+    @Test
+    public void getServiceTypeTest() throws Exception {
+        test.getServiceType();
+    }
+
+    @Test
+    public void setServiceTypeTest() throws Exception {
+        test.setServiceType("serviceType");
+    }
+
+
+    @Test
+    public void getServiceRoleTest() throws Exception {
+        test.getServiceRole();
+    }
+
+    @Test
+    public void setServiceRoleTest() throws Exception {
+        test.setServiceRole("serviceRole");
+    }
+
+    @Test
+    public void getOrchestrationStatusTest() throws Exception {
+        test.getOrchestrationStatus();
+    }
+
+    @Test
+    public void setOrchestrationStatusTest() throws Exception {
+        test.setOrchestrationStatus("status");
+    }
+
+    @Test
+    public void getModelInvariantUuidTest() throws Exception {
+        test.getModelInvariantUuid();
+    }
+
+    @Test
+    public void setModelInvariantUuidTest() throws Exception {
+        test.setModelInvariantUuid("uuid");
+    }
+
+    @Test
+    public void getModelVersionIdTest() throws Exception {
+        test.getModelVersionId();
+    }
+
+    @Test
+    public void setModelVersionIdTest() throws Exception {
+        test.setModelVersionId("versionId");
+    }
+
+    @Test
+    public void getEnvironmentContextTest() throws Exception {
+        test.getEnvironmentContext();
+    }
+
+    @Test
+    public void setEnvironmentContextTest() throws Exception {
+        test.setEnvironmentContext("context");
+    }
+
+    @Test
+    public void getWorkloadContextTest() throws Exception {
+        test.getWorkloadContext();
+    }
+
+    @Test
+    public void setWorkloadContextTest() throws Exception {
+        test.setWorkloadContext("context");
+    }
+
+}
+
+
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/common/name/generation/AAIObjectInstanceNameGeneratorTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/common/name/generation/AAIObjectInstanceNameGeneratorTest.java
new file mode 100644
index 0000000..ebcce19
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/common/name/generation/AAIObjectInstanceNameGeneratorTest.java
@@ -0,0 +1,58 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.common.name.generation;
+
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.MockitoAnnotations;
+import org.onap.so.bpmn.infrastructure.common.name.generation.AAIObjectInstanceNameGenerator;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf;
+import org.onap.so.bpmn.servicedecomposition.bbobjects.InstanceGroup;
+import org.onap.so.bpmn.servicedecomposition.modelinfo.ModelInfoInstanceGroup;
+
+
+public class AAIObjectInstanceNameGeneratorTest {
+
+	@Before
+	public void before() {
+	}
+		
+	@Test
+	public void generateInstanceGroupNameTest() throws Exception {
+		
+		ModelInfoInstanceGroup modelVnfc = new ModelInfoInstanceGroup();
+		modelVnfc.setFunction("vre");
+		modelVnfc.setType("VNFC");
+		
+		InstanceGroup instanceGroup = new InstanceGroup();
+		instanceGroup.setId("test-001");
+		instanceGroup.setModelInfoInstanceGroup(modelVnfc);
+		GenericVnf vnf = new GenericVnf();
+		vnf.setVnfId("vnf-123");
+		vnf.setVnfName("test-vnf");
+		
+		assertEquals("test-vnf_vre", new AAIObjectInstanceNameGenerator().generateInstanceGroupName(instanceGroup, vnf));
+	}
+	
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/JsonUtilForCorrelationIdTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/JsonUtilForCorrelationIdTest.java
new file mode 100644
index 0000000..24d1810
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/pnf/dmaap/JsonUtilForCorrelationIdTest.java
@@ -0,0 +1,77 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.pnf.dmaap;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.util.List;
+import org.junit.Test;
+import org.onap.so.bpmn.infrastructure.pnf.dmaap.JsonUtilForCorrelationId;
+
+public class JsonUtilForCorrelationIdTest {
+
+    private static final String JSON_EXAMPLE_WITH_CORRELATION_ID = "[\n"
+            + "    {\n"
+            + "        \"pnfRegistrationFields\" : {\n"
+            + "        \"correlationId\" : \"corrTest1\",\n"
+            + "        \"value\" : \"value1\"\n"
+            + "        }\n"
+            + "    },\n"
+            + "    {\n"
+            + "        \"pnfRegistrationFields\" : {\n"
+            + "        \"correlationId\" : \"corrTest2\",\n"
+            + "        \"value\" : \"value2\"\n"
+            + "        }\n"
+            + "    }\n"
+            + "]";
+
+    private static final String JSON_EXAMPLE_WITH_CORRELATION_ID2 = "{\"pnfRegistrationFields\":{\"correlationId\":\"corrTest3\"}}";
+    private static final String JSON_EXAMPLE_WITH_CORRELATION_ID3 = "[\"{\\\"pnfRegistrationFields\\\":"
+            + "{\\\"correlationId\\\":\\\"corrTest4\\\"}}\", \"{\\\"pnfRegistrationFields\\\":"
+            + "{\\\"correlationId\\\":\\\"corrTest5\\\"}}\"]";
+    private static final String JSON_EXAMPLE_WITH_CORRELATION_ID4 = "{\"header\":{\"key\":\"value\"}}";
+
+    @Test
+    public void parseJsonSuccessful() {
+        List<String> expectedResult = JsonUtilForCorrelationId
+                .parseJsonToGelAllCorrelationId(JSON_EXAMPLE_WITH_CORRELATION_ID);
+        assertThat(expectedResult).containsExactly("corrTest1", "corrTest2");
+
+        List<String> expectedResult2 = JsonUtilForCorrelationId
+                .parseJsonToGelAllCorrelationId(JSON_EXAMPLE_WITH_CORRELATION_ID2);
+        assertThat(expectedResult2).containsExactly("corrTest3");
+    }
+
+    @Test
+    public void parseJsonWithEscapeCharacters_Successful() {
+        List<String> expectedResult = JsonUtilForCorrelationId
+                .parseJsonToGelAllCorrelationId(JSON_EXAMPLE_WITH_CORRELATION_ID3);
+        assertThat(expectedResult).containsExactly("corrTest4", "corrTest5");
+    }
+
+    @Test
+    public void parseJson_emptyListReturnedWhenNothingFound() {
+        List<String> expectedResult = JsonUtilForCorrelationId
+                .parseJsonToGelAllCorrelationId(JSON_EXAMPLE_WITH_CORRELATION_ID4);
+        assertThat(expectedResult).isEmpty();
+    }
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/vfcmodel/VfcModelPojoTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/vfcmodel/VfcModelPojoTest.java
new file mode 100644
index 0000000..239361d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/vfcmodel/VfcModelPojoTest.java
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.vfcmodel;
+
+import org.junit.Test;
+
+import com.openpojo.validation.Validator;
+import com.openpojo.validation.ValidatorBuilder;
+import com.openpojo.validation.rule.impl.NoNestedClassRule;
+import com.openpojo.validation.rule.impl.NoPublicFieldsRule;
+import com.openpojo.validation.test.impl.GetterTester;
+import com.openpojo.validation.test.impl.SetterTester;
+
+public class VfcModelPojoTest {
+	private String packageName = "org.onap.so.bpmn.infrastructure.vfcmodel";
+
+	@Test
+	public void validate() {
+		Validator validator = ValidatorBuilder.create()
+				.with(new NoNestedClassRule())
+				.with(new NoPublicFieldsRule())
+				.with(new SetterTester())
+				.with(new GetterTester())
+				.build();
+		validator.validate(packageName);
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/HeaderUtilTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/HeaderUtilTest.java
new file mode 100644
index 0000000..ca8ec22
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/HeaderUtilTest.java
@@ -0,0 +1,34 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client;
+
+import static org.junit.Assert.assertEquals;
+
+import org.junit.Test;
+
+public class HeaderUtilTest {
+
+    @Test
+    public void getAuthorizationTest() throws Exception {
+    	String authorization = HeaderUtil.getAuthorization(HeaderUtil.USER, HeaderUtil.PASS);
+    	assertEquals("Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==", authorization);
+    }
+
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilderTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilderTest.java
new file mode 100644
index 0000000..828e3fc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/AbstractBuilderTest.java
@@ -0,0 +1,570 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder;
+
+import static org.junit.Assert.assertEquals;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.camunda.bpm.engine.ProcessEngineServices;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.runtime.Incident;
+import org.camunda.bpm.engine.variable.VariableMap;
+import org.camunda.bpm.engine.variable.value.TypedValue;
+import org.camunda.bpm.model.bpmn.BpmnModelInstance;
+import org.camunda.bpm.model.bpmn.instance.FlowElement;
+import org.junit.Test;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder.AbstractBuilder.RequestAction;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder.AbstractBuilder.SvcAction;
+import org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity.ParamEntity;
+import org.onap.so.requestsdb.RequestsDbConstant;
+
+public class AbstractBuilderTest {
+
+    AbstractBuilder<?, ?> abstractBuilder = new AbstractBuilder<Object, Object>() {
+        @Override
+        Object build(DelegateExecution execution, Object input) throws Exception {
+            return null;
+        }
+    };
+
+    DelegateExecution delegateExecution = new DelegateExecution() {
+        private String operType;
+		private String resourceType;
+		private String requestId;
+		
+    	@Override
+        public String getProcessInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getProcessBusinessKey() {
+            return null;
+        }
+
+        @Override
+        public String getProcessDefinitionId() {
+            return null;
+        }
+
+        @Override
+        public String getParentId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentActivityId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentActivityName() {
+            return null;
+        }
+
+        @Override
+        public String getActivityInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getParentActivityInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentTransitionId() {
+            return null;
+        }
+
+        @Override
+        public DelegateExecution getProcessInstance() {
+            return null;
+        }
+
+        @Override
+        public DelegateExecution getSuperExecution() {
+            return null;
+        }
+
+        @Override
+        public boolean isCanceled() {
+            return false;
+        }
+
+        @Override
+        public String getTenantId() {
+            return null;
+        }
+
+        @Override
+        public void setVariable(String s, Object o, String s1) {
+
+        }
+
+        @Override
+        public Incident createIncident(String s, String s1) {
+            return null;
+        }
+
+        @Override
+        public Incident createIncident(String s, String s1, String s2) {
+            return null;
+        }
+
+        @Override
+        public void resolveIncident(String s) {
+
+        }
+
+        @Override
+        public String getId() {
+            return null;
+        }
+
+        @Override
+        public String getEventName() {
+            return null;
+        }
+
+        @Override
+        public String getBusinessKey() {
+            return null;
+        }
+
+        @Override
+        public BpmnModelInstance getBpmnModelInstance() {
+            return null;
+        }
+
+        @Override
+        public FlowElement getBpmnModelElementInstance() {
+            return null;
+        }
+
+        @Override
+        public ProcessEngineServices getProcessEngineServices() {
+            return null;
+        }
+
+        @Override
+        public String getVariableScopeKey() {
+            return null;
+        }
+
+        @Override
+        public Map<String, Object> getVariables() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesTyped() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesTyped(boolean b) {
+            return null;
+        }
+
+        @Override
+        public Map<String, Object> getVariablesLocal() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesLocalTyped() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesLocalTyped(boolean b) {
+            return null;
+        }
+
+        @Override
+        public Object getVariable(String s) {
+        	if (AbstractBuilder.OPERATION_TYPE.equals(s)) {
+        		return operType;
+        	} else if (AbstractBuilder.RESOURCE_TYPE.equals(s)) {
+        		return resourceType;
+        	} else if ("msoRequestId".equals(s)) {
+        		return requestId;
+        	}
+        	return null;
+        }
+
+        @Override
+        public Object getVariableLocal(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableTyped(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableTyped(String s, boolean b) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableLocalTyped(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableLocalTyped(String s, boolean b) {
+            return null;
+        }
+
+        @Override
+        public Set<String> getVariableNames() {
+            return null;
+        }
+
+        @Override
+        public Set<String> getVariableNamesLocal() {
+            return null;
+        }
+
+        @Override
+        public void setVariable(String s, Object o) {
+        	if (AbstractBuilder.OPERATION_TYPE.equals(s)) {
+        		operType = (String) o;
+        	} else if (AbstractBuilder.RESOURCE_TYPE.equals(s)) {
+        		resourceType = (String) o;
+        	} else if ("msoRequestId".equals(s)) {
+        		requestId = (String) o;
+        	}
+        }
+
+        @Override
+        public void setVariableLocal(String s, Object o) {
+
+        }
+
+        @Override
+        public void setVariables(Map<String, ?> map) {
+
+        }
+
+        @Override
+        public void setVariablesLocal(Map<String, ?> map) {
+
+        }
+
+        @Override
+        public boolean hasVariables() {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariablesLocal() {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariable(String s) {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariableLocal(String s) {
+            return false;
+        }
+
+        @Override
+        public void removeVariable(String s) {
+
+        }
+
+        @Override
+        public void removeVariableLocal(String s) {
+
+        }
+
+        @Override
+        public void removeVariables(Collection<String> collection) {
+
+        }
+
+        @Override
+        public void removeVariablesLocal(Collection<String> collection) {
+
+        }
+
+        @Override
+        public void removeVariables() {
+
+        }
+
+        @Override
+        public void removeVariablesLocal() {
+
+        }
+    };
+
+    @Test
+    public void requestActionGetIntValueTest() {
+    	assertEquals(0, RequestAction.CREATE_NETWORK_INSTANCE.getIntValue());
+    }
+    
+    @Test
+    public void svcActionGetIntValueTest() {
+    	assertEquals(0, SvcAction.RESERVE.getIntValue());
+    }
+    
+    @Test
+    public void buildTest() throws Exception {
+        abstractBuilder.build(null, null);
+    }
+
+    @Test
+    public void getRequestActionBlankOperationTypeTest() throws Exception {
+        assertEquals(AbstractBuilder.RequestAction.CREATE_NETWORK_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionDeleteOperationTypeBlankResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "");
+    	assertEquals(AbstractBuilder.RequestAction.DELETE_SERVICE_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionDeleteOperationTypeBadResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "bad");
+    	assertEquals(AbstractBuilder.RequestAction.DELETE_SERVICE_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionDeleteOperationTypeOverlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "overlay");
+    	assertEquals(AbstractBuilder.RequestAction.DEACTIVATE_DCI_NETWORK_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionDeleteOperationTypeUnderlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "underlay");
+    	assertEquals(AbstractBuilder.RequestAction.DELETE_NETWORK_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionDeleteOperationTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	assertEquals(AbstractBuilder.RequestAction.DELETE_SERVICE_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+       
+    @Test
+    public void getRequestActionCreateOperationTypeBlankResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "");
+    	assertEquals(AbstractBuilder.RequestAction.CREATE_SERVICE_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionCreateOperationTypeBadResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "bad");
+    	assertEquals(AbstractBuilder.RequestAction.CREATE_SERVICE_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionCreateOperationTypeOverlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "overlay");
+    	assertEquals(AbstractBuilder.RequestAction.ACTIVATE_DCI_NETWORK_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionCreateOperationTypeUnderlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "underlay");
+    	assertEquals(AbstractBuilder.RequestAction.CREATE_NETWORK_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionCreateOperationTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	assertEquals(AbstractBuilder.RequestAction.CREATE_SERVICE_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestActionBadOperationType() {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, "bad");
+    	assertEquals(AbstractBuilder.RequestAction.CREATE_NETWORK_INSTANCE.getName(), abstractBuilder.getRequestAction(delegateExecution));
+    }
+
+    @Test
+    public void getSvcActionBlankOperationTypeTest() throws Exception {
+        assertEquals(AbstractBuilder.SvcAction.CREATE.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionDeleteOperationTypeBlankResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "");
+    	assertEquals(AbstractBuilder.SvcAction.UNASSIGN.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionDeleteOperationTypeBadResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "bad");
+    	assertEquals(AbstractBuilder.SvcAction.UNASSIGN.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionDeleteOperationTypeOverlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "overlay");
+    	assertEquals(AbstractBuilder.SvcAction.DEACTIVATE.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionDeleteOperationTypeUnderlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "underlay");
+    	assertEquals(AbstractBuilder.SvcAction.DELETE.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionDeleteOperationTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.DELETE);
+    	assertEquals(AbstractBuilder.SvcAction.UNASSIGN.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+       
+    @Test
+    public void getSvcActionCreateOperationTypeBlankResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "");
+    	assertEquals(AbstractBuilder.SvcAction.ASSIGN.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionCreateOperationTypeBadResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "bad");
+    	assertEquals(AbstractBuilder.SvcAction.ASSIGN.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionCreateOperationTypeOverlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "overlay");
+    	assertEquals(AbstractBuilder.SvcAction.ACTIVATE.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionCreateOperationTypeUnderlayResourceTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	delegateExecution.setVariable(AbstractBuilder.RESOURCE_TYPE, "underlay");
+    	assertEquals(AbstractBuilder.SvcAction.CREATE.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionCreateOperationTypeTest() throws Exception {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, RequestsDbConstant.OperationType.CREATE);
+    	assertEquals(AbstractBuilder.SvcAction.ASSIGN.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+    
+    @Test
+    public void getSvcActionBadOperationType() {
+    	delegateExecution.setVariable(AbstractBuilder.OPERATION_TYPE, "bad");
+    	assertEquals(AbstractBuilder.SvcAction.CREATE.getName(), abstractBuilder.getSvcAction(delegateExecution));
+    }
+
+    @Test
+    public void getRequestIdBlankNotOnExecutionTest() {
+    	abstractBuilder.getRequestId(delegateExecution);
+    }
+    
+    @Test
+    public void getRequestIdBlankOnExecutionTest() {
+    	String expected = "requestId";
+    	delegateExecution.setVariable("msoRequestId", expected);
+    	assertEquals(expected, abstractBuilder.getRequestId(delegateExecution));
+    }
+    
+    @Test
+    public void getRequestIdTest() {
+    	String expected = "requestId";
+    	abstractBuilder.requestId = expected;
+    	assertEquals(expected, abstractBuilder.getRequestId(delegateExecution));
+    }
+
+    @Test
+    public void getOnapServiceModelInformationEntityTest() throws Exception {
+        abstractBuilder.getOnapServiceModelInformationEntity(delegateExecution);
+    }
+
+    @Test
+    public void getOnapNetworkModelInformationEntityTest() throws Exception {
+        abstractBuilder.getOnapNetworkModelInformationEntity(delegateExecution);
+    }
+
+    @Test
+    public void getParamEntitiesTest() throws Exception {
+    	Map<String, String> inputs = new HashMap<>();
+    	inputs.put("foo", "bar");
+        List<ParamEntity> list = abstractBuilder.getParamEntities(inputs);
+        assertEquals(1, list.size());
+        assertEquals("foo", list.get(0).getName());
+        assertEquals("bar", list.get(0).getValue());
+    }
+    
+    @Test
+    public void getParamEntitiesNullInputsTest() {
+    	List<ParamEntity> list = abstractBuilder.getParamEntities(null);
+    	assertEquals(0, list.size());
+    }
+    
+    @Test
+    public void getParamEntitiesEmptyInputsTest() {
+    	List<ParamEntity> list = abstractBuilder.getParamEntities(new HashMap<>());
+    	assertEquals(0, list.size());
+    }
+
+    @Test
+    public void getRequestInformationEntityTest() throws Exception {
+        abstractBuilder.getRequestInformationEntity(delegateExecution);
+    }
+
+    @Test
+    public void getServiceInformationEntityTest() throws Exception {
+        abstractBuilder.getServiceInformationEntity(delegateExecution);
+    }
+
+    @Test
+    public void getServiceInstanceNameTest() throws Exception {
+        abstractBuilder.getServiceInstanceName(delegateExecution);
+    }
+
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkRpcInputEntityBuilderTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkRpcInputEntityBuilderTest.java
new file mode 100644
index 0000000..f7d73a3
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/NetworkRpcInputEntityBuilderTest.java
@@ -0,0 +1,323 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder;
+
+import java.util.Collection;
+import java.util.Map;
+import java.util.Set;
+
+import org.camunda.bpm.engine.ProcessEngineServices;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.runtime.Incident;
+import org.camunda.bpm.engine.variable.VariableMap;
+import org.camunda.bpm.engine.variable.value.TypedValue;
+import org.camunda.bpm.model.bpmn.BpmnModelInstance;
+import org.camunda.bpm.model.bpmn.instance.FlowElement;
+import org.junit.Test;
+
+public class NetworkRpcInputEntityBuilderTest {
+	NetworkRpcInputEntityBuilder networRpcInputEntityBuilder = new NetworkRpcInputEntityBuilder();
+	
+	DelegateExecution delegateExecution = new DelegateExecution() {
+        private String operType;
+		private String resourceType;
+		private String requestId;
+		
+    	@Override
+        public String getProcessInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getProcessBusinessKey() {
+            return null;
+        }
+
+        @Override
+        public String getProcessDefinitionId() {
+            return null;
+        }
+
+        @Override
+        public String getParentId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentActivityId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentActivityName() {
+            return null;
+        }
+
+        @Override
+        public String getActivityInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getParentActivityInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentTransitionId() {
+            return null;
+        }
+
+        @Override
+        public DelegateExecution getProcessInstance() {
+            return null;
+        }
+
+        @Override
+        public DelegateExecution getSuperExecution() {
+            return null;
+        }
+
+        @Override
+        public boolean isCanceled() {
+            return false;
+        }
+
+        @Override
+        public String getTenantId() {
+            return null;
+        }
+
+        @Override
+        public void setVariable(String s, Object o, String s1) {
+
+        }
+
+        @Override
+        public Incident createIncident(String s, String s1) {
+            return null;
+        }
+
+        @Override
+        public Incident createIncident(String s, String s1, String s2) {
+            return null;
+        }
+
+        @Override
+        public void resolveIncident(String s) {
+
+        }
+
+        @Override
+        public String getId() {
+            return null;
+        }
+
+        @Override
+        public String getEventName() {
+            return null;
+        }
+
+        @Override
+        public String getBusinessKey() {
+            return null;
+        }
+
+        @Override
+        public BpmnModelInstance getBpmnModelInstance() {
+            return null;
+        }
+
+        @Override
+        public FlowElement getBpmnModelElementInstance() {
+            return null;
+        }
+
+        @Override
+        public ProcessEngineServices getProcessEngineServices() {
+            return null;
+        }
+
+        @Override
+        public String getVariableScopeKey() {
+            return null;
+        }
+
+        @Override
+        public Map<String, Object> getVariables() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesTyped() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesTyped(boolean b) {
+            return null;
+        }
+
+        @Override
+        public Map<String, Object> getVariablesLocal() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesLocalTyped() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesLocalTyped(boolean b) {
+            return null;
+        }
+
+        @Override
+        public Object getVariable(String s) {
+        	if (AbstractBuilder.OPERATION_TYPE.equals(s)) {
+        		return operType;
+        	} else if (AbstractBuilder.RESOURCE_TYPE.equals(s)) {
+        		return resourceType;
+        	} else if ("msoRequestId".equals(s)) {
+        		return requestId;
+        	}
+        	return null;
+        }
+
+        @Override
+        public Object getVariableLocal(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableTyped(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableTyped(String s, boolean b) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableLocalTyped(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableLocalTyped(String s, boolean b) {
+            return null;
+        }
+
+        @Override
+        public Set<String> getVariableNames() {
+            return null;
+        }
+
+        @Override
+        public Set<String> getVariableNamesLocal() {
+            return null;
+        }
+
+        @Override
+        public void setVariable(String s, Object o) {
+        	if (AbstractBuilder.OPERATION_TYPE.equals(s)) {
+        		operType = (String) o;
+        	} else if (AbstractBuilder.RESOURCE_TYPE.equals(s)) {
+        		resourceType = (String) o;
+        	} else if ("msoRequestId".equals(s)) {
+        		requestId = (String) o;
+        	}
+        }
+
+        @Override
+        public void setVariableLocal(String s, Object o) {
+
+        }
+
+        @Override
+        public void setVariables(Map<String, ?> map) {
+
+        }
+
+        @Override
+        public void setVariablesLocal(Map<String, ?> map) {
+
+        }
+
+        @Override
+        public boolean hasVariables() {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariablesLocal() {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariable(String s) {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariableLocal(String s) {
+            return false;
+        }
+
+        @Override
+        public void removeVariable(String s) {
+
+        }
+
+        @Override
+        public void removeVariableLocal(String s) {
+
+        }
+
+        @Override
+        public void removeVariables(Collection<String> collection) {
+
+        }
+
+        @Override
+        public void removeVariablesLocal(Collection<String> collection) {
+
+        }
+
+        @Override
+        public void removeVariables() {
+
+        }
+
+        @Override
+        public void removeVariablesLocal() {
+
+        }
+    };
+
+	@Test
+	public void buildTest() {
+		networRpcInputEntityBuilder.build(delegateExecution, null);
+	}
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/ServiceRpcInputEntityBuilderTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/ServiceRpcInputEntityBuilderTest.java
new file mode 100644
index 0000000..4db0421
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/builder/ServiceRpcInputEntityBuilderTest.java
@@ -0,0 +1,323 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.builder;
+
+import java.util.Collection;
+import java.util.Map;
+import java.util.Set;
+
+import org.camunda.bpm.engine.ProcessEngineServices;
+import org.camunda.bpm.engine.delegate.DelegateExecution;
+import org.camunda.bpm.engine.runtime.Incident;
+import org.camunda.bpm.engine.variable.VariableMap;
+import org.camunda.bpm.engine.variable.value.TypedValue;
+import org.camunda.bpm.model.bpmn.BpmnModelInstance;
+import org.camunda.bpm.model.bpmn.instance.FlowElement;
+import org.junit.Test;
+
+public class ServiceRpcInputEntityBuilderTest {
+	ServiceRpcInputEntityBuilder serviceRpcInputEntityBuilder = new ServiceRpcInputEntityBuilder();
+	
+	DelegateExecution delegateExecution = new DelegateExecution() {
+        private String operType;
+		private String resourceType;
+		private String requestId;
+		
+    	@Override
+        public String getProcessInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getProcessBusinessKey() {
+            return null;
+        }
+
+        @Override
+        public String getProcessDefinitionId() {
+            return null;
+        }
+
+        @Override
+        public String getParentId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentActivityId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentActivityName() {
+            return null;
+        }
+
+        @Override
+        public String getActivityInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getParentActivityInstanceId() {
+            return null;
+        }
+
+        @Override
+        public String getCurrentTransitionId() {
+            return null;
+        }
+
+        @Override
+        public DelegateExecution getProcessInstance() {
+            return null;
+        }
+
+        @Override
+        public DelegateExecution getSuperExecution() {
+            return null;
+        }
+
+        @Override
+        public boolean isCanceled() {
+            return false;
+        }
+
+        @Override
+        public String getTenantId() {
+            return null;
+        }
+
+        @Override
+        public void setVariable(String s, Object o, String s1) {
+
+        }
+
+        @Override
+        public Incident createIncident(String s, String s1) {
+            return null;
+        }
+
+        @Override
+        public Incident createIncident(String s, String s1, String s2) {
+            return null;
+        }
+
+        @Override
+        public void resolveIncident(String s) {
+
+        }
+
+        @Override
+        public String getId() {
+            return null;
+        }
+
+        @Override
+        public String getEventName() {
+            return null;
+        }
+
+        @Override
+        public String getBusinessKey() {
+            return null;
+        }
+
+        @Override
+        public BpmnModelInstance getBpmnModelInstance() {
+            return null;
+        }
+
+        @Override
+        public FlowElement getBpmnModelElementInstance() {
+            return null;
+        }
+
+        @Override
+        public ProcessEngineServices getProcessEngineServices() {
+            return null;
+        }
+
+        @Override
+        public String getVariableScopeKey() {
+            return null;
+        }
+
+        @Override
+        public Map<String, Object> getVariables() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesTyped() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesTyped(boolean b) {
+            return null;
+        }
+
+        @Override
+        public Map<String, Object> getVariablesLocal() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesLocalTyped() {
+            return null;
+        }
+
+        @Override
+        public VariableMap getVariablesLocalTyped(boolean b) {
+            return null;
+        }
+
+        @Override
+        public Object getVariable(String s) {
+        	if (AbstractBuilder.OPERATION_TYPE.equals(s)) {
+        		return operType;
+        	} else if (AbstractBuilder.RESOURCE_TYPE.equals(s)) {
+        		return resourceType;
+        	} else if ("msoRequestId".equals(s)) {
+        		return requestId;
+        	}
+        	return null;
+        }
+
+        @Override
+        public Object getVariableLocal(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableTyped(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableTyped(String s, boolean b) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableLocalTyped(String s) {
+            return null;
+        }
+
+        @Override
+        public <T extends TypedValue> T getVariableLocalTyped(String s, boolean b) {
+            return null;
+        }
+
+        @Override
+        public Set<String> getVariableNames() {
+            return null;
+        }
+
+        @Override
+        public Set<String> getVariableNamesLocal() {
+            return null;
+        }
+
+        @Override
+        public void setVariable(String s, Object o) {
+        	if (AbstractBuilder.OPERATION_TYPE.equals(s)) {
+        		operType = (String) o;
+        	} else if (AbstractBuilder.RESOURCE_TYPE.equals(s)) {
+        		resourceType = (String) o;
+        	} else if ("msoRequestId".equals(s)) {
+        		requestId = (String) o;
+        	}
+        }
+
+        @Override
+        public void setVariableLocal(String s, Object o) {
+
+        }
+
+        @Override
+        public void setVariables(Map<String, ?> map) {
+
+        }
+
+        @Override
+        public void setVariablesLocal(Map<String, ?> map) {
+
+        }
+
+        @Override
+        public boolean hasVariables() {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariablesLocal() {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariable(String s) {
+            return false;
+        }
+
+        @Override
+        public boolean hasVariableLocal(String s) {
+            return false;
+        }
+
+        @Override
+        public void removeVariable(String s) {
+
+        }
+
+        @Override
+        public void removeVariableLocal(String s) {
+
+        }
+
+        @Override
+        public void removeVariables(Collection<String> collection) {
+
+        }
+
+        @Override
+        public void removeVariablesLocal(Collection<String> collection) {
+
+        }
+
+        @Override
+        public void removeVariables() {
+
+        }
+
+        @Override
+        public void removeVariablesLocal() {
+
+        }
+    };
+
+	@Test
+	public void buildTest() throws Exception {
+		serviceRpcInputEntityBuilder.build(delegateExecution, null);
+	}
+
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ClientEntityPojoTest.java b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ClientEntityPojoTest.java
new file mode 100644
index 0000000..c8949ce
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/java/org/onap/so/bpmn/infrastructure/workflow/serviceTask/client/entity/ClientEntityPojoTest.java
@@ -0,0 +1,76 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2017 - 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.so.bpmn.infrastructure.workflow.serviceTask.client.entity;
+
+import org.junit.Test;
+
+import com.openpojo.reflection.PojoClass;
+import com.openpojo.reflection.impl.PojoClassFactory;
+import com.openpojo.validation.Validator;
+import com.openpojo.validation.ValidatorBuilder;
+import com.openpojo.validation.rule.impl.GetterMustExistRule;
+import com.openpojo.validation.rule.impl.NoNestedClassRule;
+import com.openpojo.validation.rule.impl.NoPrimitivesRule;
+import com.openpojo.validation.rule.impl.NoPublicFieldsRule;
+import com.openpojo.validation.rule.impl.SetterMustExistRule;
+import com.openpojo.validation.test.impl.DefaultValuesNullTester;
+import com.openpojo.validation.test.impl.GetterTester;
+import com.openpojo.validation.test.impl.SetterTester;
+
+public class ClientEntityPojoTest {
+	@Test
+	public void pojoStructure() {
+		test(PojoClassFactory.getPojoClass(NetworkInformationEntity.class));
+		test(PojoClassFactory.getPojoClass(NetworkInputParametersEntity.class));
+		test(PojoClassFactory.getPojoClass(NetworkRequestInputEntity.class));
+		test(PojoClassFactory.getPojoClass(NetworkResponseInformationEntity.class));
+		test(PojoClassFactory.getPojoClass(NetworkTopologyOperationInputEntity.class));
+		test(PojoClassFactory.getPojoClass(NetworkTopologyOperationOutputEntity.class));
+		test(PojoClassFactory.getPojoClass(OnapModelInformationEntity.class));
+		test(PojoClassFactory.getPojoClass(ParamEntity.class));
+		test(PojoClassFactory.getPojoClass(RequestInformationEntity.class));
+		test(PojoClassFactory.getPojoClass(RpcNetworkTopologyOperationInputEntity.class));
+		test(PojoClassFactory.getPojoClass(SdncRequestHeaderEntity.class));
+		test(PojoClassFactory.getPojoClass(RpcServiceTopologyOperationInputEntity.class));
+		test(PojoClassFactory.getPojoClass(RpcServiceTopologyOperationOutputEntity.class));
+		test(PojoClassFactory.getPojoClass(ServiceInformationEntity.class));
+		test(PojoClassFactory.getPojoClass(ServiceInputParametersEntity.class));
+		test(PojoClassFactory.getPojoClass(ServiceRequestInputEntity.class));
+		test(PojoClassFactory.getPojoClass(ServiceResponseInformationEntity.class));
+		test(PojoClassFactory.getPojoClass(ServiceTopologyOperationInputEntity.class));
+		test(PojoClassFactory.getPojoClass(ServiceTopologyOperationOutputEntity.class));
+		test(PojoClassFactory.getPojoClass(RpcNetworkTopologyOperationOutputEntity.class));
+	}
+	
+	private void test(PojoClass pojoClass) {
+		Validator validator = ValidatorBuilder.create()
+				.with(new GetterMustExistRule())
+				.with(new SetterMustExistRule())
+				.with(new NoNestedClassRule())
+				.with(new NoPrimitivesRule())
+				.with(new NoPublicFieldsRule())
+				.with(new SetterTester())
+				.with(new GetterTester())
+				.with(new DefaultValuesNullTester())
+				.build();
+		validator.validate(pojoClass);
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/CreateSiSample.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/CreateSiSample.json
new file mode 100644
index 0000000..c824213
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/CreateSiSample.json
@@ -0,0 +1,72 @@
+{
+	"variables": {
+		"bpmnRequest": {
+			"value": "{\n  \"requestDetails\": {\n    \"cloudConfiguration\": {\n      \"lcpCloudRegionId\": \"mtn6\", \n      \"tenantId\": \"0422ffb57ba042c0800a29dc85ca70f8\"\n    }, \n    \"modelInfo\": {\n      \"modelInvariantUuid\": \"52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f\", \n      \"modelName\": \"MSO Test Network\", \n      \"modelType\": \"service\", \n      \"modelUuid\": \"aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e\", \n      \"modelVersion\": \"1.0\"\n    }, \n    \"owningEntity\": {\n      \"owningEntityId\": \"123459af-0427-42c2-9d15-971b99b12345\", \n      \"owningEntityName\": \"vSAMP10a Entity-200\"\n    }, \n    \"project\": {\n      \"projectName\": \"vSAMP10a Project-3\"\n    }, \n    \"requestInfo\": {\n      \"instanceName\": \"MSO-DEV-SI-1802-v6-2-19-10\", \n      \"requestorId\": \"xxxxxx\", \n      \"source\": \"VID\", \n      \"suppressRollback\": false\n    }, \n    \"requestParameters\": {\n      \"aLaCarte\": true, \n      \"subscriptionServiceType\": \"MSO-dev-service-type\", \n      \"userParams\": [\n        {\n          \"name\": \"someUserParam\", \n          \"value\": \"someValue\"\n        }\n      ]\n    }, \n    \"subscriberInfo\": {\n      \"globalSubscriberId\": \"MSO_1610_dev\", \n      \"subscriberName\": \"MSO_1610_dev\"\n    }\n  }\n}\n",
+			"type": "String"
+		},
+		"requestId": {
+			"value": "6dd20050-76ee-418f-a153-50720a8f3286",
+			"type": "String"
+		},
+		"mso-request-id": {
+			"value": "6dd20050-76ee-418f-a153-50720a8f3286",
+			"type": "String"
+		},
+		"isBaseVfModule": {
+			"value": false,
+			"type": "Boolean"
+		},
+		"recipeTimeout": {
+			"value": 180,
+			"type": "Integer"
+		},
+		"requestAction": {
+			"value": "createInstance",
+			"type": "String"
+		},
+		"serviceInstanceId": {
+			"value": "",
+			"type": "String"
+		},
+		"vnfId": {
+			"value": "",
+			"type": "String"
+		},
+		"vfModuleId": {
+			"value": "",
+			"type": "String"
+		},
+		"volumeGroupId": {
+			"value": "",
+			"type": "String"
+		},
+		"networkId": {
+			"value": "",
+			"type": "String"
+		},
+		"configurationId": {
+			"value": "",
+			"type": "String"
+		},
+		"serviceType": {
+			"value": "",
+			"type": "String"
+		},
+		"vnfType": {
+			"value": "",
+			"type": "String"
+		},
+		"vfModuleType": {
+			"value": "",
+			"type": "String"
+		},
+		"networkType": {
+			"value": "",
+			"type": "String"
+		},
+		"host": {
+			"value": "localhost",
+			"type": "String"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceBRG.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceBRG.bpmn
new file mode 100644
index 0000000..b33aad7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceBRG.bpmn
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_DkzPAHB4EeaJwpcpVN5gXw" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="DoCreateAllottedResourceBRG" name="DoCreateAllottedResourceBRG" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1">
+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="initialization" />
+    <bpmn2:scriptTask id="initialization" name="set rollbackData">
+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_1v2f9n5</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[#{execution.setVariable("rollbackData", true)}]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:endEvent id="EndEvent_1">
+      <bpmn2:incoming>SequenceFlow_1v2f9n5</bpmn2:incoming>
+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_2" />
+    </bpmn2:endEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_1v2f9n5" sourceRef="initialization" targetRef="EndEvent_1" />
+  </bpmn2:process>
+  <bpmn2:error id="Error_1" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmn2:error id="Error_2" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateAllottedResourceBRG">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_68" bpmnElement="StartEvent_1">
+        <dc:Bounds x="-91" y="222" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-73" y="263" width="0" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_285" bpmnElement="initialization">
+        <dc:Bounds x="35" y="200" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_68" targetElement="_BPMNShape_ScriptTask_285">
+        <di:waypoint xsi:type="dc:Point" x="-55" y="240" />
+        <di:waypoint xsi:type="dc:Point" x="35" y="241" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-55" y="225.5" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_225" bpmnElement="EndEvent_1">
+        <dc:Bounds x="235" y="222" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="208" y="263" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1v2f9n5_di" bpmnElement="SequenceFlow_1v2f9n5">
+        <di:waypoint xsi:type="dc:Point" x="135" y="240" />
+        <di:waypoint xsi:type="dc:Point" x="235" y="240" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="140" y="219" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceBRGRollback.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceBRGRollback.bpmn
new file mode 100644
index 0000000..807efae
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceBRGRollback.bpmn
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_DkzPAHB4EeaJwpcpVN5gXw" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="DoCreateAllottedResourceBRGRollback" name="DoCreateAllottedResourceBRGRollback" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1">
+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_03yvb82" />
+    <bpmn2:endEvent id="EndEvent_1sn21jr">
+      <bpmn2:incoming>SequenceFlow_1epm19d</bpmn2:incoming>
+    </bpmn2:endEvent>
+    <bpmn2:scriptTask id="ScriptTask_03yvb82" name="set Success">
+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_1epm19d</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[#{execution.setVariable("rolledBack", true)}]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_1epm19d" sourceRef="ScriptTask_03yvb82" targetRef="EndEvent_1sn21jr" />
+  </bpmn2:process>
+  <bpmn2:error id="Error_1" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmn2:error id="Error_2" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateAllottedResourceBRGRollback">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_68" bpmnElement="StartEvent_1">
+        <dc:Bounds x="66" y="392" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="84" y="433" width="0" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_68" targetElement="ScriptTask_03yvb82_di">
+        <di:waypoint xsi:type="dc:Point" x="101" y="412" />
+        <di:waypoint xsi:type="dc:Point" x="207" y="410" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="109" y="396" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="EndEvent_1sn21jr_di" bpmnElement="EndEvent_1sn21jr">
+        <dc:Bounds x="413" y="392" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="386" y="432" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_03yvb82_di" bpmnElement="ScriptTask_03yvb82">
+        <dc:Bounds x="207" y="370" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1epm19d_di" bpmnElement="SequenceFlow_1epm19d">
+        <di:waypoint xsi:type="dc:Point" x="307" y="410" />
+        <di:waypoint xsi:type="dc:Point" x="377" y="410" />
+        <di:waypoint xsi:type="dc:Point" x="377" y="410" />
+        <di:waypoint xsi:type="dc:Point" x="413" y="410" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="392" y="404" width="0" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceTXC.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceTXC.bpmn
new file mode 100644
index 0000000..b2f280d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateAllottedResourceTXC.bpmn
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_DkzPAHB4EeaJwpcpVN5gXw" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="DoCreateAllottedResourceTXC" name="DoCreateAllottedResourceTXC" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1">
+      <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_1" targetRef="EndEvent_1" />
+    <bpmn2:endEvent id="EndEvent_1">
+      <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
+      <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" errorRef="Error_2" />
+    </bpmn2:endEvent>
+  </bpmn2:process>
+  <bpmn2:error id="Error_1" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmn2:error id="Error_2" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateAllottedResourceTXC">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_68" bpmnElement="StartEvent_1">
+        <dc:Bounds x="-91" y="222" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-73" y="263" width="0" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_68" targetElement="_BPMNShape_EndEvent_225">
+        <di:waypoint xsi:type="dc:Point" x="-55" y="240" />
+        <di:waypoint xsi:type="dc:Point" x="139" y="240" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-3" y="225" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_225" bpmnElement="EndEvent_1">
+        <dc:Bounds x="139" y="222" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="112" y="263" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateServiceInstanceRollback.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateServiceInstanceRollback.bpmn
new file mode 100644
index 0000000..532ca86
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateServiceInstanceRollback.bpmn
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_MagIIMOUEeW8asg-vCEgWQ" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="DoCreateServiceInstanceRollback" name="DoCreateServiceInstanceRollback" isExecutable="true">
+    <bpmn2:startEvent id="createSIRollback_startEvent" name="Start Flow">
+      <bpmn2:outgoing>SequenceFlow_1ipu8um</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:endEvent id="EndEvent_3">
+      <bpmn2:incoming>SequenceFlow_1l4c4k0</bpmn2:incoming>
+    </bpmn2:endEvent>
+    <bpmn2:scriptTask id="ScriptTask_05ltxyj" name="set Success">
+      <bpmn2:incoming>SequenceFlow_1ipu8um</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_1l4c4k0</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[#{execution.setVariable("rolledBack", true)}]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_1ipu8um" sourceRef="createSIRollback_startEvent" targetRef="ScriptTask_05ltxyj" />
+    <bpmn2:sequenceFlow id="SequenceFlow_1l4c4k0" sourceRef="ScriptTask_05ltxyj" targetRef="EndEvent_3" />
+  </bpmn2:process>
+  <bpmn2:error id="Error_2" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
+  <bpmn2:error id="Error_1" name="java.lang.Exception" errorCode="java.lang.Exception" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateServiceInstanceRollback">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="createSIRollback_startEvent">
+        <dc:Bounds x="151" y="79" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="146" y="120" width="48" height="14" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="_BPMNShape_EndEvent_177" bpmnElement="EndEvent_3">
+        <dc:Bounds x="484" y="79" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="457" y="120" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="ScriptTask_05ltxyj_di" bpmnElement="ScriptTask_05ltxyj">
+        <dc:Bounds x="287" y="57" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1ipu8um_di" bpmnElement="SequenceFlow_1ipu8um">
+        <di:waypoint xsi:type="dc:Point" x="187" y="97" />
+        <di:waypoint xsi:type="dc:Point" x="287" y="97" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="237" y="76" width="0" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_1l4c4k0_di" bpmnElement="SequenceFlow_1l4c4k0">
+        <di:waypoint xsi:type="dc:Point" x="387" y="97" />
+        <di:waypoint xsi:type="dc:Point" x="484" y="97" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="435.5" y="76" width="0" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateVnfAndModules.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateVnfAndModules.bpmn
new file mode 100644
index 0000000..5e4400e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateVnfAndModules.bpmn
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0">
+  <bpmn:process id="DoCreateVnfAndModules" name="DoCreateVnfAndModules" isExecutable="true">
+    <bpmn:startEvent id="StartEvent_1">
+      <bpmn:outgoing>SequenceFlow_11sp3s9</bpmn:outgoing>
+    </bpmn:startEvent>
+    <bpmn:sequenceFlow id="SequenceFlow_11sp3s9" sourceRef="StartEvent_1" targetRef="ScriptTask_0y5wsgy" />
+    <bpmn:scriptTask id="ScriptTask_0y5wsgy" name="set rollbackData">
+      <bpmn:incoming>SequenceFlow_11sp3s9</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_0q1lfmf</bpmn:outgoing>
+      <bpmn:script><![CDATA[#{execution.setVariable("rollbackData", true)}]]></bpmn:script>
+    </bpmn:scriptTask>
+    <bpmn:sequenceFlow id="SequenceFlow_0q1lfmf" sourceRef="ScriptTask_0y5wsgy" targetRef="EndEvent_0vgtf5f" />
+    <bpmn:endEvent id="EndEvent_0vgtf5f">
+      <bpmn:incoming>SequenceFlow_0q1lfmf</bpmn:incoming>
+    </bpmn:endEvent>
+  </bpmn:process>
+  <bpmn:error id="Error_1" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmn:error id="Error_2" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVnfAndModules">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
+        <dc:Bounds x="152" y="147" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="170" y="183" width="0" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_11sp3s9_di" bpmnElement="SequenceFlow_11sp3s9">
+        <di:waypoint xsi:type="dc:Point" x="188" y="165" />
+        <di:waypoint xsi:type="dc:Point" x="268" y="165" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="183" y="144" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_0y5wsgy_di" bpmnElement="ScriptTask_0y5wsgy">
+        <dc:Bounds x="268" y="125" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0q1lfmf_di" bpmnElement="SequenceFlow_0q1lfmf">
+        <di:waypoint xsi:type="dc:Point" x="368" y="165" />
+        <di:waypoint xsi:type="dc:Point" x="447" y="165" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="362.5" y="144" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="EndEvent_0vgtf5f_di" bpmnElement="EndEvent_0vgtf5f">
+        <dc:Bounds x="447" y="147" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="420" y="187" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateVnfAndModulesRollback.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateVnfAndModulesRollback.bpmn
new file mode 100644
index 0000000..2867a67
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoCreateVnfAndModulesRollback.bpmn
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_Wblj8GyfEeWUWLTvug7ZOg" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="DoCreateVnfAndModulesRollback" name="DoCreateVnfAndModulesRollback" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1gai4qr">
+      <bpmn2:outgoing>SequenceFlow_1537b7m</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:endEvent id="EndEvent_1seag7u">
+      <bpmn2:incoming>SequenceFlow_1mz2mgf</bpmn2:incoming>
+    </bpmn2:endEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_1537b7m" sourceRef="StartEvent_1gai4qr" targetRef="ScriptTask_0fpaoo0" />
+    <bpmn2:scriptTask id="ScriptTask_0fpaoo0" name="set Success">
+      <bpmn2:incoming>SequenceFlow_1537b7m</bpmn2:incoming>
+      <bpmn2:outgoing>SequenceFlow_1mz2mgf</bpmn2:outgoing>
+      <bpmn2:script><![CDATA[#{execution.setVariable("rolledBack", true)}]]></bpmn2:script>
+    </bpmn2:scriptTask>
+    <bpmn2:sequenceFlow id="SequenceFlow_1mz2mgf" sourceRef="ScriptTask_0fpaoo0" targetRef="EndEvent_1seag7u" />
+  </bpmn2:process>
+  <bpmn2:error id="Error_1" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmn2:message id="Message_1" name="DoCreateVfModuleRollbackRequest" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVnfAndModulesRollback">
+      <bpmndi:BPMNShape id="StartEvent_1gai4qr_di" bpmnElement="StartEvent_1gai4qr">
+        <dc:Bounds x="-91" y="655" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-73" y="691" width="0" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_1seag7u_di" bpmnElement="EndEvent_1seag7u">
+        <dc:Bounds x="248" y="655" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="660" y="676" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1537b7m_di" bpmnElement="SequenceFlow_1537b7m">
+        <di:waypoint xsi:type="dc:Point" x="-55" y="673" />
+        <di:waypoint xsi:type="dc:Point" x="55" y="673" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="-45" y="658" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ScriptTask_0fpaoo0_di" bpmnElement="ScriptTask_0fpaoo0">
+        <dc:Bounds x="55" y="633" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1mz2mgf_di" bpmnElement="SequenceFlow_1mz2mgf">
+        <di:waypoint xsi:type="dc:Point" x="155" y="673" />
+        <di:waypoint xsi:type="dc:Point" x="248" y="673" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="201.5" y="652" width="0" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoDeleteVnfAndModules.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoDeleteVnfAndModules.bpmn
new file mode 100644
index 0000000..517df36
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/DoDeleteVnfAndModules.bpmn
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_9MhrcHqVEea26OhQB97uCQ" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="DoDeleteVnfAndModules" name="DoDeleteVnfAndModules" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1">
+      <bpmn2:outgoing>SequenceFlow_0qi7pl3</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_0qi7pl3" sourceRef="StartEvent_1" targetRef="EndEvent_11dfyam" />
+    <bpmn2:endEvent id="EndEvent_11dfyam">
+      <bpmn2:incoming>SequenceFlow_0qi7pl3</bpmn2:incoming>
+    </bpmn2:endEvent>
+  </bpmn2:process>
+  <bpmn2:error id="Error_1" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmn2:error id="Error_2" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoDeleteVnfAndModules">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_79" bpmnElement="StartEvent_1">
+        <dc:Bounds x="238" y="209" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="256" y="250" width="0" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0qi7pl3_di" bpmnElement="SequenceFlow_0qi7pl3">
+        <di:waypoint xsi:type="dc:Point" x="274" y="227" />
+        <di:waypoint xsi:type="dc:Point" x="387" y="227" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="285.5" y="206" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="EndEvent_11dfyam_di" bpmnElement="EndEvent_11dfyam">
+        <dc:Bounds x="387" y="209" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="360" y="249" width="90" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/Homing.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/Homing.bpmn
new file mode 100644
index 0000000..ad4c3c8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/VCPE/stubprocess/Homing.bpmn
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_vwRmIBsREeeIQtzUKIjH4g" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.9.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="Homing" name="Homing" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1">
+      <bpmn2:outgoing>SequenceFlow_0tyavm9</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:endEvent id="EndEvent_0n56tas">
+      <bpmn2:incoming>SequenceFlow_0tyavm9</bpmn2:incoming>
+      <bpmn2:terminateEventDefinition />
+    </bpmn2:endEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_0tyavm9" sourceRef="StartEvent_1" targetRef="EndEvent_0n56tas" />
+  </bpmn2:process>
+  <bpmn2:error id="Error_10hit0u" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmn2:error id="Error_1lwpypa" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Homing">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
+        <dc:Bounds x="147" y="275" width="36" height="36" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_0ougemc_di" bpmnElement="EndEvent_0n56tas">
+        <dc:Bounds x="263" y="275" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="236" y="311" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0tyavm9_di" bpmnElement="SequenceFlow_0tyavm9">
+        <di:waypoint xsi:type="dc:Point" x="183" y="293" />
+        <di:waypoint xsi:type="dc:Point" x="263" y="293" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="223" y="272" width="0" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_defaultCloudRegionByCloudRegionId.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_defaultCloudRegionByCloudRegionId.json
new file mode 100644
index 0000000..a4190a7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_defaultCloudRegionByCloudRegionId.json
@@ -0,0 +1,12 @@
+{ 
+   "cloud-owner": "att-aic",
+   "cloud-region-id": "mdt1",
+   "cloud-type": "openstack",
+   "owner-defined-type": "lcp",
+   "cloud-region-version": "aic3.0",
+   "identity-url": "https://localhost:5000/v2.0",
+   "cloud-zone": "z1",
+   "complex-name": "c1",
+   "sriov-automation": false,
+   "resource-version": "1503072127235"
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_genericVnfGet.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_genericVnfGet.json
new file mode 100644
index 0000000..921918f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_genericVnfGet.json
@@ -0,0 +1,9 @@
+{
+    "vnf-id": "msoVnf123",
+    "vnf-name": "MSO-Test-VNF-123",
+    "vnf-type": "vnf-type",
+    "orchestration-status": "active",
+    "in-maint": false,
+    "is-closed-loop-disabled": false,
+    "resource-version": "1525360206136"
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_genericVnfsByVnfId.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_genericVnfsByVnfId.json
new file mode 100644
index 0000000..f0936d6
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_genericVnfsByVnfId.json
@@ -0,0 +1,434 @@
+{
+  "vnf-id": "example-vnf-id-val-90603",
+  "vnf-name": "example-vnf-name-val-56838",
+  "vnf-name2": "example-vnf-name2-val-56319",
+  "vnf-type": "example-vnf-type-val-30533",
+  "service-id": "example-service-id-val-28290",
+  "regional-resource-zone": "example-regional-resource-zone-val-11059",
+  "prov-status": "example-prov-status-val-59777",
+  "operational-status": "example-operational-status-val-22513",
+  "in-maint": true,
+ 
+  "equipment-role": "example-equipment-role-val-23396",
+  "orchestration-status": "example-orchestration-status-val-59435",
+  "heat-stack-id": "example-heat-stack-id-val-96869",
+  "mso-catalog-key": "example-mso-catalog-key-val-30721",
+  "management-option": "example-management-option-val-61927",
+  "ipv4-oam-address": "192.168.10.14",
+  "ipv4-loopback0-address": "example-ipv4-loopback0-address-val-87072",
+  "nm-lan-v6-address": "example-nm-lan-v6-address-val-91063",
+  "management-v6-address": "example-management-v6-address-val-80466",
+  "vcpu": 45837298,
+  "vcpu-units": "example-vcpu-units-val-86249",
+  "vmemory": 57288956,
+  "vmemory-units": "example-vmemory-units-val-13291",
+  "vdisk": 16937143,
+  "vdisk-units": "example-vdisk-units-val-73197",
+  
+  "is-closed-loop-disabled": true,
+  "summary-status": "example-summary-status-val-86438",
+  "encrypted-access-flag": true,
+  
+  
+  
+  
+  "model-invariant-id": "example-model-invariant-id-val-14704",
+  "model-version-id": "example-model-version-id-val-47847",
+  "model-customization-id": "example-model-customization-id-val-52688",
+  "widget-model-id": "example-widget-model-id-val-20939",
+  "widget-model-version": "example-widget-model-version-val-72210",
+  "as-number": "example-as-number-val-68358",
+  "regional-resource-subzone": "example-regional-resource-subzone-val-34391",
+  "nf-type": "example-nf-type-val-54866",
+  "nf-function": "example-nf-function-val-24790",
+  "nf-role": "example-nf-role-val-4780",
+  "nf-naming-code": "example-nf-naming-code-val-25118",
+  "selflink": "example-selflink-val-68404",
+  
+  "relationship-list": {"relationship":    [
+            {
+         "related-to": "service-instance",
+         "relationship-label": "org.onap.relationships.inventory.ComposedOf",
+         "related-link": "/aai/v12/business/customers/customer/e433710f-9217-458d-a79d-1c7aff376d89/service-subscriptions/service-subscription/VIRTUAL%20USP/service-instances/service-instance/2c323333-af4f-4849-af03-c862c0e93e3b",
+         "relationship-data":          [
+                        {
+               "relationship-key": "customer.global-customer-id",
+               "relationship-value": "e433710f-9217-458d-a79d-1c7aff376d89"
+            },
+                        {
+               "relationship-key": "service-subscription.service-type",
+               "relationship-value": "VIRTUAL USP"
+            },
+                        {
+               "relationship-key": "service-instance.service-instance-id",
+               "relationship-value": "2c323333-af4f-4849-af03-c862c0e93e3b"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "service-instance.service-instance-name",
+            "property-value": "kjhgfd1"
+         }]
+      },
+            {
+         "related-to": "vserver",
+         "relationship-label": "tosca.relationships.HostedOn",
+         "related-link": "/aai/v12/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn23a/tenants/tenant/e6beab145f6b49098277ac163ac1b4f3/vservers/vserver/1b3f44e5-d96d-4aac-bd9a-310e8cfb0af5",
+         "relationship-data":          [
+                        {
+               "relationship-key": "cloud-region.cloud-owner",
+               "relationship-value": "att-aic"
+            },
+                        {
+               "relationship-key": "cloud-region.cloud-region-id",
+               "relationship-value": "mtn23a"
+            },
+                        {
+               "relationship-key": "tenant.tenant-id",
+               "relationship-value": "e6beab145f6b49098277ac163ac1b4f3"
+            },
+                        {
+               "relationship-key": "vserver.vserver-id",
+               "relationship-value": "1b3f44e5-d96d-4aac-bd9a-310e8cfb0af5"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "vserver.vserver-name",
+            "property-value": "comx5000vm003"
+         }]
+      },
+            {
+         "related-to": "vserver",
+         "relationship-label": "tosca.relationships.HostedOn",
+         "related-link": "/aai/v12/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn23a/tenants/tenant/e6beab145f6b49098277ac163ac1b4f3/vservers/vserver/14551849-1e70-45cd-bc5d-a256d49548a2",
+         "relationship-data":          [
+                        {
+               "relationship-key": "cloud-region.cloud-owner",
+               "relationship-value": "att-aic"
+            },
+                        {
+               "relationship-key": "cloud-region.cloud-region-id",
+               "relationship-value": "mtn23a"
+            },
+                        {
+               "relationship-key": "tenant.tenant-id",
+               "relationship-value": "e6beab145f6b49098277ac163ac1b4f3"
+            },
+                        {
+               "relationship-key": "vserver.vserver-id",
+               "relationship-value": "14551849-1e70-45cd-bc5d-a256d49548a2"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "vserver.vserver-name",
+            "property-value": "comx5000vm002"
+         }]
+      },
+            {
+         "related-to": "vserver",
+         "relationship-label": "tosca.relationships.HostedOn",
+         "related-link": "/aai/v12/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn23a/tenants/tenant/e6beab145f6b49098277ac163ac1b4f3/vservers/vserver/48bd7f11-408f-417c-b834-b41c1b98f7d7",
+         "relationship-data":          [
+                        {
+               "relationship-key": "cloud-region.cloud-owner",
+               "relationship-value": "att-aic"
+            },
+                        {
+               "relationship-key": "cloud-region.cloud-region-id",
+               "relationship-value": "mtn23a"
+            },
+                        {
+               "relationship-key": "tenant.tenant-id",
+               "relationship-value": "e6beab145f6b49098277ac163ac1b4f3"
+            },
+                        {
+               "relationship-key": "vserver.vserver-id",
+               "relationship-value": "48bd7f11-408f-417c-b834-b41c1b98f7d7"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "vserver.vserver-name",
+            "property-value": "comx5000vm001"
+         }]
+      }
+   ]},  
+ 
+ 
+  "l-interfaces": {
+    "l-interface": [
+      {
+        "interface-name": "example-interface-name-val-50593",
+        "interface-role": "example-interface-role-val-23375",
+        "v6-wan-link-ip": "example-v6-wan-link-ip-val-5921",
+        "selflink": "example-selflink-val-75663",
+        "interface-id": "example-interface-id-val-37465",
+        "macaddr": "example-macaddr-val-62657",
+        "network-name": "example-network-name-val-7252",
+        "management-option": "example-management-option-val-32963",
+        "interface-description": "example-interface-description-val-89453",
+        "is-port-mirrored": true,
+        "vlans": {
+          "vlan": [
+            {
+              "vlan-interface": "example-vlan-interface-val-16684",
+              "vlan-id-inner": 8602916,
+              "vlan-id-outer": 97348542,
+              "speed-value": "example-speed-value-val-90330",
+              "speed-units": "example-speed-units-val-15849",
+              "vlan-description": "example-vlan-description-val-46942",
+              "backdoor-connection": "example-backdoor-connection-val-78445",
+              
+              "orchestration-status": "example-orchestration-status-val-44994",
+              
+             
+             
+              "l3-interface-ipv4-address-list": [
+                {
+                  "l3-interface-ipv4-address": "example-l3-interface-ipv4-address-val-90277",
+                  "l3-interface-ipv4-prefix-length": 3364150,
+                  "vlan-id-inner": 44021171,
+                  "vlan-id-outer": 55708677,
+                  "is-floating": true,
+                  "neutron-network-id": "example-neutron-network-id-val-43267",
+                  "neutron-subnet-id": "example-neutron-subnet-id-val-62870"
+                }
+              ],
+              "l3-interface-ipv6-address-list": [
+                {
+                  "l3-interface-ipv6-address": "example-l3-interface-ipv6-address-val-45323",
+                  "l3-interface-ipv6-prefix-length": 56688923,
+                  "vlan-id-inner": 5703071,
+                  "vlan-id-outer": 86682265,
+                  "is-floating": true,
+                  "neutron-network-id": "example-neutron-network-id-val-28366",
+                  "neutron-subnet-id": "example-neutron-subnet-id-val-53034"
+                }
+              ]
+            }
+          ]
+        },
+        "sriov-vfs": {
+          "sriov-vf": [
+            {
+              "pci-id": "example-pci-id-val-4720",
+              "vf-vlan-filter": "example-vf-vlan-filter-val-42594",
+              "vf-mac-filter": "example-vf-mac-filter-val-13375",
+              "vf-vlan-strip": true,
+              "vf-vlan-anti-spoof-check": true,
+              "vf-mac-anti-spoof-check": true,
+              "vf-mirrors": "example-vf-mirrors-val-6057",
+              "vf-broadcast-allow": true,
+              "vf-unknown-multicast-allow": true,
+              "vf-unknown-unicast-allow": true,
+              "vf-insert-stag": true,
+              "vf-link-status": "example-vf-link-status-val-81448",
+              "neutron-network-id": "example-neutron-network-id-val-9504"
+            }
+          ]
+        },
+        "l-interfaces": {
+          "l-interface": [
+            {
+              "interface-name": "example-interface-name-val-16738",
+              "interface-role": "example-interface-role-val-13943",
+              "v6-wan-link-ip": "example-v6-wan-link-ip-val-63173",
+              "selflink": "example-selflink-val-43085",
+              "interface-id": "example-interface-id-val-51379",
+              "macaddr": "example-macaddr-val-16195",
+              "network-name": "example-network-name-val-45683",
+              "management-option": "example-management-option-val-78983",
+              "interface-description": "example-interface-description-val-34414",
+              "is-port-mirrored": true
+            }
+          ]
+        },
+        "l3-interface-ipv4-address-list": [
+          {
+            "l3-interface-ipv4-address": "example-l3-interface-ipv4-address-val-99078",
+            "l3-interface-ipv4-prefix-length": 55755841,
+            "vlan-id-inner": 81525473,
+            "vlan-id-outer": 90908072,
+            "is-floating": true,
+            "neutron-network-id": "example-neutron-network-id-val-47919",
+            "neutron-subnet-id": "example-neutron-subnet-id-val-84236"
+          }
+        ],
+        "l3-interface-ipv6-address-list": [
+          {
+            "l3-interface-ipv6-address": "example-l3-interface-ipv6-address-val-21939",
+            "l3-interface-ipv6-prefix-length": 50057584,
+            "vlan-id-inner": 75774660,
+            "vlan-id-outer": 4421090,
+            "is-floating": true,
+            "neutron-network-id": "example-neutron-network-id-val-46377",
+            "neutron-subnet-id": "example-neutron-subnet-id-val-16585"
+          }
+        ]
+      }
+    ]
+  },
+  "lag-interfaces": {
+    "lag-interface": [
+      {
+        "interface-name": "example-interface-name-val-39234",
+        "interface-description": "example-interface-description-val-1037",
+        "speed-value": "example-speed-value-val-1929",
+        "speed-units": "example-speed-units-val-74937",
+        "interface-id": "example-interface-id-val-91265",
+        "interface-role": "example-interface-role-val-19613",
+       
+       
+        "l-interfaces": {
+          "l-interface": [
+            {
+              "interface-name": "example-interface-name-val-10722",
+              "interface-role": "example-interface-role-val-95194",
+              "v6-wan-link-ip": "example-v6-wan-link-ip-val-24328",
+              "selflink": "example-selflink-val-24987",
+              "interface-id": "example-interface-id-val-75726",
+              "macaddr": "example-macaddr-val-36940",
+              "network-name": "example-network-name-val-65359",
+              "management-option": "example-management-option-val-49521",
+              "interface-description": "example-interface-description-val-70528",
+              "is-port-mirrored": true,
+              "vlans": {
+                "vlan": [
+                  {
+                    "vlan-interface": "example-vlan-interface-val-70827",
+                    "vlan-id-inner": 55659612,
+                    "vlan-id-outer": 90335612,
+                    "speed-value": "example-speed-value-val-54761",
+                    "speed-units": "example-speed-units-val-91398",
+                    "vlan-description": "example-vlan-description-val-17018",
+                    "backdoor-connection": "example-backdoor-connection-val-4021",
+                    
+                    "orchestration-status": "example-orchestration-status-val-18315",
+                    
+                  
+                    "l3-interface-ipv4-address-list": [
+                      {
+                        "l3-interface-ipv4-address": "example-l3-interface-ipv4-address-val-59336",
+                        "l3-interface-ipv4-prefix-length": 57636053,
+                        "vlan-id-inner": 34068397,
+                        "vlan-id-outer": 48570286,
+                        "is-floating": true,
+                        "neutron-network-id": "example-neutron-network-id-val-69862",
+                        "neutron-subnet-id": "example-neutron-subnet-id-val-75795"
+                      }
+                    ],
+                    "l3-interface-ipv6-address-list": [
+                      {
+                        "l3-interface-ipv6-address": "example-l3-interface-ipv6-address-val-15038",
+                        "l3-interface-ipv6-prefix-length": 42694503,
+                        "vlan-id-inner": 15929806,
+                        "vlan-id-outer": 87413856,
+                        "is-floating": true,
+                        "neutron-network-id": "example-neutron-network-id-val-52519",
+                        "neutron-subnet-id": "example-neutron-subnet-id-val-24471"
+                      }
+                    ]
+                  }
+                ]
+              },
+              "sriov-vfs": {
+                "sriov-vf": [
+                  {
+                    "pci-id": "example-pci-id-val-44669",
+                    "vf-vlan-filter": "example-vf-vlan-filter-val-53436",
+                    "vf-mac-filter": "example-vf-mac-filter-val-71902",
+                    "vf-vlan-strip": true,
+                    "vf-vlan-anti-spoof-check": true,
+                    "vf-mac-anti-spoof-check": true,
+                    "vf-mirrors": "example-vf-mirrors-val-54963",
+                    "vf-broadcast-allow": true,
+                    "vf-unknown-multicast-allow": true,
+                    "vf-unknown-unicast-allow": true,
+                    "vf-insert-stag": true,
+                    "vf-link-status": "example-vf-link-status-val-1546",
+                    "neutron-network-id": "example-neutron-network-id-val-92159"
+                  }
+                ]
+              },
+              "l-interfaces": {
+                "l-interface": [
+                  {
+                    "interface-name": "example-interface-name-val-9327",
+                    "interface-role": "example-interface-role-val-21859",
+                    "v6-wan-link-ip": "example-v6-wan-link-ip-val-21445",
+                    "selflink": "example-selflink-val-6085",
+                    "interface-id": "example-interface-id-val-39854",
+                    "macaddr": "example-macaddr-val-14433",
+                    "network-name": "example-network-name-val-3722",
+                    "management-option": "example-management-option-val-64739",
+                    "interface-description": "example-interface-description-val-5814",
+                    "is-port-mirrored": true
+                    
+                   
+                    
+                  }
+                ]
+              },
+              "l3-interface-ipv4-address-list": [
+                {
+                  "l3-interface-ipv4-address": "example-l3-interface-ipv4-address-val-64531",
+                  "l3-interface-ipv4-prefix-length": 66545882,
+                  "vlan-id-inner": 12194134,
+                  "vlan-id-outer": 29589286,
+                  "is-floating": true,
+                  "neutron-network-id": "example-neutron-network-id-val-91108",
+                  "neutron-subnet-id": "example-neutron-subnet-id-val-56984"
+                }
+              ],
+              "l3-interface-ipv6-address-list": [
+                {
+                  "l3-interface-ipv6-address": "example-l3-interface-ipv6-address-val-37408",
+                  "l3-interface-ipv6-prefix-length": 5116459,
+                  "vlan-id-inner": 39229896,
+                  "vlan-id-outer": 15091934,
+                  "is-floating": true,
+                  "neutron-network-id": "example-neutron-network-id-val-87700",
+                  "neutron-subnet-id": "example-neutron-subnet-id-val-37352"
+                }
+              ]
+            }
+          ]
+        }
+      }
+    ]
+  },
+  "vf-modules": {
+    "vf-module": [
+      {
+        "vf-module-id": "example-vf-module-id-val-56249",
+        "vf-module-name": "example-vf-module-name-val-18987",
+        "heat-stack-id": "example-heat-stack-id-val-80110",
+        "orchestration-status": "example-orchestration-status-val-8226",
+        "is-base-vf-module": true,
+        "model-invariant-id": "example-model-invariant-id-val-5071",
+        "model-version-id": "example-model-version-id-val-80793",
+        "model-customization-id": "example-model-customization-id-val-83277",
+        "widget-model-id": "example-widget-model-id-val-99814",
+        "widget-model-version": "example-widget-model-version-val-22799",
+        "contrail-service-instance-fqdn": "example-contrail-service-instance-fqdn-val-52133",
+        "module-index": 1933,
+        "selflink": "example-selflink-val-69992"
+      }
+    ]
+  },
+  "licenses": {
+    "license": [
+      {
+        "group-uuid": "example-group-uuid-val-73012",
+        "resource-uuid": "example-resource-uuid-val-80045"
+      }
+    ]
+  },
+  "entitlements": {
+    "entitlement": [
+      {
+        "group-uuid": "example-group-uuid-val-14874",
+        "resource-uuid": "example-resource-uuid-val-49146"
+      }
+    ]
+  }
+
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_pserverByVnfId.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_pserverByVnfId.json
new file mode 100644
index 0000000..4b1f69a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_pserverByVnfId.json
@@ -0,0 +1,72 @@
+    {
+       
+       "result":  [{   
+            
+        "hostname": "8862-PserverHOSTNAME-LB1113",
+        "equipType": "JUNIPER UCPE", 
+        "equipVendor": "JUNIPER", 
+        "equipModel": "QFX51010-PNF",        
+        "ipv4OamAddress": "192.168.5.199",
+        "serialNumber": "VX986001PNF",
+        "pserverId": "5715CE4F-8600-58E103FE60C79",
+        "internetTopology": "WAN",
+        "inMaint": false,
+        "resourceVersion": "1500495668780",
+        "pserverName2": "test81600",
+        "relationshipList": {
+          "relationship": [
+            {
+              "relatedTo": "vserver",
+              "relatedLink": "/aai/v10/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/8862-tenantl-LB1113/vservers/vserver/8862-Lvserver-LB1113",
+              "relationshipData": [
+                {
+                  "relationshipKey": "cloud-region.cloud-owner",
+                  "relationshipValue": "att-aic"
+                },
+                {
+                  "relationshipKey": "cloud-region.cloud-region-id",
+                  "relationshipValue": "AAIAIC25"
+                },
+                {
+                  "relationshipKey": "tenant.tenant-id",
+                  "relationshipValue": "8862-tenantl-LB1113"
+                },
+                {
+                  "relationshipKey": "vserver.vserver-id",
+                  "relationshipValue": "8862-Lvserver-LB1113"
+                }
+              ],
+              "relatedToProperty": [
+                {
+                  "propertyKey": "vserver.vserver-name",
+                  "propertyValue": "hjZAYKyl5LO"
+                }
+              ]
+            }
+          ]
+        },
+        "pinterfaces": {
+          "pinterface": [
+            {
+              "interfaceName": "ge-0/5/8",
+              "speedValue": "1",
+              "speedUnits": "GBPS",
+              "resourceVersion": "1500495668784",
+              "inMaint": false
+            },
+            {
+              "interfaceName": "ge-1/5/8",
+              "speedValue": "1",
+              "speedUnits": "GBPS",
+              "resourceVersion": "1500495668788",
+              "inMaint": false
+            }
+          ]
+        }
+      }
+      
+     
+   
+   ]
+}    
+ 
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_vfModuleByVfModuleId.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_vfModuleByVfModuleId.json
new file mode 100644
index 0000000..d79137b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/AAI_vfModuleByVfModuleId.json
@@ -0,0 +1,27 @@
+{
+  "vf-module-id": "example-vnf-id-val-90603",
+  "vf-module-name": "example-vnf-name-val-56838",
+  "vnf-name2": "example-vnf-name2-val-56319",
+  "vnf-type": "example-vnf-type-val-30533",
+  "service-id": "example-service-id-val-28290",
+  "regional-resource-zone": "example-regional-resource-zone-val-11059",
+  "prov-status": "example-prov-status-val-59777",
+  "operational-status": "example-operational-status-val-22513",
+  "in-maint": true,
+ 
+  "equipment-role": "example-equipment-role-val-23396",
+  "orchestration-status": "example-orchestration-status-val-59435",
+  "heat-stack-id": "example-heat-stack-id-val-96869",
+  "mso-catalog-key": "example-mso-catalog-key-val-30721",
+  "management-option": "example-management-option-val-61927",
+  "ipv4-oam-address": "192.168.10.14",
+  "ipv4-loopback0-address": "example-ipv4-loopback0-address-val-87072",
+  "nm-lan-v6-address": "example-nm-lan-v6-address-val-91063",
+  "management-v6-address": "example-management-v6-address-val-80466",
+  "vcpu": 45837298,
+  "vcpu-units": "example-vcpu-units-val-86249",
+  "vmemory": 57288956,
+  "vmemory-units": "example-vmemory-units-val-13291",
+  "vdisk": 16937143,
+  "vdisk-units": "example-vdisk-units-val-73197"
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/mockObject.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/mockObject.json
new file mode 100644
index 0000000..2f97b47
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/AAI/mockObject.json
@@ -0,0 +1,10 @@
+{
+	"id" : "something",
+	"resource-version" : "1234",
+	"plural" : {
+		"singular" : [{
+			"id" : "something2",
+			"resource-version" : "5678"
+		}]
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/APPC/appc_error.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/APPC/appc_error.json
new file mode 100644
index 0000000..e28878d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/APPC/appc_error.json
@@ -0,0 +1,21 @@
+{
+  "output": {
+    "status": {
+      "code": 200,
+      "message": "RESULT_MESSAGE"
+    },
+    "common-header": {
+      "api-ver": "API_VERSION",
+      "request-id": "ECOMP_REQUEST_ID",
+      "originator-id": "ECOMP_SYSTEM_ID",
+      "sub-request-id": "ECOMP_SUBREQUEST_ID",
+      "timestamp": "2016-08-08T23:09:00.11Z",
+      "flags": {
+        "ttl": 1000,
+        "force": "TRUE",
+        "mode": "EXCLUSIVE"
+      }
+    },
+    "locked": "TRUE"
+  }
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/createNetworkRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/createNetworkRequest.xml
new file mode 100644
index 0000000..34079bd
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/createNetworkRequest.xml
@@ -0,0 +1,75 @@
+<createNetworkRequest>
+   <cloudSiteId>mtn6</cloudSiteId>
+   <tenantId>0422ffb57ba042c0800a29dc85ca70f8</tenantId>
+   <networkId>8d35a433-c1db-4d54-a611-6de10aeb76f9</networkId>
+   <networkName>Dev_Bindings_1802_1311</networkName>
+   <networkType>CONTRAIL30_BASIC</networkType>
+   <modelCustomizationUuid>f1fc12e8-afe4-4716-954d-ed4d21a480ad</modelCustomizationUuid>
+   <networkTechnology>CONTRAIL</networkTechnology>
+   <providerVlanNetwork>
+      <physicalNetworkName>tbd</physicalNetworkName>
+      <vlans/>
+   </providerVlanNetwork>
+   <contrailNetwork>
+      <shared>true</shared>
+      <external>false</external>
+      <routeTargets>
+         <routeTarget>2001:051111</routeTarget>
+         <routeTargetRole>EXPORT</routeTargetRole>
+      </routeTargets>
+      <routeTargets>
+         <routeTarget>1000:051113</routeTarget>
+         <routeTargetRole>IMPORT</routeTargetRole>
+      </routeTargets>
+      <routeTargets>
+         <routeTarget>1000:051112</routeTarget>
+         <routeTargetRole>BOTH</routeTargetRole>
+      </routeTargets>
+      <routeTargets>
+         <routeTarget>1000:051115</routeTarget>
+         <routeTargetRole>EXPORT</routeTargetRole>
+      </routeTargets>
+      <routeTargets>
+         <routeTarget>1000:051114</routeTarget>
+         <routeTargetRole>IMPORT</routeTargetRole>
+      </routeTargets>
+      <policyFqdns>default-domain:ECOMP_MSO_DND:MSOPolicyD</policyFqdns>
+      <policyFqdns>default-domain:ECOMP_MSO_DND:MSOPolicyC</policyFqdns>
+      <routeTableFqdns/>
+   </contrailNetwork>
+   <subnets>
+      <allocationPools>
+         <start>107.118.41.3</start>
+         <end>107.118.41.45</end>
+      </allocationPools>
+      <cidr>107.118.41.0/24</cidr>
+      <enableDHCP>true</enableDHCP>
+      <gatewayIp>107.118.41.1</gatewayIp>
+      <ipVersion>4</ipVersion>
+      <subnetId>9dbb9e7e-fe18-421f-bad6-2305bd282471</subnetId>
+      <subnetName/>
+      <addrFromStart>true</addrFromStart>
+   </subnets>
+   <subnets>
+      <allocationPools>
+         <start>107.118.42.3</start>
+         <end>107.118.42.45</end>
+      </allocationPools>
+      <cidr>107.118.42.0/24</cidr>
+      <enableDHCP>true</enableDHCP>
+      <gatewayIp>107.118.42.1</gatewayIp>
+      <ipVersion>4</ipVersion>
+      <subnetId>1bb4e1d2-d225-47f3-b6fc-2d0b290de1ab</subnetId>
+      <subnetName/>
+      <addrFromStart>true</addrFromStart>
+   </subnets>
+   <skipAAI>true</skipAAI>
+   <backout>true</backout>
+   <failIfExists>false</failIfExists>
+   <msoRequest>
+      <requestId>3d35ca0c-2da5-4f60-84d9-3e005de335c0</requestId>
+      <serviceInstanceId>f1d1c7da-fc42-4c31-866e-cfe963e55723</serviceInstanceId>
+   </msoRequest>
+   <messageId>d4515ea9-2852-4d3a-b424-9d7b6cf69d8e</messageId>
+   <notificationUrl/>
+</createNetworkRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/createNetworkResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/createNetworkResponse.xml
new file mode 100644
index 0000000..607dd5a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/createNetworkResponse.xml
@@ -0,0 +1,31 @@
+<createNetworkResponse>
+   <messageId>d4515ea9-2852-4d3a-b424-9d7b6cf69d8e</messageId>
+   <networkCreated>true</networkCreated>
+   <networkFqdn>default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_1311</networkFqdn>
+   <networkId>8d35a433-c1db-4d54-a611-6de10aeb76f9</networkId>
+   <networkStackId>Dev_Bindings_1802_1311/ecf7e197-72db-452e-9eda-253cb642c9b7</networkStackId>
+   <neutronNetworkId>b6a7820c-4734-4ef2-8a73-a22c824423fa</neutronNetworkId>
+   <rollback>
+      <cloudId>mtn6</cloudId>
+      <modelCustomizationUuid>f1fc12e8-afe4-4716-954d-ed4d21a480ad</modelCustomizationUuid>
+      <msoRequest>
+         <requestId>3d35ca0c-2da5-4f60-84d9-3e005de335c0</requestId>
+         <serviceInstanceId>f1d1c7da-fc42-4c31-866e-cfe963e55723</serviceInstanceId>
+      </msoRequest>
+      <networkCreated>true</networkCreated>
+      <networkStackId>Dev_Bindings_1802_1311/ecf7e197-72db-452e-9eda-253cb642c9b7</networkStackId>
+      <networkType>CONTRAIL30_BASIC</networkType>
+      <neutronNetworkId>b6a7820c-4734-4ef2-8a73-a22c824423fa</neutronNetworkId>
+      <tenantId>0422ffb57ba042c0800a29dc85ca70f8</tenantId>
+   </rollback>
+   <subnetMap>
+      <entry>
+         <key>9dbb9e7e-fe18-421f-bad6-2305bd282471</key>
+         <value>27d414c7-1076-4595-aa45-4717ee992cef</value>
+      </entry>
+      <entry>
+         <key>1bb4e1d2-d225-47f3-b6fc-2d0b290de1ab</key>
+         <value>db64710c-fbbc-4dc9-8109-3925b87268fa</value>
+      </entry>
+   </subnetMap>
+</createNetworkResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/defaultNetwork.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/defaultNetwork.json
new file mode 100644
index 0000000..dda149a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/defaultNetwork.json
@@ -0,0 +1,10 @@
+{
+  "networkTechnology": "NEUTRON",
+  "failIfExists": false,
+  "backout": true,
+  "networkParams": [],
+  "msoRequest": {},
+  "contrailRequest": false,
+  "skipAAI": false,
+  "synchronous": true
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/l3NetworkBbObject.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/l3NetworkBbObject.json
new file mode 100644
index 0000000..d5d234c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/l3NetworkBbObject.json
@@ -0,0 +1,226 @@
+{
+	"sharedNetwork": false,
+	"boundToVpn": false,
+	"externalNetwork": false,
+	"providerNetwork": false,
+	"network-id": "TEST_NETWORK_ID",
+	"cascaded": false,
+	"cloud-params": null,
+	"network-name": "TEST_NETWORK_NAME",
+	"is-bound-to-vpn": false,
+	"service-id": null,
+	"network-role-instance": null,
+	"orchestration-status": "Active",
+	"heat-stack-id": "Dev_Bindings_1802_020118/06c2445f-1ca1-4ad8-be08-454c4de443bb",
+	"contrail-network-fqdn": "default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_020118",
+	"widget-model-id": null,
+	"widget-model-version": null,
+	"physical-network-name": null,
+	"is-provider-network": false,
+	"is-shared-network": false,
+	"is-external-network": false,
+	"self-link": null,
+	"operational-status": null,
+	"subnets": {
+		"subnet": [
+			{
+				"subnet-id": "209f62cf-cf0c-42f8-b13c-f038b92ef108",
+				"subnet-name": "",
+				"neutron-subnet-id": "3942ca32-5f5b-4d62-a2e4-b528b7a4318c",
+				"gateway-address": "192.168.41.1",
+				"network-start-address": "192.168.41.0",
+				"cidr-mask": "24",
+				"ip-version": "4",
+				"orchestration-status": "Active",
+				"dhcp-enabled": true,
+				"dhcp-start": "192.168.41.3",
+				"dhcp-end": "192.168.41.45",
+				"ip-assignment-direction": "",
+				"resource-version": "1517496965497",
+				"host-routes": {
+					"host-route": [
+						{
+							"host-route-id": "400d286b-7e44-4514-b9b3-f70f7360ff32",
+							"route-prefix": "172.20.1.0/24",
+							"next-hop": "10.102.200.1",
+							"next-hop-type": "ip-address",
+							"resource-version": "1505857300987"
+						},
+						{
+							"host-route-id": "6f038013-8b15-4eb8-914b-507489fbc8ee",
+							"route-prefix": "10.102.0.0/16",
+							"next-hop": "10.102.200.1",
+							"next-hop-type": "ip-address",
+							"resource-version": "1505857301151"
+						},
+						{
+							"host-route-id": "8811c5f8-f1ed-4fa0-a505-e1be60396e28",
+							"route-prefix": "192.168.2.0/25",
+							"next-hop": "10.102.200.1",
+							"resource-version": "1505857301954"
+						}
+					]
+				}
+			},
+			{
+				"subnet-id": "971bc608-1aff-47c0-923d-92e43b699f01",
+				"subnet-name": "",
+				"neutron-subnet-id": "81a5ff92-7ca4-4756-a493-496479f0d10f",
+				"gateway-address": "192.168.42.1",
+				"network-start-address": "192.168.42.0",
+				"cidr-mask": "24",
+				"ip-version": "4",
+				"orchestration-status": "Active",
+				"dhcp-enabled": true,
+				"dhcp-start": "192.168.42.3",
+				"dhcp-end": "192.168.42.45",
+				"ip-assignment-direction": "",
+				"resource-version": "1517496965508"
+			}
+		]
+	},
+	"relationship-list": {
+		"relationship": [
+			{
+				"related-to": "service-instance",
+				"related-link": "/aai/v11/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/cc88915e-fb95-4b16-9c1e-a0abf40d1e40",
+				"relationship-data": [
+					{
+						"relationship-key": "customer.global-customer-id",
+						"relationship-value": "MSO_1610_dev"
+					},
+					{
+						"relationship-key": "service-subscription.service-type",
+						"relationship-value": "MSO-dev-service-type"
+					},
+					{
+						"relationship-key": "service-instance.service-instance-id",
+						"relationship-value": "cc88915e-fb95-4b16-9c1e-a0abf40d1e40"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "service-instance.service-instance-name",
+						"property-value": "MSO-DEV-SI-1802-v6-2-01-nwk1"
+					}
+				]
+			},
+			{
+				"related-to": "cloud-region",
+				"related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6",
+				"relationship-data": [
+					{
+						"relationship-key": "cloud-region.cloud-owner",
+						"relationship-value": "att-aic"
+					},
+					{
+						"relationship-key": "cloud-region.cloud-region-id",
+						"relationship-value": "mtn6"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "cloud-region.owner-defined-type",
+						"property-value": "LCP"
+					}
+				]
+			},
+			{
+				"related-to": "tenant",
+				"related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/tenants/tenant/0422ffb57ba042c0800a29dc85ca70f8",
+				"relationship-data": [
+					{
+						"relationship-key": "cloud-region.cloud-owner",
+						"relationship-value": "att-aic"
+					},
+					{
+						"relationship-key": "cloud-region.cloud-region-id",
+						"relationship-value": "mtn6"
+					},
+					{
+						"relationship-key": "tenant.tenant-id",
+						"relationship-value": "0422ffb57ba042c0800a29dc85ca70f8"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "tenant.tenant-name",
+						"property-value": "ECOMP_MSO_DND"
+					}
+				]
+			},
+			{
+				"related-to": "route-table-reference",
+				"related-link": "/aai/v11/network/route-table-references/route-table-reference/c87fa27e-ac15-4b3e-b7ef-866682d8ca00",
+				"relationship-data": [
+					{
+						"relationship-key": "route-table-reference.route-table-reference-id",
+						"relationship-value": "c87fa27e-ac15-4b3e-b7ef-866682d8ca00"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "route-table-reference.route-table-reference-fqdn",
+						"property-value": "default-domain:ECOMP_MSO_DND:RTA"
+					}
+				]
+			},
+			{
+				"related-to": "network-policy",
+				"related-link": "/aai/v11/network/network-policies/network-policy/0219d83f-7c4a-48e2-b8fc-9b20459356bc",
+				"relationship-data": [
+					{
+						"relationship-key": "network-policy.network-policy-id",
+						"relationship-value": "0219d83f-7c4a-48e2-b8fc-9b20459356bc"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "network-policy.network-policy-fqdn",
+						"property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyD"
+					}
+				]
+			},
+			{
+				"related-to": "network-policy",
+				"related-link": "/aai/v11/network/network-policies/network-policy/e7a3560c-8b29-4611-a404-83af0b31ce64",
+				"relationship-data": [
+					{
+						"relationship-key": "network-policy.network-policy-id",
+						"relationship-value": "e7a3560c-8b29-4611-a404-83af0b31ce64"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "network-policy.network-policy-fqdn",
+						"property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyC"
+					}
+				]
+			},
+			{
+				"related-to": "vpn-binding",
+				"related-link": "/aai/v11/network/vpn-bindings/vpn-binding/9a7b327d9-287aa00-82c4b0-100001",
+				"relationship-data": [
+					{
+						"relationship-key": "vpn-binding.vpn-id",
+						"relationship-value": "9a7b327d9-287aa00-82c4b0-100001"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "vpn-binding.vpn-name",
+						"property-value": "MSO_VPN_TEST"
+					},
+					{
+						"property-key": "vpn-binding.vpn-type"
+					}
+				]
+			}
+		]
+	},
+	"ctag-assignments": [
+	],
+	"segmentation-assignments": [
+	],
+	"model-info-network": null
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/payloadUpdateCreated.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/payloadUpdateCreated.json
new file mode 100644
index 0000000..aa63208
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/payloadUpdateCreated.json
@@ -0,0 +1,216 @@
+{
+	"network-id": "0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+	"network-name": "Dev_Bindings_1802_020118",
+	"network-type": "CONTRAIL30_BASIC",
+	"network-role": "GN_EVPN_direct",
+	"network-technology": "contrail",
+	"neutron-network-id": "1112b912-0e00-4d6d-9392-014e106399ee",
+	"is-bound-to-vpn": true,
+	"service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+	"network-role-instance": 0,
+	"resource-version": "1517496965485",
+	"orchestration-status": "Active",
+	"heat-stack-id": "Dev_Bindings_1802_020118/06c2445f-1ca1-4ad8-be08-454c4de443bb",
+	"contrail-network-fqdn": "default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_020118",
+	"physical-network-name": "tbd",
+	"is-provider-network": false,
+	"is-shared-network": true,
+	"is-external-network": false,
+	"subnets": {
+		"subnet": [
+			{
+				"subnet-id": "209f62cf-cf0c-42f8-b13c-f038b92ef108",
+				"subnet-name": "",
+				"neutron-subnet-id": "3942ca32-5f5b-4d62-a2e4-b528b7a4318c",
+				"gateway-address": "192.168.41.1",
+				"network-start-address": "192.168.41.0",
+				"cidr-mask": "24",
+				"ip-version": "4",
+				"orchestration-status": "Active",
+				"dhcp-enabled": true,
+				"dhcp-start": "192.168.41.3",
+				"dhcp-end": "192.168.41.45",
+				"ip-assignment-direction": "",
+				"resource-version": "1517496965497",
+				"host-routes": {
+					"host-route": [
+						{
+							"host-route-id": "400d286b-7e44-4514-b9b3-f70f7360ff32",
+							"route-prefix": "172.20.1.0/24",
+							"next-hop": "10.102.200.1",
+							"next-hop-type": "ip-address",
+							"resource-version": "1505857300987"
+						},
+						{
+							"host-route-id": "6f038013-8b15-4eb8-914b-507489fbc8ee",
+							"route-prefix": "10.102.0.0/16",
+							"next-hop": "10.102.200.1",
+							"next-hop-type": "ip-address",
+							"resource-version": "1505857301151"
+						},
+						{
+							"host-route-id": "8811c5f8-f1ed-4fa0-a505-e1be60396e28",
+							"route-prefix": "192.168.2.0/25",
+							"next-hop": "10.102.200.1",
+							"resource-version": "1505857301954"
+						}
+					]
+				}
+			},
+			{
+				"subnet-id": "971bc608-1aff-47c0-923d-92e43b699f01",
+				"subnet-name": "",
+				"neutron-subnet-id": "81a5ff92-7ca4-4756-a493-496479f0d10f",
+				"gateway-address": "192.168.42.1",
+				"network-start-address": "192.168.42.0",
+				"cidr-mask": "24",
+				"ip-version": "4",
+				"orchestration-status": "Active",
+				"dhcp-enabled": true,
+				"dhcp-start": "192.168.42.3",
+				"dhcp-end": "192.168.42.45",
+				"ip-assignment-direction": "",
+				"resource-version": "1517496965508"
+			}
+		]
+	},
+	"relationship-list": {
+		"relationship": [
+			{
+				"related-to": "service-instance",
+				"related-link": "/aai/v11/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/cc88915e-fb95-4b16-9c1e-a0abf40d1e40",
+				"relationship-data": [
+					{
+						"relationship-key": "customer.global-customer-id",
+						"relationship-value": "MSO_1610_dev"
+					},
+					{
+						"relationship-key": "service-subscription.service-type",
+						"relationship-value": "MSO-dev-service-type"
+					},
+					{
+						"relationship-key": "service-instance.service-instance-id",
+						"relationship-value": "cc88915e-fb95-4b16-9c1e-a0abf40d1e40"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "service-instance.service-instance-name",
+						"property-value": "MSO-DEV-SI-1802-v6-2-01-nwk1"
+					}
+				]
+			},
+			{
+				"related-to": "cloud-region",
+				"related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6",
+				"relationship-data": [
+					{
+						"relationship-key": "cloud-region.cloud-owner",
+						"relationship-value": "att-aic"
+					},
+					{
+						"relationship-key": "cloud-region.cloud-region-id",
+						"relationship-value": "mtn6"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "cloud-region.owner-defined-type",
+						"property-value": "LCP"
+					}
+				]
+			},
+			{
+				"related-to": "tenant",
+				"related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/tenants/tenant/0422ffb57ba042c0800a29dc85ca70f8",
+				"relationship-data": [
+					{
+						"relationship-key": "cloud-region.cloud-owner",
+						"relationship-value": "att-aic"
+					},
+					{
+						"relationship-key": "cloud-region.cloud-region-id",
+						"relationship-value": "mtn6"
+					},
+					{
+						"relationship-key": "tenant.tenant-id",
+						"relationship-value": "0422ffb57ba042c0800a29dc85ca70f8"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "tenant.tenant-name",
+						"property-value": "ECOMP_MSO_DND"
+					}
+				]
+			},
+			{
+				"related-to": "route-table-reference",
+				"related-link": "/aai/v11/network/route-table-references/route-table-reference/c87fa27e-ac15-4b3e-b7ef-866682d8ca00",
+				"relationship-data": [
+					{
+						"relationship-key": "route-table-reference.route-table-reference-id",
+						"relationship-value": "c87fa27e-ac15-4b3e-b7ef-866682d8ca00"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "route-table-reference.route-table-reference-fqdn",
+						"property-value": "default-domain:ECOMP_MSO_DND:RTA"
+					}
+				]
+			},
+			{
+				"related-to": "network-policy",
+				"related-link": "/aai/v11/network/network-policies/network-policy/0219d83f-7c4a-48e2-b8fc-9b20459356bc",
+				"relationship-data": [
+					{
+						"relationship-key": "network-policy.network-policy-id",
+						"relationship-value": "0219d83f-7c4a-48e2-b8fc-9b20459356bc"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "network-policy.network-policy-fqdn",
+						"property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyD"
+					}
+				]
+			},
+			{
+				"related-to": "network-policy",
+				"related-link": "/aai/v11/network/network-policies/network-policy/e7a3560c-8b29-4611-a404-83af0b31ce64",
+				"relationship-data": [
+					{
+						"relationship-key": "network-policy.network-policy-id",
+						"relationship-value": "e7a3560c-8b29-4611-a404-83af0b31ce64"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "network-policy.network-policy-fqdn",
+						"property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyC"
+					}
+				]
+			},
+			{
+				"related-to": "vpn-binding",
+				"related-link": "/aai/v11/network/vpn-bindings/vpn-binding/9a7b327d9-287aa00-82c4b0-100001",
+				"relationship-data": [
+					{
+						"relationship-key": "vpn-binding.vpn-id",
+						"relationship-value": "9a7b327d9-287aa00-82c4b0-100001"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "vpn-binding.vpn-name",
+						"property-value": "MSO_VPN_TEST"
+					},
+					{
+						"property-key": "vpn-binding.vpn-type"
+					}
+				]
+			}
+		]
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegion.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegion.json
new file mode 100644
index 0000000..5addff2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegion.json
@@ -0,0 +1,596 @@
+{
+   "cloud-owner": "att-aic",
+   "cloud-region-id": "mtn6",
+   "cloud-type": "openstack",
+   "owner-defined-type": "LCP",
+   "cloud-region-version": "3.0",
+   "cloud-zone": "AUS1",
+   "complex-name": "mtn6",
+   "resource-version": "1485202577",
+   "relationship-list": {"relationship":    [
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/316fd41a-5943-4028-b537-9eace4a94387",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "316fd41a-5943-4028-b537-9eace4a94387"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1702-125"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c7910b86-8830-4b43-8d93-895f4e71ee8a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c7910b86-8830-4b43-8d93-895f4e71ee8a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_33"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/491508c7-1246-4ebc-a080-98fbe272291a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "491508c7-1246-4ebc-a080-98fbe272291a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_23"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/acaccfdb-2bf9-4ccb-b123-c54e28e8e310",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "acaccfdb-2bf9-4ccb-b123-c54e28e8e310"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-2002"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/8594c6a8-f8ff-43aa-a0b5-952fd60c9f6a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8594c6a8-f8ff-43aa-a0b5-952fd60c9f6a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_45"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/cf82a73f-de7f-4f84-8dfc-16a487c63a36",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "cf82a73f-de7f-4f84-8dfc-16a487c63a36"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-2001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/259062a4-dc9a-43f2-b46d-46f8b31bb661",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "259062a4-dc9a-43f2-b46d-46f8b31bb661"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_29"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/5102bbfc-44f3-4cd3-ae1e-0c9942653aed",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "5102bbfc-44f3-4cd3-ae1e-0c9942653aed"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_30"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/9b6d2ec3-1e58-4927-91a4-0dabe260436e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "9b6d2ec3-1e58-4927-91a4-0dabe260436e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_31"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/268c0582-a5b3-4f9f-8f4f-ea0f93620212",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "268c0582-a5b3-4f9f-8f4f-ea0f93620212"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_23"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/48627fd2-b3f2-4867-9fa3-f6425a7d22f5",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "48627fd2-b3f2-4867-9fa3-f6425a7d22f5"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_10"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fb630eb9-44a3-4a90-a0c9-e52002f9f555",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb630eb9-44a3-4a90-a0c9-e52002f9f555"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_28"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/65cc74dd-bffb-4f71-8db8-0fb6e6ac36ef",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "65cc74dd-bffb-4f71-8db8-0fb6e6ac36ef"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_26"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/29ee3893-b7d0-4420-a035-c990fc32eb1c",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "29ee3893-b7d0-4420-a035-c990fc32eb1c"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_48"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f8fb2eaa-68f7-4a1a-8adb-37ba7b3d891e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f8fb2eaa-68f7-4a1a-8adb-37ba7b3d891e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1702-126"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c1fc2c47-4986-4d42-80c3-379d5252bdb1",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c1fc2c47-4986-4d42-80c3-379d5252bdb1"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_40"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e47d1154-03b4-44a1-8196-6fb947f4d4b3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e47d1154-03b4-44a1-8196-6fb947f4d4b3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_26"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/09e0d15b-e36c-4bf5-8c2b-f4ce9256854f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "09e0d15b-e36c-4bf5-8c2b-f4ce9256854f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/7b86609c-1c79-4329-bf21-15df6db1ffe0",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7b86609c-1c79-4329-bf21-15df6db1ffe0"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c547848e-2617-4161-9154-1aa6cca60994",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c547848e-2617-4161-9154-1aa6cca60994"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/d348293a-2f7b-4925-bf21-fd59c2e52bfa",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d348293a-2f7b-4925-bf21-fd59c2e52bfa"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_32"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/92e7461d-358a-47a3-be5e-669dcf6400ef",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "92e7461d-358a-47a3-be5e-669dcf6400ef"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/01c857bf-c75e-4f1c-886c-f651a8479037",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "01c857bf-c75e-4f1c-886c-f651a8479037"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0509A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4cadeb8b-f258-436d-a998-de887f10d180",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4cadeb8b-f258-436d-a998-de887f10d180"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0511C"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/d9b00452-16c5-441f-9455-2954b93b7be7",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d9b00452-16c5-441f-9455-2954b93b7be7"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512C"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f170b669-031a-47ff-a545-61a5fbfaf884",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f170b669-031a-47ff-a545-61a5fbfaf884"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_1Bindings_324_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fb7ed40a-4c29-464c-a9d7-edc314802cc4",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb7ed40a-4c29-464c-a9d7-edc314802cc4"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f901b9d6-3779-4f0d-a925-cb7e5e84650a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f901b9d6-3779-4f0d-a925-cb7e5e84650a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-155"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e901cbc9-b964-4e8f-a363-12fe30585526",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e901cbc9-b964-4e8f-a363-12fe30585526"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4a5b95a6-4659-406e-bd39-d7909fed055f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4a5b95a6-4659-406e-bd39-d7909fed055f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-1707-ipv6-6001-badMask"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/7883684f-4ee0-460e-a277-0276e79fb8b8",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7883684f-4ee0-460e-a277-0276e79fb8b8"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_HnportalProviderNetwork.HNPortalPROVIDERNETWORK.SR_IOV_Provider2_1_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/da4d0845-1e2f-4d94-a66f-bca45242c12f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "da4d0845-1e2f-4d94-a66f-bca45242c12f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_29"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c06bf62e-7c26-4c12-818f-927c3c25a38a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c06bf62e-7c26-4c12-818f-927c3c25a38a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/b09885f5-afce-400c-84dc-0a2779fc3e21",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b09885f5-afce-400c-84dc-0a2779fc3e21"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "ST-MTN6-NoBinding-1707-18-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e746082a-41dc-40ec-a06e-d1138004902e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e746082a-41dc-40ec-a06e-d1138004902e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1710-4001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f1c5642c-c7d8-4409-997f-b5b186d8892f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f1c5642c-c7d8-4409-997f-b5b186d8892f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-119"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/51e3b192-31e3-4c3e-89a9-e1f2592e15fc",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "51e3b192-31e3-4c3e-89a9-e1f2592e15fc"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_1311"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fc0ae18f-0a1f-4773-b387-5aed5b58fffb",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fc0ae18f-0a1f-4773-b387-5aed5b58fffb"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_021618"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0384d743-f69b-4cc8-9aa8-c3ae66662c44"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_020118"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/6ee51b6e-2b54-45cf-83f7-8bfa2c4ecaf3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6ee51b6e-2b54-45cf-83f7-8bfa2c4ecaf3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_Dev_HostRoutes-1802-bns-2001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/aaaa-bbbb-cccc-dddd-eeee",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "aaaa-bbbb-cccc-dddd-eeee"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "direct_dhcp_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/800bdc98-4326-4358-980d-e552e2105eaf",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "800bdc98-4326-4358-980d-e552e2105eaf"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512B"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/b11eb5fc-082d-424a-a14c-f356d1ce611d",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b11eb5fc-082d-424a-a14c-f356d1ce611d"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "DEV-1Binding-1710-0814-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4636eea4-86a3-4cd3-806d-a63f29542ba3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4636eea4-86a3-4cd3-806d-a63f29542ba3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "DEV-MTN6-NoBinding-1707-20-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/1111-2222-3333-4444-5555",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "1111-2222-3333-4444-5555"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-25180-L-06Shared_OAM_PROTECTED_NET_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/67743f38-c2ac-4309-b81c-8b05381e5522",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "67743f38-c2ac-4309-b81c-8b05381e5522"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "dev_Bindings_full_1710_0907A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/wwww-xxxx-yyyy-zzzz",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "wwww-xxxx-yyyy-zzzz"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-25180-P-ALPSGA01_oam_direct_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/ed885e04-ffe5-47fb-bb20-103e5e22ef89",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "ed885e04-ffe5-47fb-bb20-103e5e22ef89"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_Dev_HostRoutes-1802-bns-1002"
+         }]
+      },
+            {
+         "related-to": "complex",
+         "related-link": "/aai/v11/cloud-infrastructure/complexes/complex/AUSTTXGR",
+         "relationship-data": [         {
+            "relationship-key": "complex.physical-location-id",
+            "relationship-value": "AUSTTXGR"
+         }]
+      }
+   ]}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegion25.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegion25.json
new file mode 100644
index 0000000..fadbf9c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegion25.json
@@ -0,0 +1,596 @@
+{
+   "cloud-owner": "att-aic",
+   "cloud-region-id": "mtn6",
+   "cloud-type": "openstack",
+   "owner-defined-type": "LCP",
+   "cloud-region-version": "2.5",
+   "cloud-zone": "AUS1",
+   "complex-name": "mtn6",
+   "resource-version": "1485202577",
+   "relationship-list": {"relationship":    [
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/316fd41a-5943-4028-b537-9eace4a94387",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "316fd41a-5943-4028-b537-9eace4a94387"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1702-125"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c7910b86-8830-4b43-8d93-895f4e71ee8a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c7910b86-8830-4b43-8d93-895f4e71ee8a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_33"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/491508c7-1246-4ebc-a080-98fbe272291a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "491508c7-1246-4ebc-a080-98fbe272291a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_23"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/acaccfdb-2bf9-4ccb-b123-c54e28e8e310",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "acaccfdb-2bf9-4ccb-b123-c54e28e8e310"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-2002"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/8594c6a8-f8ff-43aa-a0b5-952fd60c9f6a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8594c6a8-f8ff-43aa-a0b5-952fd60c9f6a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_45"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/cf82a73f-de7f-4f84-8dfc-16a487c63a36",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "cf82a73f-de7f-4f84-8dfc-16a487c63a36"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-2001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/259062a4-dc9a-43f2-b46d-46f8b31bb661",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "259062a4-dc9a-43f2-b46d-46f8b31bb661"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_29"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/5102bbfc-44f3-4cd3-ae1e-0c9942653aed",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "5102bbfc-44f3-4cd3-ae1e-0c9942653aed"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_30"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/9b6d2ec3-1e58-4927-91a4-0dabe260436e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "9b6d2ec3-1e58-4927-91a4-0dabe260436e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_31"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/268c0582-a5b3-4f9f-8f4f-ea0f93620212",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "268c0582-a5b3-4f9f-8f4f-ea0f93620212"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_23"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/48627fd2-b3f2-4867-9fa3-f6425a7d22f5",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "48627fd2-b3f2-4867-9fa3-f6425a7d22f5"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_10"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fb630eb9-44a3-4a90-a0c9-e52002f9f555",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb630eb9-44a3-4a90-a0c9-e52002f9f555"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_28"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/65cc74dd-bffb-4f71-8db8-0fb6e6ac36ef",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "65cc74dd-bffb-4f71-8db8-0fb6e6ac36ef"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_26"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/29ee3893-b7d0-4420-a035-c990fc32eb1c",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "29ee3893-b7d0-4420-a035-c990fc32eb1c"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_48"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f8fb2eaa-68f7-4a1a-8adb-37ba7b3d891e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f8fb2eaa-68f7-4a1a-8adb-37ba7b3d891e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1702-126"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c1fc2c47-4986-4d42-80c3-379d5252bdb1",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c1fc2c47-4986-4d42-80c3-379d5252bdb1"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_40"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e47d1154-03b4-44a1-8196-6fb947f4d4b3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e47d1154-03b4-44a1-8196-6fb947f4d4b3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_26"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/09e0d15b-e36c-4bf5-8c2b-f4ce9256854f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "09e0d15b-e36c-4bf5-8c2b-f4ce9256854f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/7b86609c-1c79-4329-bf21-15df6db1ffe0",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7b86609c-1c79-4329-bf21-15df6db1ffe0"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c547848e-2617-4161-9154-1aa6cca60994",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c547848e-2617-4161-9154-1aa6cca60994"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/d348293a-2f7b-4925-bf21-fd59c2e52bfa",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d348293a-2f7b-4925-bf21-fd59c2e52bfa"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_32"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/92e7461d-358a-47a3-be5e-669dcf6400ef",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "92e7461d-358a-47a3-be5e-669dcf6400ef"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/01c857bf-c75e-4f1c-886c-f651a8479037",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "01c857bf-c75e-4f1c-886c-f651a8479037"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0509A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4cadeb8b-f258-436d-a998-de887f10d180",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4cadeb8b-f258-436d-a998-de887f10d180"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0511C"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/d9b00452-16c5-441f-9455-2954b93b7be7",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d9b00452-16c5-441f-9455-2954b93b7be7"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512C"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f170b669-031a-47ff-a545-61a5fbfaf884",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f170b669-031a-47ff-a545-61a5fbfaf884"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_1Bindings_324_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fb7ed40a-4c29-464c-a9d7-edc314802cc4",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb7ed40a-4c29-464c-a9d7-edc314802cc4"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f901b9d6-3779-4f0d-a925-cb7e5e84650a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f901b9d6-3779-4f0d-a925-cb7e5e84650a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-155"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e901cbc9-b964-4e8f-a363-12fe30585526",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e901cbc9-b964-4e8f-a363-12fe30585526"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4a5b95a6-4659-406e-bd39-d7909fed055f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4a5b95a6-4659-406e-bd39-d7909fed055f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-1707-ipv6-6001-badMask"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/7883684f-4ee0-460e-a277-0276e79fb8b8",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7883684f-4ee0-460e-a277-0276e79fb8b8"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_HnportalProviderNetwork.HNPortalPROVIDERNETWORK.SR_IOV_Provider2_1_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/da4d0845-1e2f-4d94-a66f-bca45242c12f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "da4d0845-1e2f-4d94-a66f-bca45242c12f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_29"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c06bf62e-7c26-4c12-818f-927c3c25a38a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c06bf62e-7c26-4c12-818f-927c3c25a38a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/b09885f5-afce-400c-84dc-0a2779fc3e21",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b09885f5-afce-400c-84dc-0a2779fc3e21"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "ST-MTN6-NoBinding-1707-18-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e746082a-41dc-40ec-a06e-d1138004902e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e746082a-41dc-40ec-a06e-d1138004902e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1710-4001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f1c5642c-c7d8-4409-997f-b5b186d8892f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f1c5642c-c7d8-4409-997f-b5b186d8892f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-119"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/51e3b192-31e3-4c3e-89a9-e1f2592e15fc",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "51e3b192-31e3-4c3e-89a9-e1f2592e15fc"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_1311"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fc0ae18f-0a1f-4773-b387-5aed5b58fffb",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fc0ae18f-0a1f-4773-b387-5aed5b58fffb"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_021618"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0384d743-f69b-4cc8-9aa8-c3ae66662c44"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_020118"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/6ee51b6e-2b54-45cf-83f7-8bfa2c4ecaf3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6ee51b6e-2b54-45cf-83f7-8bfa2c4ecaf3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_Dev_HostRoutes-1802-bns-2001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/aaaa-bbbb-cccc-dddd-eeee",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "aaaa-bbbb-cccc-dddd-eeee"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "direct_dhcp_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/800bdc98-4326-4358-980d-e552e2105eaf",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "800bdc98-4326-4358-980d-e552e2105eaf"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512B"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/b11eb5fc-082d-424a-a14c-f356d1ce611d",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b11eb5fc-082d-424a-a14c-f356d1ce611d"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "DEV-1Binding-1710-0814-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4636eea4-86a3-4cd3-806d-a63f29542ba3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4636eea4-86a3-4cd3-806d-a63f29542ba3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "DEV-MTN6-NoBinding-1707-20-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/1111-2222-3333-4444-5555",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "1111-2222-3333-4444-5555"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-25180-L-06Shared_OAM_PROTECTED_NET_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/67743f38-c2ac-4309-b81c-8b05381e5522",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "67743f38-c2ac-4309-b81c-8b05381e5522"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "dev_Bindings_full_1710_0907A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/wwww-xxxx-yyyy-zzzz",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "wwww-xxxx-yyyy-zzzz"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-25180-P-ALPSGA01_oam_direct_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/ed885e04-ffe5-47fb-bb20-103e5e22ef89",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "ed885e04-ffe5-47fb-bb20-103e5e22ef89"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_Dev_HostRoutes-1802-bns-1002"
+         }]
+      },
+            {
+         "related-to": "complex",
+         "related-link": "/aai/v11/cloud-infrastructure/complexes/complex/AUSTTXGR",
+         "relationship-data": [         {
+            "relationship-key": "complex.physical-location-id",
+            "relationship-value": "AUSTTXGR"
+         }]
+      }
+   ]}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegionError.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegionError.json
new file mode 100644
index 0000000..97611c1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAICloudRegionError.json
@@ -0,0 +1,596 @@
+{
+   "cloud-owner": "att-aic",
+   "cloud-region-id": "ERROR",
+   "cloud-type": "openstack",
+   "owner-defined-type": "LCP",
+   "cloud-region-version": "3.0",
+   "cloud-zone": "AUS1",
+   "complex-name": "mtn6",
+   "resource-version": "1485202577",
+   "relationship-list": {"relationship":    [
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/316fd41a-5943-4028-b537-9eace4a94387",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "316fd41a-5943-4028-b537-9eace4a94387"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1702-125"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c7910b86-8830-4b43-8d93-895f4e71ee8a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c7910b86-8830-4b43-8d93-895f4e71ee8a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_33"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/491508c7-1246-4ebc-a080-98fbe272291a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "491508c7-1246-4ebc-a080-98fbe272291a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_23"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/acaccfdb-2bf9-4ccb-b123-c54e28e8e310",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "acaccfdb-2bf9-4ccb-b123-c54e28e8e310"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-2002"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/8594c6a8-f8ff-43aa-a0b5-952fd60c9f6a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8594c6a8-f8ff-43aa-a0b5-952fd60c9f6a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_45"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/cf82a73f-de7f-4f84-8dfc-16a487c63a36",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "cf82a73f-de7f-4f84-8dfc-16a487c63a36"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-2001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/259062a4-dc9a-43f2-b46d-46f8b31bb661",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "259062a4-dc9a-43f2-b46d-46f8b31bb661"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_29"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/5102bbfc-44f3-4cd3-ae1e-0c9942653aed",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "5102bbfc-44f3-4cd3-ae1e-0c9942653aed"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_30"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/9b6d2ec3-1e58-4927-91a4-0dabe260436e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "9b6d2ec3-1e58-4927-91a4-0dabe260436e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_31"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/268c0582-a5b3-4f9f-8f4f-ea0f93620212",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "268c0582-a5b3-4f9f-8f4f-ea0f93620212"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_23"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/48627fd2-b3f2-4867-9fa3-f6425a7d22f5",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "48627fd2-b3f2-4867-9fa3-f6425a7d22f5"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_10"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fb630eb9-44a3-4a90-a0c9-e52002f9f555",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb630eb9-44a3-4a90-a0c9-e52002f9f555"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_28"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/65cc74dd-bffb-4f71-8db8-0fb6e6ac36ef",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "65cc74dd-bffb-4f71-8db8-0fb6e6ac36ef"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_26"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/29ee3893-b7d0-4420-a035-c990fc32eb1c",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "29ee3893-b7d0-4420-a035-c990fc32eb1c"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_48"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f8fb2eaa-68f7-4a1a-8adb-37ba7b3d891e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f8fb2eaa-68f7-4a1a-8adb-37ba7b3d891e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1702-126"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c1fc2c47-4986-4d42-80c3-379d5252bdb1",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c1fc2c47-4986-4d42-80c3-379d5252bdb1"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_40"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e47d1154-03b4-44a1-8196-6fb947f4d4b3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e47d1154-03b4-44a1-8196-6fb947f4d4b3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_26"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/09e0d15b-e36c-4bf5-8c2b-f4ce9256854f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "09e0d15b-e36c-4bf5-8c2b-f4ce9256854f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/7b86609c-1c79-4329-bf21-15df6db1ffe0",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7b86609c-1c79-4329-bf21-15df6db1ffe0"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c547848e-2617-4161-9154-1aa6cca60994",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c547848e-2617-4161-9154-1aa6cca60994"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/d348293a-2f7b-4925-bf21-fd59c2e52bfa",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d348293a-2f7b-4925-bf21-fd59c2e52bfa"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_TEST_1702_A_int_HngwProtectedOam.OAM_net_32"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/92e7461d-358a-47a3-be5e-669dcf6400ef",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "92e7461d-358a-47a3-be5e-669dcf6400ef"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "oam-net"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/01c857bf-c75e-4f1c-886c-f651a8479037",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "01c857bf-c75e-4f1c-886c-f651a8479037"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0509A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4cadeb8b-f258-436d-a998-de887f10d180",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4cadeb8b-f258-436d-a998-de887f10d180"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0511C"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/d9b00452-16c5-441f-9455-2954b93b7be7",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d9b00452-16c5-441f-9455-2954b93b7be7"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512C"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f170b669-031a-47ff-a545-61a5fbfaf884",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f170b669-031a-47ff-a545-61a5fbfaf884"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_1Bindings_324_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fb7ed40a-4c29-464c-a9d7-edc314802cc4",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb7ed40a-4c29-464c-a9d7-edc314802cc4"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f901b9d6-3779-4f0d-a925-cb7e5e84650a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f901b9d6-3779-4f0d-a925-cb7e5e84650a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-155"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e901cbc9-b964-4e8f-a363-12fe30585526",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e901cbc9-b964-4e8f-a363-12fe30585526"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4a5b95a6-4659-406e-bd39-d7909fed055f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4a5b95a6-4659-406e-bd39-d7909fed055f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-1707-ipv6-6001-badMask"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/7883684f-4ee0-460e-a277-0276e79fb8b8",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7883684f-4ee0-460e-a277-0276e79fb8b8"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_HnportalProviderNetwork.HNPortalPROVIDERNETWORK.SR_IOV_Provider2_1_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/da4d0845-1e2f-4d94-a66f-bca45242c12f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "da4d0845-1e2f-4d94-a66f-bca45242c12f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_29"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/c06bf62e-7c26-4c12-818f-927c3c25a38a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c06bf62e-7c26-4c12-818f-927c3c25a38a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Mobility_ATM_1707_int_HngwOamNetVto.HNGWOAMNETVTO.OAM_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/b09885f5-afce-400c-84dc-0a2779fc3e21",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b09885f5-afce-400c-84dc-0a2779fc3e21"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "ST-MTN6-NoBinding-1707-18-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/e746082a-41dc-40ec-a06e-d1138004902e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e746082a-41dc-40ec-a06e-d1138004902e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1710-4001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/f1c5642c-c7d8-4409-997f-b5b186d8892f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f1c5642c-c7d8-4409-997f-b5b186d8892f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-119"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/51e3b192-31e3-4c3e-89a9-e1f2592e15fc",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "51e3b192-31e3-4c3e-89a9-e1f2592e15fc"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_1311"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/fc0ae18f-0a1f-4773-b387-5aed5b58fffb",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fc0ae18f-0a1f-4773-b387-5aed5b58fffb"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_021618"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0384d743-f69b-4cc8-9aa8-c3ae66662c44"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_Bindings_1802_020118"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/6ee51b6e-2b54-45cf-83f7-8bfa2c4ecaf3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6ee51b6e-2b54-45cf-83f7-8bfa2c4ecaf3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_Dev_HostRoutes-1802-bns-2001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/aaaa-bbbb-cccc-dddd-eeee",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "aaaa-bbbb-cccc-dddd-eeee"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "direct_dhcp_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/800bdc98-4326-4358-980d-e552e2105eaf",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "800bdc98-4326-4358-980d-e552e2105eaf"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "Dev_NoBinding-1707-0512B"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/b11eb5fc-082d-424a-a14c-f356d1ce611d",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b11eb5fc-082d-424a-a14c-f356d1ce611d"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "DEV-1Binding-1710-0814-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/4636eea4-86a3-4cd3-806d-a63f29542ba3",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4636eea4-86a3-4cd3-806d-a63f29542ba3"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "DEV-MTN6-NoBinding-1707-20-1000A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/1111-2222-3333-4444-5555",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "1111-2222-3333-4444-5555"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-25180-L-06Shared_OAM_PROTECTED_NET_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/67743f38-c2ac-4309-b81c-8b05381e5522",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "67743f38-c2ac-4309-b81c-8b05381e5522"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "dev_Bindings_full_1710_0907A"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/wwww-xxxx-yyyy-zzzz",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "wwww-xxxx-yyyy-zzzz"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-25180-P-ALPSGA01_oam_direct_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "related-link": "/aai/v11/network/l3-networks/l3-network/ed885e04-ffe5-47fb-bb20-103e5e22ef89",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "ed885e04-ffe5-47fb-bb20-103e5e22ef89"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MSO_Dev_HostRoutes-1802-bns-1002"
+         }]
+      },
+            {
+         "related-to": "complex",
+         "related-link": "/aai/v11/cloud-infrastructure/complexes/complex/AUSTTXGR",
+         "relationship-data": [         {
+            "relationship-key": "complex.physical-location-id",
+            "relationship-value": "AUSTTXGR"
+         }]
+      }
+   ]}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAINetworkTestResponse.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAINetworkTestResponse.json
new file mode 100644
index 0000000..181494d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAINetworkTestResponse.json
@@ -0,0 +1,141 @@
+{
+	"network-id": "467e3349-bec1-4922-bcb1-d0bb041bce30",
+	"network-name": "vprobes_pktinternal_net_4_1806",
+	"network-type": "CONTRAIL30_BASIC",
+	"network-role": "NetworkPktinternalInt2.pktinternal_int",
+	"network-technology": "",
+	"is-bound-to-vpn": false,
+	"service-id": "eb68dedb-840d-4bd4-a745-d9fcd8fc8468",
+	"network-role-instance": 0,
+	"resource-version": "1527285069624",
+	"orchestration-status": "Assigned",
+	"physical-network-name": "tbd",
+	"is-provider-network": false,
+	"is-shared-network": false,
+	"is-external-network": false,
+	"selflink": "restconf/config/GENERIC-RESOURCE-API:services/service/eb68dedb-840d-4bd4-a745-d9fcd8fc8468/service-data/networks/network/467e3349-bec1-4922-bcb1-d0bb041bce30/network-data/network-topology/",
+	"subnets": {
+		"subnet": [
+			{
+				"subnet-id": "46aee427-3aa0-4c1f-beb6-edf6caae2dc1",
+				"subnet-name": "vprobes_pktinternal_net_4_1806_subnet_1",
+				"gateway-address": "192.168.224.1",
+				"network-start-address": "192.168.224.0",
+				"cidr-mask": "21",
+				"ip-version": "4",
+				"orchestration-status": "PendingCreate",
+				"dhcp-enabled": false,
+				"dhcp-start": "192.168.224.3",
+				"dhcp-end": "192.168.224.5",
+				"subnet-role": "DHCP",
+				"ip-assignment-direction": "true",
+				"resource-version": "1527285068387",
+				"host-routes": {
+					"host-route": [
+						{
+							"host-route-id": "1de02743-580a-4f99-8285-3ba6eadb0892",
+							"route-prefix": "",
+							"next-hop": "",
+							"resource-version": "1527285059650"
+						}
+					]
+				}
+			}
+		]
+	},
+	"relationship-list": {
+		"relationship": [
+			{
+				"related-to": "service-instance",
+				"relationship-label": "org.onap.relationships.inventory.ComposedOf",
+				"related-link": "/aai/v12/business/customers/customer/a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb/service-subscriptions/service-subscription/Mobility/service-instances/service-instance/eb68dedb-840d-4bd4-a745-d9fcd8fc8468",
+				"relationship-data": [
+					{
+						"relationship-key": "customer.global-customer-id",
+						"relationship-value": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
+					},
+					{
+						"relationship-key": "service-subscription.service-type",
+						"relationship-value": "Mobility"
+					},
+					{
+						"relationship-key": "service-instance.service-instance-id",
+						"relationship-value": "eb68dedb-840d-4bd4-a745-d9fcd8fc8468"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "service-instance.service-instance-name",
+						"property-value": "eb68dedb-840d-4bd4-a745-d9fcd8fc8468"
+					}
+				]
+			},
+			{
+				"related-to": "cloud-region",
+				"relationship-label": "org.onap.relationships.inventory.Uses",
+				"related-link": "/aai/v12/cloud-infrastructure/cloud-regions/cloud-region/att-aic/DYH1A",
+				"relationship-data": [
+					{
+						"relationship-key": "cloud-region.cloud-owner",
+						"relationship-value": "att-aic"
+					},
+					{
+						"relationship-key": "cloud-region.cloud-region-id",
+						"relationship-value": "DYH1A"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "cloud-region.owner-defined-type",
+						"property-value": "lcp"
+					}
+				]
+			},
+			{
+				"related-to": "tenant",
+				"relationship-label": "org.onap.relationships.inventory.Uses",
+				"related-link": "/aai/v12/cloud-infrastructure/cloud-regions/cloud-region/att-aic/DYH1A/tenants/tenant/2871503957144f72b3cf481b379828ec",
+				"relationship-data": [
+					{
+						"relationship-key": "cloud-region.cloud-owner",
+						"relationship-value": "att-aic"
+					},
+					{
+						"relationship-key": "cloud-region.cloud-region-id",
+						"relationship-value": "DYH1A"
+					},
+					{
+						"relationship-key": "tenant.tenant-id",
+						"relationship-value": "2871503957144f72b3cf481b379828ec"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "tenant.tenant-name",
+						"property-value": "APP-C-24595-T-IST-04A"
+					}
+				]
+			},
+			{
+				"related-to": "vpn-binding",
+				"relationship-label": "org.onap.relationships.inventory.Uses",
+				"related-link": "/aai/v12/network/vpn-bindings/vpn-binding/13e94b71-3ce1-4988-ab0e-61208fc91f1c",
+				"relationship-data": [
+					{
+						"relationship-key": "vpn-binding.vpn-id",
+						"relationship-value": "13e94b71-3ce1-4988-ab0e-61208fc91f1c"
+					}
+				],
+				"related-to-property": [
+					{
+						"property-key": "vpn-binding.vpn-name",
+						"property-value": "vMDNS"
+					},
+					{
+						"property-key": "vpn-binding.vpn-type"
+					}
+				]
+			}
+		]
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIResponse.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIResponse.json
new file mode 100644
index 0000000..b22f389
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIResponse.json
@@ -0,0 +1,166 @@
+{
+   "network-id": "0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+   "network-name": "Dev_Bindings_1802_020118",
+   "network-type": "CONTRAIL30_BASIC",
+   "network-role": "GN_EVPN_direct",
+   "network-technology": "contrail",
+   "neutron-network-id": "1112b912-0e00-4d6d-9392-014e106399ee",
+   "is-bound-to-vpn": true,
+   "service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+   "network-role-instance": 0,
+   "resource-version": "1517496965485",
+   "orchestration-status": "Active",
+   "heat-stack-id": "Dev_Bindings_1802_020118/06c2445f-1ca1-4ad8-be08-454c4de443bb",
+   "contrail-network-fqdn": "default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_020118",
+   "physical-network-name": "tbd",
+   "is-provider-network": false,
+   "is-shared-network": true,
+   "is-external-network": false,
+   "subnets": {"subnet":    [
+            {
+         "subnet-id": "209f62cf-cf0c-42f8-b13c-f038b92ef108",
+         "subnet-name": "",
+         "neutron-subnet-id": "3942ca32-5f5b-4d62-a2e4-b528b7a4318c",
+         "gateway-address": "192.168.41.1",
+         "network-start-address": "192.168.41.0",
+         "cidr-mask": "24",
+         "ip-version": "4",
+         "orchestration-status": "Active",
+         "dhcp-enabled": true,
+         "dhcp-start": "192.168.41.3",
+         "dhcp-end": "192.168.41.45",
+         "ip-assignment-direction": "",
+         "resource-version": "1517496965497"
+      },
+            {
+         "subnet-id": "971bc608-1aff-47c0-923d-92e43b699f01",
+         "subnet-name": "",
+         "neutron-subnet-id": "81a5ff92-7ca4-4756-a493-496479f0d10f",
+         "gateway-address": "192.168.42.1",
+         "network-start-address": "192.168.42.0",
+         "cidr-mask": "24",
+         "ip-version": "4",
+         "orchestration-status": "Active",
+         "dhcp-enabled": true,
+         "dhcp-start": "192.168.42.3",
+         "dhcp-end": "192.168.42.45",
+         "ip-assignment-direction": "",
+         "resource-version": "1517496965508"
+      }
+   ]},
+   "relationship-list": {"relationship":    [
+            {
+         "related-to": "service-instance",
+         "related-link": "/aai/v11/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/cc88915e-fb95-4b16-9c1e-a0abf40d1e40",
+         "relationship-data":          [
+                        {
+               "relationship-key": "customer.global-customer-id",
+               "relationship-value": "MSO_1610_dev"
+            },
+                        {
+               "relationship-key": "service-subscription.service-type",
+               "relationship-value": "MSO-dev-service-type"
+            },
+                        {
+               "relationship-key": "service-instance.service-instance-id",
+               "relationship-value": "cc88915e-fb95-4b16-9c1e-a0abf40d1e40"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "service-instance.service-instance-name",
+            "property-value": "MSO-DEV-SI-1802-v6-2-01-nwk1"
+         }]
+      },
+            {
+         "related-to": "cloud-region",
+         "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6",
+         "relationship-data":          [
+                        {
+               "relationship-key": "cloud-region.cloud-owner",
+               "relationship-value": "att-aic"
+            },
+                        {
+               "relationship-key": "cloud-region.cloud-region-id",
+               "relationship-value": "mtn6"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "cloud-region.owner-defined-type",
+            "property-value": "LCP"
+         }]
+      },
+            {
+         "related-to": "tenant",
+         "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/tenants/tenant/0422ffb57ba042c0800a29dc85ca70f8",
+         "relationship-data":          [
+                        {
+               "relationship-key": "cloud-region.cloud-owner",
+               "relationship-value": "att-aic"
+            },
+                        {
+               "relationship-key": "cloud-region.cloud-region-id",
+               "relationship-value": "mtn6"
+            },
+                        {
+               "relationship-key": "tenant.tenant-id",
+               "relationship-value": "0422ffb57ba042c0800a29dc85ca70f8"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "tenant.tenant-name",
+            "property-value": "ECOMP_MSO_DND"
+         }]
+      },
+            {
+         "related-to": "route-table-reference",
+         "related-link": "/aai/v11/network/route-table-references/route-table-reference/c87fa27e-ac15-4b3e-b7ef-866682d8ca00",
+         "relationship-data": [         {
+            "relationship-key": "route-table-reference.route-table-reference-id",
+            "relationship-value": "c87fa27e-ac15-4b3e-b7ef-866682d8ca00"
+         }],
+         "related-to-property": [         {
+            "property-key": "route-table-reference.route-table-reference-fqdn",
+            "property-value": "default-domain:ECOMP_MSO_DND:RTA"
+         }]
+      },
+            {
+         "related-to": "network-policy",
+         "related-link": "/aai/v11/network/network-policies/network-policy/0219d83f-7c4a-48e2-b8fc-9b20459356bc",
+         "relationship-data": [         {
+            "relationship-key": "network-policy.network-policy-id",
+            "relationship-value": "0219d83f-7c4a-48e2-b8fc-9b20459356bc"
+         }],
+         "related-to-property": [         {
+            "property-key": "network-policy.network-policy-fqdn",
+            "property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyD"
+         }]
+      },
+            {
+         "related-to": "network-policy",
+         "related-link": "/aai/v11/network/network-policies/network-policy/e7a3560c-8b29-4611-a404-83af0b31ce64",
+         "relationship-data": [         {
+            "relationship-key": "network-policy.network-policy-id",
+            "relationship-value": "e7a3560c-8b29-4611-a404-83af0b31ce64"
+         }],
+         "related-to-property": [         {
+            "property-key": "network-policy.network-policy-fqdn",
+            "property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyC"
+         }]
+      },
+            {
+         "related-to": "vpn-binding",
+         "related-link": "/aai/v11/network/vpn-bindings/vpn-binding/9a7b327d9-287aa00-82c4b0-100001",
+         "relationship-data": [         {
+            "relationship-key": "vpn-binding.vpn-id",
+            "relationship-value": "9a7b327d9-287aa00-82c4b0-100001"
+         }],
+         "related-to-property":          [
+                        {
+               "property-key": "vpn-binding.vpn-name",
+               "property-value": "MSO_VPN_TEST"
+            },
+            {"property-key": "vpn-binding.vpn-type"}
+         ]
+      }
+   ]}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIResponseEmptyUri.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIResponseEmptyUri.json
new file mode 100644
index 0000000..c581e54
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIResponseEmptyUri.json
@@ -0,0 +1,53 @@
+{
+   "network-id": "0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+   "network-name": "Dev_Bindings_1802_020118",
+   "network-type": "CONTRAIL30_BASIC",
+   "network-role": "GN_EVPN_direct",
+   "network-technology": "contrail",
+   "neutron-network-id": "1112b912-0e00-4d6d-9392-014e106399ee",
+   "is-bound-to-vpn": true,
+   "service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+   "network-role-instance": 0,
+   "resource-version": "1517496965485",
+   "orchestration-status": "Active",
+   "heat-stack-id": "Dev_Bindings_1802_020118/06c2445f-1ca1-4ad8-be08-454c4de443bb",
+   "contrail-network-fqdn": "default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_020118",
+   "physical-network-name": "tbd",
+   "is-provider-network": false,
+   "is-shared-network": true,
+   "is-external-network": false,
+   "subnets": {"subnet":    [
+            {
+         "subnet-id": "209f62cf-cf0c-42f8-b13c-f038b92ef108",
+         "subnet-name": "",
+         "neutron-subnet-id": "3942ca32-5f5b-4d62-a2e4-b528b7a4318c",
+         "gateway-address": "192.168.41.1",
+         "network-start-address": "192.168.41.0",
+         "cidr-mask": "24",
+         "ip-version": "4",
+         "orchestration-status": "Active",
+         "dhcp-enabled": true,
+         "dhcp-start": "192.168.41.3",
+         "dhcp-end": "192.168.41.45",
+         "ip-assignment-direction": "",
+         "resource-version": "1517496965497"
+      },
+            {
+         "subnet-id": "971bc608-1aff-47c0-923d-92e43b699f01",
+         "subnet-name": "",
+         "neutron-subnet-id": "81a5ff92-7ca4-4756-a493-496479f0d10f",
+         "gateway-address": "192.168.42.1",
+         "network-start-address": "192.168.42.0",
+         "cidr-mask": "24",
+         "ip-version": "4",
+         "orchestration-status": "Active",
+         "dhcp-enabled": true,
+         "dhcp-start": "192.168.42.3",
+         "dhcp-end": "192.168.42.45",
+         "ip-assignment-direction": "",
+         "resource-version": "1517496965508"
+      }
+   ]},
+   "relationship-list": {"relationship":    []
+   }
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIVpnBindingTestResponse.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIVpnBindingTestResponse.json
new file mode 100644
index 0000000..5d9231d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryAAIVpnBindingTestResponse.json
@@ -0,0 +1,891 @@
+{
+   "vpn-id": "13e94b71-3ce1-4988-ab0e-61208fc91f1c",
+   "vpn-name": "vMDNS",
+   "resource-version": "1510956324462",
+   "relationship-list": {"relationship":    [
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/b3376949-5487-4a74-9029-332c07720c07",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "b3376949-5487-4a74-9029-332c07720c07"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vEPDG-FN-26642-T-01_hsl_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/d0b8ecd3-aee4-48ba-8bc5-222d3fb08162",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d0b8ecd3-aee4-48ba-8bc5-222d3fb08162"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_Shared_oam_protected_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/34305bd0-ad54-4349-8567-6f65ea09e750",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "34305bd0-ad54-4349-8567-6f65ea09e750"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_vEPDG-FN_swu_direct_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/dfa4972a-ed82-43cd-98be-ed73bb3406a9",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "dfa4972a-ed82-43cd-98be-ed73bb3406a9"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_Shared_EXN_INTERNET_NET_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/93556256-aa23-449d-a2fd-3a9c034f232a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "93556256-aa23-449d-a2fd-3a9c034f232a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_CORE-NSD-TOAM0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/7ce01c3a-5998-4908-85f6-ab29bc507a92",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7ce01c3a-5998-4908-85f6-ab29bc507a92"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B-VSHAKEN_CORE-NSD-TOAM0_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/016d3722-999b-4133-b4e6-8a1088bab664",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "016d3722-999b-4133-b4e6-8a1088bab664"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND-vepdg-FN-Shared_oam_protected_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/80038196-9eae-452c-ad06-1f3fef1bef9f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "80038196-9eae-452c-ad06-1f3fef1bef9f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_VPMS-FN-26071-T-BE-01_cdr_direct_net420"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/f5f38447-dc62-4969-90a3-c60474f9c0ac",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f5f38447-dc62-4969-90a3-c60474f9c0ac"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_Shared_OAM_DIRECT_NET_3"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/58b374aa-01ca-4a39-99b9-889c2f7ae908",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "58b374aa-01ca-4a39-99b9-889c2f7ae908"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_OAM_MGMT_NET_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/efe0dfca-18e7-4992-a63a-041b9f8271e0",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "efe0dfca-18e7-4992-a63a-041b9f8271e0"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_APN-dns_int_apn_dns_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/dab7e704-6a6e-4c53-9a80-fb5857a43b6f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "dab7e704-6a6e-4c53-9a80-fb5857a43b6f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B-VSHAKEN_CORE-NSD-TOAM0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/634653b3-9084-41d9-ad6a-40863a3d666f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "634653b3-9084-41d9-ad6a-40863a3d666f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-01A_int_fw_dns_trusted_net_5"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/6117b35e-c029-4308-85e6-007c24014484",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6117b35e-c029-4308-85e6-007c24014484"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-24595-D-T001_vprobes_int_mgmt_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/eb1ce51b-d10f-4b08-9166-345335b9f73b",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "eb1ce51b-d10f-4b08-9166-345335b9f73b"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_OAMP_NSD_ISBC0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/468f83be-4abb-4901-950b-e399b77a09a0",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "468f83be-4abb-4901-950b-e399b77a09a0"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_IRPR-TOAM0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/103d17dc-6575-427c-a2c1-301493e08ec0",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "103d17dc-6575-427c-a2c1-301493e08ec0"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_segw_hsl_direct_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/305214f8-64be-4209-8a0d-10b6dfb77dd1",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "305214f8-64be-4209-8a0d-10b6dfb77dd1"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_vMDS_FN_int_fw_dns_trusted_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/7989a6d2-ba10-4a5d-8f15-4520bc833090",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7989a6d2-ba10-4a5d-8f15-4520bc833090"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02AShared_cor_direct_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/f040ebf4-76ad-4b05-a766-1deec26549ae",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f040ebf4-76ad-4b05-a766-1deec26549ae"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vEPDG-FN-26642-T-01_gn_untrusted_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/26d6038b-4b9e-4fe5-bcff-9af7586651cc",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "26d6038b-4b9e-4fe5-bcff-9af7586651cc"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-24595-D-T001_vprobes_pktinternal_net_10"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/9e78d3f4-85b5-40b8-803e-c3a0ab6d6165",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "9e78d3f4-85b5-40b8-803e-c3a0ab6d6165"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_MNS_Shared_oam_protected_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/a2de22f9-eb91-452e-aff5-e81a1a679ef6",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "a2de22f9-eb91-452e-aff5-e81a1a679ef6"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_Shared_GN_DIRECT_NET_01"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/6d6b7254-72d2-4731-80d6-8e8375d959e9",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6d6b7254-72d2-4731-80d6-8e8375d959e9"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_VDBE-PED-DMZ0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/21819ac4-95c4-490f-ba7c-0ad92920f805",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "21819ac4-95c4-490f-ba7c-0ad92920f805"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_FN_int_pktinternal_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/98ff6827-320a-4b71-bd2b-df2bd20b6855",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "98ff6827-320a-4b71-bd2b-df2bd20b6855"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_Shared_oam_protected_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/e229ab86-279c-4505-a08a-91e373293e20",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "e229ab86-279c-4505-a08a-91e373293e20"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_Shared_OAM_DIRECT_NET_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/bb722f93-2d1a-42a5-bd11-57ad30ff1085",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "bb722f93-2d1a-42a5-bd11-57ad30ff1085"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_segw_hsl_direct_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/0399443d-1fc6-42a6-934c-77030d751916",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0399443d-1fc6-42a6-934c-77030d751916"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_VDBE-PED-DMZ0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/d259ec74-304d-4bd2-bbd6-93c201acba42",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "d259ec74-304d-4bd2-bbd6-93c201acba42"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A__vprobes_int_mgmt_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/f69fb458-e2bd-4d0f-9a47-430d18cbebfd",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f69fb458-e2bd-4d0f-9a47-430d18cbebfd"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_VPMS-FN-26071-T-BE-01_cdr_direct_net4"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/0f18b91f-ee79-403b-a081-8c0a89650641",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0f18b91f-ee79-403b-a081-8c0a89650641"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_VPMS-FN_int_pktinternal_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/90fdbbbb-42bb-41ff-9356-db245466a4fc",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "90fdbbbb-42bb-41ff-9356-db245466a4fc"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_Shared_oam_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/0e66adce-d5dd-4968-bcb2-83f0281424db",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0e66adce-d5dd-4968-bcb2-83f0281424db"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B-VSHAKEN_VDBF-MIS-UDAT0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/db572383-dbd7-4d5e-93cb-8c7c1d209a90",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "db572383-dbd7-4d5e-93cb-8c7c1d209a90"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_TRST_VIF_ISBC0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/478b7f86-8544-48e5-95f1-568dfd18730d",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "478b7f86-8544-48e5-95f1-568dfd18730d"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_Shared_GN_DIRECT_NET_01"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/0f725895-5224-4016-b49a-d9d016eaafff",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0f725895-5224-4016-b49a-d9d016eaafff"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_Shared_OAM_DIRECT_NET_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/9cd47b0c-ee58-46f0-9ec5-b4db504dd59b",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "9cd47b0c-ee58-46f0-9ec5-b4db504dd59b"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "MNS-FN-25180-T-01Shared_oam_protected_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/f95259c9-f5c6-4861-a9f4-b6eec199b33f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "f95259c9-f5c6-4861-a9f4-b6eec199b33f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_Shared_oam_protected_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/caf98ee4-2496-4c92-a41c-b6a50efcc29f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "caf98ee4-2496-4c92-a41c-b6a50efcc29f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_MGM-CORE-NSD-TOAM0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/754739cb-5371-4d5b-a02a-489587d17443",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "754739cb-5371-4d5b-a02a-489587d17443"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_Shared_OAM_DIRECT_NET_4"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/8cd7add8-0cfc-4f65-bbf8-d0f25a0dbc70",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8cd7add8-0cfc-4f65-bbf8-d0f25a0dbc70"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_VDBE-MIS-UDAT0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/7093921f-bed8-4866-bb3c-a2b8c376ca69",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "7093921f-bed8-4866-bb3c-a2b8c376ca69"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_VIRPR-TDAT0_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/691da8b2-805e-4dd1-aaf5-b0e37414c662",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "691da8b2-805e-4dd1-aaf5-b0e37414c662"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_int_pktmirror_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/00eaa0b3-90df-4b43-a850-9d30abb7fded",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "00eaa0b3-90df-4b43-a850-9d30abb7fded"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-01AShared_oam_protected_net_5"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/6ba57200-c61a-46be-821b-88b3fa169b66",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6ba57200-c61a-46be-821b-88b3fa169b66"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_OAM_MGMT_NET_3"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/8e32ec2c-47a1-4514-b21a-2806e23f0437",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8e32ec2c-47a1-4514-b21a-2806e23f0437"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B-VSHAKENb_VDBF-PSD-DMZ0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/a755ddd0-512a-444d-9f38-97b3eff70f85",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "a755ddd0-512a-444d-9f38-97b3eff70f85"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_UNTR_VSE_ISBC0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/c7bde85d-1c12-467c-ae6f-57bdf5c1d380",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c7bde85d-1c12-467c-ae6f-57bdf5c1d380"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B-VSHAKENb_VDBF-PSD-DMZ0_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/0933fcec-9e78-4045-a21a-8258e18cb78e",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "0933fcec-9e78-4045-a21a-8258e18cb78e"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_vdbe_oam_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/6a26a729-d9ce-4619-a20e-38597205ba7d",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "6a26a729-d9ce-4619-a20e-38597205ba7d"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vEPDG-FN-26642-T-01_swu_direct_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/c1a06665-518b-408b-bfe0-8f393204baf6",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c1a06665-518b-408b-bfe0-8f393204baf6"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_OAM_MGMT_NET_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/fb51398b-7622-4570-9bd6-e29c82621d44",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "fb51398b-7622-4570-9bd6-e29c82621d44"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02B_OAM_MGMT_NET_4"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/92072731-1c40-45c2-a218-5e75b713b312",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "92072731-1c40-45c2-a218-5e75b713b312"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_TRST_VIF_ISBC0_net_0001"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/c6d94632-fd6b-4bfe-993e-377b0368476b",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c6d94632-fd6b-4bfe-993e-377b0368476b"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-01AShared_int_ha_net_5"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/84516ef3-e371-4039-908e-83cd2b55a4a1",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "84516ef3-e371-4039-908e-83cd2b55a4a1"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "VPMS-FN-26071-T-BE-01_vprobes_int_mgmt_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/2c4f3adc-1a45-4484-8fb6-9eeac99eb922",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "2c4f3adc-1a45-4484-8fb6-9eeac99eb922"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_VDBE-MIS-UDAT0_net_0"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/1fea0624-dac2-4997-904d-34ca1bc12fa9",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "1fea0624-dac2-4997-904d-34ca1bc12fa9"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02AShared_cps_internal_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/8ab98982-05b7-45b2-828d-648da3d6cc0f",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8ab98982-05b7-45b2-828d-648da3d6cc0f"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vEPDG-FN-26642-T-01_swu_direct_fn_net_2"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/c8934d59-24a8-41cc-af9d-2026ef261843",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c8934d59-24a8-41cc-af9d-2026ef261843"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APPC-24595-T-IST-02A_Shared_oam_protected_net_vrar_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/c741fe5b-bf27-4ad9-b30d-20518e115495",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c741fe5b-bf27-4ad9-b30d-20518e115495"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_int_apn_dns_fn_net_PB_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/8285fbae-ec25-44f7-ac52-89a968d45a2b",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "8285fbae-ec25-44f7-ac52-89a968d45a2b"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-T2B_vEPDG-FN_swu_direct_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/65e6d4b0-0c96-4bfa-bdd6-2baa16df322a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "65e6d4b0-0c96-4bfa-bdd6-2baa16df322a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-DND_vEPDG-FN_gn_untrusted_fn_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/38e51c7b-adc2-491a-a036-3189645b007c",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "38e51c7b-adc2-491a-a036-3189645b007c"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vprobes_pktinternal_net_2_1806"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/4d210b09-b6ce-41b3-95a6-5e4dffea9ca2",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "4d210b09-b6ce-41b3-95a6-5e4dffea9ca2"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vprobes_pktinternal_net_3_1806"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/c5df1c57-3c85-4abc-973f-a1ffb13e391a",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "c5df1c57-3c85-4abc-973f-a1ffb13e391a"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-24595-T-IST-04AShared_untrusted_vDBE_net_1"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/467e3349-bec1-4922-bcb1-d0bb041bce30",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "467e3349-bec1-4922-bcb1-d0bb041bce30"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "vprobes_pktinternal_net_4_1806"
+         }]
+      },
+            {
+         "related-to": "l3-network",
+         "relationship-label": "org.onap.relationships.inventory.Uses",
+         "related-link": "/aai/v12/network/l3-networks/l3-network/1596f4d2-66b5-4627-96f2-c26794154530",
+         "relationship-data": [         {
+            "relationship-key": "l3-network.network-id",
+            "relationship-value": "1596f4d2-66b5-4627-96f2-c26794154530"
+         }],
+         "related-to-property": [         {
+            "property-key": "l3-network.network-name",
+            "property-value": "APP-C-24595-T-IST-04AShared_untrusted_vDBE_net_2"
+         }]
+      }
+   ]}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryIdAAIResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryIdAAIResponse.xml
new file mode 100644
index 0000000..6dd91c6
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/queryIdAAIResponse.xml
@@ -0,0 +1,145 @@
+<l3-network xmlns="http://org.onap.aai.inventory/v11">
+   <network-id>8d35a433-c1db-4d54-a611-6de10aeb76f9</network-id>
+   <network-name>Dev_Bindings_1802_1311</network-name>
+   <network-type>CONTRAIL30_BASIC</network-type>
+   <network-role>GN_EVPN_direct</network-role>
+   <network-technology>contrail</network-technology>
+   <is-bound-to-vpn>true</is-bound-to-vpn>
+   <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+   <network-role-instance>0</network-role-instance>
+   <resource-version>1517430804756</resource-version>
+   <orchestration-status>pending-create</orchestration-status>
+   <physical-network-name>tbd</physical-network-name>
+   <is-provider-network>true</is-provider-network>
+   <is-shared-network>true</is-shared-network>
+   <is-external-network>false</is-external-network>
+   <subnets>
+      <subnet>
+         <subnet-id>9dbb9e7e-fe18-421f-bad6-2305bd282471</subnet-id>
+         <subnet-name />
+         <gateway-address>107.118.41.1</gateway-address>
+         <network-start-address>107.118.41.0</network-start-address>
+         <cidr-mask>24</cidr-mask>
+         <ip-version>4</ip-version>
+         <orchestration-status>pending-create</orchestration-status>
+         <dhcp-enabled>true</dhcp-enabled>
+         <dhcp-start>107.118.41.3</dhcp-start>
+         <dhcp-end>107.118.41.45</dhcp-end>
+         <subnet-role />
+         <ip-assignment-direction>true</ip-assignment-direction>
+         <resource-version>1517430804770</resource-version>
+      </subnet>
+      <subnet>
+         <subnet-id>1bb4e1d2-d225-47f3-b6fc-2d0b290de1ab</subnet-id>
+         <subnet-name />
+         <gateway-address>107.118.42.1</gateway-address>
+         <network-start-address>107.118.42.0</network-start-address>
+         <cidr-mask>24</cidr-mask>
+         <ip-version>4</ip-version>
+         <orchestration-status>pending-create</orchestration-status>
+         <dhcp-enabled>true</dhcp-enabled>
+         <dhcp-start>107.118.42.3</dhcp-start>
+         <dhcp-end>107.118.42.45</dhcp-end>
+         <subnet-role />
+         <ip-assignment-direction>true</ip-assignment-direction>
+         <resource-version>1517430804782</resource-version>
+      </subnet>
+   </subnets>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>/aai/v11/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/f1d1c7da-fc42-4c31-866e-cfe963e55723</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>MSO_1610_dev</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>MSO-dev-service-type</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>f1d1c7da-fc42-4c31-866e-cfe963e55723</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>MSO-DEV-SI-1802-v6-1-31-nwk1</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>cloud-region</related-to>
+         <related-link>/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6</related-link>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-owner</relationship-key>
+            <relationship-value>att-aic</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-region-id</relationship-key>
+            <relationship-value>mtn6</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>cloud-region.owner-defined-type</property-key>
+            <property-value>LCP</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>tenant</related-to>
+         <related-link>/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/tenants/tenant/0422ffb57ba042c0800a29dc85ca70f8</related-link>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-owner</relationship-key>
+            <relationship-value>att-aic</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-region-id</relationship-key>
+            <relationship-value>mtn6</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>tenant.tenant-id</relationship-key>
+            <relationship-value>0422ffb57ba042c0800a29dc85ca70f8</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>tenant.tenant-name</property-key>
+            <property-value>ECOMP_MSO_DND</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>network-policy</related-to>
+         <related-link>/aai/v11/network/network-policies/network-policy/0219d83f-7c4a-48e2-b8fc-9b20459356bc</related-link>
+         <relationship-data>
+            <relationship-key>network-policy.network-policy-id</relationship-key>
+            <relationship-value>0219d83f-7c4a-48e2-b8fc-9b20459356bc</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>network-policy.network-policy-fqdn</property-key>
+            <property-value>default-domain:ECOMP_MSO_DND:MSOPolicyD</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>network-policy</related-to>
+         <related-link>/aai/v11/network/network-policies/network-policy/e7a3560c-8b29-4611-a404-83af0b31ce64</related-link>
+         <relationship-data>
+            <relationship-key>network-policy.network-policy-id</relationship-key>
+            <relationship-value>e7a3560c-8b29-4611-a404-83af0b31ce64</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>network-policy.network-policy-fqdn</property-key>
+            <property-value>default-domain:ECOMP_MSO_DND:MSOPolicyC</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>vpn-binding</related-to>
+         <related-link>/aai/v11/network/vpn-bindings/vpn-binding/9a7b327d9-287aa00-82c4b0-100001</related-link>
+         <relationship-data>
+            <relationship-key>vpn-binding.vpn-id</relationship-key>
+            <relationship-value>9a7b327d9-287aa00-82c4b0-100001</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>vpn-binding.vpn-name</property-key>
+            <property-value>MSO_VPN_TEST</property-value>
+         </related-to-property>
+         <related-to-property>
+            <property-key>vpn-binding.vpn-type</property-key>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</l3-network>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/unassignNetworkBB_queryAAIResponse_.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/unassignNetworkBB_queryAAIResponse_.json
new file mode 100644
index 0000000..f076c90
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/unassignNetworkBB_queryAAIResponse_.json
@@ -0,0 +1,162 @@
+{
+   "network-id": "0384d743-f69b-4cc8-9aa8-c3ae66662c44",
+   "network-name": "Dev_Bindings_1802_020118",
+   "network-type": "CONTRAIL30_BASIC",
+   "network-role": "GN_EVPN_direct",
+   "network-technology": "contrail",
+   "neutron-network-id": "1112b912-0e00-4d6d-9392-014e106399ee",
+   "is-bound-to-vpn": true,
+   "service-id": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+   "network-role-instance": 0,
+   "resource-version": "1517496965485",
+   "orchestration-status": "Active",
+   "heat-stack-id": "Dev_Bindings_1802_020118/06c2445f-1ca1-4ad8-be08-454c4de443bb",
+   "contrail-network-fqdn": "default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_020118",
+   "physical-network-name": "tbd",
+   "is-provider-network": false,
+   "is-shared-network": true,
+   "is-external-network": false,
+   "subnets": {"subnet":    [
+            {
+         "subnet-id": "209f62cf-cf0c-42f8-b13c-f038b92ef108",
+         "subnet-name": "",
+         "neutron-subnet-id": "3942ca32-5f5b-4d62-a2e4-b528b7a4318c",
+         "gateway-address": "192.168.41.1",
+         "network-start-address": "192.168.41.0",
+         "cidr-mask": "24",
+         "ip-version": "4",
+         "orchestration-status": "Active",
+         "dhcp-enabled": true,
+         "dhcp-start": "192.168.41.3",
+         "dhcp-end": "192.168.41.45",
+         "ip-assignment-direction": "",
+         "resource-version": "1517496965497"
+      },
+            {
+         "subnet-id": "971bc608-1aff-47c0-923d-92e43b699f01",
+         "subnet-name": "",
+         "neutron-subnet-id": "81a5ff92-7ca4-4756-a493-496479f0d10f",
+         "gateway-address": "192.168.42.1",
+         "network-start-address": "192.168.42.0",
+         "cidr-mask": "24",
+         "ip-version": "4",
+         "orchestration-status": "Active",
+         "dhcp-enabled": true,
+         "dhcp-start": "192.168.42.3",
+         "dhcp-end": "192.168.42.45",
+         "ip-assignment-direction": "",
+         "resource-version": "1517496965508"
+      }
+   ]},
+   "relationship-list": {"relationship":    [
+            {
+         "related-to": "service-instance",
+         "related-link": "/aai/v11/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/cc88915e-fb95-4b16-9c1e-a0abf40d1e40",
+         "relationship-data":          [
+                        {
+               "relationship-key": "customer.global-customer-id",
+               "relationship-value": "MSO_1610_dev"
+            },
+                        {
+               "relationship-key": "service-subscription.service-type",
+               "relationship-value": "MSO-dev-service-type"
+            },
+                        {
+               "relationship-key": "service-instance.service-instance-id",
+               "relationship-value": "cc88915e-fb95-4b16-9c1e-a0abf40d1e40"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "service-instance.service-instance-name",
+            "property-value": "MSO-DEV-SI-1802-v6-2-01-nwk1"
+         }]
+      },
+            {
+         "related-to": "cloud-region",
+         "related-link": "/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6",
+         "relationship-data":          [
+                        {
+               "relationship-key": "cloud-region.cloud-owner",
+               "relationship-value": "att-aic"
+            },
+                        {
+               "relationship-key": "cloud-region.cloud-region-id",
+               "relationship-value": "mtn6"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "cloud-region.owner-defined-type",
+            "property-value": "LCP"
+         }]
+      },
+            {
+         "related-to": "vf-module",
+         "related-link": "aai/v11/network/generic-vnfs/generic-vnf/105df7e5-0b3b-49f7-a837-4864b62827c4/vf-modules/vf-module/d9217058-95a0-49ee-b9a9-949259e89349",
+         "relationship-data":          [
+                        {
+               "relationship-key": "generic-vnf.vnf-id",
+               "relationship-value": "105df7e5-0b3b-49f7-a837-4864b62827c4"
+            },
+                        {
+               "relationship-key": "vf-module.vf-module-id",
+               "relationship-value": "d9217058-95a0-49ee-b9a9-949259e89349"
+            }
+         ],
+         "related-to-property": [         {
+            "property-key": "tenant.tenant-name",
+            "property-value": "ECOMP_MSO_DND"
+         }]
+      },
+            {
+         "related-to": "route-table-reference",
+         "related-link": "/aai/v11/network/route-table-references/route-table-reference/c87fa27e-ac15-4b3e-b7ef-866682d8ca00",
+         "relationship-data": [         {
+            "relationship-key": "route-table-reference.route-table-reference-id",
+            "relationship-value": "c87fa27e-ac15-4b3e-b7ef-866682d8ca00"
+         }],
+         "related-to-property": [         {
+            "property-key": "route-table-reference.route-table-reference-fqdn",
+            "property-value": "default-domain:ECOMP_MSO_DND:RTA"
+         }]
+      },
+            {
+         "related-to": "network-policy",
+         "related-link": "/aai/v11/network/network-policies/network-policy/0219d83f-7c4a-48e2-b8fc-9b20459356bc",
+         "relationship-data": [         {
+            "relationship-key": "network-policy.network-policy-id",
+            "relationship-value": "0219d83f-7c4a-48e2-b8fc-9b20459356bc"
+         }],
+         "related-to-property": [         {
+            "property-key": "network-policy.network-policy-fqdn",
+            "property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyD"
+         }]
+      },
+            {
+         "related-to": "network-policy",
+         "related-link": "/aai/v11/network/network-policies/network-policy/e7a3560c-8b29-4611-a404-83af0b31ce64",
+         "relationship-data": [         {
+            "relationship-key": "network-policy.network-policy-id",
+            "relationship-value": "e7a3560c-8b29-4611-a404-83af0b31ce64"
+         }],
+         "related-to-property": [         {
+            "property-key": "network-policy.network-policy-fqdn",
+            "property-value": "default-domain:ECOMP_MSO_DND:MSOPolicyC"
+         }]
+      },
+            {
+         "related-to": "vpn-binding",
+         "related-link": "/aai/v11/network/vpn-bindings/vpn-binding/9a7b327d9-287aa00-82c4b0-100001",
+         "relationship-data": [         {
+            "relationship-key": "vpn-binding.vpn-id",
+            "relationship-value": "9a7b327d9-287aa00-82c4b0-100001"
+         }],
+         "related-to-property":          [
+                        {
+               "property-key": "vpn-binding.vpn-name",
+               "property-value": "MSO_VPN_TEST"
+            },
+            {"property-key": "vpn-binding.vpn-type"}
+         ]
+      }
+   ]}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/updateContrailAAIPayloadRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/updateContrailAAIPayloadRequest.xml
new file mode 100644
index 0000000..92fec2d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/Network/updateContrailAAIPayloadRequest.xml
@@ -0,0 +1,149 @@
+<l3-network xmlns="http://org.onap.aai.inventory/v11">
+   <network-id>8d35a433-c1db-4d54-a611-6de10aeb76f9</network-id>
+   <network-name>Dev_Bindings_1802_1311</network-name>
+   <network-type>CONTRAIL30_BASIC</network-type>
+   <network-role>GN_EVPN_direct</network-role>
+   <network-technology>contrail</network-technology>
+   <neutron-network-id>b6a7820c-4734-4ef2-8a73-a22c824423fa</neutron-network-id>
+   <is-bound-to-vpn>true</is-bound-to-vpn>
+   <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+   <network-role-instance>0</network-role-instance>
+   <resource-version>1517430804756</resource-version>
+   <orchestration-status>Created</orchestration-status>
+   <heat-stack-id>Dev_Bindings_1802_1311/ecf7e197-72db-452e-9eda-253cb642c9b7</heat-stack-id>
+   <contrail-network-fqdn>default-domain:ECOMP_MSO_DND:Dev_Bindings_1802_1311</contrail-network-fqdn>
+   <physical-network-name>tbd</physical-network-name>
+   <is-provider-network>true</is-provider-network>
+   <is-shared-network>true</is-shared-network>
+   <is-external-network>false</is-external-network>
+   <subnets>
+      <subnet>
+         <subnet-id>9dbb9e7e-fe18-421f-bad6-2305bd282471</subnet-id>
+         <neutron-subnet-id>27d414c7-1076-4595-aa45-4717ee992cef</neutron-subnet-id>
+         <gateway-address>107.118.41.1</gateway-address>
+         <network-start-address>107.118.41.0</network-start-address>
+         <cidr-mask>24</cidr-mask>
+         <ip-version>4</ip-version>
+         <orchestration-status>Created</orchestration-status>
+         <dhcp-enabled>true</dhcp-enabled>
+         <dhcp-start>107.118.41.3</dhcp-start>
+         <dhcp-end>107.118.41.45</dhcp-end>
+         <resource-version>1517430804770</resource-version>
+         <subnet-name/>
+         <ip-assignment-direction>true</ip-assignment-direction>
+      </subnet>
+      <subnet>
+         <subnet-id>1bb4e1d2-d225-47f3-b6fc-2d0b290de1ab</subnet-id>
+         <neutron-subnet-id>db64710c-fbbc-4dc9-8109-3925b87268fa</neutron-subnet-id>
+         <gateway-address>107.118.42.1</gateway-address>
+         <network-start-address>107.118.42.0</network-start-address>
+         <cidr-mask>24</cidr-mask>
+         <ip-version>4</ip-version>
+         <orchestration-status>Created</orchestration-status>
+         <dhcp-enabled>true</dhcp-enabled>
+         <dhcp-start>107.118.42.3</dhcp-start>
+         <dhcp-end>107.118.42.45</dhcp-end>
+         <resource-version>1517430804782</resource-version>
+         <subnet-name/>
+         <ip-assignment-direction>true</ip-assignment-direction>
+      </subnet>
+   </subnets>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>/aai/v11/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/f1d1c7da-fc42-4c31-866e-cfe963e55723</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>MSO_1610_dev</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>MSO-dev-service-type</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>f1d1c7da-fc42-4c31-866e-cfe963e55723</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>MSO-DEV-SI-1802-v6-1-31-nwk1</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>cloud-region</related-to>
+         <related-link>/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6</related-link>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-owner</relationship-key>
+            <relationship-value>att-aic</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-region-id</relationship-key>
+            <relationship-value>mtn6</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>cloud-region.owner-defined-type</property-key>
+            <property-value>LCP</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>tenant</related-to>
+         <related-link>/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/tenants/tenant/0422ffb57ba042c0800a29dc85ca70f8</related-link>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-owner</relationship-key>
+            <relationship-value>att-aic</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-region-id</relationship-key>
+            <relationship-value>mtn6</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>tenant.tenant-id</relationship-key>
+            <relationship-value>0422ffb57ba042c0800a29dc85ca70f8</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>tenant.tenant-name</property-key>
+            <property-value>ECOMP_MSO_DND</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>network-policy</related-to>
+         <related-link>/aai/v11/network/network-policies/network-policy/0219d83f-7c4a-48e2-b8fc-9b20459356bc</related-link>
+         <relationship-data>
+            <relationship-key>network-policy.network-policy-id</relationship-key>
+            <relationship-value>0219d83f-7c4a-48e2-b8fc-9b20459356bc</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>network-policy.network-policy-fqdn</property-key>
+            <property-value>default-domain:ECOMP_MSO_DND:MSOPolicyD</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>network-policy</related-to>
+         <related-link>/aai/v11/network/network-policies/network-policy/e7a3560c-8b29-4611-a404-83af0b31ce64</related-link>
+         <relationship-data>
+            <relationship-key>network-policy.network-policy-id</relationship-key>
+            <relationship-value>e7a3560c-8b29-4611-a404-83af0b31ce64</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>network-policy.network-policy-fqdn</property-key>
+            <property-value>default-domain:ECOMP_MSO_DND:MSOPolicyC</property-value>
+         </related-to-property>
+      </relationship>
+      <relationship>
+         <related-to>vpn-binding</related-to>
+         <related-link>/aai/v11/network/vpn-bindings/vpn-binding/9a7b327d9-287aa00-82c4b0-100001</related-link>
+         <relationship-data>
+            <relationship-key>vpn-binding.vpn-id</relationship-key>
+            <relationship-value>9a7b327d9-287aa00-82c4b0-100001</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>vpn-binding.vpn-name</property-key>
+            <property-value>MSO_VPN_TEST</property-value>
+         </related-to-property>
+         <related-to-property>
+            <property-key>vpn-binding.vpn-type</property-key>
+            <property-value/>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</l3-network>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallback2AR1Vnf b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallback2AR1Vnf
new file mode 100644
index 0000000..09634c1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallback2AR1Vnf
@@ -0,0 +1,107 @@
+{
+    "transactionId": "testRequestId",
+	"requestId": "testRequestId",
+	"requestState": "complete",
+	"statusMessage": "",
+    "solutionInfo": {
+        "licenseInfo": [
+            {
+                "entitlementPoolList": [
+                    "f1d563e8-e714-4393-8f99-cc480144a05e",
+                    "j1d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "licenseKeyGroupList": [
+                    "s1d563e8-e714-4393-8f99-cc480144a05e",
+                    "b1d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "resourceModuleName": "vHNPortalaaS_primary_1",
+                "serviceResourceId": "testResourceIdAR"
+            },
+            {
+                "entitlementPoolList": [
+                    "91d563e8-e714-4393-8f99-cc480144a05e",
+                    "21d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "licenseKeyGroupList": [
+                    "31d563e8-e714-4393-8f99-cc480144a05e",
+                    "71d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "resourceModuleName": "vHNPortalaaS_secondary_1",
+                "serviceResourceId": "testResourceIdVNF"
+            }
+        ],
+        "placementInfo": [
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "vnfHostName",
+                        "variableValue": "MDTNJ01"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "KDTNJ01"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "dfwtx",
+                "inventoryType": "service",
+                "resourceModuleName": "ALLOTTED_RESOURCE",
+                "serviceInstanceId": "testSIID1",
+                "serviceResourceId": "testResourceIdAR"
+            },
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "vnfHostName",
+                        "variableValue": "testVnfHostname2"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "testAicClli2"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "testCloudRegionId2",
+                "inventoryType": "service",
+                "resourceModuleName": "ALLOTTED_RESOURCE",
+                "serviceInstanceId": "testSIID2",
+                "serviceResourceId": "testResourceIdAR2"
+            },
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "testAicClli3"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "testCloudRegionId3",
+                "inventoryType": "cloud",
+                "resourceModuleName": "VNF",
+                "serviceInstanceId": "",
+                "serviceResourceId": "testResourceIdVNF"
+            }
+        ]
+    }
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallback2AR1Vnf2Net b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallback2AR1Vnf2Net
new file mode 100644
index 0000000..ac9b466
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallback2AR1Vnf2Net
@@ -0,0 +1,165 @@
+{
+    "transactionId": "testRequestId",
+	"requestId": "testRequestId",
+	"requestState": "complete",
+	"statusMessage": "",
+    "solutionInfo": {
+        "licenseInfo": [
+            {
+                "entitlementPoolList": [
+                    "f1d563e8-e714-4393-8f99-cc480144a05e",
+                    "j1d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "licenseKeyGroupList": [
+                    "s1d563e8-e714-4393-8f99-cc480144a05e",
+                    "b1d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "resourceModuleName": "vHNPortalaaS_primary_1",
+                "serviceResourceId": "testResourceIdAR"
+            },
+            {
+                "entitlementPoolList": [
+                    "f1d563e8-e714-4393-8f99-cc480144a05n",
+                    "j1d563e8-e714-4393-8f99-cc480144a05n"
+                ],
+                "licenseKeyGroupList": [
+                    "s1d563e8-e714-4393-8f99-cc480144a05n",
+                    "b1d563e8-e714-4393-8f99-cc480144a05n"
+                ],
+                "resourceModuleName": "net",
+                "serviceResourceId": "testResourceIdNet2"
+            },
+            {
+                "entitlementPoolList": [
+                    "91d563e8-e714-4393-8f99-cc480144a05e",
+                    "21d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "licenseKeyGroupList": [
+                    "31d563e8-e714-4393-8f99-cc480144a05e",
+                    "71d563e8-e714-4393-8f99-cc480144a05e"
+                ],
+                "resourceModuleName": "vHNPortalaaS_secondary_1",
+                "serviceResourceId": "testResourceIdVNF"
+            }
+        ],
+        "placementInfo": [
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "vnfHostName",
+                        "variableValue": "MDTNJ01"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "KDTNJ01"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "dfwtx",
+                "inventoryType": "service",
+                "resourceModuleName": "ALLOTTED_RESOURCE",
+                "serviceInstanceId": "testSIID1",
+                "serviceResourceId": "testResourceIdAR"
+            },
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "vnfHostName",
+                        "variableValue": "testVnfHostname2"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "testAicClli2"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "testCloudRegionId2",
+                "inventoryType": "service",
+                "resourceModuleName": "ALLOTTED_RESOURCE",
+                "serviceInstanceId": "testSIID2",
+                "serviceResourceId": "testResourceIdAR2"
+            },
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "vnfHostName",
+                        "variableValue": "testVnfHostNameNet"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "testAicClliNet"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "testCloudRegionIdNet",
+                "inventoryType": "service",
+                "resourceModuleName": "NETWORK",
+                "serviceInstanceId": "testServiceInstanceIdNet",
+                "serviceResourceId": "testResourceIdNet"
+            },
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "testAicClliNet2"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "testCloudRegionIdNet2",
+                "inventoryType": "cloud",
+                "resourceModuleName": "NETWORK",
+                "serviceInstanceId": "",
+                "serviceResourceId": "testResourceIdNet2"
+            },
+            {
+                "assignmentInfo": [
+                    {
+                        "variableName": "cloudOwner",
+                        "variableValue": "aic"
+                    },
+                    {
+                        "variableName": "aicClli",
+                        "variableValue": "testAicClli3"
+                    },
+                    {
+                        "variableName": "aicVersion",
+                        "variableValue": "3.0"
+                    }
+                ],
+                "cloudRegionId": "testCloudRegionId3",
+                "inventoryType": "cloud",
+                "resourceModuleName": "VNF",
+                "serviceInstanceId": "",
+                "serviceResourceId": "testResourceIdVNF"
+            }
+        ]
+    }
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackNoSolutionFound b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackNoSolutionFound
new file mode 100644
index 0000000..2150a05
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackNoSolutionFound
@@ -0,0 +1,15 @@
+{
+  "requestState": "",
+  "responseTime": "",
+  "solutionInfo": {
+    "placementInfo": [],
+    "licenseInfo": {
+      "featureGroupId": ""
+    }
+  },
+  "percentProgress": "",
+  "requestId": "02c2e322-5839-4c97-9d46-0a5fa6bb642e",
+  "startTime": "",
+  "statusMessage": "No solution found for plan 08e1b8cf-144a-4bac-b293-d5e2eedc97e8",
+  "requestType": ""
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackPolicyException b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackPolicyException
new file mode 100644
index 0000000..b826884
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackPolicyException
@@ -0,0 +1,9 @@
+{
+	"requestError": {
+		"policyException": {
+		  "requestId": "ae81d9a8-c949-493a-999c-f76c80503233",
+		  "text": "Message content size exceeds the allowable limit",
+		  "messageId": "SVC0001"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackServiceException b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackServiceException
new file mode 100644
index 0000000..6cc78a7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/BuildingBlocks/sniroCallbackServiceException
@@ -0,0 +1,12 @@
+{
+	"requestError": {
+		"serviceException": {
+		"variables": [
+		"severity", 400
+		],
+		 "requestId": "ae81d9a8-c949-493a-999c-f76c80503233",
+		  "text": "SNIROPlacementError: requests.exceptions.HTTPError: 404 Client Error: Not Found for url: http://135.21.171.200:8091/v1/plans/97b4e303-5f75-492c-8fb2-21098281c8b8",
+		   "messageId": "SVC0001"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/cloudRegion25_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/cloudRegion25_AAIResponse_Success.xml
new file mode 100644
index 0000000..90c668c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/cloudRegion25_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>2.5</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/cloudRegion30_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/cloudRegion30_AAIResponse_Success.xml
new file mode 100644
index 0000000..9b651f2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/cloudRegion30_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>3.0</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_400.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_400.xml
new file mode 100644
index 0000000..a5640b2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_400.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<createNetworkError>
+<messageId>680bd458-5ec1-4a16-b77c-509022e53450</messageId><category>INTERNAL</category>
+<message>400 Bad Request: The server could not comply with the request since it is either malformed or otherwise incorrect., error.type=StackValidationFailed, error.message=Property error: : resources.network.properties: : Unknown Property network_ipam_refs_data</message>
+<rolledBack>true</rolledBack>
+</createNetworkError>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_500.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_500.xml
new file mode 100644
index 0000000..02996a1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_500.xml
@@ -0,0 +1,80 @@
+<html>
+	<head>
+		<title>JBoss Web/7.2.2.Final-redhat-1 - JBWEB000064: Error report
+		</title>
+		<style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} 
+				H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} 
+				H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} 
+				BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} 
+				B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} 
+				P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A 
+				{color : black;}A.name {color : black;}HR {color : #525D76;} -->
+		</style>
+	</head>
+	<body>
+		<h1>JBWEB000065: HTTP Status 500 - java.lang.NullPointerException</h1>
+		<HR size="1" noshade="noshade" />
+		<p>
+			<b>JBWEB000309: type</b>
+			JBWEB000066: Exception report
+		</p>
+		<p>
+			<b>JBWEB000068: message</b>
+			<u>java.lang.NullPointerException</u>
+		</p>
+		<p>
+			<b>JBWEB000069: description</b>
+			<u>JBWEB000145: The server encountered an internal error that
+				prevented it from fulfilling this request.
+			</u>
+		</p>
+		<p>
+			<b>JBWEB000070: exception</b>
+			<pre>org.jboss.resteasy.spi.UnhandledException:
+				java.lang.NullPointerException
+				org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:365)
+				org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:233)
+				org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:209)
+				org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:557)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)
+				org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
+				javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
+				org.onap.so.logger.LogFilter.doFilter(LogFilter.java:35)
+			</pre>
+		</p>
+		<p>
+			<b>JBWEB000071: root cause</b>
+			<pre>java.lang.NullPointerException
+				org.onap.so.adapters.network.NetworkAdapterRest$CreateNetworkVolumesTask.run(NetworkAdapterRest.java:128)
+				org.onap.so.adapters.network.NetworkAdapterRest.createNetwork(NetworkAdapterRest.java:64)
+				sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+				sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
+				sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+				java.lang.reflect.Method.invoke(Method.java:606)
+				org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
+				org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:269)
+				org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:227)
+				org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:216)
+				org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:542)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)
+				org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
+				javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
+				org.onap.so.logger.LogFilter.doFilter(LogFilter.java:35)
+			</pre>
+		</p>
+		<p>
+			<b>JBWEB000072: note</b>
+			<u>JBWEB000073: The full stack trace of the root cause is available
+				in the JBoss Web/7.2.2.Final-redhat-1 logs.
+			</u>
+		</p>
+		<HR size="1" noshade="noshade" />
+		<h3>JBoss Web/7.2.2.Final-redhat-1</h3>
+	</body>
+</html>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_Success.xml
new file mode 100644
index 0000000..90177f1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetworkResponse_Success.xml
@@ -0,0 +1,24 @@
+<ns2:createNetworkResponse xmlns:ns2="http://org.onap.so/network"
+                                    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
+   <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>
+   <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>
+   <subnetIdMap>
+      <entry>
+         <key>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</key>
+         <value>bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73</value>
+      </entry>
+   </subnetIdMap>
+   <rollback>
+      <cloudId>RDM2WAGPLCP</cloudId>
+      <msoRequest>
+         <requestId>1ef47428-cade-45bd-a103-0751e8b2deb0</requestId>
+         <serviceInstanceId/>
+      </msoRequest>
+      <networkCreated>true</networkCreated>
+      <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>
+      <networkType>CONTRAIL_EXTERNAL</networkType>
+      <networkUpdated>false</networkUpdated>
+      <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>
+      <tenantId>7dd5365547234ee8937416c65507d266</tenantId>
+   </rollback>
+</ns2:createNetworkResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryInstance_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryInstance_Success.xml
new file mode 100644
index 0000000..ca5145c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryInstance_Success.xml
@@ -0,0 +1,4 @@
+<result-data>
+  <resource-type>service-instance</resource-type>
+  <resource-link>https://aai-conexus-e2e.test.com:8443/aai/v8/business/customers/customer/8310000058863/service-subscriptions/service-subscription/vMOG/service-instances/service-instance/f70e927b-6087-4974-9ef8-c5e4d5847ca4</resource-link>
+</result-data>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName2_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName2_AAIResponse_Success.xml
new file mode 100644
index 0000000..d6f7737
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName2_AAIResponse_Success.xml
@@ -0,0 +1,62 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4_3</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>pending-create</orchestration-status>
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>pending-create</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNameActive_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNameActive_AAIResponse_Success.xml
new file mode 100644
index 0000000..03b3781
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNameActive_AAIResponse_Success.xml
@@ -0,0 +1,74 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_2</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>active</orchestration-status>
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>active</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+  	  		   <subnet-name>subnetName</subnet-name>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+	  	 <segmentation-assignments>
+	  		<segmentation-id>413</segmentation-id>
+	  		<resource-version>4132176</resource-version>
+	  	 </segmentation-assignments>         
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>            
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName_AAIResponse_404.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName_AAIResponse_404.xml
new file mode 100644
index 0000000..5cda12d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName_AAIResponse_404.xml
@@ -0,0 +1,19 @@
+<rest:RESTFault xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                errorType="transport">
+   <rest:errorCode>404</rest:errorCode>
+   <rest:message>HTTP method: GET Not Found </rest:message>
+   <rest:messageDetails>&lt;Fault&gt;
+    &lt;requestError&gt;
+        &lt;serviceException&gt;
+            &lt;messageId&gt;SVC3001&lt;/messageId&gt;
+            &lt;text&gt;Resource not found for %1 using id %2 (msg=%3) (ec=%4)&lt;/text&gt;
+            &lt;variables&gt;
+                &lt;variable&gt;GETl3Networks&lt;/variable&gt;
+                &lt;variable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/&gt;
+                &lt;variable&gt;Node Not Found:No Node of type l3Network found for properties: (network-id = null)&lt;/variable&gt;
+                &lt;variable&gt;ERR.5.4.6114&lt;/variable&gt;
+            &lt;/variables&gt;
+        &lt;/serviceException&gt;
+    &lt;/requestError&gt;
+&lt;/Fault&gt;</rest:messageDetails>
+</rest:RESTFault>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName_AAIResponse_Success.xml
new file mode 100644
index 0000000..4eadb10
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryName_AAIResponse_Success.xml
@@ -0,0 +1,62 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>pending-create</orchestration-status>
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>pending-create</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_404.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_404.xml
new file mode 100644
index 0000000..5cda12d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_404.xml
@@ -0,0 +1,19 @@
+<rest:RESTFault xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                errorType="transport">
+   <rest:errorCode>404</rest:errorCode>
+   <rest:message>HTTP method: GET Not Found </rest:message>
+   <rest:messageDetails>&lt;Fault&gt;
+    &lt;requestError&gt;
+        &lt;serviceException&gt;
+            &lt;messageId&gt;SVC3001&lt;/messageId&gt;
+            &lt;text&gt;Resource not found for %1 using id %2 (msg=%3) (ec=%4)&lt;/text&gt;
+            &lt;variables&gt;
+                &lt;variable&gt;GETl3Networks&lt;/variable&gt;
+                &lt;variable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/&gt;
+                &lt;variable&gt;Node Not Found:No Node of type l3Network found for properties: (network-id = null)&lt;/variable&gt;
+                &lt;variable&gt;ERR.5.4.6114&lt;/variable&gt;
+            &lt;/variables&gt;
+        &lt;/serviceException&gt;
+    &lt;/requestError&gt;
+&lt;/Fault&gt;</rest:messageDetails>
+</rest:RESTFault>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_NoPayload_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_NoPayload_Success.xml
new file mode 100644
index 0000000..e06d27e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_NoPayload_Success.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>pending-create</orchestration-status>
+   		 <physical-network-name>networkName</physical-network-name>
+   		 <is-provider-network>false</is-provider-network>
+   		 <is-shared-network>true</is-shared-network>
+   	 	 <is-external-network>false</is-external-network>         
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>pending-create</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+   	  		   <subnet-name>subnetName</subnet-name>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+	  	 <segmentation-assignments>
+	  		<segmentation-id>413</segmentation-id>
+	  		<resource-version>4132176</resource-version>
+	  	 </segmentation-assignments>         
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+				<related-to>network-policy</related-to>
+				<related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg</related-link>
+				<relationship-data>
+					<relationship-key>network-policy.network-policy-id</relationship-key>
+					<relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0cg</relationship-value>
+				</relationship-data>
+			</relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>			
+         </relationship-list>
+</l3-network>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_Success.xml
new file mode 100644
index 0000000..6e319c4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkId_AAIResponse_Success.xml
@@ -0,0 +1,110 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>pending-create</orchestration-status>
+   		 <physical-network-name>networkName</physical-network-name>
+   		 <is-provider-network>false</is-provider-network>
+   		 <is-shared-network>true</is-shared-network>
+   		 <is-external-network>false</is-external-network>         
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>pending-create</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+   	  		   <subnet-name>subnetName</subnet-name>
+	  		   <ip-assignment-direction>true</ip-assignment-direction>   	  		   
+	  		   <host-routes>
+                 <host-route>
+                   <host-route-id>string</host-route-id>
+                   <route-prefix>192.10.16.0/24</route-prefix>
+                   <next-hop>192.10.16.100/24</next-hop>
+                   <next-hop-type>ip-address</next-hop-type> 
+                 </host-route>
+                 <host-route>
+                  <host-route-id>string</host-route-id>
+                  <route-prefix>192.110.17.0/24</route-prefix>
+                  <next-hop>192.110.17.110/24</next-hop>
+                  <next-hop-type>ip-address</next-hop-type>
+                 </host-route>
+               </host-routes>   	  		   
+               <relationship-list/>
+            </subnet>
+         </subnets>
+	  	 <segmentation-assignments>
+	  		<segmentation-id>413</segmentation-id>
+	  		<resource-version>4132176</resource-version>
+	  	 </segmentation-assignments>         
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+				<related-to>network-policy</related-to>
+				<related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg</related-link>
+				<relationship-data>
+					<relationship-key>network-policy.network-policy-id</relationship-key>
+					<relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0cg</relationship-value>
+				</relationship-data>
+			</relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+	  		   <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN1</related-link>			   
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+	  		   <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN2</related-link>			   
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>									
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkPolicy_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkPolicy_AAIResponse_Success.xml
new file mode 100644
index 0000000..79cc14a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkPolicy_AAIResponse_Success.xml
@@ -0,0 +1,21 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <network-policy xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-policy-id>9a7b327d9-287aa00-82c4b0-105757</network-policy-id>
+         <network-policy-fqdn>GN_EVPN_Test</network-policy-fqdn>
+         <heat-stack-id>13979:105757</heat-stack-id>
+         <resource-version>13979:105757</resource-version>
+      </network-policy>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkTableRef1_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkTableRef1_AAIResponse_Success.xml
new file mode 100644
index 0000000..db134a1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkTableRef1_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <route-table-references xmlns="http://org.openecomp.aai.inventory/v8">
+         <route-table-reference-id>5938baec-03ca-2bd5-a3f1-d54x123e253a</route-table-reference-id>
+         <route-table-reference-fqdn>refFQDN1</route-table-reference-fqdn>
+         <resource-version>12345</resource-version>
+      </route-table-references>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkTableRef2_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkTableRef2_AAIResponse_Success.xml
new file mode 100644
index 0000000..34b4a03
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryNetworkTableRef2_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <route-table-references xmlns="http://org.openecomp.aai.inventory/v8">
+         <route-table-reference-id>5938baec-03ca-2bd5-a3f1-d54x123e253a</route-table-reference-id>
+         <route-table-reference-fqdn>refFQDN2</route-table-reference-fqdn>
+         <resource-version>12345</resource-version>
+      </route-table-references>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryVpnBindingList_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryVpnBindingList_AAIResponse_Success.xml
new file mode 100644
index 0000000..c01d0a4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryVpnBindingList_AAIResponse_Success.xml
@@ -0,0 +1,57 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <vpn-binding xmlns="http://org.openecomp.aai.inventory/v8">
+         <vpn-id>9a7b327d9-287aa00-82c4b0-105757</vpn-id>
+         <vpn-name>GN_EVPN_Test</vpn-name>
+         <route-targets>
+           <route-target>
+             <global-route-target>13979:105708</global-route-target>
+             <route-target-role>EXPORT</route-target-role>
+             <resource-version>1504025599510</resource-version>
+           </route-target>
+           <route-target>
+             <global-route-target>13979:105707</global-route-target>
+             <route-target-role>IMPORT</route-target-role>
+             <resource-version>1504025599519</resource-version>
+           </route-target>           
+         </route-targets>
+         <relationship-list>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/689ec39e-c5fc-4462-8db2-4f760763ad28/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>689ec39e-c5fc-4462-8db2-4f760763ad28</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/1a49396b-19b3-40a4-8792-aa2fbd0f0704/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>1a49396b-19b3-40a4-8792-aa2fbd0f0704</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/774f3329-3c83-4771-86c7-9e6207cd50fd/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>774f3329-3c83-4771-86c7-9e6207cd50fd</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </vpn-binding>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryVpnBinding_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryVpnBinding_AAIResponse_Success.xml
new file mode 100644
index 0000000..5f1c2ca
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_queryVpnBinding_AAIResponse_Success.xml
@@ -0,0 +1,46 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <vpn-binding xmlns="http://org.openecomp.aai.inventory/v8">
+         <vpn-id>9a7b327d9-287aa00-82c4b0-105757</vpn-id>
+         <vpn-name>GN_EVPN_Test</vpn-name>
+         <global-route-target>13979:105757</global-route-target>
+         <relationship-list>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/689ec39e-c5fc-4462-8db2-4f760763ad28/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>689ec39e-c5fc-4462-8db2-4f760763ad28</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/1a49396b-19b3-40a4-8792-aa2fbd0f0704/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>1a49396b-19b3-40a4-8792-aa2fbd0f0704</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/774f3329-3c83-4771-86c7-9e6207cd50fd/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>774f3329-3c83-4771-86c7-9e6207cd50fd</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </vpn-binding>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_updateContrail_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_updateContrail_AAIResponse_Success.xml
new file mode 100644
index 0000000..eedbda9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2/createNetwork_updateContrail_AAIResponse_Success.xml
@@ -0,0 +1,11 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Content-Length" value="0"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:551-132672"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2mock/sdncCreateNetworkTopologyRsrcAssignResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2mock/sdncCreateNetworkTopologyRsrcAssignResponse.xml
new file mode 100644
index 0000000..4f87e1a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2mock/sdncCreateNetworkTopologyRsrcAssignResponse.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+	xmlns:v1="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<soapenv:Header />
+	<soapenv:Body>
+      <SDNCAdapterCallbackRequest xmlns="http://org.onap/workflow/sdnc/adapter/schema/v1">
+        <CallbackHeader>
+         <RequestId>79ec9006-3695-4fcc-93a8-be6f9e248beb</RequestId>
+         <ResponseCode>200</ResponseCode>
+         <ResponseMessage>OK</ResponseMessage>
+       </CallbackHeader>
+       <RequestData xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">&lt;output xmlns="org:onap:sdnc:northbound:generic-resource"&gt;&lt;response-message&gt;&lt;/response-message&gt;&lt;svc-request-id&gt;79ec9006-3695-4fcc-93a8-be6f9e248beb&lt;/svc-request-id&gt;&lt;service-response-information&gt;&lt;instance-id&gt;f805ec2b-b4d8-473e-8325-67f110139e5d&lt;/instance-id&gt;&lt;/service-response-information&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;network-response-information&gt;&lt;instance-id&gt;49c86598-f766-46f8-84f8-8d1c1b10f9b4&lt;/instance-id&gt;&lt;object-path&gt;restconf/config/GENERIC-RESOURCE-API:services/service/f805ec2b-b4d8-473e-8325-67f110139e5d/service-data/networks/network/f7e4db56-aab5-4065-8e65-cec1cd1de24f&lt;/object-path&gt;&lt;/network-response-information&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;/output&gt;</RequestData>
+      </SDNCAdapterCallbackRequest>	
+	</soapenv:Body>
+</soapenv:Envelope>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2mock/sdncCreateNetworkTopologySimResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2mock/sdncCreateNetworkTopologySimResponse.xml
new file mode 100644
index 0000000..836b3c8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateNetworkV2mock/sdncCreateNetworkTopologySimResponse.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+	xmlns:v1="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<soapenv:Header />
+	<soapenv:Body>
+		<SDNCAdapterCallbackRequest xmlns="http://org.onap/workflow/sdnc/adapter/schema/v1">
+		 <CallbackHeader>
+		   <RequestId>testRequestId</RequestId>
+		   <ResponseCode>200</ResponseCode>
+		   <ResponseMessage>OK</ResponseMessage>
+		 </CallbackHeader>
+		 <RequestData xmlns:xs="http://www.w3.org/2001/XMLSchema"
+				   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+				   xsi:type="xs:string">&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;output xmlns="com:att:sdnctl:vnf"&gt;&lt;svc-request-id&gt;19174929-3809-49ca-89eb-17f84a035389&lt;/svc-request-id&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;network-information&gt;&lt;network-id&gt;49c86598-f766-46f8-84f8-8d1c1b10f9b4&lt;/network-id&gt;&lt;/network-information&gt;&lt;service-information&gt;&lt;service-type&gt;a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb&lt;/service-type&gt;&lt;service-instance-id&gt;HSL_direct_net_2&lt;/service-instance-id&gt;&lt;subscriber-name&gt;notsurewecare&lt;/subscriber-name&gt;&lt;/service-information&gt;&lt;/output&gt;</RequestData>
+		</SDNCAdapterCallbackRequest>
+	</soapenv:Body>
+</soapenv:Envelope>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/DoCreateServiceInstanceInput.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/DoCreateServiceInstanceInput.json
new file mode 100644
index 0000000..45b09a1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/DoCreateServiceInstanceInput.json
@@ -0,0 +1,42 @@
+{
+"requestDetails": {
+"modelInfo": {
+"modelType": "service",
+"modelInvariantId": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+"modelVersionId": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+"modelName": "Test",
+"modelVersion": "1.0"
+},
+"cloudConfiguration": {
+"lcpCloudRegionId": "mdt1",
+"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+},
+"owningEntity": {
+"owningEntityId": "a",
+"owningEntityName": "a"
+},
+"project": {
+"projectName": "temp project"
+},
+"subscriberInfo": {
+"globalSubscriberId": "some subscriber id",
+"subscriberName": "some subscriber name"
+},
+"requestInfo": {
+"productFamilyId":"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+"source": "VID",
+"suppressRollback": true,
+"requestorId": "xxxxxx"
+},
+"requestParameters": {
+"subscriptionServiceType": "MOG",
+"aLaCarte": false,
+"userParams": [
+{
+"name": "someUserParam",
+"value": "someValue"
+}
+]
+}
+}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/SetupServiceDecompJson.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/SetupServiceDecompJson.json
new file mode 100644
index 0000000..e7960b7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/SetupServiceDecompJson.json
@@ -0,0 +1,36 @@
+{
+	"requestDetails": {
+		"serviceInstance": {
+			"serviceInstanceId": "MSORefactorTest3",
+			"serviceInstanceName": "bensServiceInstance3",
+			"serviceType": "MSO-dev-service-type",
+			"serviceRole": "abc",
+			"modelInvariantUuid": "d214abcc-2083-11e7-93ae-92361f002671",
+			"modelUuid": "c4503baa-2083-11e7-93ae-92361f002671",
+			"modelVersion": "1.0",
+			"modelName": "MSOTADevInfra_vSAMP12_Service",
+			"environmentContext": "Luna",
+			"workloadContext": "Oxygen",
+			"orchestrationStatus": "ACTIVE"
+		},
+		"project": {
+			"projectName": "vSAMP12 Project"
+		},
+		"owningEntity": {
+			"owningEntityId": "MSO-Test-OE",
+			"owningEntityName": "MSO-Test123"
+		},
+		"customer": {
+			"subscriptionServiceType": "MSO-dev-service-type",
+			"globalSubscriberId": "MSO_1610_dev"
+		},
+		"request": {
+			"sdncRequestId": "736c7370-640b-4f7a-975d-320f73340dd3",
+			"callbackURL": "abc",
+			"requestId": "223c2e74-a23a-4ab8-bddb-2c2431dcb67f",
+			"productFamilyId": "abc",
+			"callbackUrl": "http://localhost:8080/adapters/rest/SDNCNotify",
+			"serviceId": "123"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/createServiceInstance_createServiceInstance_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/createServiceInstance_createServiceInstance_AAIResponse_Success.xml
new file mode 100644
index 0000000..eedbda9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/createServiceInstance_createServiceInstance_AAIResponse_Success.xml
@@ -0,0 +1,11 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Content-Length" value="0"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:551-132672"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/createServiceInstance_queryGlobalCustomerId_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/createServiceInstance_queryGlobalCustomerId_AAIResponse_Success.xml
new file mode 100644
index 0000000..be820b8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateServiceInstance/createServiceInstance_queryGlobalCustomerId_AAIResponse_Success.xml
@@ -0,0 +1,62 @@
+<rest:RESTResponse
+	xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+	statusCode="200">
+	<rest:headers>
+		<rest:header name="Transfer-Encoding" value="chunked" />
+		<rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT" />
+		<rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC" />
+		<rest:header name="X-AAI-TXID"
+			value="mtcnjv9aaas03-20160310-00:01:18:502-132671" />
+		<rest:header name="Content-Type" value="application/xml" />
+		<rest:header name="Server" value="Apache-Coyote/1.1" />
+		<rest:header name="Cache-Control" value="private" />
+	</rest:headers>
+	<rest:payload contentType="text/xml">
+		<customer xmlns="http://org.openecomp.aai.inventory/v8">
+			<global-customer-id>8310000058863</global-customer-id>
+			<subscriber-name>Mobility</subscriber-name>
+			<subscriber-type>INFRA</subscriber-type>
+			<resource-version>1452288058</resource-version>
+			<service-subscriptions>
+				<service-subscription>
+					<service-type>vMOG</service-type>
+					<resource-version>1452288058</resource-version>
+					<service-instances>
+						<service-instance>
+							<service-instance-id>f70e927b-6087-4974-9ef8-c5e4d5847ca4</service-instance-id>
+							<persona-model-id>gg0e927b-6087-5574-9ef8-c5e4d5847db5</persona-model-id>
+							<persona-model-version>V1.0</persona-model-version>
+							<service-instance-name>vMOG-AKRON-1234</service-instance-name>
+							<resource-version>1462561835</resource-version>
+							<relationship-list />
+							<metadata />
+						</service-instance>
+					</service-instances>
+					<relationship-list>
+						<relationship>
+							<related-to>tenant</related-to>
+							<related-link>https://aai-conexus-e2e.test.com:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant/396d61752cf04c3b8ca2afcb4ee049e9/</related-link>
+							<relationship-data>
+								<relationship-key>tenant.tenant-id</relationship-key>
+								<relationship-value>396d61752cf04c3b8ca2afcb4ee049e9</relationship-value>
+							</relationship-data>
+							<relationship-data>
+								<relationship-key>cloud-region.cloud-owner</relationship-key>
+								<relationship-value>att-aic</relationship-value>
+							</relationship-data>
+							<relationship-data>
+								<relationship-key>cloud-region.cloud-region-id</relationship-key>
+								<relationship-value>AAIAIC25</relationship-value>
+							</relationship-data>
+							<related-to-property>
+								<property-key>tenant.tenant-name</property-key>
+								<property-value>vMOG-AKRON-PROD</property-value>
+							</related-to-property>
+						</relationship>		
+					</relationship-list>					
+				</service-subscription>
+			</service-subscriptions>
+			<relationship-list />
+		</customer>
+	</rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleCallbackException.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleCallbackException.xml
new file mode 100644
index 0000000..1ede444
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleCallbackException.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<volumeGroupException>    
+	<messageId>{{MESSAGE-ID}}</messageId>
+	<category>INTERNAL</category>
+	<message>Exception during create VF Create VF Module: Unable to determine specific VF Module Type: Nimbus_LU2_PXMC_Svc/PXMC_09_20_2016_v2 3::Pxmc09202016V2..pxmc_base.yaml..module-2 with version = 3.0</message>    
+	<rolledBack>true</rolledBack>
+</volumeGroupException>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeCallbackResponse.xml
new file mode 100644
index 0000000..a421355
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeCallbackResponse.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<createVolumeGroupResponse>
+    <messageId>{{MESSAGE-ID}}</messageId>
+    <volumeGroupCreated>true</volumeGroupCreated>
+    <volumeGroupId>d485ecee-957c-4a0a-8b95-27a22b90103f</volumeGroupId>
+    <volumeGroupOutputs>
+        <entry>
+            <key>mmsc_vol_1</key>
+            <value>a73e0fe9-1ce8-49c2-8fef-e2788605be29</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_2</key>
+            <value>37b6455a-5ea8-463a-89e3-0efeaf7b7c6d</value>
+        </entry>
+        <entry>
+            <key>nemsfe_vol_1</key>
+            <value>b7ff1c21-d138-49a3-bf13-4cfd91efaf48</value>
+        </entry>
+        <entry>
+            <key>nemsbe_vol_1</key>
+            <value>a5988471-cd42-44d8-b078-64f2f13d3d4c</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_5</key>
+            <value>f7b91c1e-ab8c-413a-a850-ba80a246c7e0</value>
+        </entry>
+        <entry>
+            <key>nemsfe_vol_2</key>
+            <value>957ea3f3-2d4a-4707-bfd2-ba66f42037c2</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_3</key>
+            <value>de6fccfe-d61a-48b0-b03b-87bf1bf749b3</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_4</key>
+            <value>76162310-2c38-4c32-981c-5c2880190077</value>
+        </entry>
+    </volumeGroupOutputs>
+    <volumeGroupRollback>
+        <cloudSiteId>RDM2WAGPLCP</cloudSiteId>
+        <messageId>e585e4f4-9452-437a-b294-45a2d6d3b7a3</messageId>
+        <msoRequest>
+            <requestId>c30b9453-4b68-4c2e-aacf-58a5ba648bf5</requestId>
+            <serviceInstanceId>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</serviceInstanceId>
+        </msoRequest>
+        <tenantId>1bbab536a19b4756926e7d0ec1eb543c</tenantId>
+        <volumeGroupCreated>true</volumeGroupCreated>
+        <volumeGroupId>78987</volumeGroupId>
+        <volumeGroupStackId>ZRDM1MMSC01_base_vol/7f74e5e1-5fc1-4593-ac7e-cc9899a106ef</volumeGroupStackId>
+    </volumeGroupRollback>
+    <volumeGroupStackId>ZRDM1MMSC01_base_vol/7f74e5e1-5fc1-4593-ac7e-cc9899a106ef</volumeGroupStackId>
+</createVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeRequest.xml
new file mode 100644
index 0000000..34604f1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/CreateVfModuleVolumeRequest.xml
@@ -0,0 +1,24 @@
+<volume-request xmlns="http://org.onap/so/infra/vnf-request/v1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<request-info>
+		<test-data-only>123abc</test-data-only> <!-- don't remove this tag. Its used for junit test -->
+		<request-id>d8d4fcfa-fd7e-4413-b19d-c95aa67291b8</request-id>
+		<action>CREATE_VF_MODULE_VOL</action>
+		<source>SoapUI-bns-create-base-vol-1001-1</source>
+	</request-info>
+	<volume-inputs>
+		<vnf-type>Test/vSAMP12</vnf-type>
+		<vf-module-model-name>vSAMP12::base::module-0</vf-module-model-name>
+		<backout-on-failure/>
+		<asdc-service-model-version/>
+		<service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+		<aic-cloud-region>MDTWNJ21</aic-cloud-region>
+		<tenant-id>897deadc2b954a6bac6d3c197fb3525e</tenant-id>
+		<volume-group-name>MSOTESTVOL101a-vSAMP12_base_vol_module-0</volume-group-name>
+		<volume-group-id/>
+	</volume-inputs>
+	<volume-params>
+		<param name="param1">value1</param>"
+		<param name="param2">value2</param>"
+		<param name="param3">value3</param>"
+	</volume-params>	
+</volume-request>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/GenericVnf.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/GenericVnf.xml
new file mode 100644
index 0000000..aea1a46
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/GenericVnf.xml
@@ -0,0 +1,38 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v8">
+	<vnf-id>TEST-VNF-ID-0123</vnf-id>
+	<vnf-name>STMTN5MMSC20</vnf-name>
+	<vnf-type>pcrf-capacity</vnf-type>
+	<service-id>SDN-MOBILITY</service-id>
+	<equipment-role>vPCRF</equipment-role>
+	<orchestration-status>pending-create</orchestration-status>
+	<in-maint>false</in-maint>
+	<is-closed-loop-disabled>false</is-closed-loop-disabled>
+	<persona-model-id>introvert</persona-model-id>
+	<persona-model-version>2.0</persona-model-version>
+	<resource-version>0000020</resource-version>
+	<vf-modules>
+		<vf-module>
+			<vf-module-id>lukewarm</vf-module-id>
+			<vf-module-name>PCRF::module-0-0</vf-module-name>
+			<persona-model-id>introvert</persona-model-id>
+			<persona-model-version>2.0</persona-model-version>
+			<is-base-vf-module>true</is-base-vf-module>
+			<heat-stack-id>fastburn</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000074</resource-version>
+		</vf-module>
+		<vf-module>
+			<vf-module-id>supercool</vf-module-id>
+			<vf-module-name>PCRF::module-1-0</vf-module-name>
+			<persona-model-id>extrovert</persona-model-id>
+			<persona-model-version>2.0</persona-model-version>
+			<is-base-vf-module>false</is-base-vf-module>
+			<heat-stack-id>slowburn</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000075</resource-version>
+		</vf-module>
+	</vf-modules>
+	<relationship-list/>
+	<l-interfaces/>
+	<lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/RollbackVfModuleVolumeCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/RollbackVfModuleVolumeCallbackResponse.xml
new file mode 100644
index 0000000..6ab9416
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/RollbackVfModuleVolumeCallbackResponse.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<rollbackVolumeGroupResponse>
+  <messageId>{{MESSAGE-ID}}</messageId>
+  <volumeGroupRolledback>true</volumeGroupRolledback>
+</rollbackVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request.json
new file mode 100644
index 0000000..6853daa
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request.json
@@ -0,0 +1,71 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "volumeGroup",
+			"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "vSAMP12::base::module-0",
+			"modelVersion": "1",
+			"modelCustomizationUuid": "ee6478e5-ea33-3346-ac12-ab121484a3fe"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+		},
+		"requestInfo": {
+			"instanceName": "MSOTESTVOL101a-vSAMP12_base_vol_module-0",
+			"source": "VID",
+			"suppressRollback": false
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "{service-instance-id}",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test",
+						"modelVersion": "2.0"
+					}
+				}
+			}, {
+				"relatedInstance": {
+					"instanceId": "{vnf-instance-id}",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12",
+						"modelVersion": "1",
+						"modelInstanceName": "vSAMP12"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"serviceId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+			"userParams": [
+				{"name": "vnfName", "value": "STMTN5MMSC20" },
+				{"name": "vnfName2", "value": "US1117MTSNJVBR0246" },
+				{"name": "vnfNmInformation", "value": "" },
+				{"name": "vnfType", "value": "pcrf-capacity" },
+				{"name": "vnfId", "value": "skask" },
+				{"name": "vnfStackId", "value": "slowburn" },
+				{"name": "vnfStatus", "value": "created" },
+				{"name": "aicCloudRegion", "value": "MDTWNJ21" },
+				{"name": "availabilityZone", "value": "slcp3-esx-az01" },
+				{"name": "oamNetworkName", "value": "VLAN-OAM-1323" },
+				{"name": "vmName", "value": "slcp34246vbc246ceb" },
+				{"name": "ipagNetworkId", "value": "970cd2b9-7f09-4a12-af47-182ea38ba1f0" },
+				{"name": "vpeNetworkId", "value": "545cc2c3-1930-4100-b534-5d82d0e12bb6" },
+				{"name": "vlc_sctp_b_route_prefixes",
+				 "value": [
+					{ "interface_route_table_routes_route_prefix": "107.239.41.163/32" },
+					{ "interface_route_table_routes_route_prefix": "107.239.41.164/32" },
+					{ "interface_route_table_routes_route_prefix": "107.239.41.165/32" }
+				]}
+			]
+		}
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request_noreqparm.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request_noreqparm.json
new file mode 100644
index 0000000..de99a6d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_VID_request_noreqparm.json
@@ -0,0 +1,45 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "volumeGroup",
+			"modelId": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "vSAMP12::base::module-0",
+			"modelVersion": "1"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+		},
+		"requestInfo": {
+			"instanceName": "MSOTESTVOL101a-vSAMP12_base_vol_module-0",
+			"source": "VID",
+			"suppressRollback": false
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "{service-instance-id}",
+					"modelInfo": {
+						"modelType": "service",
+						"modelId": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "{parent service model name}",
+						"modelVersion": "1"
+					}
+				}
+			}, {
+				"relatedInstance": {
+					"instanceId": "{vnf-instance-id}",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelId": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test/vSAMP12",
+						"modelVersion": "1"
+					}
+				}
+			}
+		]
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..02b43ff
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,49 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+				   statusCode="200">
+   <rest:headers>
+	  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+	  <rest:header name="X-CSI-MethodName" value="UNKNOWN"/>
+	  <rest:header name="Content-Length" value="968"/>
+	  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211465"/>
+	  <rest:header name="X-CSI-UniqueTransactionId"
+				   value="AjscCsiRestful28795@mtsnjv9aaas237d4a4d21-e60a-495f-935f-cc225dc3c847"/>
+	  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+	  <rest:header name="X-TransactionID" value="3a19f95d-d63e-4a8e-8b9c-6563895628aa"/>
+	  <rest:header name="X-CSI-ServiceName" value="UNKNOWN"/>
+	  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+	  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+	  <rest:header name="X-FromAppId" value="MSO"/>
+	  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+	  <rest:header name="X-CSI-ConversationId"
+				   value="ajscUser~CNG-CSI~c0a2bb44-2167-4e85-ad6a-483a24c0823a"/>
+	  <rest:header name="volume-group-name" value="simpleCinderVolume_201604071"/>
+	  <rest:header name="X-CSI-MessageId" value="f6d6eed4-456e-4033-be04-b17582902dc2"/>
+	  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:592-73255"/>
+	  <rest:header name="Content-Type" value="application/xml"/>
+	  <rest:header name="Accept" value="application/xml"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+	  <volume-group xmlns="http://org.openecomp.aai.inventory/v8">
+		 <volume-group-id>simpleCinderVolume_201604071</volume-group-id>
+		 <volume-group-name>simpleCinderVolume_201604071</volume-group-name>
+		 <heat-stack-id>simpleCinderVolume_201604071</heat-stack-id>
+		 <vnf-type>simple_cinder_master</vnf-type>
+		 <orchestration-status>Pending</orchestration-status>
+		 <resource-version>1460134360</resource-version>
+		 <relationship-list>
+			<relationship>
+			   <related-to>tenant</related-to>
+			   <related-link>https://aai-ext1.test.com:8443/aai/v6/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/</related-link>
+			   <relationship-data>
+				  <relationship-key>tenant.tenant-id</relationship-key>
+				  <relationship-value>897deadc2b954a6bac6d3c197fb3525e</relationship-value>
+			   </relationship-data>
+			   <related-to-property>
+				  <property-key>tenant.tenant-name</property-key>
+				  <property-value>MSOTest1</property-value>
+			   </related-to-property>
+			</relationship>
+		 </relationship-list>
+	  </volume-group>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_deleteVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_deleteVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..1574310
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_deleteVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,24 @@
+	<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+					   statusCode="200">
+	   <rest:headers>
+		  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+		  <rest:header name="X-CSI-MethodName" value="helloWorld-GetMethod(Logical)"/>
+		  <rest:header name="Content-Length" value="0"/>
+		  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211467"/>
+		  <rest:header name="X-CSI-UniqueTransactionId"
+					   value="AjscCsiRestful28795@mtsnjv9aaas23d44059bc-ef96-4af8-a28b-98044e08d7af"/>
+		  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+		  <rest:header name="X-TransactionID" value="3749995c-266b-4025-a0c4-4ce6983efc66"/>
+		  <rest:header name="X-CSI-ServiceName" value="helloWorld"/>
+		  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+		  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+		  <rest:header name="X-FromAppId" value="MSO"/>
+		  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+		  <rest:header name="X-CSI-ConversationId"
+					   value="ajscUser~CNG-CSI~bbd0e78f-d4e7-41be-b9ad-4a6767fa660a"/>
+		  <rest:header name="X-CSI-MessageId" value="6ccfeb13-56da-4836-bfbd-5a42dee60939"/>
+		  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:629-73256"/>
+		  <rest:header name="Content-Type" value="application/xml"/>
+		  <rest:header name="Accept" value="application/xml"/>
+	   </rest:headers>
+	</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_404.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_404.xml
new file mode 100644
index 0000000..96e906f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_404.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<volume-group xmlns="http://org.openecomp.aai.inventory/v7">
+	<volume-group-id>94f0f72f-4be1-49ed-8410-702396797163</volume-group-id>
+	<volume-group-name>MSOTESTVOL103H-vSAMP12_base_vol_module-0</volume-group-name>
+	<heat-stack-id/>
+	<vnf-type>Test/vSAMP12</vnf-type>
+	<orchestration-status>Pending</orchestration-status>
+	<resource-version>1469203133</resource-version>
+	<relationship-list>
+		<relationship>
+			<related-to>tenant</related-to>
+			<related-link>https://aai-ext1.test.com:8443/aai/v7/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/tenants/tenant/e444c311b27a45dc9522f2370d70f90f/</related-link>
+			<relationship-data>
+				<relationship-key>tenant.tenant-id</relationship-key>
+				<relationship-value>e444c311b27a45dc9522f2370d70f90f</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-owner</relationship-key>
+				<relationship-value>att-aic</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-region-id</relationship-key>
+				<relationship-value>mtn6</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>tenant.tenant-name</property-key>
+				<property-value>MSOCustomer1</property-value>
+			</related-to-property>
+		</relationship>
+	</relationship-list>
+</volume-group>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..7aa9c3e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,50 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+				   statusCode="200">
+   <rest:headers>
+	  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+	  <rest:header name="X-CSI-MethodName" value="UNKNOWN"/>
+	  <rest:header name="Content-Length" value="968"/>
+	  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211465"/>
+	  <rest:header name="X-CSI-UniqueTransactionId"
+				   value="AjscCsiRestful28795@mtsnjv9aaas237d4a4d21-e60a-495f-935f-cc225dc3c847"/>
+	  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+	  <rest:header name="X-TransactionID" value="3a19f95d-d63e-4a8e-8b9c-6563895628aa"/>
+	  <rest:header name="X-CSI-ServiceName" value="UNKNOWN"/>
+	  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+	  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+	  <rest:header name="X-FromAppId" value="MSO"/>
+	  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+	  <rest:header name="X-CSI-ConversationId"
+				   value="ajscUser~CNG-CSI~c0a2bb44-2167-4e85-ad6a-483a24c0823a"/>
+	  <rest:header name="volume-group-name" value="simpleCinderVolume_201604071"/>
+	  <rest:header name="X-CSI-MessageId" value="f6d6eed4-456e-4033-be04-b17582902dc2"/>
+	  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:592-73255"/>
+	  <rest:header name="Content-Type" value="application/xml"/>
+	  <rest:header name="Accept" value="application/xml"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+	  <volume-group xmlns="http://org.openecomp.aai.inventory/v8">
+		 <volume-group-id>8424bb3c-c3e7-4553-9662-469649ed9379</volume-group-id>
+		 <volume-group-name>MSOTESTVOL103W-vSAMP12_base_vol_module-0</volume-group-name>
+		 <heat-stack-id/>
+		 <vnf-type>simple_cinder_master</vnf-type>
+		 <orchestration-status>Pending</orchestration-status>
+		 <vf-module-model-customization-id>ee6478e5-ea33-3346-ac12-ab121484a3fe</vf-module-model-customization-id>
+		 <resource-version>1460134360</resource-version>
+		 <relationship-list>
+			<relationship>
+			   <related-to>tenant</related-to>
+			   <related-link>https://aai-ext1.test.com:8443/aai/v6/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/</related-link>
+			   <relationship-data>
+				  <relationship-key>tenant.tenant-id</relationship-key>
+				  <relationship-value>897deadc2b954a6bac6d3c197fb3525e</relationship-value>
+			   </relationship-data>
+			   <related-to-property>
+				  <property-key>tenant.tenant-name</property-key>
+				  <property-value>MSOTest1</property-value>
+			   </related-to-property>
+			</relationship>
+		 </relationship-list>
+	  </volume-group>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_updateVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_updateVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..1574310
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/createVfModuleVolume_updateVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,24 @@
+	<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+					   statusCode="200">
+	   <rest:headers>
+		  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+		  <rest:header name="X-CSI-MethodName" value="helloWorld-GetMethod(Logical)"/>
+		  <rest:header name="Content-Length" value="0"/>
+		  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211467"/>
+		  <rest:header name="X-CSI-UniqueTransactionId"
+					   value="AjscCsiRestful28795@mtsnjv9aaas23d44059bc-ef96-4af8-a28b-98044e08d7af"/>
+		  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+		  <rest:header name="X-TransactionID" value="3749995c-266b-4025-a0c4-4ce6983efc66"/>
+		  <rest:header name="X-CSI-ServiceName" value="helloWorld"/>
+		  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+		  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+		  <rest:header name="X-FromAppId" value="MSO"/>
+		  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+		  <rest:header name="X-CSI-ConversationId"
+					   value="ajscUser~CNG-CSI~bbd0e78f-d4e7-41be-b9ad-4a6767fa660a"/>
+		  <rest:header name="X-CSI-MessageId" value="6ccfeb13-56da-4836-bfbd-5a42dee60939"/>
+		  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:629-73256"/>
+		  <rest:header name="Content-Type" value="application/xml"/>
+		  <rest:header name="Accept" value="application/xml"/>
+	   </rest:headers>
+	</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/getSIUrlById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/getSIUrlById.xml
new file mode 100644
index 0000000..416689e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/getSIUrlById.xml
@@ -0,0 +1,6 @@
+    <search-results xmlns="http://org.openecomp.aai.inventory">
+         <result-data>
+            <resource-type>service-instance</resource-type>
+            <resource-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET</resource-link>
+         </result-data>
+      </search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_HasVfModRelationship.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_HasVfModRelationship.xml
new file mode 100644
index 0000000..7e2a676
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_HasVfModRelationship.xml
@@ -0,0 +1,62 @@
+<volume-group xmlns="http://com.att.aai.inventory/v8">
+	<volume-group-id>78987</volume-group-id>
+	<volume-group-name>MSOTESTVOL102a-vSAMP12_base_vol_module-0</volume-group-name>
+	<heat-stack-id/>
+	<vnf-type>Test/vSAMP12</vnf-type>
+	<orchestration-status>Pending</orchestration-status>
+	<resource-version>0000020</resource-version>
+	<relationship-list>
+		<relationship>
+			<related-to>generic-vnf</related-to>
+			<related-link>https://localhost:8443/aai/v8/network/generic-vnfs/generic-vnf/9e48f6ea-f786-46de-800a-d480e5ccc846/</related-link>
+			<relationship-data>
+				<relationship-key>generic-vnf.vnf-id</relationship-key>
+				<relationship-value>9e48f6ea-f786-46de-800a-d480e5ccc846</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>generic-vnf.vnf-name</property-key>
+				<property-value>MSOSTSAMP12-10601</property-value>
+			</related-to-property>
+		</relationship>
+		<relationship>
+			<related-to>tenant</related-to>
+			<related-link>https://localhost:8443/aai/v7/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mdt1/tenants/tenant/fba1bd1e195a404cacb9ce17a9b2b421/</related-link>
+			<relationship-data>
+				<relationship-key>tenant.tenant-id</relationship-key>
+				<relationship-value>fba1bd1e195a404cacb9ce17a9b2b421</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-owner</relationship-key>
+				<relationship-value>att-aic</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-region-id</relationship-key>
+				<relationship-value>mdt1</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>tenant.tenant-name</property-key>
+				<property-value>ECOMP_MDT1</property-value>
+			</related-to-property>
+		</relationship>
+		<relationship>
+			<related-to>vf-module</related-to>
+			<related-link>https://localhost:8443/aai/v7/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mdt1/tenants/tenant/fba1bd1e195a404cacb9ce17a9b2b421/</related-link>
+			<relationship-data>
+				<relationship-key>vf-module.vf-module-id</relationship-key>
+				<relationship-value>fba1bd1e195a404cacb9ce17a9b2b421</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-owner</relationship-key>
+				<relationship-value>att-aic</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-region-id</relationship-key>
+				<relationship-value>mdt1</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>vf-module.vf-module-name</property-key>
+				<property-value>ECOMP_MDT1</property-value>
+			</related-to-property>
+		</relationship>
+	</relationship-list>
+</volume-group>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request.json
new file mode 100644
index 0000000..808e371
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request.json
@@ -0,0 +1,77 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "vfModule",
+			"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "STMTN5MMSC21-MMSC::model-1-0",
+			"modelVersion": "1",
+			"modelCustomizationUuid": "ee6478e5-ea33-3346-ac12-ab121484a3fe"
+		},
+		"subscriberInfo": {
+			"globalSubscriberId": "MSO_1610_dev_id",
+			"subscriberName": "MSO_1610_dev_name"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "MDTWNJ21",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"instanceName": "PCRF::module-0-2",
+			"source": "VID",
+			"suppressRollback": true
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c",
+					"instanceName": "MSOTESTVOL103a-vSAMP12_base_module-0_vol",
+					"modelInfo": {
+						"modelType": "volumeGroup",
+						"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12..base..module-0",
+						"modelVersion": "1"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "123456",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "SERVICE_MODEL_NAME",
+						"modelVersion": "1.0"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "skask",
+					"instanceName": "skask-test",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "skask",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12",
+						"modelVersion": "1.0",
+						"modelInstanceName": "vSAMP12 1"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"usePreload": true,
+			"aLaCarte": false,
+			"userParams": [{
+				"name": "vlc_sctp_b_route_prefixes",
+				"value": [
+					{ "interface_route_table_routes_route_prefix": "107.239.41.163/32" },
+					{ "interface_route_table_routes_route_prefix": "107.239.41.164/32" },
+					{ "interface_route_table_routes_route_prefix": "107.239.41.165/32" }
+		]}]
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request_noPreloads.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request_noPreloads.json
new file mode 100644
index 0000000..b51741f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request_noPreloads.json
@@ -0,0 +1,79 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "vfModule",
+			"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "STMTN5MMSC21-MMSC::model-1-0",
+			"modelVersion": "1",
+			"modelCustomizationUuid": "ee6478e5-ea33-3346-ac12-ab121484a3fe"
+		},
+		"subscriberInfo": {
+			"globalSubscriberId": "MSO_1610_dev_id",
+			"subscriberName": "MSO_1610_dev_name"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "MDTWNJ21",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"instanceName": "PCRF::module-0-2",
+			"source": "VID",
+			"suppressRollback": true
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c",
+					"instanceName": "MSOTESTVOL103a-vSAMP12_base_module-0_vol",
+					"modelInfo": {
+						"modelType": "volumeGroup",
+						"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12..base..module-0",
+						"modelVersion": "1"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "123456",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "SERVICE_MODEL_NAME",
+						"modelVersion": "1.0"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "skask",
+					"instanceName": "skask-test",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "skask",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12",
+						"modelVersion": "1.0",
+						"modelInstanceName": "vSAMP12 1"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"usePreload": false,
+			"userParams": [
+				{
+					"name": "someUserParam",
+					"value": "someValue"
+				},
+				{
+					"name": "sgi_protected_subnet_id",
+					"value": "thisissomefakevalue"
+				}
+			]
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request_userParam.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request_userParam.json
new file mode 100644
index 0000000..68de099
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/CreateVfModule_VID_request_userParam.json
@@ -0,0 +1,77 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "vfModule",
+			"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "STMTN5MMSC21-MMSC::model-1-0",
+			"modelVersion": "1",
+			"modelCustomizationUuid": "ee6478e5-ea33-3346-ac12-ab121484a3fe"
+		},
+		"subscriberInfo": {
+			"globalSubscriberId": "MSO_1610_dev_id",
+			"subscriberName": "MSO_1610_dev_name"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "MDTWNJ21",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"instanceName": "PCRF::module-0-2",
+			"source": "VID",
+			"suppressRollback": true
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "17ef4658-bd1f-4ef0-9ca0-ea76e2bf122c",
+					"instanceName": "MSOTESTVOL103a-vSAMP12_base_module-0_vol",
+					"modelInfo": {
+						"modelType": "volumeGroup",
+						"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12..base..module-0",
+						"modelVersion": "1"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "123456",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "SERVICE_MODEL_NAME",
+						"modelVersion": "1.0"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "skask",
+					"instanceName": "skask-test",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "skask",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12",
+						"modelVersion": "1.0",
+						"modelInstanceName": "vSAMP12 1"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"usePreload": true,
+			"aLaCarte": false,
+			"userParams": [{
+				"name": "vlc_sctp_b_route_prefixes",
+				"value": [
+					{ "interface_route_table_routes_route_prefix": "107.239.41.163/32" },
+					{ "interface_route_table_routes_route_prefix": "107.239.41.164/32" },
+					{ "interface_route_table_routes_route_prefix": "107.239.41.165/32" }
+			]}
+		]}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DBUpdateResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DBUpdateResponse.xml
new file mode 100644
index 0000000..0942e09
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DBUpdateResponse.xml
@@ -0,0 +1,4 @@
+
+
+<ns2:updateRequestResponse xmlns:ns2="http://org.onap/requestsdb"
+                           xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"/>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Database/DBAdapter.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Database/DBAdapter.xml
new file mode 100644
index 0000000..5a36d74
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Database/DBAdapter.xml
@@ -0,0 +1 @@
+<DbTag>Notified</DbTag>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Database/DBUpdateResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Database/DBUpdateResponse.xml
new file mode 100644
index 0000000..0ae5b79
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Database/DBUpdateResponse.xml
@@ -0,0 +1,4 @@
+
+
+<ns2:updateRequestResponse xmlns:ns2="http://org.onap.so/requestsdb"
+                           xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"/>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteGenericVNFV1/sdncAdapterResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteGenericVNFV1/sdncAdapterResponse.xml
new file mode 100644
index 0000000..ca19532
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteGenericVNFV1/sdncAdapterResponse.xml
@@ -0,0 +1,7 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowResponse xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1">
+	<sdncadapterworkflow:response-data>
+		<tag0:RequestData xmlns:tag0="http://org.onap/workflow/sdnc/adapter/schema/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">
+		&lt;output xmlns="org:onap:sdnctl:vnf"&gt;&lt;svc-request-id&gt;1660b8da-0a94-442d-8ed5-ea079e3c67c8&lt;/svc-request-id&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;vnf-information&gt;&lt;vnf-id&gt;8925b50d-de67-44c1-b984-e7ce7b0f4dae&lt;/vnf-id&gt;&lt;/vnf-information&gt;&lt;service-information&gt;&lt;service-type&gt;a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb&lt;/service-type&gt;&lt;service-instance-id&gt;8925b50d-de67-44c1-b984-e7ce7b0f4dae&lt;/service-instance-id&gt;&lt;subscriber-name&gt;notsurewecare&lt;/subscriber-name&gt;&lt;/service-information&gt;&lt;/output&gt;
+		</tag0:RequestData>
+	</sdncadapterworkflow:response-data>
+</sdncadapterworkflow:SDNCAdapterWorkflowResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/cloudRegion25_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/cloudRegion25_AAIResponse_Success.xml
new file mode 100644
index 0000000..90c668c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/cloudRegion25_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>2.5</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/cloudRegion30_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/cloudRegion30_AAIResponse_Success.xml
new file mode 100644
index 0000000..9b651f2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/cloudRegion30_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>3.0</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteAAIResponse_Failure500_RESTFault.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteAAIResponse_Failure500_RESTFault.xml
new file mode 100644
index 0000000..4ce7048
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteAAIResponse_Failure500_RESTFault.xml
@@ -0,0 +1,19 @@
+<rest:RESTFault xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                errorType="transport">
+   <rest:errorCode>500</rest:errorCode>
+   <rest:message>HTTP method: GET Internal Server Error </rest:message>
+   <rest:messageDetails>&lt;Fault&gt;
+    &lt;requestError&gt;
+        &lt;serviceException&gt;
+            &lt;messageId&gt;SVC3002&lt;/messageId&gt;
+            &lt;text&gt;Error writing output performing %1 on %2 (msg=%3) (ec=%4)&lt;/text&gt;
+            &lt;variables&gt;
+                &lt;variable&gt;PUT customer&lt;/variable&gt;
+                &lt;variable&gt;SubName32&lt;/variable&gt;
+                &lt;variable&gt;Unexpected error reading/updating database:Adding this property for key [service-instance-id] and value [12312442454112] violates a uniqueness constraint [service-instance-id]&lt;/variable&gt;
+                &lt;variable&gt;ERR.5.4.5105&lt;/variable&gt;
+            &lt;/variables&gt;
+        &lt;/serviceException&gt;
+    &lt;/requestError&gt;
+&lt;/Fault&gt;</rest:messageDetails>
+</rest:RESTFault>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteNetworkAAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteNetworkAAIResponse_Success.xml
new file mode 100644
index 0000000..c12bcd4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteNetworkAAIResponse_Success.xml
@@ -0,0 +1,61 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Sat,30 Jan 2016 20:09:24 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160130-20:09:24:814-165843"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>bdc5efe8-404a-409b-85f6-0dcc9eebae30</network-id>
+         <network-name>HSL_direct_net_2</network-name>
+         <network-type>CONTRAIL_BASIC</network-type>
+         <network-role>HSL_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <neutron-network-id>8bbd3edf-b835-4610-96a2-a5cafa029042</neutron-network-id>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <orchestration-status>active</orchestration-status>
+         <heat-stack-id>HSL_direct_net_2/57594a56-1c92-4a38-9caa-641c1fa3d4b6</heat-stack-id>
+         <subnets>
+            <subnet>
+               <subnet-id>ea5f2a2c-604f-47ff-a9c5-253ee4f0ef0a</subnet-id>
+               <neutron-subnet-id>5a77fdc2-7789-4649-a1b9-6eaf1db1813a</neutron-subnet-id>
+               <gateway-address>172.16.34.1</gateway-address>
+               <network-start-address>172.16.34.0</network-start-address>
+               <cidr-mask>28</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>active</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+         <relationship-list>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/e81d842d3e8b45c5a59f57cd76af3aaf/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>e81d842d3e8b45c5a59f57cd76af3aaf</relationship-value>
+               </relationship-data>
+            </relationship>
+			<relationship>
+               <related-to>cloud-region</related-to>
+               <related-link>cloud-infrastructure/cloud-regions/cloud-region/att-aic/RDM2WAGPLCP/</related-link>
+               <relationship-data>
+                  <relationship-key>cloud-region.cloud-owner</relationship-key>
+                  <relationship-value>att-aic</relationship-value>
+               </relationship-data>
+               <relationship-data>
+                  <relationship-key>cloud-region.cloud-region-id</relationship-key>
+                  <relationship-value>RDM2WAGPLCP</relationship-value>
+               </relationship-data>						   
+            </relationship>			            
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteNetworkAAIResponse_withRelationship_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteNetworkAAIResponse_withRelationship_Success.xml
new file mode 100644
index 0000000..b108fb2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2/deleteNetworkAAIResponse_withRelationship_Success.xml
@@ -0,0 +1,73 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Sat,30 Jan 2016 20:09:24 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160130-20:09:24:814-165843"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>bdc5efe8-404a-409b-85f6-0dcc9eebae30</network-id>
+         <network-name>HSL_direct_net_2</network-name>
+         <network-type>CONTRAIL_BASIC</network-type>
+         <network-role>HSL_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <neutron-network-id>8bbd3edf-b835-4610-96a2-a5cafa029042</neutron-network-id>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <orchestration-status>active</orchestration-status>
+         <heat-stack-id>HSL_direct_net_2/57594a56-1c92-4a38-9caa-641c1fa3d4b6</heat-stack-id>
+         <subnets>
+            <subnet>
+               <subnet-id>ea5f2a2c-604f-47ff-a9c5-253ee4f0ef0a</subnet-id>
+               <neutron-subnet-id>5a77fdc2-7789-4649-a1b9-6eaf1db1813a</neutron-subnet-id>
+               <gateway-address>172.16.34.1</gateway-address>
+               <network-start-address>172.16.34.0</network-start-address>
+               <cidr-mask>28</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>active</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+         <relationship-list>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/e81d842d3e8b45c5a59f57cd76af3aaf/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>e81d842d3e8b45c5a59f57cd76af3aaf</relationship-value>
+               </relationship-data>
+            </relationship>
+			<relationship>
+				<related-to>vf-module</related-to>
+				<related-link>https://aai-app-e2e.ecomp.cci.com:8443/aai/v8/network/generic-vnfs/generic-vnf/105df7e5-0b3b-49f7-a837-4864b62827c4/vf-modules/vf-module/d9217058-95a0-49ee-b9a9-949259e89349/</related-link>
+				<relationship-data>
+				   <relationship-key>generic-vnf.vnf-id</relationship-key>
+				   <relationship-value>105df7e5-0b3b-49f7-a837-4864b62827c4</relationship-value>
+			    </relationship-data>
+			    <relationship-data>
+				   <relationship-key>vf-module.vf-module-id</relationship-key>
+				   <relationship-value>d9217058-95a0-49ee-b9a9-949259e89349</relationship-value>
+			    </relationship-data>
+		    </relationship>            
+			<relationship>
+       		   <related-to>generic-vnf</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/generic-vnfs/generic-vnf/45f822d9-73ca-4255-9844-7cef401bbf47/</related-link>
+               <relationship-data>
+                 <relationship-key>generic-vnf.vnf-id</relationship-key>
+                 <relationship-value>45f822d9-73ca-4255-9844-7cef401bbf47</relationship-value>
+               </relationship-data>
+               <related-to-property>
+                 <property-key>generic-vnf.vnf-name</property-key>
+                 <property-value>zrdm1scpx05</property-value>
+               </related-to-property>
+            </relationship>
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2mock/sdncDeleteNetworkTopologySimResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2mock/sdncDeleteNetworkTopologySimResponse.xml
new file mode 100644
index 0000000..1d198ca
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2mock/sdncDeleteNetworkTopologySimResponse.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+	xmlns:v1="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<soapenv:Header />
+	<soapenv:Body>
+		<SDNCAdapterCallbackRequest xmlns="http://org.onap/workflow/sdnc/adapter/schema/v1">
+		 <CallbackHeader>
+		   <RequestId>19174929-3809-49ca-89eb-17f84a035389</RequestId>
+		   <ResponseCode>200</ResponseCode>
+		   <ResponseMessage>OK</ResponseMessage>
+		 </CallbackHeader>
+		 <RequestData xmlns:xs="http://www.w3.org/2001/XMLSchema"
+				   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+				   xsi:type="xs:string">&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;output xmlns="com:att:sdnctl:vnf"&gt;&lt;svc-request-id&gt;19174929-3809-49ca-89eb-17f84a035389&lt;/svc-request-id&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;network-information&gt;&lt;network-id&gt;bdc5efe8-404a-409b-85f6-0dcc9eebae30&lt;/network-id&gt;&lt;/network-information&gt;&lt;service-information&gt;&lt;service-type&gt;a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb&lt;/service-type&gt;&lt;service-instance-id&gt;HSL_direct_net_2&lt;/service-instance-id&gt;&lt;subscriber-name&gt;notsurewecare&lt;/subscriber-name&gt;&lt;/service-information&gt;&lt;/output&gt;</RequestData>
+		</SDNCAdapterCallbackRequest>
+	</soapenv:Body>
+</soapenv:Envelope>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2mock/sdncDeleteNetworkTopologySimResponse_noExtraTag.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2mock/sdncDeleteNetworkTopologySimResponse_noExtraTag.xml
new file mode 100644
index 0000000..bc0eab8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteNetworkV2mock/sdncDeleteNetworkTopologySimResponse_noExtraTag.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+	xmlns:v1="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<soapenv:Header />
+	<soapenv:Body>
+			<SDNCAdapterCallbackRequest xmlns="http://org.onap/workflow/sdnc/adapter/schema/v1">
+			 <CallbackHeader>
+			   <RequestId>19174929-3809-49ca-89eb-17f84a035389</RequestId>
+			   <ResponseCode>200</ResponseCode>
+			   <ResponseMessage>OK</ResponseMessage> 
+			 </CallbackHeader>
+			 <RequestData xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+			           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+			           xsi:type="xs:string">&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;output xmlns="com:att:sdnctl:vnf"&gt;&lt;svc-request-id&gt;19174929-3809-49ca-89eb-17f84a035389&lt;/svc-request-id&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;network-information&gt;&lt;network-id&gt;bdc5efe8-404a-409b-85f6-0dcc9eebae30&lt;/network-id&gt;&lt;/network-information&gt;&lt;service-information&gt;&lt;service-type&gt;a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb&lt;/service-type&gt;&lt;service-instance-id&gt;HSL_direct_net_2&lt;/service-instance-id&gt;&lt;subscriber-name&gt;notsurewecare&lt;/subscriber-name&gt;&lt;/service-information&gt;&lt;/output&gt;</RequestData>
+			</SDNCAdapterCallbackRequest>
+	</soapenv:Body>
+</soapenv:Envelope>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleCallbackResponse.xml
new file mode 100644
index 0000000..74a3beb
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleCallbackResponse.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<deleteVfModuleResponse>
+    <messageId>86651f79-057e-4245-8f5f-174db3cef553-1502888133261</messageId>
+    <vfModuleDeleted>true</vfModuleDeleted>
+    <vfModuleId>20928949-5230-495d-86a6-f3690b9b5d60</vfModuleId>
+    <vfModuleOutputs>
+        <entry>
+            <key>shared_private_network_id</key>
+            <value>bcd04543-b3d7-4c64-a910-1735b875ebb2</value>
+        </entry>
+        <entry>
+            <key>server1_port</key>
+            <value>d1605e82-50ba-4544-9f8d-a8a37b678046</value>
+        </entry>
+        <entry>
+            <key>vnf_id</key>
+            <value>7da56895-6be1-4bec-856b-525e0e573199</value>
+        </entry>
+    </vfModuleOutputs>
+    <vnfId>7da56895-6be1-4bec-856b-525e0e573199</vnfId>
+</deleteVfModuleResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/DeleteVfModuleVolumeCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/DeleteVfModuleVolumeCallbackResponse.xml
new file mode 100644
index 0000000..25aa45a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/DeleteVfModuleVolumeCallbackResponse.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<deleteVolumeGroupResponse>
+	<messageId>{{MESSAGE-ID}}</messageId>
+	<volumeGroupDeleted>true</volumeGroupDeleted>
+</deleteVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/deleteVfModuleVolume_VID_request_st.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/deleteVfModuleVolume_VID_request_st.json
new file mode 100644
index 0000000..c6cc1ca
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/deleteVfModuleVolume_VID_request_st.json
@@ -0,0 +1,17 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "volumeGroup",
+			"modelInvariantUuid": "0b01b8c2-8416-11e6-ae22-56b6b6499611",
+			"modelName": "vSAMP12::base::module-0",
+			"modelVersion": "1.0"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "MDTWNJ21",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"source": "VID"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_Success.xml
new file mode 100644
index 0000000..fd10548
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_Success.xml
@@ -0,0 +1,42 @@
+<volume-group xmlns="http://org.openecomp.aai.inventory/v8">
+	<volume-group-id>78987</volume-group-id>
+	<volume-group-name>MSOTESTVOL102a-vSAMP12_base_vol_module-0</volume-group-name>
+	<heat-stack-id/>
+	<vnf-type>Test/vSAMP12</vnf-type>
+	<orchestration-status>Pending</orchestration-status>
+	<resource-version>0000020</resource-version>
+	<relationship-list>
+		<relationship>
+			<related-to>generic-vnf</related-to>
+			<related-link>https://aai-ext1.test.com:8443/aai/v8/network/generic-vnfs/generic-vnf/9e48f6ea-f786-46de-800a-d480e5ccc846/</related-link>
+			<relationship-data>
+				<relationship-key>generic-vnf.vnf-id</relationship-key>
+				<relationship-value>9e48f6ea-f786-46de-800a-d480e5ccc846</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>generic-vnf.vnf-name</property-key>
+				<property-value>MSOSTSAMP12-10601</property-value>
+			</related-to-property>
+		</relationship>
+		<relationship>
+			<related-to>tenant</related-to>
+			<related-link>https://aai-ext1.test.com:8443/aai/v7/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mdt1/tenants/tenant/fba1bd1e195a404cacb9ce17a9b2b421/</related-link>
+			<relationship-data>
+				<relationship-key>tenant.tenant-id</relationship-key>
+				<relationship-value>fba1bd1e195a404cacb9ce17a9b2b421</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-owner</relationship-key>
+				<relationship-value>att-aic</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-region-id</relationship-key>
+				<relationship-value>mdt1</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>tenant.tenant-name</property-key>
+				<property-value>ECOMP_MDT1</property-value>
+			</related-to-property>
+		</relationship>
+	</relationship-list>
+</volume-group>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModule_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModule_VID_request.json
new file mode 100644
index 0000000..c75c32d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DeleteVfModule_VID_request.json
@@ -0,0 +1,50 @@
+{
+"requestDetails": {
+"modelInfo": {
+"modelType": "vfModule",
+"modelInvariantId": "973ed047-d251-4fb9-bf1a-65b8949e0a73",
+"modelNameVersionId": "973ed047-d251-4fb9-bf1a-65b8949e0a73",
+"modelName": "STMTN5MMSC21-MMSC::model-1-0",
+"modelVersion": "1"
+},
+"cloudConfiguration": {
+"lcpCloudRegionId": "MDTWNJ21",
+"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+},
+"requestInfo": {
+"instanceId": "973ed047-d251-4fb9-bf1a-65b8949e0a73",
+"source": "VID",
+"suppressRollback": true
+},
+"relatedInstanceList": [
+{
+"relatedInstance": {
+"instanceId": "00000000-0000-0000-0000-000000000000",
+"modelInfo": {
+"modelType": "service",
+"modelInvariantId": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+"modelNameVersionId": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+"modelName": "SERVICE_MODEL_NAME",
+"modelVersion": "1.0"
+}
+}
+},
+{
+"relatedInstance": {
+"instanceId": "a27ce5a9-29c4-4c22-a017-6615ac73c721",
+"modelInfo": {
+"modelType": "vnf",
+"modelInvariantId": "skask",
+"modelNameVersionId": "a27ce5a9-29c4-4c22-a017-6615ac73c721",
+"modelName": "vSAMP12",
+"modelVersion": "1.0",
+"modelCustomizationName": "vSAMP12 1"
+}
+}
+}
+],
+"requestParameters": {
+"userParams": {}
+}
+}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/DoCreateVfModuleRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/DoCreateVfModuleRequest.xml
new file mode 100644
index 0000000..4aaa56f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/DoCreateVfModuleRequest.xml
@@ -0,0 +1,31 @@
+<vnf-request xmlns="http://ecomp.att.com/mso/infra/vnf-request/v1">
+	<request-info>
+		<request-id>test-VF-0011</request-id>
+		<action>CREATE_VF_MODULE</action>
+		<source>VID</source>
+		<service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+	</request-info>
+	<vnf-inputs>
+		<vnf-id>skask</vnf-id>
+		<vnf-name>STMTN5MMSC20</vnf-name>
+		<vnf-type>myvnftype</vnf-type>
+		<vf-module-name>PCRF::module-0-2</vf-module-name>
+		<vf-module-model-name>STMTN5MMSC21-MMSC::model-1-0</vf-module-model-name>
+		<persona-model-id>00000000-0000-0000-0000-000000000000</persona-model-id>
+		<persona-model-version>1.0</persona-model-version>
+		<service-id>00000000-0000-0000-0000-000000000000</service-id>
+		<aic-cloud-region>MDTWNJ21</aic-cloud-region>
+		<tenant-id>fba1bd1e195a404cacb9ce17a9b2b421</tenant-id>
+		<volume-group-id>78987</volume-group-id>
+	</vnf-inputs>
+	<vnf-params xmlns:tns="http://ecomp.att.com/mso/infra/vnf-request/v1">
+		<param name="vnf_instance_name">STMTN5MMSC20</param>
+		<param name="tenant_id">vpe-tenant-123</param>
+		<param name="aic_cloud_region">MDTWNJ21</param>
+		<param name="is_avpn_service">false</param>
+		<param name="asn">asn-1234</param>
+		<param name="release_for_aero">release-for-aero-something</param>
+		<param name="aic_clli">MTJWNJA4LCP</param>
+		<param name="svc_provider_part_number">svc-provide-number-1234</param>
+	</vnf-params>
+</vnf-request>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/cloudRegion_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/cloudRegion_AAIResponse_Success.xml
new file mode 100644
index 0000000..90c668c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/cloudRegion_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>2.5</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/createVnfARequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/createVnfARequest.xml
new file mode 100644
index 0000000..f78d38f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/createVnfARequest.xml
@@ -0,0 +1,169 @@
+<createVfModuleRequest>
+    <cloudSiteId>RDM2WAGPLCP</cloudSiteId>
+    <tenantId>fba1bd1e195a404cacb9ce17a9b2b421</tenantId>
+    <vnfId>skask</vnfId>
+    <vnfName>skask-test</vnfName>
+    <vfModuleName>PCRF::module-0-2</vfModuleName>
+    <vfModuleId>cb510af0-5b21-4bc7-86d9-323cb396ce32</vfModuleId>
+    <vnfType>vRRaas</vnfType>
+    <vfModuleType>PCRF::module-0-2</vfModuleType>
+    <vnfVersion>1.0</vnfVersion>
+    <modelCustomizationUuid>cb510af0-5b21-4bc7-86d9-323cb396ced3</modelCustomizationUuid>
+    <requestType></requestType>
+    <volumeGroupId>12345</volumeGroupId>
+    <volumeGroupStackId>null</volumeGroupStackId>
+    <baseVfModuleId>null</baseVfModuleId>
+    <baseVfModuleStackId>12345</baseVfModuleStackId>
+    <skipAAI>true</skipAAI>
+    <backout>12345</backout>
+    <failIfExists>true</failIfExists>
+    <vfModuleParams>
+        <entry>
+            <key>vf_module_id</key>
+            <value>cb510af0-5b21-4bc7-86d9-323cb396ce32</value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network1_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_subnet_id</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>vrra_ADIGOam.OAM_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vnf_name</key>
+            <value>skask-test</value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_v6_subnet_id</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>workload_context</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vf_module_name</key>
+            <value>PCRF::module-0-2</value>
+        </entry>
+        <entry>
+            <key>vnf_id</key>
+            <value>skask</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_v6_subnet_id</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_1_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_v6_subnet_id</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_subnet_id</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_net_name</key>
+            <value>ADIG_SRIOV_2</value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_subnet_id</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_net_id</key>
+            <value>491c7cef-a3f4-4990-883e-b0af397466d0</value>
+        </entry>
+        <entry>
+            <key>environment_context</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_net_fqdn</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_net_name</key>
+            <value>ADIGOAM.OAM</value>
+        </entry>
+        <entry>
+            <key>vrra_name_0</key>
+            <value>frkdevRvrra24</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_2_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_net_fqdn</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network2_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_net_name</key>
+            <value>ADIG_SRIOV_1</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_1_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIGOam.OAM_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network1_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_net_fqdn</key>
+            <value></value>
+        </entry>
+        <entry>
+            <key>vrra_names</key>
+            <value>frkdevRvrra24</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_net_id</key>
+            <value>491c7cef-a3f4-4990-883e-b0af397466d0</value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network2_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_2_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_net_id</key>
+            <value>491c7cef-a3f4-4990-883e-b0af397466d0</value>
+        </entry>
+        <entry>
+            <key>vf_module_index</key>
+            <value>index</value>
+        </entry>
+        <entry>
+            <key>availability_zone_0</key>
+            <value>frkde-esx-az01</value>
+        </entry>
+
+    </vfModuleParams>
+    <msoRequest>
+        <requestId>testRequestId</requestId>
+        <serviceInstanceId>MIS/1604/0026/SW_INTERNET</serviceInstanceId>
+    </msoRequest>
+    <messageId>testRequestId-1503410089303-1513204371234</messageId>
+    <notificationUrl>http://localhost:28080/mso/WorkflowMesssage/VNFAResponse/testRequestId-1503410089303-1513204371234</notificationUrl>
+</createVfModuleRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/getGenericVnfResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/getGenericVnfResponse.xml
new file mode 100644
index 0000000..be5130e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/getGenericVnfResponse.xml
@@ -0,0 +1,28 @@
+<generic-vnf xmlns="http://com.att.aai.inventory/v10">
+    <vnf-id>6d2e2469-8708-47c3-a0d4-73fa28a8a50b</vnf-id>
+    <vnf-name>STMTN5MMSC20</vnf-name>
+    <vnf-type>pcrf-capacity</vnf-type>
+    <service-id>SDN-MOBILITY</service-id>
+    <equipment-role>vPCRF</equipment-role>
+    <orchestration-status>created</orchestration-status>
+    <in-maint>false</in-maint>
+    <is-closed-loop-disabled>false</is-closed-loop-disabled>
+    <persona-model-id>introvert</persona-model-id>
+    <persona-model-version>2.0</persona-model-version>
+    <resource-version>0000020</resource-version>
+    <vf-modules>
+        <vf-module>
+            <vf-module-id>baseVfModuleId</vf-module-id>
+            <vf-module-name>PCRF::module-0-0</vf-module-name>
+            <persona-model-id>introvert</persona-model-id>
+            <persona-model-version>2.0</persona-model-version>
+            <is-base-vf-module>false</is-base-vf-module>
+            <heat-stack-id>baseVfModuleHeatStackId</heat-stack-id>
+            <orchestration-status>Created</orchestration-status>
+            <resource-version>0000074</resource-version>
+        </vf-module>
+    </vf-modules>
+    <relationship-list/>
+    <l-interfaces/>
+    <lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/sdncGetResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/sdncGetResponse.xml
new file mode 100644
index 0000000..20b5462
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule/sdncGetResponse.xml
@@ -0,0 +1,195 @@
+<response-data>
+    <tag0CallbackHeader>
+        <tag0RequestId>2681784d-118e-4485-929f-2ae3212f5c07-1507707098467</tag0RequestId>
+        <tag0ResponseCode>200</tag0ResponseCode>
+        <tag0ResponseMessage>OK</tag0ResponseMessage>
+    </tag0CallbackHeader>
+    <tag0RequestData>
+        <service-list>
+            <service-instance-id>vnfID-1712_26</service-instance-id>
+            <service-status>
+                <response-code>200</response-code>
+                <request-status>synccomplete</request-status>
+                <response-timestamp>2017-09-19T143942.327Z</response-timestamp>
+                <final-indicator>Y</final-indicator>
+                <rpc-name>activate-vnf-request</rpc-name>
+            </service-status>
+            <service-data>
+                <service-information>
+                    <service-type>vRRaaS</service-type>
+                    <service-instance-id>vnfID-1712_26</service-instance-id>
+                </service-information>
+                <request-information>
+                    <request-id>ae322537-d081-4a01-95a5-c1448116d0c5</request-id>
+                </request-information>
+                <ipsec-tunnel-parameters/>
+                <vnf-topology-information>
+                    <vnf-assignments>
+                        <availability-zones>
+                            <availability-zone>frkde-esx-az01</availability-zone>
+                        </availability-zones>
+                        <vnf-vms>
+                            <vm-type>vrra</vm-type>
+                            <vm-count>1</vm-count>
+                            <vm-networks>
+                                <network-role>ADIGOam.OAM</network-role>
+                                <network-name>ADIGOAM.OAM</network-name>
+                                <v4-assigned-ip-list>
+                                    <v4-ip-type>NMLAN</v4-ip-type>
+                                    <ipv4-gateway-prefix>10.66.132.113</ipv4-gateway-prefix>
+                                    <v4-ip-prefix>10.66.132.115</v4-ip-prefix>
+                                    <v4-ip-prefix-length>32</v4-ip-prefix-length>
+                                    <v4-ip-source>EIPAM</v4-ip-source>
+                                </v4-assigned-ip-list>
+                                <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936807</network-id>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>ADIG_SRIOV_1</network-role>
+                                <network-name>ADIG_SRIOV_1</network-name>
+                                <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936808</network-id>
+                                <vlan-filter>[,]</vlan-filter>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>ADIG_SRIOV_2</network-role>
+                                <network-name>ADIG_SRIOV_2</network-name>
+                                <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936809</network-id>
+                                <vlan-filter>[,]</vlan-filter>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>Internal-Network1</network-role>
+                                <v4-assigned-ip-list>
+                                    <v4-ip-type>INTERNAL</v4-ip-type>
+                                    <v4-ip-prefix-length>24</v4-ip-prefix-length>
+                                    <v4-ip-source>OTHER</v4-ip-source>
+                                    <v4-ip-prefix>128.0.0.1</v4-ip-prefix>
+                                    <ipv4-prefix-block>128.0.0.0</ipv4-prefix-block>
+                                </v4-assigned-ip-list>
+                                <network-name>VRR-STMTN5MMSC20-INT1</network-name>
+                                <network-forwarding>12</network-forwarding>
+                                <network-id>VMX-INT1</network-id>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>Internal-Network2</network-role>
+                                <v4-assigned-ip-list>
+                                    <v4-ip-type>INTERNAL</v4-ip-type>
+                                    <v4-ip-prefix-length>24</v4-ip-prefix-length>
+                                    <v4-ip-source>OTHER</v4-ip-source>
+                                    <v4-ip-prefix>128.0.0.1</v4-ip-prefix>
+                                    <ipv4-prefix-block>128.0.0.0</ipv4-prefix-block>
+                                </v4-assigned-ip-list>
+                                <network-name>VRR-STMTN5MMSC20-INT2</network-name>
+                                <network-forwarding>12</network-forwarding>
+                                <network-id>VMX-INT2</network-id>
+                            </vm-networks>
+                            <vm-names>
+                                <vm-name>frkdevRvrra24</vm-name>
+                                <vm-uuid>b05a42c3-28ea-4d18-8653-6515125acc1a</vm-uuid>
+                            </vm-names>
+                        </vnf-vms>
+                        <vnf-status>Activated</vnf-status>
+                        <vnf-networks>
+                            <network-role>ADIGOam.OAM</network-role>
+                            <network-name>ADIGOAM.OAM</network-name>
+                            <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                            <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936807</network-id>
+                        </vnf-networks>
+                        <vnf-networks>
+                            <network-role>ADIG_SRIOV_2</network-role>
+                            <network-name>ADIG_SRIOV_2</network-name>
+                            <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                            <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936809</network-id>
+                        </vnf-networks>
+                        <vnf-networks>
+                            <network-role>ADIG_SRIOV_1</network-role>
+                            <network-name>ADIG_SRIOV_1</network-name>
+                            <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                            <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936808</network-id>
+                        </vnf-networks>
+                    </vnf-assignments>
+                </vnf-topology-information>
+                <generic-vnf-service>
+                    <cloud-region-id>FRN1</cloud-region-id>
+                    <outer-vlan-tag>4027</outer-vlan-tag>
+                    <cloud-owner>att-aic</cloud-owner>
+                    <service-ecomp-model-information>
+                        <model-uuid>b73c6911-be64-448a-bb4b-7b7a7006507a</model-uuid>
+                        <model-version>5.0</model-version>
+                        <model-name>MOW AVPN vMX AV vPE Service</model-name>
+                        <model-invariant-uuid>d48764b1-043d-4783-89e3-8817602dc833</model-invariant-uuid>
+                    </service-ecomp-model-information>
+                    <as-number>65001</as-number>
+                    <infra-service-instance-id>wl3900-1712-46db-99be-de9eb963a6cf26</infra-service-instance-id>
+                    <country-code>DE</country-code>
+                    <vnf-id>vnfID-1712_26</vnf-id>
+                    <vnf-host-name>26VRR_mtrnj151rv2</vnf-host-name>
+                    <vf-module-ecomp-model-information>
+                        <vf-module-model-customization-uuid-list>
+                            <vf-module-model-customization-uuid>778c2ed5-77a8-426e-94fe-51a4d40199c4
+                            </vf-module-model-customization-uuid>
+                        </vf-module-model-customization-uuid-list>
+                        <vf-module-model-customization-uuid-list>
+                            <vf-module-model-customization-uuid>cb510af0-5b21-4bc7-86d9-323cb396ced4
+                            </vf-module-model-customization-uuid>
+                        </vf-module-model-customization-uuid-list>
+                        <model-uuid>c91330e5-8e1a-459b-95ee-d682046cbeca</model-uuid>
+                        <model-version>3</model-version>
+                        <model-name>MowAvpnVmxAvVpe..base_vRE_AV..module-0</model-name>
+                        <model-invariant-uuid>f9f41064-cbe7-4e94-ac4c-93d9c54af317</model-invariant-uuid>
+                    </vf-module-ecomp-model-information>
+                    <orchestration-status>Activated</orchestration-status>
+                    <vnf-type>RR</vnf-type>
+                    <aic-clli>FRNKGEFF</aic-clli>
+                    <prov-status>PROV</prov-status>
+                    <v4-assigned-ip-list>
+                        <v4-ip-type>NMLAN</v4-ip-type>
+                        <ipv4-gateway-prefix>10.66.132.113</ipv4-gateway-prefix>
+                        <v4-ip-prefix>10.66.132.115</v4-ip-prefix>
+                        <v4-ip-prefix-length>32</v4-ip-prefix-length>
+                        <v4-ip-source>EIPAM</v4-ip-source>
+                    </v4-assigned-ip-list>
+                    <vnf-ecomp-model-information>
+                        <model-uuid>07bc0630-11d2-4c08-9c8f-75b036db1f4d</model-uuid>
+                        <model-version>3.0</model-version>
+                        <model-name>MOW AVPN vMX AV vPE</model-name>
+                        <vnf-model-customization-uuid>31d077f6-356f-436e-b447-1997faff4c68
+                        </vnf-model-customization-uuid>
+                        <model-invariant-uuid>31d077f6-356f-436e-b447-1997faff4c68</model-invariant-uuid>
+                    </vnf-ecomp-model-information>
+                    <vnf-networks>
+                        <network-role>ADIGOam.OAM</network-role>
+                        <network-name>ADIGOAM.OAM</network-name>
+                        <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                        <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936807</network-id>
+                    </vnf-networks>
+                    <vnf-networks>
+                        <network-role>ADIG_SRIOV_2</network-role>
+                        <network-name>ADIG_SRIOV_2</network-name>
+                        <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                        <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936809</network-id>
+                    </vnf-networks>
+                    <vnf-networks>
+                        <network-role>ADIG_SRIOV_1</network-role>
+                        <network-name>ADIG_SRIOV_1</network-name>
+                        <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                        <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936808</network-id>
+                    </vnf-networks>
+                    <tenant>1710vPEPROJECTS297135PROJECT</tenant>
+                    <affinity>26VRR_mtrnj151rv2-affinity</affinity>
+                </generic-vnf-service>
+                <oper-status>
+                    <order-status>Completed</order-status>
+                </oper-status>
+                <vnf-request-information>
+                    <aic-cloud-region>VNN1CA52LCP</aic-cloud-region>
+                    <vnf-name>skask</vnf-name>
+                    <generic-vnf-id>afd0f02a-1ddb-43bb-aded-5113e46e82ae</generic-vnf-id>
+                    <generic-vnf-type>ZVNN1MOGX01-SVC/ZVNN1MOGX01 - VF AUG 1 1</generic-vnf-type>
+                    <generic-vnf-name>ZVNN1MOGX01</generic-vnf-name>
+                    <tenant>33d209df14ac4c08ad60747185d2f3e0</tenant>
+                    <vnf-id>bd1b3789-6474-4935-94b2-90b656e035d0</vnf-id>
+                    <vnf-type>ZVNN1MOGX01 - VF AUG 1module-0</vnf-type>
+                </vnf-request-information>
+            </service-data>
+        </service-list>
+    </tag0RequestData>
+</response-data>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/GenericVnf.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/GenericVnf.xml
new file mode 100644
index 0000000..50e4347
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/GenericVnf.xml
@@ -0,0 +1,26 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v7">
+	<vnf-id>a27ce5a9-29c4-4c22-a017-6615ac73c721</vnf-id>
+	<vnf-name>STMTN5MMSC21</vnf-name>
+	<vnf-type>mmsc-capacity</vnf-type>
+	<service-id>SDN-MOBILITY</service-id>
+	<equipment-role>vMMSC</equipment-role>
+	<orchestration-status>pending-create</orchestration-status>
+	<in-maint>false</in-maint>
+	<is-closed-loop-disabled>false</is-closed-loop-disabled>
+	<resource-version>1508691</resource-version>
+	<vf-modules>
+		<vf-module>
+			<vf-module-id>973ed047-d251-4fb9-bf1a-65b8949e0a73</vf-module-id>
+			<vf-module-name>STMTN5MMSC21-MMSC::module-0-0</vf-module-name>
+			<persona-model-id>973ed047-d251-4fb9-bf1a-65b8949e0a73</persona-model-id>
+			<persona-model-version>1.0</persona-model-version>
+			<is-base-vf-module>true</is-base-vf-module>
+			<heat-stack-id>FILLED-IN-BY-MSO</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>1508692</resource-version>
+		</vf-module>
+	</vf-modules>
+	<relationship-list/>
+	<l-interfaces/>
+	<lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/GenericVnfVfModule.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/GenericVnfVfModule.xml
new file mode 100644
index 0000000..f60260d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/GenericVnfVfModule.xml
@@ -0,0 +1,26 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v7">
+	<vnf-id>a27ce5a9-29c4-4c22-a017-6615ac73c721</vnf-id>
+	<vnf-name>STMTN5MMSC21</vnf-name>
+	<vnf-type>mmsc-capacity</vnf-type>
+	<service-id>SDN-MOBILITY</service-id>
+	<equipment-role>vMMSC</equipment-role>
+	<orchestration-status>pending-create</orchestration-status>
+	<in-maint>false</in-maint>
+	<is-closed-loop-disabled>false</is-closed-loop-disabled>
+	<resource-version>0000021</resource-version>
+	<vf-modules>
+		<vf-module>
+			<vf-module-id>973ed047-d251-4fb9-bf1a-65b8949e0a73</vf-module-id>
+			<vf-module-name>STMTN5MMSC21-MMSC::module-0-0</vf-module-name>
+			<persona-model-id>973ed047-d251-4fb9-bf1a-65b8949e0a73</persona-model-id>
+			<persona-model-version>1.0</persona-model-version>
+			<is-base-vf-module>true</is-base-vf-module>
+			<heat-stack-id>FILLED-IN-BY-MSO</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000073</resource-version>
+		</vf-module>
+	</vf-modules>
+	<relationship-list/>
+	<l-interfaces/>
+	<lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/deactivateSDNCRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/deactivateSDNCRequest.xml
new file mode 100644
index 0000000..69884c5
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/deactivateSDNCRequest.xml
@@ -0,0 +1,36 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                                                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                                                xmlns:sdncadapter="http://org.onap.so/workflow/sdnc/adapter/schema/v1">
+    <sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>testReqId</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>svcInstId_test</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>deactivate</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>vf-module-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:28080/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+        <sdncadapter:MsoAction>generic-resource</sdncadapter:MsoAction>
+    </sdncadapter:RequestHeader>
+    <sdncadapterworkflow:SDNCRequestData>
+        <request-information>
+            <request-id>testRequestId</request-id>
+            <request-action>DeleteVfModuleInstance</request-action>
+            <source>VID</source>
+            <notification-url/>
+            <order-number/>
+            <order-version/>
+        </request-information>
+        <service-information>
+            <service-id/>
+            <subscription-service-type/>
+            <service-instance-id>12345</service-instance-id>
+            <global-customer-id/>
+        </service-information>
+        <vnf-information>
+            <vnf-id>skask</vnf-id>
+            <vnf-type/>
+        </vnf-information>
+        <vf-module-information>
+            <vf-module-id>cb510af0-5b21-4bc7-86d9-323cb396ce32</vf-module-id>
+        </vf-module-information>
+        <vf-module-request-input/>
+    </sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/sdncAdapterWorkflowRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/sdncAdapterWorkflowRequest.xml
new file mode 100644
index 0000000..a03c28c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/sdncAdapterWorkflowRequest.xml
@@ -0,0 +1,37 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                                                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                                                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+    <sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>testReqId</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>cb510af0-5b21-4bc7-86d9-323cb396ce32</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>delete</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>vnf-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:28080/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+    </sdncadapter:RequestHeader>
+    <sdncadapterworkflow:SDNCRequestData>
+        <request-information>
+            <request-id>testRequestId</request-id>
+            <request-action>DisconnectVNFRequest</request-action>
+            <source>VID</source>
+            <notification-url/>
+            <order-number/>
+            <order-version/>
+        </request-information>
+        <service-information>
+            <service-id>12345</service-id>
+            <service-type>12345</service-type>
+            <service-instance-id>12345</service-instance-id>
+            <subscriber-name>notsurewecare</subscriber-name>
+        </service-information>
+        <vnf-request-information>
+            <vnf-id>cb510af0-5b21-4bc7-86d9-323cb396ce32</vnf-id>
+            <vnf-type>PCRF::module-0-2</vnf-type>
+            <vnf-name>PCRF::module-0-2</vnf-name>
+            <generic-vnf-id>skask</generic-vnf-id>
+            <generic-vnf-name>skask-test</generic-vnf-name>
+            <generic-vnf-type>vRRaas</generic-vnf-type>
+            <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>
+            <tenant>fba1bd1e195a404cacb9ce17a9b2b421</tenant>
+        </vnf-request-information>
+    </sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/vnfAdapterRestV1Request.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/vnfAdapterRestV1Request.xml
new file mode 100644
index 0000000..abb30b3
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleRollback/vnfAdapterRestV1Request.xml
@@ -0,0 +1,14 @@
+<deleteVfModuleRequest>
+    <cloudSiteId>null</cloudSiteId>
+    <tenantId>null</tenantId>
+    <vnfId>skask</vnfId>
+    <vfModuleId>cb510af0-5b21-4bc7-86d9-323cb396ce32</vfModuleId>
+    <vfModuleStackId>null</vfModuleStackId>
+    <skipAAI>true</skipAAI>
+    <msoRequest>
+        <requestId>testRequestId</requestId>
+        <serviceInstanceId>12345</serviceInstanceId>
+    </msoRequest>
+    <messageId>12345-1513795852327</messageId>
+    <notificationUrl>http://localhost:18080/mso/WorkflowMessage/VNFAResponse/null-1513795852327</notificationUrl>
+</deleteVfModuleRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeCallbackResponse.xml
new file mode 100644
index 0000000..a421355
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeCallbackResponse.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<createVolumeGroupResponse>
+    <messageId>{{MESSAGE-ID}}</messageId>
+    <volumeGroupCreated>true</volumeGroupCreated>
+    <volumeGroupId>d485ecee-957c-4a0a-8b95-27a22b90103f</volumeGroupId>
+    <volumeGroupOutputs>
+        <entry>
+            <key>mmsc_vol_1</key>
+            <value>a73e0fe9-1ce8-49c2-8fef-e2788605be29</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_2</key>
+            <value>37b6455a-5ea8-463a-89e3-0efeaf7b7c6d</value>
+        </entry>
+        <entry>
+            <key>nemsfe_vol_1</key>
+            <value>b7ff1c21-d138-49a3-bf13-4cfd91efaf48</value>
+        </entry>
+        <entry>
+            <key>nemsbe_vol_1</key>
+            <value>a5988471-cd42-44d8-b078-64f2f13d3d4c</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_5</key>
+            <value>f7b91c1e-ab8c-413a-a850-ba80a246c7e0</value>
+        </entry>
+        <entry>
+            <key>nemsfe_vol_2</key>
+            <value>957ea3f3-2d4a-4707-bfd2-ba66f42037c2</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_3</key>
+            <value>de6fccfe-d61a-48b0-b03b-87bf1bf749b3</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_4</key>
+            <value>76162310-2c38-4c32-981c-5c2880190077</value>
+        </entry>
+    </volumeGroupOutputs>
+    <volumeGroupRollback>
+        <cloudSiteId>RDM2WAGPLCP</cloudSiteId>
+        <messageId>e585e4f4-9452-437a-b294-45a2d6d3b7a3</messageId>
+        <msoRequest>
+            <requestId>c30b9453-4b68-4c2e-aacf-58a5ba648bf5</requestId>
+            <serviceInstanceId>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</serviceInstanceId>
+        </msoRequest>
+        <tenantId>1bbab536a19b4756926e7d0ec1eb543c</tenantId>
+        <volumeGroupCreated>true</volumeGroupCreated>
+        <volumeGroupId>78987</volumeGroupId>
+        <volumeGroupStackId>ZRDM1MMSC01_base_vol/7f74e5e1-5fc1-4593-ac7e-cc9899a106ef</volumeGroupStackId>
+    </volumeGroupRollback>
+    <volumeGroupStackId>ZRDM1MMSC01_base_vol/7f74e5e1-5fc1-4593-ac7e-cc9899a106ef</volumeGroupStackId>
+</createVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeNoRollbackRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeNoRollbackRequest.xml
new file mode 100644
index 0000000..38e8662
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeNoRollbackRequest.xml
@@ -0,0 +1,24 @@
+<volume-request xmlns="http://org.onap/so/infra/vnf-request/v1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<request-info>
+		<test-data-only>123abc</test-data-only> <!-- don't remove this tag. Its used for junit test -->
+		<request-id>d8d4fcfa-fd7e-4413-b19d-c95aa67291b8</request-id>
+		<action>CREATE_VF_MODULE_VOL</action>
+		<source>SoapUI-bns-create-base-vol-1001-1</source>
+	</request-info>
+	<volume-inputs>
+		<vnf-type>Test/vSAMP12</vnf-type>
+		<vf-module-model-name>vSAMP12::base::module-0</vf-module-model-name>
+		<backout-on-failure>false</backout-on-failure>
+		<asdc-service-model-version/>
+		<service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+		<aic-cloud-region>MDTWNJ21</aic-cloud-region>
+		<tenant-id>897deadc2b954a6bac6d3c197fb3525e</tenant-id>
+		<volume-group-name>MSOTESTVOL101a-vSAMP12_base_vol_module-0</volume-group-name>
+		<volume-group-id/>
+	</volume-inputs>
+	<volume-params>
+		<param name="param1">value1</param>"
+		<param name="param2">value2</param>"
+		<param name="param3">value3</param>"
+	</volume-params>	
+</volume-request>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml
new file mode 100644
index 0000000..62d1aba
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/CreateVfModuleVolumeRequest.xml
@@ -0,0 +1,24 @@
+<volume-request xmlns="http://org.onap/so/infra/vnf-request/v1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<request-info>
+		<test-data-only>123abc</test-data-only> <!-- don't remove this tag. Its used for junit test -->
+		<request-id>d8d4fcfa-fd7e-4413-b19d-c95aa67291b8</request-id>
+		<action>CREATE_VF_MODULE_VOL</action>
+		<source>SoapUI-bns-create-base-vol-1001-1</source>
+	</request-info>
+	<volume-inputs>
+		<vnf-type>Test/vSAMP12</vnf-type>
+		<vf-module-model-name>vSAMP12::base::module-0</vf-module-model-name>
+		<backout-on-failure>true</backout-on-failure>
+		<asdc-service-model-version/>
+		<service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+		<aic-cloud-region>MDTWNJ21</aic-cloud-region>
+		<tenant-id>897deadc2b954a6bac6d3c197fb3525e</tenant-id>
+		<volume-group-name>MSOTESTVOL101a-vSAMP12_base_vol_module-0</volume-group-name>
+		<volume-group-id/>
+	</volume-inputs>
+	<volume-params>
+		<param name="param1">value1</param>"
+		<param name="param2">value2</param>"
+		<param name="param3">value3</param>"
+	</volume-params>	
+</volume-request>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/GenericVnf.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/GenericVnf.xml
new file mode 100644
index 0000000..aea1a46
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/GenericVnf.xml
@@ -0,0 +1,38 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v8">
+	<vnf-id>TEST-VNF-ID-0123</vnf-id>
+	<vnf-name>STMTN5MMSC20</vnf-name>
+	<vnf-type>pcrf-capacity</vnf-type>
+	<service-id>SDN-MOBILITY</service-id>
+	<equipment-role>vPCRF</equipment-role>
+	<orchestration-status>pending-create</orchestration-status>
+	<in-maint>false</in-maint>
+	<is-closed-loop-disabled>false</is-closed-loop-disabled>
+	<persona-model-id>introvert</persona-model-id>
+	<persona-model-version>2.0</persona-model-version>
+	<resource-version>0000020</resource-version>
+	<vf-modules>
+		<vf-module>
+			<vf-module-id>lukewarm</vf-module-id>
+			<vf-module-name>PCRF::module-0-0</vf-module-name>
+			<persona-model-id>introvert</persona-model-id>
+			<persona-model-version>2.0</persona-model-version>
+			<is-base-vf-module>true</is-base-vf-module>
+			<heat-stack-id>fastburn</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000074</resource-version>
+		</vf-module>
+		<vf-module>
+			<vf-module-id>supercool</vf-module-id>
+			<vf-module-name>PCRF::module-1-0</vf-module-name>
+			<persona-model-id>extrovert</persona-model-id>
+			<persona-model-version>2.0</persona-model-version>
+			<is-base-vf-module>false</is-base-vf-module>
+			<heat-stack-id>slowburn</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000075</resource-version>
+		</vf-module>
+	</vf-modules>
+	<relationship-list/>
+	<l-interfaces/>
+	<lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/RollbackVfModuleVolumeCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/RollbackVfModuleVolumeCallbackResponse.xml
new file mode 100644
index 0000000..6ab9416
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/RollbackVfModuleVolumeCallbackResponse.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<rollbackVolumeGroupResponse>
+  <messageId>{{MESSAGE-ID}}</messageId>
+  <volumeGroupRolledback>true</volumeGroupRolledback>
+</rollbackVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_VID_request.json
new file mode 100644
index 0000000..6cc84c7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_VID_request.json
@@ -0,0 +1,104 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "volumeGroup",
+			"modelId": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "vSAMP12::base::module-0",
+			"modelVersion": "1"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+		},
+		"requestInfo": {
+			"instanceName": "MSOTESTVOL103W-vSAMP12_base_vol_module-0",
+			"source": "VID",
+			"callbackUrl": "{do we support this???}"
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "{service-instance-id}",
+					"modelInfo": {
+						"modelType": "service",
+						"modelId": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "{parent service model name}",
+						"modelVersion": "1"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "{vnf-instance-id}",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelId": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test/vSAMP12",
+						"modelVersion": "1"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"backoutOnFailure": true,
+			"serviceId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+			"userParams": [
+				{
+					"name": "vnfName",
+					"value": "STMTN5MMSC20"
+				},
+				{
+					"name": "vnfName2",
+					"value": "US1117MTSNJVBR0246"
+				},
+				{
+					"name": "vnfNmInformation",
+					"value": ""
+				},
+				{
+					"name": "vnfType",
+					"value": "pcrf-capacity"
+				},
+				{
+					"name": "vnfId",
+					"value": "skask"
+				},
+				{
+					"name": "vnfStackId",
+					"value": "slowburn"
+				},
+				{
+					"name": "vnfStatus",
+					"value": "created"
+				},
+				{
+					"name": "aicCloudRegion",
+					"value": "MDTWNJ21"
+				},
+				{
+					"name": "availabilityZone",
+					"value": "slcp3-esx-az01"
+				},
+				{
+					"name": "oamNetworkName",
+					"value": "VLAN-OAM-1323"
+				},
+				{
+					"name": "vmName",
+					"value": "slcp34246vbc246ceb"
+				},
+				{
+					"name": "ipagNetworkId",
+					"value": "970cd2b9-7f09-4a12-af47-182ea38ba1f0"
+				},
+				{
+					"name": "vpeNetworkId",
+					"value": "545cc2c3-1930-4100-b534-5d82d0e12bb6"
+				}
+			]
+		}
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..02b43ff
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_createVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,49 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+				   statusCode="200">
+   <rest:headers>
+	  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+	  <rest:header name="X-CSI-MethodName" value="UNKNOWN"/>
+	  <rest:header name="Content-Length" value="968"/>
+	  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211465"/>
+	  <rest:header name="X-CSI-UniqueTransactionId"
+				   value="AjscCsiRestful28795@mtsnjv9aaas237d4a4d21-e60a-495f-935f-cc225dc3c847"/>
+	  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+	  <rest:header name="X-TransactionID" value="3a19f95d-d63e-4a8e-8b9c-6563895628aa"/>
+	  <rest:header name="X-CSI-ServiceName" value="UNKNOWN"/>
+	  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+	  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+	  <rest:header name="X-FromAppId" value="MSO"/>
+	  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+	  <rest:header name="X-CSI-ConversationId"
+				   value="ajscUser~CNG-CSI~c0a2bb44-2167-4e85-ad6a-483a24c0823a"/>
+	  <rest:header name="volume-group-name" value="simpleCinderVolume_201604071"/>
+	  <rest:header name="X-CSI-MessageId" value="f6d6eed4-456e-4033-be04-b17582902dc2"/>
+	  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:592-73255"/>
+	  <rest:header name="Content-Type" value="application/xml"/>
+	  <rest:header name="Accept" value="application/xml"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+	  <volume-group xmlns="http://org.openecomp.aai.inventory/v8">
+		 <volume-group-id>simpleCinderVolume_201604071</volume-group-id>
+		 <volume-group-name>simpleCinderVolume_201604071</volume-group-name>
+		 <heat-stack-id>simpleCinderVolume_201604071</heat-stack-id>
+		 <vnf-type>simple_cinder_master</vnf-type>
+		 <orchestration-status>Pending</orchestration-status>
+		 <resource-version>1460134360</resource-version>
+		 <relationship-list>
+			<relationship>
+			   <related-to>tenant</related-to>
+			   <related-link>https://aai-ext1.test.com:8443/aai/v6/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/</related-link>
+			   <relationship-data>
+				  <relationship-key>tenant.tenant-id</relationship-key>
+				  <relationship-value>897deadc2b954a6bac6d3c197fb3525e</relationship-value>
+			   </relationship-data>
+			   <related-to-property>
+				  <property-key>tenant.tenant-name</property-key>
+				  <property-value>MSOTest1</property-value>
+			   </related-to-property>
+			</relationship>
+		 </relationship-list>
+	  </volume-group>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_deleteVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_deleteVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..1574310
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_deleteVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,24 @@
+	<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+					   statusCode="200">
+	   <rest:headers>
+		  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+		  <rest:header name="X-CSI-MethodName" value="helloWorld-GetMethod(Logical)"/>
+		  <rest:header name="Content-Length" value="0"/>
+		  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211467"/>
+		  <rest:header name="X-CSI-UniqueTransactionId"
+					   value="AjscCsiRestful28795@mtsnjv9aaas23d44059bc-ef96-4af8-a28b-98044e08d7af"/>
+		  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+		  <rest:header name="X-TransactionID" value="3749995c-266b-4025-a0c4-4ce6983efc66"/>
+		  <rest:header name="X-CSI-ServiceName" value="helloWorld"/>
+		  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+		  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+		  <rest:header name="X-FromAppId" value="MSO"/>
+		  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+		  <rest:header name="X-CSI-ConversationId"
+					   value="ajscUser~CNG-CSI~bbd0e78f-d4e7-41be-b9ad-4a6767fa660a"/>
+		  <rest:header name="X-CSI-MessageId" value="6ccfeb13-56da-4836-bfbd-5a42dee60939"/>
+		  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:629-73256"/>
+		  <rest:header name="Content-Type" value="application/xml"/>
+		  <rest:header name="Accept" value="application/xml"/>
+	   </rest:headers>
+	</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..5e8913f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_queryVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,49 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+				   statusCode="200">
+   <rest:headers>
+	  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+	  <rest:header name="X-CSI-MethodName" value="UNKNOWN"/>
+	  <rest:header name="Content-Length" value="968"/>
+	  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211465"/>
+	  <rest:header name="X-CSI-UniqueTransactionId"
+				   value="AjscCsiRestful28795@mtsnjv9aaas237d4a4d21-e60a-495f-935f-cc225dc3c847"/>
+	  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+	  <rest:header name="X-TransactionID" value="3a19f95d-d63e-4a8e-8b9c-6563895628aa"/>
+	  <rest:header name="X-CSI-ServiceName" value="UNKNOWN"/>
+	  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+	  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+	  <rest:header name="X-FromAppId" value="MSO"/>
+	  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+	  <rest:header name="X-CSI-ConversationId"
+				   value="ajscUser~CNG-CSI~c0a2bb44-2167-4e85-ad6a-483a24c0823a"/>
+	  <rest:header name="volume-group-name" value="simpleCinderVolume_201604071"/>
+	  <rest:header name="X-CSI-MessageId" value="f6d6eed4-456e-4033-be04-b17582902dc2"/>
+	  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:592-73255"/>
+	  <rest:header name="Content-Type" value="application/xml"/>
+	  <rest:header name="Accept" value="application/xml"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+	  <volume-group xmlns="http://org.openecomp.aai.inventory/v8">
+		 <volume-group-id>8424bb3c-c3e7-4553-9662-469649ed9379</volume-group-id>
+		 <volume-group-name>MSOTESTVOL103W-vSAMP12_base_vol_module-0</volume-group-name>
+		 <heat-stack-id/>
+		 <vnf-type>simple_cinder_master</vnf-type>
+		 <orchestration-status>Pending</orchestration-status>
+		 <resource-version>1460134360</resource-version>
+		 <relationship-list>
+			<relationship>
+			   <related-to>tenant</related-to>
+			   <related-link>https://aai-ext1.test.com:8443/aai/v6/cloud-infrastructure/tenants/tenant/897deadc2b954a6bac6d3c197fb3525e/</related-link>
+			   <relationship-data>
+				  <relationship-key>tenant.tenant-id</relationship-key>
+				  <relationship-value>897deadc2b954a6bac6d3c197fb3525e</relationship-value>
+			   </relationship-data>
+			   <related-to-property>
+				  <property-key>tenant.tenant-name</property-key>
+				  <property-value>MSOTest1</property-value>
+			   </related-to-property>
+			</relationship>
+		 </relationship-list>
+	  </volume-group>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_updateVolumeName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_updateVolumeName_AAIResponse_Success.xml
new file mode 100644
index 0000000..1574310
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV1/createVfModuleVolume_updateVolumeName_AAIResponse_Success.xml
@@ -0,0 +1,24 @@
+	<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+					   statusCode="200">
+	   <rest:headers>
+		  <rest:header name="X-CSI-Internal-WriteableRequest" value="true"/>
+		  <rest:header name="X-CSI-MethodName" value="helloWorld-GetMethod(Logical)"/>
+		  <rest:header name="Content-Length" value="0"/>
+		  <rest:header name="breadcrumbId" value="ID-mtsnjv9aaas23-44965-1459957053425-0-211467"/>
+		  <rest:header name="X-CSI-UniqueTransactionId"
+					   value="AjscCsiRestful28795@mtsnjv9aaas23d44059bc-ef96-4af8-a28b-98044e08d7af"/>
+		  <rest:header name="User-Agent" value="Jakarta Commons-HttpClient/3.1"/>
+		  <rest:header name="X-TransactionID" value="3749995c-266b-4025-a0c4-4ce6983efc66"/>
+		  <rest:header name="X-CSI-ServiceName" value="helloWorld"/>
+		  <rest:header name="Server" value="Jetty(9.2.z-SNAPSHOT)"/>
+		  <rest:header name="Cache-Control" value="no-cache,no-store"/>
+		  <rest:header name="X-FromAppId" value="MSO"/>
+		  <rest:header name="Date" value="Fri,08 Apr 2016 16:53:04 GMT"/>
+		  <rest:header name="X-CSI-ConversationId"
+					   value="ajscUser~CNG-CSI~bbd0e78f-d4e7-41be-b9ad-4a6767fa660a"/>
+		  <rest:header name="X-CSI-MessageId" value="6ccfeb13-56da-4836-bfbd-5a42dee60939"/>
+		  <rest:header name="X-AAI-TXID" value="mtsnjv9aaas23-20160408-16:53:04:629-73256"/>
+		  <rest:header name="Content-Type" value="application/xml"/>
+		  <rest:header name="Accept" value="application/xml"/>
+	   </rest:headers>
+	</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV2/cloudRegion_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV2/cloudRegion_AAIResponse_Success.xml
new file mode 100644
index 0000000..90c668c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV2/cloudRegion_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>2.5</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV2/vnfAdapterDeleteRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV2/vnfAdapterDeleteRequest.xml
new file mode 100644
index 0000000..fd6c228
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModuleVolumeV2/vnfAdapterDeleteRequest.xml
@@ -0,0 +1,13 @@
+<deleteVolumeGroupRequest>
+    <cloudSiteId>null</cloudSiteId>
+    <tenantId>12345</tenantId>
+    <volumeGroupId>12345</volumeGroupId>
+    <volumeGroupStackId>null</volumeGroupStackId>
+    <skipAAI>true</skipAAI>
+    <msoRequest>
+        <requestId>12345</requestId>
+        <serviceInstanceId>12345</serviceInstanceId>
+    </msoRequest>
+    <messageId>580b5601-9260-4d19-abed-e671ac42c429</messageId>
+    <notificationUrl>http://localhost:18080/mso/WorkflowMessage/VNFAResponse/580b5601-9260-4d19-abed-e671ac42c429</notificationUrl>
+</deleteVolumeGroupRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule_getVnfResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule_getVnfResponse.xml
new file mode 100644
index 0000000..b8c2cfd
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoCreateVfModule_getVnfResponse.xml
@@ -0,0 +1,26 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v7">
+			  <vnf-id>a27ce5a9-29c4-4c22-a017-6615ac73c721</vnf-id>
+			  <vnf-name>STMTN5MMSC21</vnf-name>
+			  <vnf-type>mmsc-capacity</vnf-type>
+			  <service-id>SDN-MOBILITY</service-id>
+			  <equipment-role>vMMSC</equipment-role>
+			  <orchestration-status>pending-create</orchestration-status>
+			  <in-maint>false</in-maint>
+			  <is-closed-loop-disabled>false</is-closed-loop-disabled>
+			  <resource-version>1508691</resource-version>
+			  <vf-modules>
+			    <vf-module>
+			      <vf-module-id>973ed047-d251-4fb9-bf1a-65b8949e0a73</vf-module-id>
+			      <vf-module-name>STMTN5MMSC21-MMSC::module-0-0</vf-module-name>
+			      <persona-model-id>973ed047-d251-4fb9-bf1a-65b8949e0a73</persona-model-id>
+			      <persona-model-version>1.0</persona-model-version>
+			      <is-base-vf-module>true</is-base-vf-module>
+			      <heat-stack-id>FILLED-IN-BY-MSO</heat-stack-id>
+			      <orchestration-status>pending-create</orchestration-status>
+			      <resource-version>1508692</resource-version>
+			    </vf-module>
+			  </vf-modules>
+			  <relationship-list/>
+			  <l-interfaces/>
+			  <lag-interfaces/>
+			</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoDeleteVfModule/getGenericVnfResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoDeleteVfModule/getGenericVnfResponse.xml
new file mode 100644
index 0000000..be5130e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoDeleteVfModule/getGenericVnfResponse.xml
@@ -0,0 +1,28 @@
+<generic-vnf xmlns="http://com.att.aai.inventory/v10">
+    <vnf-id>6d2e2469-8708-47c3-a0d4-73fa28a8a50b</vnf-id>
+    <vnf-name>STMTN5MMSC20</vnf-name>
+    <vnf-type>pcrf-capacity</vnf-type>
+    <service-id>SDN-MOBILITY</service-id>
+    <equipment-role>vPCRF</equipment-role>
+    <orchestration-status>created</orchestration-status>
+    <in-maint>false</in-maint>
+    <is-closed-loop-disabled>false</is-closed-loop-disabled>
+    <persona-model-id>introvert</persona-model-id>
+    <persona-model-version>2.0</persona-model-version>
+    <resource-version>0000020</resource-version>
+    <vf-modules>
+        <vf-module>
+            <vf-module-id>baseVfModuleId</vf-module-id>
+            <vf-module-name>PCRF::module-0-0</vf-module-name>
+            <persona-model-id>introvert</persona-model-id>
+            <persona-model-version>2.0</persona-model-version>
+            <is-base-vf-module>false</is-base-vf-module>
+            <heat-stack-id>baseVfModuleHeatStackId</heat-stack-id>
+            <orchestration-status>Created</orchestration-status>
+            <resource-version>0000074</resource-version>
+        </vf-module>
+    </vf-modules>
+    <relationship-list/>
+    <l-interfaces/>
+    <lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoDeleteVfModule/sdncAdapterWorkflowRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoDeleteVfModule/sdncAdapterWorkflowRequest.xml
new file mode 100644
index 0000000..9829fd2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoDeleteVfModule/sdncAdapterWorkflowRequest.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1" xmlns:ns5="http://org.onap/so/request/types/v1" xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+    <sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>testReqId</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>12345</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>release</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>vnf-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8090/SDNCAdapterCallback</sdncadapter:CallbackUrl>
+    </sdncadapter:RequestHeader>
+    <sdncadapterworkflow:SDNCRequestData>
+        <request-information>
+            <request-id>12345</request-id>
+            <request-action>DisconnectVNFRequest</request-action>
+            <source>VID</source>
+            <notification-url />
+            <order-number />
+            <order-version />
+        </request-information>
+        <service-information>
+            <service-id>12345</service-id>
+            <service-type>12345</service-type>
+            <service-instance-id>123456789</service-instance-id>
+            <subscriber-name>notsurewecare</subscriber-name>
+        </service-information>
+        <vnf-request-information>
+            <vnf-id>12345</vnf-id>
+            <vnf-type>null</vnf-type>
+            <vnf-name>vfModuleName_test</vnf-name>
+            <generic-vnf-id>12345</generic-vnf-id>
+            <generic-vnf-name />
+            <generic-vnf-type />
+            <aic-cloud-region>null</aic-cloud-region>
+            <tenant>19123c2924c648eb8e42a3c1f14b7682</tenant>
+        </vnf-request-information>
+    </sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/cloudRegion_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/cloudRegion_AAIResponse_Success.xml
new file mode 100644
index 0000000..90c668c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/cloudRegion_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <cloud-owner>att-aic</cloud-owner>
+         <cloud-region-id>RDM2WAGPLCP</cloud-region-id>
+         <cloud-region-version>2.5</cloud-region-version>
+         <complex-name>RDM2WAGPLCP</complex-name>
+       </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/getGenericVnfResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/getGenericVnfResponse.xml
new file mode 100644
index 0000000..be5130e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/getGenericVnfResponse.xml
@@ -0,0 +1,28 @@
+<generic-vnf xmlns="http://com.att.aai.inventory/v10">
+    <vnf-id>6d2e2469-8708-47c3-a0d4-73fa28a8a50b</vnf-id>
+    <vnf-name>STMTN5MMSC20</vnf-name>
+    <vnf-type>pcrf-capacity</vnf-type>
+    <service-id>SDN-MOBILITY</service-id>
+    <equipment-role>vPCRF</equipment-role>
+    <orchestration-status>created</orchestration-status>
+    <in-maint>false</in-maint>
+    <is-closed-loop-disabled>false</is-closed-loop-disabled>
+    <persona-model-id>introvert</persona-model-id>
+    <persona-model-version>2.0</persona-model-version>
+    <resource-version>0000020</resource-version>
+    <vf-modules>
+        <vf-module>
+            <vf-module-id>baseVfModuleId</vf-module-id>
+            <vf-module-name>PCRF::module-0-0</vf-module-name>
+            <persona-model-id>introvert</persona-model-id>
+            <persona-model-version>2.0</persona-model-version>
+            <is-base-vf-module>false</is-base-vf-module>
+            <heat-stack-id>baseVfModuleHeatStackId</heat-stack-id>
+            <orchestration-status>Created</orchestration-status>
+            <resource-version>0000074</resource-version>
+        </vf-module>
+    </vf-modules>
+    <relationship-list/>
+    <l-interfaces/>
+    <lag-interfaces/>
+</generic-vnf>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncActivateRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncActivateRequest.xml
new file mode 100644
index 0000000..6fa8bfe
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncActivateRequest.xml
@@ -0,0 +1,36 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1"
+                                                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1">
+    <sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>testReqId</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS/1604/0026/SW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>activate</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>vnf-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8090/SDNCAdapter</sdncadapter:CallbackUrl>
+    </sdncadapter:RequestHeader>
+    <sdncadapterworkflow:SDNCRequestData>
+        <request-information>
+            <request-id>testRequestId</request-id>
+            <request-action>ChangeVNFActivateRequest</request-action>
+            <source>PORTAL</source>
+            <notification-url/>
+            <order-number/>
+            <order-version/>
+        </request-information>
+        <service-information>
+            <service-type>12345</service-type>
+            <service-instance-id>skask</service-instance-id>
+            <subscriber-name>dontcare</subscriber-name>
+        </service-information>
+        <vnf-request-information>
+            <vnf-id>cb510af0-5b21-4bc7-86d9-323cb396ce32</vnf-id>
+            <vnf-type>PCRF::module-0-2</vnf-type>
+            <vnf-name>abc</vnf-name>
+            <generic-vnf-id>skask</generic-vnf-id>
+            <generic-vnf-name>skask-test</generic-vnf-name>
+            <generic-vnf-type>vRRaas</generic-vnf-type>
+            <tenant>fba1bd1e195a404cacb9ce17a9b2b421</tenant>
+            <aic-cloud-region>RDM2WAGPLCP</aic-cloud-region>
+            <use-preload>Y</use-preload>
+        </vnf-request-information>
+    </sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncChangeAssignRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncChangeAssignRequest.xml
new file mode 100644
index 0000000..c57dec4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncChangeAssignRequest.xml
@@ -0,0 +1,36 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1"
+                                                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1">
+    <sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>testReqId</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS/1604/0026/SW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>changeassign</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>vnf-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8090/SDNCAdapter</sdncadapter:CallbackUrl>
+    </sdncadapter:RequestHeader>
+    <sdncadapterworkflow:SDNCRequestData>
+        <request-information>
+            <request-id>testRequestId</request-id>
+            <request-action>ChangeVNFActivateRequest</request-action>
+            <source>PORTAL</source>
+            <notification-url/>
+            <order-number/>
+            <order-version/>
+        </request-information>
+        <service-information>
+            <service-type>12345</service-type>
+            <service-instance-id>skask</service-instance-id>
+            <subscriber-name>dontcare</subscriber-name>
+        </service-information>
+        <vnf-request-information>
+            <vnf-id>cb510af0-5b21-4bc7-86d9-323cb396ce32</vnf-id>
+            <vnf-type>PCRF::module-0-2</vnf-type>
+            <vnf-name>abc</vnf-name>
+            <generic-vnf-id>skask</generic-vnf-id>
+            <generic-vnf-name>skask-test</generic-vnf-name>
+            <generic-vnf-type>vRRaas</generic-vnf-type>
+            <tenant>fba1bd1e195a404cacb9ce17a9b2b421</tenant>
+            <aic-cloud-region>MDTWNJ21</aic-cloud-region>
+            <use-preload>Y</use-preload>
+        </vnf-request-information>
+    </sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncGetResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncGetResponse.xml
new file mode 100644
index 0000000..20b5462
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncGetResponse.xml
@@ -0,0 +1,195 @@
+<response-data>
+    <tag0CallbackHeader>
+        <tag0RequestId>2681784d-118e-4485-929f-2ae3212f5c07-1507707098467</tag0RequestId>
+        <tag0ResponseCode>200</tag0ResponseCode>
+        <tag0ResponseMessage>OK</tag0ResponseMessage>
+    </tag0CallbackHeader>
+    <tag0RequestData>
+        <service-list>
+            <service-instance-id>vnfID-1712_26</service-instance-id>
+            <service-status>
+                <response-code>200</response-code>
+                <request-status>synccomplete</request-status>
+                <response-timestamp>2017-09-19T143942.327Z</response-timestamp>
+                <final-indicator>Y</final-indicator>
+                <rpc-name>activate-vnf-request</rpc-name>
+            </service-status>
+            <service-data>
+                <service-information>
+                    <service-type>vRRaaS</service-type>
+                    <service-instance-id>vnfID-1712_26</service-instance-id>
+                </service-information>
+                <request-information>
+                    <request-id>ae322537-d081-4a01-95a5-c1448116d0c5</request-id>
+                </request-information>
+                <ipsec-tunnel-parameters/>
+                <vnf-topology-information>
+                    <vnf-assignments>
+                        <availability-zones>
+                            <availability-zone>frkde-esx-az01</availability-zone>
+                        </availability-zones>
+                        <vnf-vms>
+                            <vm-type>vrra</vm-type>
+                            <vm-count>1</vm-count>
+                            <vm-networks>
+                                <network-role>ADIGOam.OAM</network-role>
+                                <network-name>ADIGOAM.OAM</network-name>
+                                <v4-assigned-ip-list>
+                                    <v4-ip-type>NMLAN</v4-ip-type>
+                                    <ipv4-gateway-prefix>10.66.132.113</ipv4-gateway-prefix>
+                                    <v4-ip-prefix>10.66.132.115</v4-ip-prefix>
+                                    <v4-ip-prefix-length>32</v4-ip-prefix-length>
+                                    <v4-ip-source>EIPAM</v4-ip-source>
+                                </v4-assigned-ip-list>
+                                <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936807</network-id>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>ADIG_SRIOV_1</network-role>
+                                <network-name>ADIG_SRIOV_1</network-name>
+                                <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936808</network-id>
+                                <vlan-filter>[,]</vlan-filter>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>ADIG_SRIOV_2</network-role>
+                                <network-name>ADIG_SRIOV_2</network-name>
+                                <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936809</network-id>
+                                <vlan-filter>[,]</vlan-filter>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>Internal-Network1</network-role>
+                                <v4-assigned-ip-list>
+                                    <v4-ip-type>INTERNAL</v4-ip-type>
+                                    <v4-ip-prefix-length>24</v4-ip-prefix-length>
+                                    <v4-ip-source>OTHER</v4-ip-source>
+                                    <v4-ip-prefix>128.0.0.1</v4-ip-prefix>
+                                    <ipv4-prefix-block>128.0.0.0</ipv4-prefix-block>
+                                </v4-assigned-ip-list>
+                                <network-name>VRR-STMTN5MMSC20-INT1</network-name>
+                                <network-forwarding>12</network-forwarding>
+                                <network-id>VMX-INT1</network-id>
+                            </vm-networks>
+                            <vm-networks>
+                                <network-role>Internal-Network2</network-role>
+                                <v4-assigned-ip-list>
+                                    <v4-ip-type>INTERNAL</v4-ip-type>
+                                    <v4-ip-prefix-length>24</v4-ip-prefix-length>
+                                    <v4-ip-source>OTHER</v4-ip-source>
+                                    <v4-ip-prefix>128.0.0.1</v4-ip-prefix>
+                                    <ipv4-prefix-block>128.0.0.0</ipv4-prefix-block>
+                                </v4-assigned-ip-list>
+                                <network-name>VRR-STMTN5MMSC20-INT2</network-name>
+                                <network-forwarding>12</network-forwarding>
+                                <network-id>VMX-INT2</network-id>
+                            </vm-networks>
+                            <vm-names>
+                                <vm-name>frkdevRvrra24</vm-name>
+                                <vm-uuid>b05a42c3-28ea-4d18-8653-6515125acc1a</vm-uuid>
+                            </vm-names>
+                        </vnf-vms>
+                        <vnf-status>Activated</vnf-status>
+                        <vnf-networks>
+                            <network-role>ADIGOam.OAM</network-role>
+                            <network-name>ADIGOAM.OAM</network-name>
+                            <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                            <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936807</network-id>
+                        </vnf-networks>
+                        <vnf-networks>
+                            <network-role>ADIG_SRIOV_2</network-role>
+                            <network-name>ADIG_SRIOV_2</network-name>
+                            <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                            <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936809</network-id>
+                        </vnf-networks>
+                        <vnf-networks>
+                            <network-role>ADIG_SRIOV_1</network-role>
+                            <network-name>ADIG_SRIOV_1</network-name>
+                            <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                            <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936808</network-id>
+                        </vnf-networks>
+                    </vnf-assignments>
+                </vnf-topology-information>
+                <generic-vnf-service>
+                    <cloud-region-id>FRN1</cloud-region-id>
+                    <outer-vlan-tag>4027</outer-vlan-tag>
+                    <cloud-owner>att-aic</cloud-owner>
+                    <service-ecomp-model-information>
+                        <model-uuid>b73c6911-be64-448a-bb4b-7b7a7006507a</model-uuid>
+                        <model-version>5.0</model-version>
+                        <model-name>MOW AVPN vMX AV vPE Service</model-name>
+                        <model-invariant-uuid>d48764b1-043d-4783-89e3-8817602dc833</model-invariant-uuid>
+                    </service-ecomp-model-information>
+                    <as-number>65001</as-number>
+                    <infra-service-instance-id>wl3900-1712-46db-99be-de9eb963a6cf26</infra-service-instance-id>
+                    <country-code>DE</country-code>
+                    <vnf-id>vnfID-1712_26</vnf-id>
+                    <vnf-host-name>26VRR_mtrnj151rv2</vnf-host-name>
+                    <vf-module-ecomp-model-information>
+                        <vf-module-model-customization-uuid-list>
+                            <vf-module-model-customization-uuid>778c2ed5-77a8-426e-94fe-51a4d40199c4
+                            </vf-module-model-customization-uuid>
+                        </vf-module-model-customization-uuid-list>
+                        <vf-module-model-customization-uuid-list>
+                            <vf-module-model-customization-uuid>cb510af0-5b21-4bc7-86d9-323cb396ced4
+                            </vf-module-model-customization-uuid>
+                        </vf-module-model-customization-uuid-list>
+                        <model-uuid>c91330e5-8e1a-459b-95ee-d682046cbeca</model-uuid>
+                        <model-version>3</model-version>
+                        <model-name>MowAvpnVmxAvVpe..base_vRE_AV..module-0</model-name>
+                        <model-invariant-uuid>f9f41064-cbe7-4e94-ac4c-93d9c54af317</model-invariant-uuid>
+                    </vf-module-ecomp-model-information>
+                    <orchestration-status>Activated</orchestration-status>
+                    <vnf-type>RR</vnf-type>
+                    <aic-clli>FRNKGEFF</aic-clli>
+                    <prov-status>PROV</prov-status>
+                    <v4-assigned-ip-list>
+                        <v4-ip-type>NMLAN</v4-ip-type>
+                        <ipv4-gateway-prefix>10.66.132.113</ipv4-gateway-prefix>
+                        <v4-ip-prefix>10.66.132.115</v4-ip-prefix>
+                        <v4-ip-prefix-length>32</v4-ip-prefix-length>
+                        <v4-ip-source>EIPAM</v4-ip-source>
+                    </v4-assigned-ip-list>
+                    <vnf-ecomp-model-information>
+                        <model-uuid>07bc0630-11d2-4c08-9c8f-75b036db1f4d</model-uuid>
+                        <model-version>3.0</model-version>
+                        <model-name>MOW AVPN vMX AV vPE</model-name>
+                        <vnf-model-customization-uuid>31d077f6-356f-436e-b447-1997faff4c68
+                        </vnf-model-customization-uuid>
+                        <model-invariant-uuid>31d077f6-356f-436e-b447-1997faff4c68</model-invariant-uuid>
+                    </vnf-ecomp-model-information>
+                    <vnf-networks>
+                        <network-role>ADIGOam.OAM</network-role>
+                        <network-name>ADIGOAM.OAM</network-name>
+                        <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                        <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936807</network-id>
+                    </vnf-networks>
+                    <vnf-networks>
+                        <network-role>ADIG_SRIOV_2</network-role>
+                        <network-name>ADIG_SRIOV_2</network-name>
+                        <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                        <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936809</network-id>
+                    </vnf-networks>
+                    <vnf-networks>
+                        <network-role>ADIG_SRIOV_1</network-role>
+                        <network-name>ADIG_SRIOV_1</network-name>
+                        <neutron-id>491c7cef-a3f4-4990-883e-b0af397466d0</neutron-id>
+                        <network-id>VPEADIG1d77c-1086-41ec-b7f3-94bb30936808</network-id>
+                    </vnf-networks>
+                    <tenant>1710vPEPROJECTS297135PROJECT</tenant>
+                    <affinity>26VRR_mtrnj151rv2-affinity</affinity>
+                </generic-vnf-service>
+                <oper-status>
+                    <order-status>Completed</order-status>
+                </oper-status>
+                <vnf-request-information>
+                    <aic-cloud-region>VNN1CA52LCP</aic-cloud-region>
+                    <vnf-name>skask</vnf-name>
+                    <generic-vnf-id>afd0f02a-1ddb-43bb-aded-5113e46e82ae</generic-vnf-id>
+                    <generic-vnf-type>ZVNN1MOGX01-SVC/ZVNN1MOGX01 - VF AUG 1 1</generic-vnf-type>
+                    <generic-vnf-name>ZVNN1MOGX01</generic-vnf-name>
+                    <tenant>33d209df14ac4c08ad60747185d2f3e0</tenant>
+                    <vnf-id>bd1b3789-6474-4935-94b2-90b656e035d0</vnf-id>
+                    <vnf-type>ZVNN1MOGX01 - VF AUG 1module-0</vnf-type>
+                </vnf-request-information>
+            </service-data>
+        </service-list>
+    </tag0RequestData>
+</response-data>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncTopologyRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncTopologyRequest.xml
new file mode 100644
index 0000000..79ab33d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/sdncTopologyRequest.xml
@@ -0,0 +1,11 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1"
+                                                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1">
+    <sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>testReqId</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS/1604/0026/SW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>query</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>/VNF-API:vnfs/vnf-list/12345</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8090/SDNCAdapter</sdncadapter:CallbackUrl>
+        <sdncadapter:MsoAction>mobility</sdncadapter:MsoAction>
+    </sdncadapter:RequestHeader>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/vnfAdapterRestRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/vnfAdapterRestRequest.xml
new file mode 100644
index 0000000..d926887
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/DoUpdateVfModule/vnfAdapterRestRequest.xml
@@ -0,0 +1,170 @@
+<updateVfModuleRequest>
+    <cloudSiteId>RDM2WAGPLCP</cloudSiteId>
+    <tenantId>fba1bd1e195a404cacb9ce17a9b2b421</tenantId>
+    <vnfId>skask</vnfId>
+    <vfModuleId>cb510af0-5b21-4bc7-86d9-323cb396ce32</vfModuleId>
+    <vfModuleStackId>abc</vfModuleStackId>
+    <vnfType>vRRaas</vnfType>
+    <vnfVersion>1.0</vnfVersion>
+    <modelCustomizationUuid>cb510af0-5b21-4bc7-86d9-323cb396ced3</modelCustomizationUuid>
+    <vfModuleType>PCRF::module-0-2</vfModuleType>
+    <volumeGroupId>12345</volumeGroupId>
+    <volumeGroupStackId>12345</volumeGroupStackId>
+    <baseVfModuleId>12345</baseVfModuleId>
+    <baseVfModuleStackId>12345</baseVfModuleStackId>
+    <skipAAI>true</skipAAI>
+    <backout>12345</backout>
+    <failIfExists>false</failIfExists>
+    <vfModuleParams>
+        <entry>
+            <key>vf_module_id</key>
+            <value>cb510af0-5b21-4bc7-86d9-323cb396ce32</value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network1_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_subnet_id</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>vrra_ADIGOam.OAM_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vnf_name</key>
+            <value>skask-test</value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_v6_subnet_id</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>workload_context</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vf_module_name</key>
+            <value>PCRF::module-0-2</value>
+        </entry>
+        <entry>
+            <key>vnf_id</key>
+            <value>skask</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_v6_subnet_id</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_1_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_v6_subnet_id</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_subnet_id</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>vrr_flavor_name</key>
+            <value>ns.c16r32d128.v1</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_net_name</key>
+            <value>ADIG_SRIOV_2</value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_subnet_id</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_net_id</key>
+            <value>491c7cef-a3f4-4990-883e-b0af397466d0</value>
+        </entry>
+        <entry>
+            <key>environment_context</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_net_fqdn</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_net_name</key>
+            <value>ADIGOAM.OAM</value>
+        </entry>
+        <entry>
+            <key>vrra_name_0</key>
+            <value>frkdevRvrra24</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_2_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_net_fqdn</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network2_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_net_name</key>
+            <value>ADIG_SRIOV_1</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_1_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIGOam.OAM_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network1_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrr_image_name</key>
+            <value>MDT17</value>
+        </entry>
+        <entry>
+            <key>ADIGOam.OAM_net_fqdn</key>
+            <value/>
+        </entry>
+        <entry>
+            <key>vrra_names</key>
+            <value>frkdevRvrra24</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_1_net_id</key>
+            <value>491c7cef-a3f4-4990-883e-b0af397466d0</value>
+        </entry>
+        <entry>
+            <key>vrra_Internal-Network2_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vrra_ADIG_SRIOV_2_v6_ips</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>ADIG_SRIOV_2_net_id</key>
+            <value>491c7cef-a3f4-4990-883e-b0af397466d0</value>
+        </entry>
+        <entry>
+            <key>availability_zone_0</key>
+            <value>nova</value>
+        </entry>
+    </vfModuleParams>
+    <msoRequest>
+        <requestId>testRequestId</requestId>
+        <serviceInstanceId>MIS/1604/0026/SW_INTERNET</serviceInstanceId>
+    </msoRequest>
+    <messageId>testRequestId-1503410089303-1513287018300</messageId>
+    <notificationUrl>http://localhost:28080/mso/WorkflowMesssage/VNFAResponse/testRequestId-1503410089303-1513287018300</notificationUrl>
+</updateVfModuleRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/MsoCompletionRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/MsoCompletionRequest.xml
new file mode 100644
index 0000000..d5175f4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/MsoCompletionRequest.xml
@@ -0,0 +1,11 @@
+<aetgt:MsoCompletionRequest xmlns:aetgt="http://org.onap/so/workflow/schema/v1"
+                            xmlns:ns="http://org.onap/so/request/types/v1"
+                            xmlns="http://org.onap/so/infra/vnf-request/v1">
+    <request-info>
+        <request-id>null</request-id>
+        <action>DELETE</action>
+        <source>null</source>
+    </request-info>
+    <aetgt:status-message>E2E Service Instance was deleted successfully.</aetgt:status-message>
+    <aetgt:mso-bpel-name>DeleteCustomE2EServiceInstance</aetgt:mso-bpel-name>
+</aetgt:MsoCompletionRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/SDNCDeleteResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/SDNCDeleteResponse.xml
new file mode 100644
index 0000000..e380ce7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/SDNCDeleteResponse.xml
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<sdncadapterworkflow:SDNCAdapterWorkflowResponse
+        xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1">
+    <sdncadapterworkflow:response-data>
+        <tag0:RequestData
+                xmlns:tag0="http://org.onap/workflow/sdnc/adapter/schema/v1"
+                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="xs:string">
+            <output xmlns="com:att:sdnctl:nbncapi">
+                <ack-final-indicator>Y</ack-final-indicator>
+                <svc-request-id>SK-2016-10-22-001</svc-request-id>
+                <nbnc-response-information>
+                    <response-info>
+                        <result>SUCCESS</result>
+                        <aai-status>ERROR</aai-status>
+                    </response-info>
+                    <virtual-datacenter-list>
+                        <vdc-id>15001417</vdc-id>
+                        <router-list>
+                            <router-name>ALPRTR2</router-name>
+                            <ipe-loopback-address>1.1.1.2</ipe-loopback-address>
+                            <vlan-list>
+                                <vlan-id>1255.ae81</vlan-id>
+                                <border-element-type>VDBE</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>ALPVDBE1</border-element-id>
+                                <border-element-v4-subnet>3.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>3:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>1995.ae81</vlan-id>
+                                <border-element-type>ASBG</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>ALPASBG1</border-element-id>
+                                <border-element-v4-subnet>3.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>3:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/2</vlan-id>
+                                <border-element-type>BGF2</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/2</port-id>
+                                <border-element-id>ALPBGF2</border-element-id>
+                                <border-element-v4-subnet>3.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>3:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/1</vlan-id>
+                                <border-element-type>BGF1</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/1</port-id>
+                                <border-element-id>ALPBGF1</border-element-id>
+                                <border-element-v4-subnet>3.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>3:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <ipe-id>2</ipe-id>
+                        </router-list>
+                        <router-list>
+                            <router-name>ALPRTR1</router-name>
+                            <ipe-loopback-address>1.1.1.1</ipe-loopback-address>
+                            <vlan-list>
+                                <vlan-id>1255.ae81</vlan-id>
+                                <border-element-type>VDBE</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>ALPVDBE1</border-element-id>
+                                <border-element-v4-subnet>3.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>3:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>1995.ae81</vlan-id>
+                                <border-element-type>ASBG</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>ALPASBG1</border-element-id>
+                                <border-element-v4-subnet>3.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>3:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/2</vlan-id>
+                                <border-element-type>BGF2</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/2</port-id>
+                                <border-element-id>ALPBGF2</border-element-id>
+                                <border-element-v4-subnet>3.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>3:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/1</vlan-id>
+                                <border-element-type>BGF1</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/1</port-id>
+                                <border-element-id>ALPBGF1</border-element-id>
+                                <border-element-v4-subnet>3.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>3:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <ipe-id>1</ipe-id>
+                        </router-list>
+                    </virtual-datacenter-list>
+                    <virtual-datacenter-list>
+                        <vdc-id>15001418</vdc-id>
+                        <router-list>
+                            <router-name>SANRTR1</router-name>
+                            <ipe-loopback-address>2.1.1.1</ipe-loopback-address>
+                            <vlan-list>
+                                <vlan-id>1255.ae81</vlan-id>
+                                <border-element-type>VDBE</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>SANVDBE1</border-element-id>
+                                <border-element-v4-subnet>4.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>4:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>1995.ae81</vlan-id>
+                                <border-element-type>ASBG</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>SANASBG1</border-element-id>
+                                <border-element-v4-subnet>4.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>4:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/2</vlan-id>
+                                <border-element-type>BGF2</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/2</port-id>
+                                <border-element-id>SANBGF2</border-element-id>
+                                <border-element-v4-subnet>4.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>4:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/1</vlan-id>
+                                <border-element-type>BGF1</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/1</port-id>
+                                <border-element-id>SANBGF1</border-element-id>
+                                <border-element-v4-subnet>4.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>4:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <ipe-id>1</ipe-id>
+                        </router-list>
+                        <router-list>
+                            <router-name>SANRTR2</router-name>
+                            <ipe-loopback-address>2.1.1.2</ipe-loopback-address>
+                            <vlan-list>
+                                <vlan-id>1255.ae81</vlan-id>
+                                <border-element-type>VDBE</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>SANVDBE1</border-element-id>
+                                <border-element-v4-subnet>4.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>4:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>1995.ae81</vlan-id>
+                                <border-element-type>ASBG</border-element-type>
+                                <border-element-tangibility>VIRTUAL</border-element-tangibility>
+                                <port-id></port-id>
+                                <border-element-id>SANASBG1</border-element-id>
+                                <border-element-v4-subnet>4.1.1.0/22</border-element-v4-subnet>
+                                <lag-id>ae81</lag-id>
+                                <border-element-v6-subnet>4:1:1::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/2</vlan-id>
+                                <border-element-type>BGF2</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/2</port-id>
+                                <border-element-id>SANBGF2</border-element-id>
+                                <border-element-v4-subnet>4.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>4:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <vlan-list>
+                                <vlan-id>85.xe-10/0/1</vlan-id>
+                                <border-element-type>BGF1</border-element-type>
+                                <border-element-tangibility>PHYSICAL</border-element-tangibility>
+                                <port-id>xe-10/0/1</port-id>
+                                <border-element-id>SANBGF1</border-element-id>
+                                <border-element-v4-subnet>4.1.2.0/22</border-element-v4-subnet>
+                                <lag-id></lag-id>
+                                <border-element-v6-subnet>4:1:2::0/22</border-element-v6-subnet>
+                            </vlan-list>
+                            <ipe-id>2</ipe-id>
+                        </router-list>
+                    </virtual-datacenter-list>
+                    <service-type>COLLABORATE</service-type>
+                    <interface-status>DISABLE</interface-status>
+                    <customer-id>custid-888</customer-id>
+                    <service-instance-id>SII-2016-10-22-001</service-instance-id>
+                    <provision-type>CUSTOMER</provision-type>
+                    <vni-id>100668</vni-id>
+                </nbnc-response-information>
+            </output>
+        </tag0:RequestData>
+    </sdncadapterworkflow:response-data>
+</sdncadapterworkflow:SDNCAdapterWorkflowResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/aaiGetResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/aaiGetResponse.xml
new file mode 100644
index 0000000..c367b5c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/aaiGetResponse.xml
@@ -0,0 +1,33 @@
+<service-instance xmlns="http://org.openecomp.aai.inventory/v11">
+    <service-instance-id>1234</service-instance-id>
+    <service-instance-name>volte-service</service-instance-name>
+    <service-type>testservicetype</service-type>
+    <service-role>testservicerole</service-role>
+    <description>volte service</description>
+    <model-invariant-id>c1d4305f-cdbd-4bbe-9069-a2f4978fd89e</model-invariant-id>
+    <model-version-id>d4df5c27-98a1-4812-a8aa-c17f055b7a3f</model-version-id>
+    <resource-version>1508838121849</resource-version>
+    <orchestration-status>create</orchestration-status>
+    <relationship-list>
+        <relationship>
+            <related-to>service-instance</related-to>
+            <related-link>/aai/v11/business/customers/customer/test_customer/service-subscription/example-service-type/service-instance/1234_1</related-link>
+            <relationship-data>
+                <relationship-key>customer.global-customer-id</relationship-key>
+                <relationship-value>test_customer</relationship-value>
+            </relationship-data>
+            <relationship-data>
+                <relationship-key>service-subscription.service-type</relationship-key>
+                <relationship-value>test_customer</relationship-value>
+            </relationship-data>
+            <relationship-data>
+                <relationship-key>service-instance.service-instance-id</relationship-key>
+                <relationship-value>1234_1</relationship-value>
+            </relationship-data>
+            <related-to-property>
+                <property-key>service-instance.service-instance-name</property-key>
+                <property-value>volte-service_vEPC</property-value>
+            </related-to-property>
+        </relationship>
+    </relationship-list>
+</service-instance>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getARUrlById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getARUrlById.xml
new file mode 100644
index 0000000..e178583
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getARUrlById.xml
@@ -0,0 +1,6 @@
+<search-results xmlns="http://org.openecomp.aai.inventory">
+     <result-data>
+        <resource-type>allotted-resource</resource-type>
+        <resource-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</resource-link>
+     </result-data>
+</search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfByNameResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfByNameResponse.xml
new file mode 100644
index 0000000..a472996
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfByNameResponse.xml
@@ -0,0 +1,23 @@
+<generic-vnfs xmlns="http://org.openecomp.aai.inventory/v3">
+         <generic-vnf>
+            <vnf-id>2f1cc940-455f-4ee2-9411-a7899cd4f124</vnf-id>
+            <vnf-name>testVnfName123</vnf-name>
+            <vnf-type>mmsc-capacity</vnf-type>
+            <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+            <equipment-role>vMMSC</equipment-role>
+            <orchestration-status>pending-create</orchestration-status>
+            <resource-version>testReVer123</resource-version>
+            <relationship-list>
+               <relationship>
+                  <related-to>nothing</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/c597ab81-fece-49f4-a4f5-710cebb13c29/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>c597ab81-fece-49f4-a4f5-710cebb13c29</relationship-value>
+                  </relationship-data>
+               </relationship>
+            </relationship-list>
+            <l-interfaces/>
+            <lag-interfaces/>
+         </generic-vnf>
+      </generic-vnfs>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfResponse.xml
new file mode 100644
index 0000000..8ba178c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfResponse.xml
@@ -0,0 +1,90 @@
+<generic-vnfs xmlns="http://org.openecomp.aai.inventory/v3">
+         <generic-vnf>
+            <vnf-id>2f1cc940-455f-4ee2-9411-a7899cd4f124</vnf-id>
+            <vnf-name>testVnfName123</vnf-name>
+            <vnf-type>mmsc-capacity</vnf-type>
+            <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+            <equipment-role>vMMSC</equipment-role>
+            <orchestration-status>pending-create</orchestration-status>
+            <relationship-list>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/c597ab81-fece-49f4-a4f5-710cebb13c29/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>c597ab81-fece-49f4-a4f5-710cebb13c29</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/53956c91-6e5e-49aa-88dd-535f57e66e70/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>53956c91-6e5e-49aa-88dd-535f57e66e70</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/44e0d9e0-9334-4ec6-9344-07a96dac629f/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>44e0d9e0-9334-4ec6-9344-07a96dac629f</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/ac49d99b-5daf-4624-9f8e-188b126ea166/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>ac49d99b-5daf-4624-9f8e-188b126ea166</relationship-value>
+                  </relationship-data>
+               </relationship>
+            </relationship-list>
+            <l-interfaces/>
+            <lag-interfaces/>
+         </generic-vnf>
+         <generic-vnf>
+            <vnf-id>802767b3-18a6-4432-96db-25522786aee0</vnf-id>
+            <vnf-name>ZRDM1MMSC03</vnf-name>
+            <vnf-type>mmsc-capacity</vnf-type>
+            <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+            <equipment-role>vMMSC</equipment-role>
+            <orchestration-status>pending-create</orchestration-status>
+            <relationship-list>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/c597ab81-fece-49f4-a4f5-710cebb13c29/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>c597ab81-fece-49f4-a4f5-710cebb13c29</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/53956c91-6e5e-49aa-88dd-535f57e66e70/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>53956c91-6e5e-49aa-88dd-535f57e66e70</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/44e0d9e0-9334-4ec6-9344-07a96dac629f/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>44e0d9e0-9334-4ec6-9344-07a96dac629f</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/ac49d99b-5daf-4624-9f8e-188b126ea166/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>ac49d99b-5daf-4624-9f8e-188b126ea166</relationship-value>
+                  </relationship-data>
+               </relationship>
+            </relationship-list>
+            <l-interfaces/>
+            <lag-interfaces/>
+         </generic-vnf>
+      </generic-vnfs>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfResponse_hasRelationships.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfResponse_hasRelationships.xml
new file mode 100644
index 0000000..8ba178c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getGenericVnfResponse_hasRelationships.xml
@@ -0,0 +1,90 @@
+<generic-vnfs xmlns="http://org.openecomp.aai.inventory/v3">
+         <generic-vnf>
+            <vnf-id>2f1cc940-455f-4ee2-9411-a7899cd4f124</vnf-id>
+            <vnf-name>testVnfName123</vnf-name>
+            <vnf-type>mmsc-capacity</vnf-type>
+            <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+            <equipment-role>vMMSC</equipment-role>
+            <orchestration-status>pending-create</orchestration-status>
+            <relationship-list>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/c597ab81-fece-49f4-a4f5-710cebb13c29/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>c597ab81-fece-49f4-a4f5-710cebb13c29</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/53956c91-6e5e-49aa-88dd-535f57e66e70/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>53956c91-6e5e-49aa-88dd-535f57e66e70</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/44e0d9e0-9334-4ec6-9344-07a96dac629f/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>44e0d9e0-9334-4ec6-9344-07a96dac629f</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/ac49d99b-5daf-4624-9f8e-188b126ea166/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>ac49d99b-5daf-4624-9f8e-188b126ea166</relationship-value>
+                  </relationship-data>
+               </relationship>
+            </relationship-list>
+            <l-interfaces/>
+            <lag-interfaces/>
+         </generic-vnf>
+         <generic-vnf>
+            <vnf-id>802767b3-18a6-4432-96db-25522786aee0</vnf-id>
+            <vnf-name>ZRDM1MMSC03</vnf-name>
+            <vnf-type>mmsc-capacity</vnf-type>
+            <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+            <equipment-role>vMMSC</equipment-role>
+            <orchestration-status>pending-create</orchestration-status>
+            <relationship-list>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/c597ab81-fece-49f4-a4f5-710cebb13c29/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>c597ab81-fece-49f4-a4f5-710cebb13c29</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/53956c91-6e5e-49aa-88dd-535f57e66e70/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>53956c91-6e5e-49aa-88dd-535f57e66e70</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/44e0d9e0-9334-4ec6-9344-07a96dac629f/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>44e0d9e0-9334-4ec6-9344-07a96dac629f</relationship-value>
+                  </relationship-data>
+               </relationship>
+               <relationship>
+                  <related-to>l3-network</related-to>
+                  <related-link>https://aai-app-e2e.test.com:8443/aai/v3/network/l3-networks/l3-network/ac49d99b-5daf-4624-9f8e-188b126ea166/</related-link>
+                  <relationship-data>
+                     <relationship-key>l3-network.network-id</relationship-key>
+                     <relationship-value>ac49d99b-5daf-4624-9f8e-188b126ea166</relationship-value>
+                  </relationship-data>
+               </relationship>
+            </relationship-list>
+            <l-interfaces/>
+            <lag-interfaces/>
+         </generic-vnf>
+      </generic-vnfs>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getNotFound.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getNotFound.xml
new file mode 100644
index 0000000..f66c9c4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getNotFound.xml
@@ -0,0 +1,2 @@
+<search-results xmlns="http://org.openecomp.aai.inventory">
+</search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getParentSIUrlById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getParentSIUrlById.xml
new file mode 100644
index 0000000..c29133e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getParentSIUrlById.xml
@@ -0,0 +1,6 @@
+<search-results xmlns="http://org.openecomp.aai.inventory">
+     <result-data>
+        <resource-type>service-instance</resource-type>
+        <resource-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0027%252FSW_INTERNET</resource-link>
+     </result-data>
+</search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getParentServiceInstance.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getParentServiceInstance.xml
new file mode 100644
index 0000000..bc810c6
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getParentServiceInstance.xml
@@ -0,0 +1,30 @@
+<service-instance>
+   <service-instance-id>MIS/1604/0027/SW_INTERNET</service-instance-id>
+   <resource-version>123456789</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>cvlan-tag</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/port-groups/port-group/slcp1447vbc.ipag/cvlan-tags/cvlan-tag/2003/</related-link>
+         <relationship-data>
+            <relationship-key>cvlan-tag.cvlan-tag</relationship-key>
+            <relationship-value>2003</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>port-group.interface-id</relationship-key>
+            <relationship-value>slcp1447vbc.ipag</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>vce.vnf-id</relationship-key>
+            <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+         </relationship-data>
+      </relationship>
+      <relationship>
+         <related-to>vce</related-to>
+         	<related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/</related-link>
+         <relationship-data>
+            <relationship-key>vce.vnf-id</relationship-key>
+            <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+         </relationship-data>
+      </relationship>
+   </relationship-list>
+</service-instance>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSINoRelations.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSINoRelations.xml
new file mode 100644
index 0000000..e52b26a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSINoRelations.xml
@@ -0,0 +1,6 @@
+<service-instance>
+             <service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+             <resource-version>123456789</resource-version>
+             <relationship-list/> 
+         	<metadata/> 
+</service-instance>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSIUrlById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSIUrlById.xml
new file mode 100644
index 0000000..416689e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSIUrlById.xml
@@ -0,0 +1,6 @@
+    <search-results xmlns="http://org.openecomp.aai.inventory">
+         <result-data>
+            <resource-type>service-instance</resource-type>
+            <resource-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET</resource-link>
+         </result-data>
+      </search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSIUrlByIdVipr.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSIUrlByIdVipr.xml
new file mode 100644
index 0000000..28c739a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getSIUrlByIdVipr.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<search-results xmlns="http://org.openecomp.aai.inventory/v8">
+   <result-data>
+      <resource-type>service-instance</resource-type>
+      <resource-link>https://aai-int1.test.com:8443/aai/v8/business/customers/customer/MSO_1610_dev/service-subscriptions/service-subscription/MSO-dev-service-type/service-instances/service-instance/aa8428ac-7dd2-441f-aa3e-e175802574fb</resource-link>
+   </result-data>
+</search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getServiceInstance.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getServiceInstance.xml
new file mode 100644
index 0000000..e377c704
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/GenericFlows/getServiceInstance.xml
@@ -0,0 +1,30 @@
+<service-instance>
+               <service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+               <resource-version>123456789</resource-version>
+               <relationship-list>
+                  <relationship>
+                     <related-to>cvlan-tag</related-to>
+                     <related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/port-groups/port-group/slcp1447vbc.ipag/cvlan-tags/cvlan-tag/2003/</related-link>
+                     <relationship-data>
+                        <relationship-key>cvlan-tag.cvlan-tag</relationship-key>
+                        <relationship-value>2003</relationship-value>
+                     </relationship-data>
+                     <relationship-data>
+                        <relationship-key>port-group.interface-id</relationship-key>
+                        <relationship-value>slcp1447vbc.ipag</relationship-value>
+                     </relationship-data>
+                     <relationship-data>
+                        <relationship-key>vce.vnf-id</relationship-key>
+                        <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+                     </relationship-data>
+                  </relationship>
+                  <relationship>
+                     <related-to>vce</related-to>
+					 <related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/</related-link>
+                     <relationship-data>
+                        <relationship-key>vce.vnf-id</relationship-key>
+                        <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+                     </relationship-data>
+                  </relationship>
+               </relationship-list>
+            </service-instance>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/ConfigVnf_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/ConfigVnf_VID_request.json
new file mode 100644
index 0000000..0404002
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/ConfigVnf_VID_request.json
@@ -0,0 +1,39 @@
+{
+"requestDetails": {
+"modelInfo": {
+"modelType": "vnf",
+"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+"modelName": "vSAMP12",
+"modelVersion": "1.0",
+"modelCustomizationUuid": "MODEL-ID-1234"
+},
+"cloudConfiguration": {
+"lcpCloudRegionId": "mdt1",
+"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+},
+"requestInfo": {
+"instanceName": "STMTN",
+"instanceId": "skask",
+"source": "VID",
+"suppressRollback": true
+},
+"relatedInstanceList": [
+{
+"relatedInstance": {
+"instanceId": "MIS%2F1604%2F0026%2FSW_INTERNET",
+"modelInfo": {
+"modelType": "service",
+"modelInvariantUuid": "995256d2-5a33-55df-13ab-12abad84e7ff",
+"modelUuid": "ab6478e5-ea33-3346-ac12-ab121484a3fe",
+"modelName": "ServicevSAMP12",
+"modelVersion": "1.0"
+}
+}
+}
+],
+"requestParameters": {
+"payload": "{\"request-parameters\":{\"host-ip-address\":\"10.10.10.10\"},\"configuration-         parameters\":{\"name1\":\"value1\",\"name2\":\"value2\"}}"
+}
+}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/CreateVnfInfraRequest.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/CreateVnfInfraRequest.json
new file mode 100644
index 0000000..c1491d1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/CreateVnfInfraRequest.json
@@ -0,0 +1,46 @@
+{
+  "requestDetails": {
+      "modelInfo": {
+        "modelType": "vnf",
+         "modelInvariantUuid": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+         "modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+         "modelName": "vSAMP12",
+         "modelVersion": "1.0",
+         "modelInstanceName": "vSAMP12 1",
+         "modelCustomizationUuid": "customizationId123"
+      },
+      "cloudConfiguration": {
+          "lcpCloudRegionId": "mdt1",
+          "tenantId": "88a6ca3ee0394ade9403f075db23167e"
+      },
+      "requestInfo": {
+          "instanceName": "testVnfName123",
+          "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+          "source": "VID",
+          "suppressRollback": false
+      },
+      "relatedInstanceList": [
+         {
+            "relatedInstance": {
+               "instanceId": "{serviceInstanceId}",
+               "modelInfo": {
+                  "modelType": "service",
+                  "modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+                  "modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+                  "modelName": "{parent service model name}",
+                  "modelVersion": "1.0"
+               }
+            }
+         }
+      ],
+      "requestParameters": {
+      },
+	  "platform": {
+		"platformName": "platform name"
+	  },
+	  "lineOfBusiness": {
+		"lineOfBusinessName": "line of business names"
+	  }
+  }
+  
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DeleteCustomE2EService.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DeleteCustomE2EService.json
new file mode 100644
index 0000000..661a89e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DeleteCustomE2EService.json
@@ -0,0 +1,21 @@
+{
+ "requestDetails": {
+  "requestInfo": {
+   "callbackUrl": "http://localhost:28080/simulada/CCD/AsyncRequestStatus",
+   "source": "CCD",
+   "instanceName": "USOSTCDALTX0101VFHN31"
+  },
+  "subscriberInfo": {
+   "globalSubscriberId": "38829939920000",
+   "subscriberName": "Fern Hill Real Estate LLC 31"
+  },
+  "requestParameters": {
+   "userParams": [
+    {
+     "name": "someUserParam",
+     "value": "someValue"
+    }
+   ]
+  }
+  }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DeleteVnfInfraRequestCascadeDelete.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DeleteVnfInfraRequestCascadeDelete.json
new file mode 100644
index 0000000..e8d9fc2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DeleteVnfInfraRequestCascadeDelete.json
@@ -0,0 +1,39 @@
+{
+  "requestDetails": {
+      "modelInfo": {
+        "modelType": "vnf",
+         "modelInvariantUuid": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+         "modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+         "modelName": "vSAMP12",
+         "modelVersion": "1.0",
+         "modelInstanceName": "vSAMP12 1"
+      },
+      "cloudConfiguration": {
+          "lcpCloudRegionId": "mdt1",
+          "tenantId": "88a6ca3ee0394ade9403f075db23167e"
+      },
+      "requestInfo": {
+          "instanceName": "testVnfName123",
+          "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+          "source": "VID",
+          "suppressRollback": false
+      },
+      "relatedInstanceList": [
+         {
+            "relatedInstance": {
+               "instanceId": "{serviceInstanceId}",
+               "modelInfo": {
+                  "modelType": "service",
+                  "modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+                  "modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+                  "modelName": "{parent service model name}",
+                  "modelVersion": "1.0"
+               }
+            }
+         }
+      ],
+      "requestParameters": {
+      	"cascadeDelete": true
+      }
+  }
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DoCreateServiceInstance_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DoCreateServiceInstance_request.json
new file mode 100644
index 0000000..640e16b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DoCreateServiceInstance_request.json
@@ -0,0 +1,186 @@
+{ "serviceResources"    : {
+	"modelInfo"       : {
+		"modelName"          : "MSOTADevInfra_vSAMP10a_Service",
+		"modelUuid"          : "5df8b6de-2083-11e7-93ae-92361f002671",
+		"modelInvariantUuid" : "9647dfc4-2083-11e7-93ae-92361f002671",
+		"modelVersion"       : "1.0"
+	},
+	"serviceType"        : "PortMirroring",
+	"serviceRole"        : "InfraRole",
+	"environmentContext" : "Luna",
+	"workloadContext"    : "Oxygen",
+	"serviceVnfs": [
+	
+		{ "modelInfo"                    : {
+			"modelName"              : "vSAMP10a",
+			"modelUuid"              : "ff2ae348-214a-11e7-93ae-92361f002671",
+			"modelInvariantUuid"     : "2fff5b20-214b-11e7-93ae-92361f002671",
+			"modelVersion"           : "1.0",
+			"modelCustomizationUuid" : "68dc9a92-214c-11e7-93ae-92361f002671",
+			"modelInstanceName"      : "vSAMP10a 1"
+			},
+		"toscaNodeType"            : "VF",
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: null,
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "NetworkFqdnTest4",
+						"modelUuid"              : "025606c1-4223-11e7-9252-005056850d2e",
+						"modelInvariantUuid"     : "06bd0a18-65c0-4418-83c7-5b0d13cba01a",
+						"modelVersion"           : "2.0",
+						"modelCustomizationUuid" : "06bd0a18-65c0-4418-83c7-5b0d13cba01a"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "label",
+					"initialCount"           : 0,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "NetworkFqdnTest3",
+						"modelUuid"              : "02560575-4223-11e7-9252-005056850d2e",
+						"modelInvariantUuid"     : "06bd0a18-65c0-4418-83c7-5b0d13cba0bb",
+						"modelVersion"           : "1.0",
+						"modelCustomizationUuid" : "06bd0a18-65c0-4418-83c7-5b0d13cba0bb"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "label",
+					"initialCount"           : 0,
+					"hasVolumeGroup"           : false
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "NetworkFqdnTest5",
+						"modelUuid"              : "025607e4-4223-11e7-9252-005056850d2e",
+						"modelInvariantUuid"     : "06bd0a18-65c0-4418-83c7-5b0d14cba01a",
+						"modelVersion"           : "1.0",
+						"modelCustomizationUuid" : "06bd0a18-65c0-4418-83c7-5b0d14cba01a"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "label",
+					"initialCount"           : 0,
+					"hasVolumeGroup"           : false
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "vSAMP10aDEV::PCM::module-2",
+						"modelUuid"              : "7774b4e4-7d37-11e7-bb31-be2e44b06b34",
+						"modelInvariantUuid"     : "93e9c1d2-7d37-11e7-bb31-be2e44b06b34",
+						"modelVersion"           : "2",
+						"modelCustomizationUuid" : "6728bee8-7d3a-11e7-bb31-be2e44b06b34"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "PCM",
+					"initialCount"           : 0,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "vSAMP10aDEV::PCM::module-1",
+						"modelUuid"              : "066de97e-253e-11e7-93ae-92361f002671",
+						"modelInvariantUuid"     : "64efd51a-2544-11e7-93ae-92361f002671",
+						"modelVersion"           : "2",
+						"modelCustomizationUuid" : "b4ea86b4-253f-11e7-93ae-92361f002671"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "PCM",
+					"initialCount"           : 0,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "vSAMP10aDEV::base::module-0",
+						"modelUuid"              : "20c4431c-246d-11e7-93ae-92361f002671",
+						"modelInvariantUuid"     : "78ca26d0-246d-11e7-93ae-92361f002671",
+						"modelVersion"           : "2",
+						"modelCustomizationUuid" : "cb82ffd8-252a-11e7-93ae-92361f002671"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "vSAMP10a::base::module-0",
+						"modelUuid"              : "02560de2-4223-11e7-9252-005056850d2e",
+						"modelInvariantUuid"     : null,
+						"modelVersion"           : "2",
+						"modelCustomizationUuid" : "MIGRATED_36e76920-ef30-4793-9979-cbd7d4b2bfc4"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "base::module-0",
+						"modelUuid"              : "02561381-4223-11e7-9252-005056850d2e",
+						"modelInvariantUuid"     : null,
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "MIGRATED_51baae4c-b7c7-4f57-b77e-6e01acca89e5"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "module-0",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : false
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "vSAMP10a::PCM::module-1",
+						"modelUuid"              : "02560f1b-4223-11e7-9252-005056850d2e",
+						"modelInvariantUuid"     : null,
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "MIGRATED_e9be2ed7-45b6-479c-b06e-9093899f8ce8"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "PCM",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+	],
+	"serviceNetworks": [],
+	"serviceAllottedResources": [
+		{
+			"modelInfo"       : {
+				"modelName"              : "Tunnel_Xconn",
+				"modelUuid"              : "f6b7d4c6-e8a4-46e2-81bc-31cad5072842",
+				"modelInvariantUuid"     : "b7a1b78e-6b6b-4b36-9698-8c9530da14af",
+				"modelVersion"           : "1.0",
+				"modelCustomizationUuid" : "5b9bee43-f537-4fb3-9e8b-4de9f714d28a",
+				"modelInstanceName"      : "Pri_Tunnel_Xconn 9"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : null,
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		}
+	],
+	"serviceConfigs": [
+		{
+			"modelInfo"       : {
+				"modelName"              : "Mulder",
+				"modelUuid"              : "025606c1-4fff-11e7-9252-005056850d2e",
+				"modelInvariantUuid"     : "025606c1-4eee-11e7-9252-005056850d2e",
+				"modelVersion"           : "1.0",
+				"modelCustomizationUuid" : "025606c1-4ddd-11e7-9252-005056850d2e",
+				"modelInstanceName"      : "X_FILES_001"
+			},
+			"toscaNodeType"   : "Scully"
+		},
+		{
+			"modelInfo"       : {
+				"modelName"              : "Krychuk",
+				"modelUuid"              : "025606c1-5fff-11e7-9252-005056850d2e",
+				"modelInvariantUuid"     : "025606c1-5eee-11e7-9252-005056850d2e",
+				"modelVersion"           : "1.0",
+				"modelCustomizationUuid" : "025606c1-5ddd-11e7-9252-005056850d2e",
+				"modelInstanceName"      : "X_FILES_002"
+			},
+			"toscaNodeType"   : "Skinner"
+		}
+	]
+	}}
+
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DoScaleE2EServiceInstance.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DoScaleE2EServiceInstance.json
new file mode 100644
index 0000000..dd3ff68
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/DoScaleE2EServiceInstance.json
@@ -0,0 +1,38 @@
+{
+  "service":
+  {
+    "serviceType":"example-service-type",
+    "globalSubscriberId":"test_custormer",
+    "resources":
+    [
+      {
+        "resourceInstanceId":"ns111",
+        "scaleType":"SCALE_NS",
+        "scaleNsData":
+        {
+          "scaleNsByStepsData":
+          {
+            "numberOfSteps":"4",
+            "aspectId":"TIC_EDGE_HW",
+            "scalingDirection":"UP"
+          }
+        }
+      },
+      {
+        "resourceInstanceId":"ns333",
+        "scaleType":"SCALE_NS",
+        "scaleNsData":
+        {
+          "scaleNsByStepsData":
+          {
+            "numberOfSteps":"4",
+            "aspectId":"TIC_EDGE_HW",
+            "scalingDirection":"UP"
+          }
+        }
+      }
+    ],
+    "serviceInstanceName":"service1"
+  },
+  "operationId":"15c01683-4f15-45e7-b213-dcbfe6f42a1b"
+  }
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/ReplaceVnf_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/ReplaceVnf_VID_request.json
new file mode 100644
index 0000000..7c97172
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/ReplaceVnf_VID_request.json
@@ -0,0 +1,49 @@
+{
+"requestDetails": {
+"modelInfo": {
+"modelType": "vnf",
+"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+"modelName": "vSAMP12",
+"modelVersion": "1.0",
+"modelCustomizationUuid": "MODEL-ID-1234"
+},
+"cloudConfiguration": {
+"lcpCloudRegionId": "mdt1",
+"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+},
+"requestInfo": {
+"instanceName": "STMTN",
+"instanceId": "a27ce5a9-29c4-4c22-a017-6615ac73c721",
+"source": "VID",
+"suppressRollback": true
+},
+"relatedInstanceList": [
+{
+"relatedInstance": {
+"instanceId": "MIS%2F1604%2F0026%2FSW_INTERNET",
+"modelInfo": {
+"modelType": "service",
+"modelInvariantUuid": "995256d2-5a33-55df-13ab-12abad84e7ff",
+"modelUuid": "ab6478e5-ea33-3346-ac12-ab121484a3fe",
+"modelName": "ServicevSAMP12",
+"modelVersion": "1.0"
+}
+}
+}
+],
+"requestParameters": {
+"usePreload": false,
+"userParams" : [
+	{
+		"name" : "someUserParam",
+		"value" : "someValue"
+	},
+	{ 
+		"name": "sgi_protected_subnet_id", 
+		"value": "thisissomefakevalue" 
+	}
+]
+}
+}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/UpdateVfModule_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/UpdateVfModule_VID_request.json
new file mode 100644
index 0000000..9564f70
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/UpdateVfModule_VID_request.json
@@ -0,0 +1,62 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "vfModule",
+			"modelInvariantUuid": "introvert",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "STMTN5MMSC21-MMSC::model-1-0",
+			"modelVersion": "1",
+			"modelCustomizationUuid": "MODEL12345"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "MDTWNJ21",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"instanceName": "PCRF::module-0",
+			"instanceId": "supercool",
+			"source": "VID",
+			"suppressRollback": true
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "123456",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "SERVICE_MODEL_NAME",
+						"modelVersion": "1.0"
+					}
+				}
+			},
+			{
+				"relatedInstance": {
+					"instanceId": "skask",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "skask",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "vSAMP12",
+						"modelVersion": "1.0",
+						"modelInstanceName": "vSAMP12 1"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"usePreload": false,
+			"userParams": [
+				{
+					"name": "someUserParam",
+					"value": "someValue"
+				},
+				{
+					"name": "sgi_protected_subnet_id",
+					"value": "thisissomefakevalue"
+				}
+			]
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/UpdateVnf_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/UpdateVnf_VID_request.json
new file mode 100644
index 0000000..5ce8546
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/UpdateVnf_VID_request.json
@@ -0,0 +1,56 @@
+{
+"requestDetails": {
+"modelInfo": {
+"modelType": "vnf",
+"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+"modelName": "vSAMP12",
+"modelVersion": "1.0",
+"modelCustomizationUuid": "MODEL-ID-1234"
+},
+"cloudConfiguration": {
+"lcpCloudRegionId": "mdt1",
+"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+},
+"requestInfo": {
+"instanceName": "STMTN",
+"instanceId": "skask",
+"source": "VID",
+"suppressRollback": true
+},
+"relatedInstanceList": [
+{
+"relatedInstance": {
+"instanceId": "MIS%2F1604%2F0026%2FSW_INTERNET",
+"modelInfo": {
+"modelType": "service",
+"modelInvariantUuid": "995256d2-5a33-55df-13ab-12abad84e7ff",
+"modelUuid": "ab6478e5-ea33-3346-ac12-ab121484a3fe",
+"modelName": "ServicevSAMP12",
+"modelVersion": "1.0"
+}
+}
+}
+],
+"requestParameters": {
+"usePreload": false,
+"userParams" : [
+	{
+		"name" : "someUserParam",
+		"value" : "someValue"
+	},
+	{ 
+		"name": "sgi_protected_subnet_id", 
+		"value": "thisissomefakevalue" 
+	},
+	{
+		"name": "vlc_sctp_b_route_prefixes",
+		"value": [
+			{ "interface_route_table_routes_route_prefix": "107.239.41.163/32" },
+			{ "interface_route_table_routes_route_prefix": "107.239.41.164/32" },
+			{ "interface_route_table_routes_route_prefix": "107.239.41.165/32" }
+		]}
+]
+}
+}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/VnfInPlaceUpdate_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/VnfInPlaceUpdate_VID_request.json
new file mode 100644
index 0000000..eb2d9fa
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/InfrastructureFlows/VnfInPlaceUpdate_VID_request.json
@@ -0,0 +1,16 @@
+{
+"requestDetails": {
+"cloudConfiguration": {
+"lcpCloudRegionId": "mdt1",
+"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+},
+"requestInfo": {
+"source": "VID",
+"requestorId": "xxxxxx"
+},
+"requestParameters": {
+"payload":
+"{\"existing-software-version\": \"3.1\",\"new-software-version\": \"3.2\", \"operations-timeout\": \"3600\"}"
+}
+}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Macro/CreateNetworkCollection.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Macro/CreateNetworkCollection.json
new file mode 100644
index 0000000..7b369ab
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Macro/CreateNetworkCollection.json
@@ -0,0 +1,70 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "service",
+			"modelInvariantId": "5d48acb5-097d-4982-aeb2-f4a3bd87d31b",
+			"modelVersionId": "3c40d244-808e-42ca-b09a-256d83d19d0a",
+			"modelName": "MOW AVPN vMX BV vPE 1 Service",
+			"modelVersion": "10"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+		},
+		"owningEntity": {
+			"owningEntityId": "038d99af-0427-42c2-9d15-971b99b9b489",
+			"owningEntityName": "PACKET CORE"
+		},
+		"project": {
+			"projectName": "{some project name}"
+		},
+		"subscriberInfo": {
+			"globalSubscriberId": "{some subscriber id}"
+		},
+		"requestInfo": {
+			"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+			"source": "VID",
+			"suppressRollback": true,
+			"requestorId": "xxxxxx"
+		},
+		"requestParameters": {
+			"subscriptionServiceType": "VMX",
+			"aLaCarte": false,
+			"userParams": [
+				{
+					"service": {
+						"modelInfo": {
+							"modelName": "MOW AVPN vMX BV vPE 1 Service",
+							"modelVersionId": "3c40d244-808e-42ca-b09a-256d83d19d0a"
+						},
+						"instanceParams": [],
+						"resources": {
+							"networks": [
+								{
+									"modelInfo": {
+										"modelName": "201673MowAvpnVpeBvL..AVPN_vRE_BV..module-1",
+										"modelCustomizationId": "da4d4327-fb7d-4311-ac7a-be7ba60cf970"
+									},
+									"cloudConfiguration": {
+										"lcpCloudRegionId": "mdt1",
+										"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+									}
+								},
+								{
+									"modelInfo": {
+										"modelName": "201673MowAvpnVpeBvL..AVPN_vRE_BV..module-1",
+										"modelCustomizationId": "da4d4327-fb7d-4311-ac7a-be7ba60cf970"
+									},
+									"cloudConfiguration": {
+										"lcpCloudRegionId": "mdt1",
+										"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+									}
+								}
+							]
+						}
+					}
+				}
+			]
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Macro/ServiceMacroAssign.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Macro/ServiceMacroAssign.json
new file mode 100644
index 0000000..51caddd
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Macro/ServiceMacroAssign.json
@@ -0,0 +1,125 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "service",
+			"modelInvariantId": "5d48acb5-097d-4982-aeb2-f4a3bd87d31b",
+			"modelVersionId": "3c40d244-808e-42ca-b09a-256d83d19d0a",
+			"modelName": "MOW AVPN vMX BV vPE 1 Service",
+			"modelVersion": "10.0"
+		},
+		"owningEntity": {
+			"owningEntityId": "038d99af-0427-42c2-9d15-971b99b9b489",
+			"owningEntityName": "PACKET CORE"
+		},
+		"project": {
+			"projectName": "{some project name}"
+		},
+		"subscriberInfo": {
+			"globalSubscriberId": "{some subscriber id}"
+		},
+		"requestInfo": {
+			"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+			"source": "VID",
+			"suppressRollback": true,
+			"requestorId": "xxxxxx"
+		},
+		"requestParameters": {
+			"subscriptionServiceType": "VMX",
+			"aLaCarte": false,
+			"userParams": [
+				{
+					"service": {
+						"modelInfo": {
+							"modelType": "service",
+							"modelName": "MOW AVPN vMX BV vPE 1 Service",
+							"modelVersionId": "3c40d244-808e-42ca-b09a-256d83d19d0a"
+						},
+						"instanceParams": [],
+						"resources": {
+							"vnfs": [
+								{
+									"modelInfo": {
+										"modelType": "vnf",
+										"modelName": "2016-73_MOW-AVPN-vPE-BV-L",
+										"modelVersionId": "7f40c192-f63c-463e-ba94-286933b895f8",
+										"modelCustomizationName": "2016-73_MOW-AVPN-vPE-BV-L 0",
+										"modelCustomizationId": "ab153b6e-c364-44c0-bef6-1f2982117f04"
+									},
+									"cloudConfiguration": {
+										"lcpCloudRegionId": "mdt1",
+										"tenantId": "88a6ca3ee0394ade9403f075db23167e"
+									},
+									"platform": {
+										"platformName": "test"
+									},
+									"lineOfBusiness": {
+										"lineOfBusinessName": "someValue"
+									},
+									"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+									"instanceParams": [],
+									"vfModules": [
+										{
+											"modelInfo": {
+												"modelType": "vfModule",
+												"modelName": "201673MowAvpnVpeBvL..AVPN_base_vPE_BV..module-0",
+												"modelVersionId": "4c75f813-fa91-45a4-89d0-790ff5f1ae79",
+												"modelCustomizationId": "a25e8e8c-58b8-4eec-810c-97dcc1f5cb7f"
+											},
+											"instanceParams": [
+												{
+													"vmx_int_net_len": "24"
+												}
+											]
+										},
+										{
+											"modelInfo": {
+												"modelType": "vfModule",
+												"modelName": "201673MowAvpnVpeBvL..AVPN_vRE_BV..module-1",
+												"modelVersionId": "56e2b103-637c-4d1a-adc8-3a7f4a6c3240",
+												"modelCustomizationId": "72d9d1cd-f46d-447a-abdb-451d6fb05fa8"
+											},
+											"instanceParams": [
+												{
+													"availability_zone_0": "mtpocdv-kvm-az01",
+													"vre_a_volume_size_0": "100"
+												}
+											]
+										},
+										{
+											"modelInfo": {
+												"modelType": "vfModule",
+												"modelName": "201673MowAvpnVpeBvL..AVPN_vRE_BV..module-1",
+												"modelVersionId": "56e2b103-637c-4d1a-adc8-3a7f4a6c3240",
+												"modelCustomizationId": "72d9d1cd-f46d-447a-abdb-451d6fb05fa8"
+											},
+											"instanceParams": [
+												{
+													"availability_zone_0": "mtpocdv-kvm-az01",
+													"vre_a_volume_size_0": "50"
+												}
+											]
+										},
+										{
+											"modelInfo": {
+												"modelType": "vfModule",
+												"modelName": "201673MowAvpnVpeBvL..AVPN_vPFE_BV..module-2",
+												"modelVersionId": "f555558f-d538-4876-8ffa-b102650fad64",
+												"modelCustomizationId": "da4d4327-fb7d-4311-ac7a-be7ba60cf969"
+											},
+											"instanceParams": [
+												{
+													"availability_zone_0": "mtpocdv-kvm-az01",
+													"vmx_vpfe_int_ip_0": "192.168.0.16"
+												}
+											]
+										}
+									]
+								}
+							]
+						}
+					}
+				}
+			]
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Policy/policyAbortResponse.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Policy/policyAbortResponse.json
new file mode 100644
index 0000000..c315b1e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Policy/policyAbortResponse.json
@@ -0,0 +1 @@
+{"decision":"PERMIT","details":"Abort"}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Policy/policySkipResponse.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Policy/policySkipResponse.json
new file mode 100644
index 0000000..7cbdebb
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Policy/policySkipResponse.json
@@ -0,0 +1 @@
+{"decision":"PERMIT","details":"Skip"}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/ActivateServiceInstance.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/ActivateServiceInstance.json
new file mode 100644
index 0000000..5a6460b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/ActivateServiceInstance.json
@@ -0,0 +1,7 @@
+{
+	"ActivateServiceInstance": {
+		"serviceInstance": {
+			"@class": "inventory.aai.onap.org.v12.ServiceInstance"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/ActivateVnfSchema.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/ActivateVnfSchema.json
new file mode 100644
index 0000000..57ab9c2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/ActivateVnfSchema.json
@@ -0,0 +1,13 @@
+{
+	"ActivateVnf": {
+		"serviceInstance": {
+			"@class": "inventory.aai.onap.org.v12.ServiceInstance"
+		},
+		"customer": {
+			"@class": "inventory.aai.onap.org.v12.Customer"
+		},
+		"genericVnf": {
+			"@class": "inventory.aai.onap.org.v12.GenericVnf"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/AssignServiceInstanceSchema.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/AssignServiceInstanceSchema.json
new file mode 100644
index 0000000..7c35761
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/AssignServiceInstanceSchema.json
@@ -0,0 +1,16 @@
+{
+	"AssignServiceInstance": {
+		"serviceInstance": {
+			"@class": "inventory.aai.onap.org.v12.ServiceInstance"
+		},
+		"project": {
+			"@class": "inventory.aai.onap.org.v12.Project"
+		},
+		"owningEntity": {
+			"@class": "inventory.aai.onap.org.v12.OwningEntity"
+		},
+		"customer": {
+			"@class": "inventory.aai.onap.org.v12.Customer"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/AssignVnfSchema.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/AssignVnfSchema.json
new file mode 100644
index 0000000..7fff5ca
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/Schemas/AssignVnfSchema.json
@@ -0,0 +1,13 @@
+{
+	"AssignVnf": {
+		"serviceInstance": {
+			"@class": "inventory.aai.onap.org.v12.ServiceInstance"
+		},
+		"customer": {
+			"@class": "inventory.aai.onap.org.v12.Customer"
+		},
+		"genericVnf": {
+			"@class": "inventory.aai.onap.org.v12.GenericVnf"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/sdncUpdateNetworkTopologySimResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/sdncUpdateNetworkTopologySimResponse.xml
new file mode 100644
index 0000000..836b3c8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/sdncUpdateNetworkTopologySimResponse.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+	xmlns:v1="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<soapenv:Header />
+	<soapenv:Body>
+		<SDNCAdapterCallbackRequest xmlns="http://org.onap/workflow/sdnc/adapter/schema/v1">
+		 <CallbackHeader>
+		   <RequestId>testRequestId</RequestId>
+		   <ResponseCode>200</ResponseCode>
+		   <ResponseMessage>OK</ResponseMessage>
+		 </CallbackHeader>
+		 <RequestData xmlns:xs="http://www.w3.org/2001/XMLSchema"
+				   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+				   xsi:type="xs:string">&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;output xmlns="com:att:sdnctl:vnf"&gt;&lt;svc-request-id&gt;19174929-3809-49ca-89eb-17f84a035389&lt;/svc-request-id&gt;&lt;response-code&gt;200&lt;/response-code&gt;&lt;ack-final-indicator&gt;Y&lt;/ack-final-indicator&gt;&lt;network-information&gt;&lt;network-id&gt;49c86598-f766-46f8-84f8-8d1c1b10f9b4&lt;/network-id&gt;&lt;/network-information&gt;&lt;service-information&gt;&lt;service-type&gt;a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb&lt;/service-type&gt;&lt;service-instance-id&gt;HSL_direct_net_2&lt;/service-instance-id&gt;&lt;subscriber-name&gt;notsurewecare&lt;/subscriber-name&gt;&lt;/service-information&gt;&lt;/output&gt;</RequestData>
+		</SDNCAdapterCallbackRequest>
+	</soapenv:Body>
+</soapenv:Envelope>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_400.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_400.xml
new file mode 100644
index 0000000..a5640b2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_400.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<createNetworkError>
+<messageId>680bd458-5ec1-4a16-b77c-509022e53450</messageId><category>INTERNAL</category>
+<message>400 Bad Request: The server could not comply with the request since it is either malformed or otherwise incorrect., error.type=StackValidationFailed, error.message=Property error: : resources.network.properties: : Unknown Property network_ipam_refs_data</message>
+<rolledBack>true</rolledBack>
+</createNetworkError>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_500.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_500.xml
new file mode 100644
index 0000000..02996a1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_500.xml
@@ -0,0 +1,80 @@
+<html>
+	<head>
+		<title>JBoss Web/7.2.2.Final-redhat-1 - JBWEB000064: Error report
+		</title>
+		<style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} 
+				H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} 
+				H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} 
+				BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} 
+				B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} 
+				P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A 
+				{color : black;}A.name {color : black;}HR {color : #525D76;} -->
+		</style>
+	</head>
+	<body>
+		<h1>JBWEB000065: HTTP Status 500 - java.lang.NullPointerException</h1>
+		<HR size="1" noshade="noshade" />
+		<p>
+			<b>JBWEB000309: type</b>
+			JBWEB000066: Exception report
+		</p>
+		<p>
+			<b>JBWEB000068: message</b>
+			<u>java.lang.NullPointerException</u>
+		</p>
+		<p>
+			<b>JBWEB000069: description</b>
+			<u>JBWEB000145: The server encountered an internal error that
+				prevented it from fulfilling this request.
+			</u>
+		</p>
+		<p>
+			<b>JBWEB000070: exception</b>
+			<pre>org.jboss.resteasy.spi.UnhandledException:
+				java.lang.NullPointerException
+				org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:365)
+				org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:233)
+				org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:209)
+				org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:557)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)
+				org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
+				javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
+				org.onap.so.logger.LogFilter.doFilter(LogFilter.java:35)
+			</pre>
+		</p>
+		<p>
+			<b>JBWEB000071: root cause</b>
+			<pre>java.lang.NullPointerException
+				org.onap.so.adapters.network.NetworkAdapterRest$CreateNetworkVolumesTask.run(NetworkAdapterRest.java:128)
+				org.onap.so.adapters.network.NetworkAdapterRest.createNetwork(NetworkAdapterRest.java:64)
+				sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+				sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
+				sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+				java.lang.reflect.Method.invoke(Method.java:606)
+				org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
+				org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:269)
+				org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:227)
+				org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:216)
+				org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:542)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:524)
+				org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:126)
+				org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55)
+				org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50)
+				javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
+				org.onap.so.logger.LogFilter.doFilter(LogFilter.java:35)
+			</pre>
+		</p>
+		<p>
+			<b>JBWEB000072: note</b>
+			<u>JBWEB000073: The full stack trace of the root cause is available
+				in the JBoss Web/7.2.2.Final-redhat-1 logs.
+			</u>
+		</p>
+		<HR size="1" noshade="noshade" />
+		<h3>JBoss Web/7.2.2.Final-redhat-1</h3>
+	</body>
+</html>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_Success.xml
new file mode 100644
index 0000000..0faec79
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetworkResponse_Success.xml
@@ -0,0 +1,24 @@
+<ns2:updateNetworkContrailResponse xmlns:ns2="http://org.onap.so/network"
+                                    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
+   <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>
+   <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>
+   <subnetIdMap>
+      <entry>
+         <key>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</key>
+         <value>bd8e87c6-f4e2-41b8-b0bc-9596aa00cd73</value>
+      </entry>
+   </subnetIdMap>
+   <rollback>
+      <cloudId>RDM2WAGPLCP</cloudId>
+      <msoRequest>
+         <requestId>1ef47428-cade-45bd-a103-0751e8b2deb0</requestId>
+         <serviceInstanceId/>
+      </msoRequest>
+      <networkCreated>true</networkCreated>
+      <networkId>MNS-25180-L-01-dmz_direct_net_1/2c88a3a9-69b9-43a7-ada6-1aca577c3641</networkId>
+      <networkType>CONTRAIL_EXTERNAL</networkType>
+      <networkUpdated>false</networkUpdated>
+      <neutronNetworkId>c4f4e878-cde0-4b15-ae9a-bda857759cea</neutronNetworkId>
+      <tenantId>7dd5365547234ee8937416c65507d266</tenantId>
+   </rollback>
+</ns2:updateNetworkContrailResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryInstance_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryInstance_Success.xml
new file mode 100644
index 0000000..ca5145c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryInstance_Success.xml
@@ -0,0 +1,4 @@
+<result-data>
+  <resource-type>service-instance</resource-type>
+  <resource-link>https://aai-conexus-e2e.test.com:8443/aai/v8/business/customers/customer/8310000058863/service-subscriptions/service-subscription/vMOG/service-instances/service-instance/f70e927b-6087-4974-9ef8-c5e4d5847ca4</resource-link>
+</result-data>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_NoPayload_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_NoPayload_Success.xml
new file mode 100644
index 0000000..e06d27e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_NoPayload_Success.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>pending-create</orchestration-status>
+   		 <physical-network-name>networkName</physical-network-name>
+   		 <is-provider-network>false</is-provider-network>
+   		 <is-shared-network>true</is-shared-network>
+   	 	 <is-external-network>false</is-external-network>         
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>pending-create</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+   	  		   <subnet-name>subnetName</subnet-name>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+	  	 <segmentation-assignments>
+	  		<segmentation-id>413</segmentation-id>
+	  		<resource-version>4132176</resource-version>
+	  	 </segmentation-assignments>         
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+				<related-to>network-policy</related-to>
+				<related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg</related-link>
+				<relationship-data>
+					<relationship-key>network-policy.network-policy-id</relationship-key>
+					<relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0cg</relationship-value>
+				</relationship-data>
+			</relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>			
+         </relationship-list>
+</l3-network>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml
new file mode 100644
index 0000000..24ee1df
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkId_AAIResponse_Success.xml
@@ -0,0 +1,95 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:502-132671"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <l3-network xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-id>49c86598-f766-46f8-84f8-8d1c1b10f9b4</network-id>
+         <network-name>MNS-25180-L-01-dmz_direct_net_1</network-name>
+         <network-type>CONTRAIL_EXTERNAL</network-type>
+         <network-role>dmz_direct</network-role>
+         <network-technology>contrail</network-technology>
+         <service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+         <network-role-instance>0</network-role-instance>
+         <orchestration-status>pending-create</orchestration-status>
+   		 <physical-network-name>networkName</physical-network-name>
+   		 <is-provider-network>false</is-provider-network>
+   		 <is-shared-network>true</is-shared-network>
+   		 <is-external-network>false</is-external-network>         
+         <subnets>
+            <subnet>
+               <subnet-id>57e9a1ff-d14f-4071-a828-b19ae98eb2fc</subnet-id>
+               <gateway-address>107.239.52.1</gateway-address>
+               <network-start-address>107.239.52.0</network-start-address>
+               <cidr-mask>24</cidr-mask>
+               <ip-version>4</ip-version>
+               <orchestration-status>pending-create</orchestration-status>
+               <dhcp-enabled>true</dhcp-enabled>
+   	  		   <subnet-name>subnetName</subnet-name>
+               <relationship-list/>
+            </subnet>
+         </subnets>
+	  	 <segmentation-assignments>
+	  		<segmentation-id>413</segmentation-id>
+	  		<resource-version>4132176</resource-version>
+	  	 </segmentation-assignments>         
+         <relationship-list>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/85f015d0-2e32-4c30-96d2-87a1a27f8017/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>85f015d0-2e32-4c30-96d2-87a1a27f8017</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>vpn-binding</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/vpn-bindings/vpn-binding/c980a6ef-3b88-49f0-9751-dbad8608d0a6/</related-link>
+               <relationship-data>
+                  <relationship-key>vpn-binding.vpn-id</relationship-key>
+                  <relationship-value>c980a6ef-3b88-49f0-9751-dbad8608d0a6</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>tenant</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/cloud-infrastructure/tenants/tenant/7dd5365547234ee8937416c65507d266/</related-link>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>7dd5365547234ee8937416c65507d266</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+				<related-to>network-policy</related-to>
+				<related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/network-policies/network-policy/cee6d136-e378-4678-a024-2cd15f0ee0cg</related-link>
+				<relationship-data>
+					<relationship-key>network-policy.network-policy-id</relationship-key>
+					<relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0cg</relationship-value>
+				</relationship-data>
+			</relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+	  		   <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN1</related-link>			   
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>
+			<relationship>
+			   <related-to>route-table-reference</related-to>
+	  		   <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/route-table-references/route-table-reference/refFQDN2</related-link>			   
+			   <relationship-data>
+				  <relationship-key>route-table-reference.route-table-reference-id</relationship-key>
+				  <relationship-value>cee6d136-e378-4678-a024-2cd15f0ee0hi</relationship-value>
+			   </relationship-data>
+			</relationship>		
+         </relationship-list>
+      </l3-network>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkPolicy_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkPolicy_AAIResponse_Success.xml
new file mode 100644
index 0000000..79cc14a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkPolicy_AAIResponse_Success.xml
@@ -0,0 +1,21 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <network-policy xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-policy-id>9a7b327d9-287aa00-82c4b0-105757</network-policy-id>
+         <network-policy-fqdn>GN_EVPN_Test</network-policy-fqdn>
+         <heat-stack-id>13979:105757</heat-stack-id>
+         <resource-version>13979:105757</resource-version>
+      </network-policy>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkTableRef1_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkTableRef1_AAIResponse_Success.xml
new file mode 100644
index 0000000..db134a1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkTableRef1_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <route-table-references xmlns="http://org.openecomp.aai.inventory/v8">
+         <route-table-reference-id>5938baec-03ca-2bd5-a3f1-d54x123e253a</route-table-reference-id>
+         <route-table-reference-fqdn>refFQDN1</route-table-reference-fqdn>
+         <resource-version>12345</resource-version>
+      </route-table-references>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkTableRef2_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkTableRef2_AAIResponse_Success.xml
new file mode 100644
index 0000000..34b4a03
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryNetworkTableRef2_AAIResponse_Success.xml
@@ -0,0 +1,20 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <route-table-references xmlns="http://org.openecomp.aai.inventory/v8">
+         <route-table-reference-id>5938baec-03ca-2bd5-a3f1-d54x123e253a</route-table-reference-id>
+         <route-table-reference-fqdn>refFQDN2</route-table-reference-fqdn>
+         <resource-version>12345</resource-version>
+      </route-table-references>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml
new file mode 100644
index 0000000..c01d0a4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryVpnBindingList_AAIResponse_Success.xml
@@ -0,0 +1,57 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <vpn-binding xmlns="http://org.openecomp.aai.inventory/v8">
+         <vpn-id>9a7b327d9-287aa00-82c4b0-105757</vpn-id>
+         <vpn-name>GN_EVPN_Test</vpn-name>
+         <route-targets>
+           <route-target>
+             <global-route-target>13979:105708</global-route-target>
+             <route-target-role>EXPORT</route-target-role>
+             <resource-version>1504025599510</resource-version>
+           </route-target>
+           <route-target>
+             <global-route-target>13979:105707</global-route-target>
+             <route-target-role>IMPORT</route-target-role>
+             <resource-version>1504025599519</resource-version>
+           </route-target>           
+         </route-targets>
+         <relationship-list>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/689ec39e-c5fc-4462-8db2-4f760763ad28/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>689ec39e-c5fc-4462-8db2-4f760763ad28</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/1a49396b-19b3-40a4-8792-aa2fbd0f0704/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>1a49396b-19b3-40a4-8792-aa2fbd0f0704</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/774f3329-3c83-4771-86c7-9e6207cd50fd/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>774f3329-3c83-4771-86c7-9e6207cd50fd</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </vpn-binding>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml
new file mode 100644
index 0000000..5f1c2ca
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_queryVpnBinding_AAIResponse_Success.xml
@@ -0,0 +1,46 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <vpn-binding xmlns="http://org.openecomp.aai.inventory/v8">
+         <vpn-id>9a7b327d9-287aa00-82c4b0-105757</vpn-id>
+         <vpn-name>GN_EVPN_Test</vpn-name>
+         <global-route-target>13979:105757</global-route-target>
+         <relationship-list>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/689ec39e-c5fc-4462-8db2-4f760763ad28/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>689ec39e-c5fc-4462-8db2-4f760763ad28</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/1a49396b-19b3-40a4-8792-aa2fbd0f0704/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>1a49396b-19b3-40a4-8792-aa2fbd0f0704</relationship-value>
+               </relationship-data>
+            </relationship>
+            <relationship>
+               <related-to>l3-network</related-to>
+               <related-link>https://aai-app-e2e.test.com:8443/aai/v8/network/l3-networks/l3-network/774f3329-3c83-4771-86c7-9e6207cd50fd/</related-link>
+               <relationship-data>
+                  <relationship-key>l3-network.network-id</relationship-key>
+                  <relationship-value>774f3329-3c83-4771-86c7-9e6207cd50fd</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </vpn-binding>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_updateContrail_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_updateContrail_AAIResponse_Success.xml
new file mode 100644
index 0000000..eedbda9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateNetworkV2/updateNetwork_updateContrail_AAIResponse_Success.xml
@@ -0,0 +1,11 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Date" value="Thu,10 Mar 2016 00:01:18 GMT"/>
+      <rest:header name="Content-Length" value="0"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID" value="mtcnjv9aaas03-20160310-00:01:18:551-132672"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_Success.xml
new file mode 100644
index 0000000..03d63f9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/queryVolumeId_AAIResponse_Success.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<volume-group xmlns="http://org.openecomp.aai.inventory/v8">
+	<volume-group-id>78987</volume-group-id>
+	<volume-group-name>MSOTESTVOL102a-vSAMP12_base_vol_module-0</volume-group-name>
+	<heat-stack-id/>
+	<vnf-type>Test/vSAMP12</vnf-type>
+	<orchestration-status>Pending</orchestration-status>
+	<resource-version>0000020</resource-version>
+	<relationship-list>
+		<relationship>
+			<related-to>tenant</related-to>
+			<related-link>/aai/v7/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mdt1/tenants/tenant/fba1bd1e195a404cacb9ce17a9b2b421/</related-link>
+			<relationship-data>
+				<relationship-key>tenant.tenant-id</relationship-key>
+				<relationship-value>fba1bd1e195a404cacb9ce17a9b2b421</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-owner</relationship-key>
+				<relationship-value>att-aic</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-region-id</relationship-key>
+				<relationship-value>mdt1</relationship-value>
+			</relationship-data>
+			<related-to-property>
+				<property-key>tenant.tenant-name</property-key>
+				<property-value>ECOMP_MDT1</property-value>
+			</related-to-property>
+		</relationship>
+		<relationship>
+			<related-to>vf-module</related-to>
+			<related-link>/aai/v8/network/generic-vnfs/generic-vnf/9e48f6ea-f786-46de-800a-d480e5ccc846/vf-modules/vf-module/6a1dc898-b590-47b9-bbf0-34424a7a2ec3/</related-link>
+			<relationship-data>
+				<relationship-key>generic-vnf.vnf-id</relationship-key>
+				<relationship-value>9e48f6ea-f786-46de-800a-d480e5ccc846</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>vf-module.vf-module-id</relationship-key>
+				<relationship-value>6a1dc898-b590-47b9-bbf0-34424a7a2ec3</relationship-value>
+			</relationship-data>
+		</relationship>
+	</relationship-list>
+</volume-group>
+      
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVfModuleVolume_VID_request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVfModuleVolume_VID_request.json
new file mode 100644
index 0000000..603c1f4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVfModuleVolume_VID_request.json
@@ -0,0 +1,64 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "volumeGroup",
+			"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "vSAMP12::base::module-0",
+			"modelVersion": "1"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"instanceName": "MSOTESTVOL101a-vSAMP12_base_vol_module-0",
+			"source": "VID",
+			"suppressRollback": false
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "{service-instance-id}",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test",
+						"modelVersion": "2.0"
+					}
+				}
+			}, {
+				"relatedInstance": {
+					"instanceId": "{vnf-instance-id}",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test/vSAMP12",
+						"modelVersion": "1",
+						"modelInstanceName": "vSAMP12"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"serviceId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+			"userParams": [
+				{"name": "vnfName", "value": "STMTN5MMSC20" },
+				{"name": "vnfName2", "value": "US1117MTSNJVBR0246" },
+				{"name": "vnfNmInformation", "value": "" },
+				{"name": "vnfType", "value": "pcrf-capacity" },
+				{"name": "vnfId", "value": "skask" },
+				{"name": "vnfStackId", "value": "slowburn" },
+				{"name": "vnfStatus", "value": "created" },
+				{"name": "aicCloudRegion", "value": "MDTWNJ21" },
+				{"name": "availabilityZone", "value": "slcp3-esx-az01" },
+				{"name": "oamNetworkName", "value": "VLAN-OAM-1323" },
+				{"name": "vmName", "value": "slcp34246vbc246ceb" },
+				{"name": "ipagNetworkId", "value": "970cd2b9-7f09-4a12-af47-182ea38ba1f0" },
+				{"name": "vpeNetworkId", "value": "545cc2c3-1930-4100-b534-5d82d0e12bb6" }
+			]
+		}
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVfModuleVolume_VID_request_2.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVfModuleVolume_VID_request_2.json
new file mode 100644
index 0000000..f32ba29
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVfModuleVolume_VID_request_2.json
@@ -0,0 +1,64 @@
+{
+	"requestDetails": {
+		"modelInfo": {
+			"modelType": "volumeGroup",
+			"modelInvariantUuid": "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelUuid": "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelName": "vSAMP12::base::module-0",
+			"modelVersion": "1"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "fba1bd1e195a404cacb9ce17a9b2b421"
+		},
+		"requestInfo": {
+			"instanceName": "MSOTESTVOL101a-vSAMP12_base_vol_module-0",
+			"source": "VID",
+			"suppressRollback": false
+		},
+		"relatedInstanceList": [
+			{
+				"relatedInstance": {
+					"instanceId": "{service-instance-id}",
+					"modelInfo": {
+						"modelType": "service",
+						"modelInvariantUuid": "ff3514e3-5a33-55df-13ab-12abad84e7ff-x",
+						"modelUuid": "fe6985cd-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test",
+						"modelVersion": "2.0"
+					}
+				}
+			}, {
+				"relatedInstance": {
+					"instanceId": "{vnf-instance-id}",
+					"modelInfo": {
+						"modelType": "vnf",
+						"modelInvariantUuid": "ff5256d1-5a33-55df-13ab-12abad84e7ff",
+						"modelUuid": "fe6478e4-ea33-3346-ac12-ab121484a3fe",
+						"modelName": "Test/vSAMP12",
+						"modelVersion": "1",
+						"modelInstanceName": "vSAMP12"
+					}
+				}
+			}
+		],
+		"requestParameters": {
+			"serviceId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+			"userParams": [
+				{"name": "vnfName", "value": "STMTN5MMSC20" },
+				{"name": "vnfName2", "value": "US1117MTSNJVBR0246" },
+				{"name": "vnfNmInformation", "value": "" },
+				{"name": "vnfType", "value": "pcrf-capacity" },
+				{"name": "vnfId", "value": "skask" },
+				{"name": "vnfStackId", "value": "slowburn" },
+				{"name": "vnfStatus", "value": "created" },
+				{"name": "aicCloudRegion", "value": "MDTWNJ21" },
+				{"name": "availabilityZone", "value": "slcp3-esx-az01" },
+				{"name": "oamNetworkName", "value": "VLAN-OAM-1323" },
+				{"name": "vmName", "value": "slcp34246vbc246ceb" },
+				{"name": "ipagNetworkId", "value": "970cd2b9-7f09-4a12-af47-182ea38ba1f0" },
+				{"name": "vpeNetworkId", "value": "545cc2c3-1930-4100-b534-5d82d0e12bb6" }
+			]
+		}
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVolumeGroupRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVolumeGroupRequest.xml
new file mode 100644
index 0000000..8f8d150
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/updateVolumeGroupRequest.xml
@@ -0,0 +1,38 @@
+<updateVolumeGroupRequest>
+    <cloudSiteId>RDM2WAGPLCP</cloudSiteId>
+    <tenantId/>
+    <vnfId>2f1cc940-455f-4ee2-9411-a7899cd4f124</vnfId>
+    <vnfName>testVnfName123</vnfName>
+    <volumeGroupId>null</volumeGroupId>
+    <volumeGroupName>MSOTESTVOL102a-vSAMP12_base_vol_module-0</volumeGroupName>
+    <volumeGroupStackId/>
+    <vnfType>vnf1</vnfType>
+    <vnfVersion>1</vnfVersion>
+    <vfModuleType/>
+    <modelCustomizationUuid/>
+    <volumeGroupParams>
+        <entry>
+            <key>vnf_id</key>
+            <value>2f1cc940-455f-4ee2-9411-a7899cd4f124</value>
+        </entry>
+        <entry>
+            <key>vnf_name</key>
+            <value>testVnfName123</value>
+        </entry>
+        <entry>
+            <key>vf_module_id</key>
+            <value>null</value>
+        </entry>
+        <entry>
+            <key>vf_module_name</key>
+            <value>MSOTESTVOL102a-vSAMP12_base_vol_module-0</value>
+        </entry>
+    </volumeGroupParams>
+    <skipAAI>true</skipAAI>
+    <msoRequest>
+        <requestId>12345</requestId>
+        <serviceInstanceId>12345</serviceInstanceId>
+    </msoRequest>
+    <messageId>12345-1513275871414</messageId>
+    <notificationUrl>http://localhost:28080/mso/WorkflowMessage/VNFAResponse/12345-1513275871414</notificationUrl>
+</updateVolumeGroupRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/vf_module_aai_response.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/vf_module_aai_response.xml
new file mode 100644
index 0000000..4087ab8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/UpdateVfModuleVolumeInfraV1/vf_module_aai_response.xml
@@ -0,0 +1,29 @@
+<vf-module xmlns="http://org.openecomp.aai.inventory/v8">
+   <vf-module-id>6a1dc898-b590-47b9-bbf0-34424a7a2ec3</vf-module-id>
+   <vf-module-name>MSOST10606-vSAMP12_MTN6_base_module-0</vf-module-name>
+   <heat-stack-id>MSOST10606-vSAMP12_MTN6_base_module-0/81b01583-690c-4ec3-9c58-0eafa7a90be7</heat-stack-id>
+   <orchestration-status>active</orchestration-status>
+   <is-base-vf-module>true</is-base-vf-module>
+   <resource-version>1475077639</resource-version>
+   <model-invariant-id>ff5256d2-5a33-55df-13ab-12abad84e7ff</model-invariant-id>
+   <model-version-id>1.0</model-version-id>
+   <relationship-list>
+      <relationship>
+         <related-to>volume-group</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/mtn6/volume-groups/volume-group/064bd1c6-e377-4009-a744-e958eec6e727/</related-link>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-owner</relationship-key>
+            <relationship-value>att-aic</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>cloud-region.cloud-region-id</relationship-key>
+            <relationship-value>mtn6</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>volume-group.volume-group-id</relationship-key>
+            <relationship-value>064bd1c6-e377-4009-a744-e958eec6e727</relationship-value>
+         </relationship-data>
+      </relationship>
+   </relationship-list>
+
+</vf-module>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/SDNCTopologyQueryBRGCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/SDNCTopologyQueryBRGCallback.xml
new file mode 100644
index 0000000..2be5461
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/SDNCTopologyQueryBRGCallback.xml
@@ -0,0 +1,37 @@
+<output xmlns="org:onap:sdnctl:vnf">
+<brg-topology  xmlns="org:onap:sdnctl:vnf">
+    <onap-model-information>
+        <model-invariant-uuid>36e20198-c67a-464b-96d0-aaa99eb2639e</model-invariant-uuid>
+        <model-uuid>5b9b15d0-5dd7-47dc-95b9-0440c340a3ba</model-uuid>
+        <model-version>1.0</model-version>
+        <model-name>BRGmodelname</model-name>
+        <model-customization-uuid>013bd784-9bca-4919-ae2f-ae57af27bad9</model-customization-uuid>
+    </onap-model-information>
+    <allotted-resource-identifiers>
+        <parent-service-instance-id>parent-service-instance-id</parent-service-instance-id>
+        <consuming-service-intance-id>consuming-service-instance-id</consuming-service-intance-id>
+        <allotted-resource-name>namefromrequest</allotted-resource-name>
+        <allotted-resource-type>brg</allotted-resource-type>
+        <allotted-resource-id>allottedresourceidfromrequest</allotted-resource-id>
+    </allotted-resource-identifiers>
+    <brg-assignments>
+        <fq-name>fq-name</fq-name>
+        <dest-network>
+            <network-id>d1</network-id>
+            <network-role>drole</network-role>
+        </dest-network>
+        <vlan-tag>vlan-tag</vlan-tag>
+        <source-network>
+            <network-id>s2</network-id>
+            <network-role>srole</network-role>
+        </source-network>
+        <txc-id>txc-id</txc-id>
+        <txc-applied-service>
+            <service-instance-id>1</service-instance-id>
+            <vnf-id>123</vnf-id>
+            <txc-fqdn>a.b.c.d</txc-fqdn>
+        </txc-applied-service>
+    </brg-assignments>
+</brg-topology>
+
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/SDNCTopologyQueryTXCCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/SDNCTopologyQueryTXCCallback.xml
new file mode 100644
index 0000000..c2d197a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/SDNCTopologyQueryTXCCallback.xml
@@ -0,0 +1,24 @@
+<output xmlns="org:onap:sdnctl:vnf">
+<tunnelxconn-topology  xmlns="org:onap:sdnctl:vnf">
+    <onap-model-information>
+        <model-invariant-uuid>36e20198-c67a-464b-96d0-aaa99eb2639e</model-invariant-uuid>
+        <model-uuid>5b9b15d0-5dd7-47dc-95b9-0440c340a3ba</model-uuid>
+        <model-version>1.0</model-version>
+        <model-name>TXCmodelname</model-name>
+        <model-customization-uuid>013bd784-9bca-4919-ae2f-ae57af27bad9</model-customization-uuid>
+    </onap-model-information>
+    <allotted-resource-identifiers>
+        <parent-service-instance-id>parent-service-instance-id</parent-service-instance-id>
+        <consuming-service-intance-id>consuming-service-instance-id</consuming-service-intance-id>
+        <allotted-resource-name>namefromrequest</allotted-resource-name>
+        <allotted-resource-type>tunnelxconn</allotted-resource-type>
+        <allotted-resource-id>allottedresourceidfromrequest</allotted-resource-id>
+    </allotted-resource-identifiers>
+    <tunnelxconn-assignments>
+    	<vni>my-vni</vni>
+    	<vgmux-bearer-ip>my-bearer-ip</vgmux-bearer-ip>
+    	<vgmux-lan-ip>my-lan-ip</vgmux-lan-ip>
+    </tunnelxconn-assignments>
+</tunnelxconn-topology>
+
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/arGetById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/arGetById.xml
new file mode 100644
index 0000000..f206344
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/arGetById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>Tunnel XConn</role>
+   <type>Tunnel XConn</type>
+   <description>Tunnel XConn</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCatalogServiceResourcesData.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCatalogServiceResourcesData.json
new file mode 100644
index 0000000..cf2d5e9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCatalogServiceResourcesData.json
@@ -0,0 +1,127 @@
+{ "serviceResources"    : {
+	"modelInfo"       : {
+		"modelName"          : "MSO Test Network",
+		"modelUuid"          : "aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e",
+		"modelInvariantUuid" : "52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f",
+		"modelVersion"       : null
+	},
+	"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vHNF for DHV Test",
+			"modelUuid"              : "7097d8bb-f6ad-4cf7-866e-6a04c8f1b332",
+			"modelInvariantUuid"     : "6ea0b528-e303-4686-aa77-aa2fcbdccb96",
+			"modelVersion"           : "2.0",
+			"modelCustomizationUuid" : "da86dd87-43c5-458c-b226-5315b7be9ad5",
+			"modelInstanceName"      : "vHNF for DHV Test 17"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: "testNfFunction",
+		"nfType"              		: null,
+		"nfRole"              		: null,
+		"nfNamingCode"         	: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "f5696ec0-ec71-4916-bf3b-93a654efcba4",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		],
+	"networkResource": [
+			{
+			"modelInfo"                : {
+				"modelName"              : "CONTRAIL_BASIC",
+				"modelUuid"              : "fe5be3a6-dbe0-46d6-bcac-44dc841a7edc",
+				"modelInvariantUuid"     : "ab07fbd8-185a-45ac-be45-db3eb02e98d5",
+				"modelVersion"           : null,
+				"modelCustomizationUuid" : "0cb9b26a-9820-48a7-86e5-16c510e993d9",
+				"modelInstanceName"      : "CONTRAIL_BASIC 5"
+		},
+			"toscaNodeType"            : null,
+			"networkType"              : null,
+			"networkTechnology"        : null,
+			"networkRole"              : null,
+			"networkScope"             : null
+		}
+		],
+	"serviceAllottedResources": [
+			{
+			"modelInfo"       : {
+				"modelName"              : "IP_MUX_Demux",
+				"modelUuid"              : "64a1a718-556b-48ce-b3b7-ed3237ccc94f",
+				"modelInvariantUuid"     : "f110ef53-a0a6-4d72-ab91-fd88a835e8c4",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "4bab0880-2f06-4aeb-87cb-3734c8e8bf93",
+				"modelInstanceName"      : "Pri_IP_MUX_Demux 1"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "Tunnel XConn",
+			"allottedResourceRole"              : "Tunnel XConn",
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : "testNfFunction",
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null,
+	        "homingSolution": {
+	          "inventoryType": "service",
+	          "serviceInstanceId": "MIS%252F1604%252F0027%252FSW_INTERNET",
+	          "vnfHostname": "MDTNJ01",
+	          "cloudOwner": "aic",
+	          "cloudRegionId": "dfwtx",
+	          "aicClli": "KDTNJ01",
+	          "aicVersion": "3.0",
+	          "entitlementPoolList": [
+	            "f1d563e8-e714-4393-8f99-cc480144a05e",
+	            "j1d563e8-e714-4393-8f99-cc480144a05e"
+	          ],
+	          "licenseKeyGroupList": [
+	            "s1d563e8-e714-4393-8f99-cc480144a05e",
+	            "b1d563e8-e714-4393-8f99-cc480144a05e"
+	          ]
+	        }
+		},
+				{
+			"modelInfo"       : {
+				"modelName"              : "Service_Admin",
+				"modelUuid"              : "73501e03-ee76-4509-a8ce-96d2a9f33ee9",
+				"modelInvariantUuid"     : "462edf71-1a3c-487b-bf55-497460ab7de3",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "a896ffad-c8f9-404e-a527-7a8d0cc99ce6",
+				"modelInstanceName"      : "Pri_Service_Admin 5"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "BRG",
+			"allottedResourceRole"              : "BRG",
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : "testNfFunction",
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null,
+	        "homingSolution": {
+	          "inventoryType": "service",
+	          "serviceInstanceId": "MIS%252F1604%252F0027%252FSW_INTERNET",
+	          "vnfHostname": "MDTNJ01",
+	          "cloudOwner": "aic",
+	          "cloudRegionId": "dfwtx",
+	          "aicClli": "KDTNJ01",
+	          "aicVersion": "3.0",
+	          "entitlementPoolList": [
+	            "f1d563e8-e714-4393-8f99-cc480144a05e",
+	            "j1d563e8-e714-4393-8f99-cc480144a05e"
+	          ],
+	          "licenseKeyGroupList": [
+	            "s1d563e8-e714-4393-8f99-cc480144a05e",
+	            "b1d563e8-e714-4393-8f99-cc480144a05e"
+	          ]
+	        }
+		}
+		]
+	}}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCatalogServiceResourcesNoData.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCatalogServiceResourcesNoData.json
new file mode 100644
index 0000000..80692b2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCatalogServiceResourcesNoData.json
@@ -0,0 +1,11 @@
+{ "serviceResources"    : {
+	"modelInfo"       : {
+		"modelName"          : "MSO Test Network",
+		"modelUuid"          : "aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e",
+		"modelInvariantUuid" : "52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f",
+		"modelVersion"       : null
+	},
+	"serviceVnfs": [],
+	"serviceNetworks": [],
+	"serviceAllottedResources": []
+	}}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCustomer.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCustomer.xml
new file mode 100644
index 0000000..b9d88d1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/getCustomer.xml
@@ -0,0 +1,7 @@
+<customer xmlns="http://org.openecomp.aai.inventory/v8">
+    <global-customer-id>SDN-ETHERNET-INTERNET</global-customer-id>
+    <subscriber-name>SDN-ETHERNET-INTERNET</subscriber-name>
+    <resource-version>1490627351232</resource-version>
+    <service-subscriptions/>
+    <relationship-list/>
+</customer>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/request.json
new file mode 100644
index 0000000..dc4669e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/request.json
@@ -0,0 +1,40 @@
+{
+	"requestDetails":
+		{
+			"modelInfo":
+				{
+					"modelType":"service",
+					"modelInvariantUuid":"uuid-miu-svc-011-abcdef",
+					"modelVersionId":"ASDC_TOSCA_UUID",
+					"modelName":"SIModelName1",
+					"modelVersion":"2"
+				},
+			"subscriberInfo":
+				{
+					"globalSubscriberId":"SDN-ETHERNET-INTERNET",
+					"subscriberName":"Kaneohe"
+				},
+			"requestInfo":
+				{
+					"instanceName":"VCPE1",
+					"source":"VID",
+					"suppressRollback":"false",
+					"productFamilyId":"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
+				},
+			"cloudConfiguration":
+				{
+					"lcpCloudRegionId":"mdt1",
+					"tenantId":"8b1df54faa3b49078e3416e21370a3ba"
+				},
+			"requestParameters":
+				{
+					"subscriptionServiceType":"123456789",
+					"aLaCarte":"false",
+					"userParams":
+						{
+							"BRG_WAN_MAC_Address" : "brgmac"
+						}
+				}
+				
+		}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/requestNoSIName.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/requestNoSIName.json
new file mode 100644
index 0000000..947933c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/requestNoSIName.json
@@ -0,0 +1,61 @@
+{
+	"requestDetails":
+		{
+			"modelInfo":
+				{
+					"modelType":"service",
+					"modelInvariantUuid":"uuid-miu-svc-011-abcdef",
+					"modelVersionId":"ASDC_TOSCA_UUID",
+					"modelName":"SIModelName1",
+					"modelVersion":"2"
+				},
+			"subscriberInfo":
+				{
+					"globalSubscriberId":"SDN-ETHERNET-INTERNET",
+					"subscriberName":"Kaneohe"
+				},
+			"requestInfo":
+				{
+					"source":"VID",
+					"suppressRollback":"false",
+					"productFamilyId":"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
+					"instanceName":"serviceInstanceName"
+				},
+			"cloudConfiguration":
+				{
+					"lcpCloudRegionId":"mdt1_123",
+					"tenantId":"8b1df54faa3b49078e3416e21370a3ba"
+				},
+			"owningEntity": {
+				"owningEntityId": "038d99af-0427-42c2-9d15-971b99b9b489",
+				"owningEntityName": "PACKET CORE"
+			},
+			"requestParameters":
+				{
+					"subscriptionServiceType":"123456789",
+					"aLaCarte":"false",
+					"userParams": [
+						{
+							"name": "BRG_WAN_MAC_Address",
+							"value": "brgmac"
+						},
+						{
+							"name": "Customer_Location",
+							"value":
+							{
+								"customerLatitude" : "32.89748",
+								"customerLongitude" : "-97.040443"
+							}
+						},
+						{
+							"name": "Homing_Model_Ids",
+							"value":
+							{
+								"resourceModuleName" : "test"
+							}
+						}
+					]
+				}
+
+		}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/requestNoSINameNoRollback.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/requestNoSINameNoRollback.json
new file mode 100644
index 0000000..d5b0713
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/CreateVcpeResCustService/requestNoSINameNoRollback.json
@@ -0,0 +1,39 @@
+{
+	"requestDetails":
+		{
+			"modelInfo":
+				{
+					"modelType":"service",
+					"modelInvariantUuid":"uuid-miu-svc-011-abcdef",
+					"modelVersionId":"ASDC_TOSCA_UUID",
+					"modelName":"SIModelName1",
+					"modelVersion":"2"
+				},
+			"subscriberInfo":
+				{
+					"globalSubscriberId":"SDN-ETHERNET-INTERNET",
+					"subscriberName":"Kaneohe"
+				},
+			"requestInfo":
+				{
+					"source":"VID",
+					"suppressRollback":"true",
+					"productFamilyId":"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
+				},
+			"cloudConfiguration":
+				{
+					"lcpCloudRegionId":"mdt1",
+					"tenantId":"8b1df54faa3b49078e3416e21370a3ba"
+				},
+			"requestParameters":
+				{
+					"subscriptionServiceType":"123456789",
+					"aLaCarte":"false",
+					"userParams":
+						{
+							"BRG_WAN_MAC_Address" : "brgmac"
+						}
+				}
+				
+		}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/arGetBRGById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/arGetBRGById.xml
new file mode 100644
index 0000000..3cb3146
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/arGetBRGById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-brgB</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>BRG</role>
+   <type>BRG</type>
+   <description>BRG</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/arGetTXCById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/arGetTXCById.xml
new file mode 100644
index 0000000..97992fc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/arGetTXCById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-txcA</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>Tunnel XConn</role>
+   <type>Tunnel XConn</type>
+   <description>Tunnel XConn</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getBRGArUrlById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getBRGArUrlById.xml
new file mode 100644
index 0000000..932dbfb
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getBRGArUrlById.xml
@@ -0,0 +1,6 @@
+<search-results xmlns="http://org.openecomp.aai.inventory">
+     <result-data>
+        <resource-type>allotted-resource</resource-type>
+        <resource-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/ar-brgB</resource-link>
+     </result-data>
+</search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getSI.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getSI.xml
new file mode 100644
index 0000000..e051187
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getSI.xml
@@ -0,0 +1,35 @@
+<service-instance>
+	
+   <service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+   <resource-version>123456789</resource-version>	
+	<relationship-list>
+      <relationship>
+         <related-to>generic-vnf</related-to>
+         <related-link>/aai/v7/generic-vnf/vnfX</related-link>
+      </relationship>
+      <relationship>
+         <related-to>l3-network</related-to>
+         <related-link>/aai/v7/l3-network/netA</related-link>
+      </relationship>
+      <relationship>
+         <related-to>generic-vnf</related-to>
+         <related-link>/aai/v7/generic-vnf/vnfY</related-link>
+      </relationship>
+      <relationship>
+         <related-to>l3-network</related-to>
+         <related-link>/aai/v7/l3-network/netB</related-link>
+      </relationship>
+      <relationship>
+         <related-to>l3-network</related-to>
+         <related-link>/aai/v7/l3-network/netC</related-link>
+      </relationship>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>/aai/v11/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/ar-txcA</related-link>
+      </relationship>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>/aai/v11/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/ar-brgB</related-link>
+      </relationship>
+   </relationship-list>
+</service-instance>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getSIAfterDelArs.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getSIAfterDelArs.xml
new file mode 100644
index 0000000..feb535c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getSIAfterDelArs.xml
@@ -0,0 +1,8 @@
+<service-instance>
+	<service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+	<service-type>SDN-MOBILITY</service-type>
+	<resource-version>123456789</resource-version>
+	
+	<relationship-list>
+	</relationship-list>
+</service-instance>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getTXCArUrlById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getTXCArUrlById.xml
new file mode 100644
index 0000000..1c4f13d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/getTXCArUrlById.xml
@@ -0,0 +1,6 @@
+<search-results xmlns="http://org.openecomp.aai.inventory">
+     <result-data>
+        <resource-type>allotted-resource</resource-type>
+        <resource-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/ar-txcA</resource-link>
+     </result-data>
+</search-results>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/request.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/request.json
new file mode 100644
index 0000000..dc4669e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/request.json
@@ -0,0 +1,40 @@
+{
+	"requestDetails":
+		{
+			"modelInfo":
+				{
+					"modelType":"service",
+					"modelInvariantUuid":"uuid-miu-svc-011-abcdef",
+					"modelVersionId":"ASDC_TOSCA_UUID",
+					"modelName":"SIModelName1",
+					"modelVersion":"2"
+				},
+			"subscriberInfo":
+				{
+					"globalSubscriberId":"SDN-ETHERNET-INTERNET",
+					"subscriberName":"Kaneohe"
+				},
+			"requestInfo":
+				{
+					"instanceName":"VCPE1",
+					"source":"VID",
+					"suppressRollback":"false",
+					"productFamilyId":"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
+				},
+			"cloudConfiguration":
+				{
+					"lcpCloudRegionId":"mdt1",
+					"tenantId":"8b1df54faa3b49078e3416e21370a3ba"
+				},
+			"requestParameters":
+				{
+					"subscriptionServiceType":"123456789",
+					"aLaCarte":"false",
+					"userParams":
+						{
+							"BRG_WAN_MAC_Address" : "brgmac"
+						}
+				}
+				
+		}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/serviceToDelete.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/serviceToDelete.xml
new file mode 100644
index 0000000..8b8863e
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DeleteVcpeResCustService/serviceToDelete.xml
@@ -0,0 +1,36 @@
+<service xmlns="http://org.openecomp.aai.inventory/v9">
+	<relationship-list>
+      <relationship>
+         <related-to>generic-vnf</related-to>
+         <related-link>/aai/v7/generic-vnf/vnfX</related-link>
+      </relationship>
+      <relationship>
+         <related-to>l3-network</related-to>
+         <related-link>/aai/v7/l3-network/netA</related-link>
+      </relationship>
+      <relationship>
+         <related-to>generic-vnf</related-to>
+         <related-link>/aai/v7/generic-vnf/vnfY/</related-link>
+      </relationship>
+      <relationship>
+         <related-to>l3-network</related-to>
+         <related-link>/aai/v7/l3-network/netB</related-link>
+      </relationship>
+      <relationship>
+         <related-to>l3-network</related-to>
+         <related-link>/aai/v7/l3-network/netC</related-link>
+      </relationship>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>/aai/v11/anytxc</related-link>
+      </relationship>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>/aai/v11/anybrg</related-link>
+      </relationship>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>/aai/v11/other</related-link>
+      </relationship>
+   </relationship-list>
+</service>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/SDNCTopologyQueryCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/SDNCTopologyQueryCallback.xml
new file mode 100644
index 0000000..2be5461
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/SDNCTopologyQueryCallback.xml
@@ -0,0 +1,37 @@
+<output xmlns="org:onap:sdnctl:vnf">
+<brg-topology  xmlns="org:onap:sdnctl:vnf">
+    <onap-model-information>
+        <model-invariant-uuid>36e20198-c67a-464b-96d0-aaa99eb2639e</model-invariant-uuid>
+        <model-uuid>5b9b15d0-5dd7-47dc-95b9-0440c340a3ba</model-uuid>
+        <model-version>1.0</model-version>
+        <model-name>BRGmodelname</model-name>
+        <model-customization-uuid>013bd784-9bca-4919-ae2f-ae57af27bad9</model-customization-uuid>
+    </onap-model-information>
+    <allotted-resource-identifiers>
+        <parent-service-instance-id>parent-service-instance-id</parent-service-instance-id>
+        <consuming-service-intance-id>consuming-service-instance-id</consuming-service-intance-id>
+        <allotted-resource-name>namefromrequest</allotted-resource-name>
+        <allotted-resource-type>brg</allotted-resource-type>
+        <allotted-resource-id>allottedresourceidfromrequest</allotted-resource-id>
+    </allotted-resource-identifiers>
+    <brg-assignments>
+        <fq-name>fq-name</fq-name>
+        <dest-network>
+            <network-id>d1</network-id>
+            <network-role>drole</network-role>
+        </dest-network>
+        <vlan-tag>vlan-tag</vlan-tag>
+        <source-network>
+            <network-id>s2</network-id>
+            <network-role>srole</network-role>
+        </source-network>
+        <txc-id>txc-id</txc-id>
+        <txc-applied-service>
+            <service-instance-id>1</service-instance-id>
+            <vnf-id>123</vnf-id>
+            <txc-fqdn>a.b.c.d</txc-fqdn>
+        </txc-applied-service>
+    </brg-assignments>
+</brg-topology>
+
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getAR.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getAR.xml
new file mode 100644
index 0000000..e352ff8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getAR.xml
@@ -0,0 +1,8 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <relationship-list>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getArBrg.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getArBrg.xml
new file mode 100644
index 0000000..8c3976b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getArBrg.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>BRGr</role>
+   <type>BRGt</type>
+   <description>BRG</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getArBrg2.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getArBrg2.xml
new file mode 100644
index 0000000..650d608
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getArBrg2.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>txc</role>
+   <type>BRG</type>
+   <description>BRG</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getSIandAR.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getSIandAR.xml
new file mode 100644
index 0000000..14c7410
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRG/getSIandAR.xml
@@ -0,0 +1,38 @@
+<service-instance>
+    <service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+    <resource-version>123456789</resource-version>
+    
+    <orchestration-status>Active</orchestration-status>
+    
+    <relationship-list>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+      </relationship>
+      
+      <relationship>
+         <related-to>cvlan-tag</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/port-groups/port-group/slcp1447vbc.ipag/cvlan-tags/cvlan-tag/2003/</related-link>
+         <relationship-data>
+            <relationship-key>cvlan-tag.cvlan-tag</relationship-key>
+            <relationship-value>2003</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>port-group.interface-id</relationship-key>
+            <relationship-value>slcp1447vbc.ipag</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>vce.vnf-id</relationship-key>
+            <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+         </relationship-data>
+      </relationship>
+      <relationship>
+         <related-to>vce</related-to>
+		<related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/</related-link>
+         <relationship-data>
+            <relationship-key>vce.vnf-id</relationship-key>
+            <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+         </relationship-data>
+      </relationship>
+    </relationship-list>
+</service-instance>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/arGetById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/arGetById.xml
new file mode 100644
index 0000000..8ed9916
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/arGetById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>BRG</role>
+   <type>BRG</type>
+   <description>BRG</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncActivateRollbackReq.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncActivateRollbackReq.xml
new file mode 100644
index 0000000..713c5e7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncActivateRollbackReq.xml
@@ -0,0 +1,51 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>b043d290-140d-4a38-a9b6-95d3b8bd27d1</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS%252F1604%252F0026%252FSW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>deactvate</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>brg-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:28090/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+	</sdncadapter:RequestHeader>
+	<sdncadapterworkflow:SDNCRequestData>
+	<request-information>
+	<request-id>RaaTestRequestId1</request-id>
+	<request-action>DeleteBRGInstance</request-action>
+	<source>MSO</source>
+	<notification-url/>
+	<order-number/>
+	<order-version/>
+	</request-information>
+	<service-information>
+	<service-id></service-id>
+	<subscription-service-type></subscription-service-type>
+	<onap-model-information></onap-model-information>
+	<service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</service-instance-id>
+	<subscriber-name/>
+	<global-customer-id></global-customer-id>
+	</service-information>
+	<allotted-resource-information>
+	<allotted-resource-id>arId-1</allotted-resource-id>
+	<allotted-resource-type>brg</allotted-resource-type>
+	<parent-service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</parent-service-instance-id>
+	<onap-model-information>
+        <model-invariant-uuid></model-invariant-uuid>
+        <model-uuid></model-uuid>
+        <model-customization-uuid></model-customization-uuid>
+        <model-version></model-version>
+        <model-name></model-name>
+	</onap-model-information>
+	</allotted-resource-information>
+	<brg-request-input>
+	<source-network>
+        <network-id>${sourceNetworkId}</network-id>
+        <network-role>${sourceNetworkRole}</network-role>
+	</source-network>
+	<dest-network>
+        <network-id/>
+        <network-role></network-role>
+	</dest-network>
+	</brg-request-input>
+	</sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncAssignRollbackReq.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncAssignRollbackReq.xml
new file mode 100644
index 0000000..df61910
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncAssignRollbackReq.xml
@@ -0,0 +1,51 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>b043d290-140d-4a38-a9b6-95d3b8bd27d3</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS%252F1604%252F0026%252FSW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>unassign</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>brg-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:28090/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+	</sdncadapter:RequestHeader>
+	<sdncadapterworkflow:SDNCRequestData>
+	<request-information>
+	<request-id>RaaTestRequestId1</request-id>
+	<request-action>DeleteBRGInstance</request-action>
+	<source>MSO</source>
+	<notification-url/>
+	<order-number/>
+	<order-version/>
+	</request-information>
+	<service-information>
+	<service-id></service-id>
+	<subscription-service-type></subscription-service-type>
+	<onap-model-information></onap-model-information>
+	<service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</service-instance-id>
+	<subscriber-name/>
+	<global-customer-id></global-customer-id>
+	</service-information>
+	<allotted-resource-information>
+	<allotted-resource-id>arId-1</allotted-resource-id>
+	<allotted-resource-type>brg</allotted-resource-type>
+	<parent-service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</parent-service-instance-id>
+	<onap-model-information>
+        <model-invariant-uuid></model-invariant-uuid>
+        <model-uuid></model-uuid>
+        <model-customization-uuid></model-customization-uuid>
+        <model-version></model-version>
+        <model-name></model-name>
+	</onap-model-information>
+	</allotted-resource-information>
+	<brg-request-input>
+	<source-network>
+        <network-id>${sourceNetworkId}</network-id>
+        <network-role>${sourceNetworkRole}</network-role>
+	</source-network>
+	<dest-network>
+        <network-id/>
+        <network-role></network-role>
+	</dest-network>
+	</brg-request-input>
+	</sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncCreateRollbackReq.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncCreateRollbackReq.xml
new file mode 100644
index 0000000..35c7835
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceBRGRollback/sdncCreateRollbackReq.xml
@@ -0,0 +1,51 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>b043d290-140d-4a38-a9b6-95d3b8bd27d2</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS%252F1604%252F0026%252FSW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>delete</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>brg-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:28090/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+	</sdncadapter:RequestHeader>
+	<sdncadapterworkflow:SDNCRequestData>
+	<request-information>
+	<request-id>RaaTestRequestId1</request-id>
+	<request-action>DeleteBRGInstance</request-action>
+	<source>MSO</source>
+	<notification-url/>
+	<order-number/>
+	<order-version/>
+	</request-information>
+	<service-information>
+	<service-id></service-id>
+	<subscription-service-type></subscription-service-type>
+	<onap-model-information></onap-model-information>
+	<service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</service-instance-id>
+	<subscriber-name/>
+	<global-customer-id></global-customer-id>
+	</service-information>
+	<allotted-resource-information>
+	<allotted-resource-id>arId-1</allotted-resource-id>
+	<allotted-resource-type>brg</allotted-resource-type>
+	<parent-service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</parent-service-instance-id>
+	<onap-model-information>
+        <model-invariant-uuid></model-invariant-uuid>
+        <model-uuid></model-uuid>
+        <model-customization-uuid></model-customization-uuid>
+        <model-version></model-version>
+        <model-name></model-name>
+	</onap-model-information>
+	</allotted-resource-information>
+	<brg-request-input>
+	<source-network>
+        <network-id>${sourceNetworkId}</network-id>
+        <network-role>${sourceNetworkRole}</network-role>
+	</source-network>
+	<dest-network>
+        <network-id/>
+        <network-role></network-role>
+	</dest-network>
+	</brg-request-input>
+	</sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/SDNCTopologyQueryCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/SDNCTopologyQueryCallback.xml
new file mode 100644
index 0000000..c2d197a
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/SDNCTopologyQueryCallback.xml
@@ -0,0 +1,24 @@
+<output xmlns="org:onap:sdnctl:vnf">
+<tunnelxconn-topology  xmlns="org:onap:sdnctl:vnf">
+    <onap-model-information>
+        <model-invariant-uuid>36e20198-c67a-464b-96d0-aaa99eb2639e</model-invariant-uuid>
+        <model-uuid>5b9b15d0-5dd7-47dc-95b9-0440c340a3ba</model-uuid>
+        <model-version>1.0</model-version>
+        <model-name>TXCmodelname</model-name>
+        <model-customization-uuid>013bd784-9bca-4919-ae2f-ae57af27bad9</model-customization-uuid>
+    </onap-model-information>
+    <allotted-resource-identifiers>
+        <parent-service-instance-id>parent-service-instance-id</parent-service-instance-id>
+        <consuming-service-intance-id>consuming-service-instance-id</consuming-service-intance-id>
+        <allotted-resource-name>namefromrequest</allotted-resource-name>
+        <allotted-resource-type>tunnelxconn</allotted-resource-type>
+        <allotted-resource-id>allottedresourceidfromrequest</allotted-resource-id>
+    </allotted-resource-identifiers>
+    <tunnelxconn-assignments>
+    	<vni>my-vni</vni>
+    	<vgmux-bearer-ip>my-bearer-ip</vgmux-bearer-ip>
+    	<vgmux-lan-ip>my-lan-ip</vgmux-lan-ip>
+    </tunnelxconn-assignments>
+</tunnelxconn-topology>
+
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getAR.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getAR.xml
new file mode 100644
index 0000000..e352ff8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getAR.xml
@@ -0,0 +1,8 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <relationship-list>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getArTxc.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getArTxc.xml
new file mode 100644
index 0000000..dfb7d46
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getArTxc.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>TXCr</role>
+   <type>TXCt</type>
+   <description>TXC</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getArTxc2.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getArTxc2.xml
new file mode 100644
index 0000000..59c5030
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getArTxc2.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>brg</role>
+   <type>TXC</type>
+   <description>TXC</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getSIandAR.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getSIandAR.xml
new file mode 100644
index 0000000..14c7410
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXC/getSIandAR.xml
@@ -0,0 +1,38 @@
+<service-instance>
+    <service-instance-id>MIS/1604/0026/SW_INTERNET</service-instance-id>
+    <resource-version>123456789</resource-version>
+    
+    <orchestration-status>Active</orchestration-status>
+    
+    <relationship-list>
+      <relationship>
+         <related-to>allotted-resource</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v7/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+      </relationship>
+      
+      <relationship>
+         <related-to>cvlan-tag</related-to>
+         <related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/port-groups/port-group/slcp1447vbc.ipag/cvlan-tags/cvlan-tag/2003/</related-link>
+         <relationship-data>
+            <relationship-key>cvlan-tag.cvlan-tag</relationship-key>
+            <relationship-value>2003</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>port-group.interface-id</relationship-key>
+            <relationship-value>slcp1447vbc.ipag</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>vce.vnf-id</relationship-key>
+            <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+         </relationship-data>
+      </relationship>
+      <relationship>
+         <related-to>vce</related-to>
+		<related-link>https://aai-ext1.test.com:8443/aai/v2/network/vces/vce/832bace2-3fb0-49e0-a6a4-07c47223c535/</related-link>
+         <relationship-data>
+            <relationship-key>vce.vnf-id</relationship-key>
+            <relationship-value>832bace2-3fb0-49e0-a6a4-07c47223c535</relationship-value>
+         </relationship-data>
+      </relationship>
+    </relationship-list>
+</service-instance>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/arGetById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/arGetById.xml
new file mode 100644
index 0000000..f206344
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/arGetById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>Tunnel XConn</role>
+   <type>Tunnel XConn</type>
+   <description>Tunnel XConn</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncActivateRollbackReq.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncActivateRollbackReq.xml
new file mode 100644
index 0000000..35630b7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncActivateRollbackReq.xml
@@ -0,0 +1,51 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>b043d290-140d-4a38-a9b6-95d3b8bd27d1</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS%252F1604%252F0026%252FSW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>deactvate</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>tunnelxconn-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8080/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+	</sdncadapter:RequestHeader>
+	<sdncadapterworkflow:SDNCRequestData>
+	<request-information>
+	<request-id>RaaTestRequestId1</request-id>
+	<request-action>DeleteTunnelXConnInstance</request-action>
+	<source>MSO</source>
+	<notification-url/>
+	<order-number/>
+	<order-version/>
+	</request-information>
+	<service-information>
+	<service-id></service-id>
+	<subscription-service-type></subscription-service-type>
+	<onap-model-information></onap-model-information>
+	<service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</service-instance-id>
+	<subscriber-name/>
+	<global-customer-id></global-customer-id>
+	</service-information>
+	<allotted-resource-information>
+	<allotted-resource-id>arId-1</allotted-resource-id>
+	<allotted-resource-type>tunnelxconn</allotted-resource-type>
+	<parent-service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</parent-service-instance-id>
+	<onap-model-information>
+        <model-invariant-uuid></model-invariant-uuid>
+        <model-uuid></model-uuid>
+        <model-customization-uuid></model-customization-uuid>
+        <model-version></model-version>
+        <model-name></model-name>
+	</onap-model-information>
+	</allotted-resource-information>
+	<tunnelxconn-request-input>
+	<source-network>
+        <network-id>${sourceNetworkId}</network-id>
+        <network-role>${sourceNetworkRole}</network-role>
+	</source-network>
+	<dest-network>
+        <network-id/>
+        <network-role></network-role>
+	</dest-network>
+	</tunnelxconn-request-input>
+	</sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncAssignRollbackReq.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncAssignRollbackReq.xml
new file mode 100644
index 0000000..f6c9cc4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncAssignRollbackReq.xml
@@ -0,0 +1,51 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>b043d290-140d-4a38-a9b6-95d3b8bd27d3</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS%252F1604%252F0026%252FSW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>unassign</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>tunnelxconn-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8080/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+	</sdncadapter:RequestHeader>
+	<sdncadapterworkflow:SDNCRequestData>
+	<request-information>
+	<request-id>RaaTestRequestId1</request-id>
+	<request-action>DeleteTunnelXConnInstance</request-action>
+	<source>MSO</source>
+	<notification-url/>
+	<order-number/>
+	<order-version/>
+	</request-information>
+	<service-information>
+	<service-id></service-id>
+	<subscription-service-type></subscription-service-type>
+	<onap-model-information></onap-model-information>
+	<service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</service-instance-id>
+	<subscriber-name/>
+	<global-customer-id></global-customer-id>
+	</service-information>
+	<allotted-resource-information>
+	<allotted-resource-id>arId-1</allotted-resource-id>
+	<allotted-resource-type>tunnelxconn</allotted-resource-type>
+	<parent-service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</parent-service-instance-id>
+	<onap-model-information>
+        <model-invariant-uuid></model-invariant-uuid>
+        <model-uuid></model-uuid>
+        <model-customization-uuid></model-customization-uuid>
+        <model-version></model-version>
+        <model-name></model-name>
+	</onap-model-information>
+	</allotted-resource-information>
+	<tunnelxconn-request-input>
+	<source-network>
+        <network-id>${sourceNetworkId}</network-id>
+        <network-role>${sourceNetworkRole}</network-role>
+	</source-network>
+	<dest-network>
+        <network-id/>
+        <network-role></network-role>
+	</dest-network>
+	</tunnelxconn-request-input>
+	</sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncCreateRollbackReq.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncCreateRollbackReq.xml
new file mode 100644
index 0000000..2a5597c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoCreateAllottedResourceTXCRollback/sdncCreateRollbackReq.xml
@@ -0,0 +1,51 @@
+<sdncadapterworkflow:SDNCAdapterWorkflowRequest xmlns:ns5="http://org.onap/so/request/types/v1"
+                xmlns:sdncadapterworkflow="http://org.onap/so/workflow/schema/v1"
+                xmlns:sdncadapter="http://org.onap/workflow/sdnc/adapter/schema/v1">
+	<sdncadapter:RequestHeader>
+        <sdncadapter:RequestId>b043d290-140d-4a38-a9b6-95d3b8bd27d2</sdncadapter:RequestId>
+        <sdncadapter:SvcInstanceId>MIS%252F1604%252F0026%252FSW_INTERNET</sdncadapter:SvcInstanceId>
+        <sdncadapter:SvcAction>delete</sdncadapter:SvcAction>
+        <sdncadapter:SvcOperation>tunnelxconn-topology-operation</sdncadapter:SvcOperation>
+        <sdncadapter:CallbackUrl>http://localhost:8080/mso/SDNCAdapterCallbackService</sdncadapter:CallbackUrl>
+	</sdncadapter:RequestHeader>
+	<sdncadapterworkflow:SDNCRequestData>
+	<request-information>
+	<request-id>RaaTestRequestId1</request-id>
+	<request-action>DeleteTunnelXConnInstance</request-action>
+	<source>MSO</source>
+	<notification-url/>
+	<order-number/>
+	<order-version/>
+	</request-information>
+	<service-information>
+	<service-id></service-id>
+	<subscription-service-type></subscription-service-type>
+	<onap-model-information></onap-model-information>
+	<service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</service-instance-id>
+	<subscriber-name/>
+	<global-customer-id></global-customer-id>
+	</service-information>
+	<allotted-resource-information>
+	<allotted-resource-id>arId-1</allotted-resource-id>
+	<allotted-resource-type>tunnelxconn</allotted-resource-type>
+	<parent-service-instance-id>MIS%252F1604%252F0026%252FSW_INTERNET</parent-service-instance-id>
+	<onap-model-information>
+        <model-invariant-uuid></model-invariant-uuid>
+        <model-uuid></model-uuid>
+        <model-customization-uuid></model-customization-uuid>
+        <model-version></model-version>
+        <model-name></model-name>
+	</onap-model-information>
+	</allotted-resource-information>
+	<tunnelxconn-request-input>
+	<source-network>
+        <network-id>${sourceNetworkId}</network-id>
+        <network-role>${sourceNetworkRole}</network-role>
+	</source-network>
+	<dest-network>
+        <network-id/>
+        <network-role></network-role>
+	</dest-network>
+	</tunnelxconn-request-input>
+	</sdncadapterworkflow:SDNCRequestData>
+</sdncadapterworkflow:SDNCAdapterWorkflowRequest>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoDeleteAllottedResourceBRG/arGetById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoDeleteAllottedResourceBRG/arGetById.xml
new file mode 100644
index 0000000..8ed9916
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoDeleteAllottedResourceBRG/arGetById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>BRG</role>
+   <type>BRG</type>
+   <description>BRG</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoDeleteAllottedResourceTXC/arGetById.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoDeleteAllottedResourceTXC/arGetById.xml
new file mode 100644
index 0000000..f206344
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VCPE/DoDeleteAllottedResourceTXC/arGetById.xml
@@ -0,0 +1,31 @@
+<allotted-resource xmlns="http://org.openecomp.aai.inventory/v9">
+   <id>ar-1</id>
+   <orchestration-status>Active</orchestration-status>
+   <role>Tunnel XConn</role>
+   <type>Tunnel XConn</type>
+   <description>Tunnel XConn</description>
+   <selflink/>
+   <resource-version>1490627351232</resource-version>
+   <relationship-list>
+      <relationship>
+         <related-to>service-instance</related-to>
+         <related-link>http://localhost:28090/aai/v9/business/customers/customer/SDN-ETHERNET-INTERNET/service-subscriptions/service-subscription/123456789/service-instances/service-instance/MIS%252F1604%252F0026%252FSW_INTERNET/allotted-resources/allotted-resource/arId-1</related-link>
+         <relationship-data>
+            <relationship-key>customer.global-customer-id</relationship-key>
+            <relationship-value>SDN-ETHERNET-INTERNET</relationship-value>
+         </relationship-data> 
+         <relationship-data>
+            <relationship-key>service-subscription.service-type</relationship-key>
+            <relationship-value>123456789</relationship-value>
+         </relationship-data>
+         <relationship-data>
+            <relationship-key>service-instance.service-instance-id</relationship-key>
+            <relationship-value>88819355-9a71-4ddc-9e22-373f0644b40b</relationship-value>
+         </relationship-data>
+         <related-to-property>
+            <property-key>service-instance.service-instance-name</property-key>
+            <property-value>vcpe-1702-m010904-name4</property-value>
+         </related-to-property>
+      </relationship>
+   </relationship-list>
+</allotted-resource>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesData.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesData.json
new file mode 100644
index 0000000..d05fccf
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesData.json
@@ -0,0 +1,94 @@
+{ "serviceResources"    : {
+	"modelInfo"       : {
+		"modelName"          : "MSO Test Network",
+		"modelUuid"          : "aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e",
+		"modelInvariantUuid" : "52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f",
+		"modelVersion"       : null
+	},
+	"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vHNF for DHV Test",
+			"modelUuid"              : "7097d8bb-f6ad-4cf7-866e-6a04c8f1b332",
+			"modelInvariantUuid"     : "6ea0b528-e303-4686-aa77-aa2fcbdccb96",
+			"modelVersion"           : "2.0",
+			"modelCustomizationUuid" : "da86dd87-43c5-458c-b226-5315b7be9ad5",
+			"modelInstanceName"      : "vHNF for DHV Test 17"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: null,
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "f5696ec0-ec71-4916-bf3b-93a654efcba4",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		],
+	"serviceNetworks": [
+			{
+			"modelInfo"                : {
+				"modelName"              : "CONTRAIL_BASIC",
+				"modelUuid"              : "fe5be3a6-dbe0-46d6-bcac-44dc841a7edc",
+				"modelInvariantUuid"     : "ab07fbd8-185a-45ac-be45-db3eb02e98d5",
+				"modelVersion"           : null,
+				"modelCustomizationUuid" : "0cb9b26a-9820-48a7-86e5-16c510e993d9",
+				"modelInstanceName"      : "CONTRAIL_BASIC 5"
+		},
+			"toscaNodeType"            : null,
+			"networkType"              : null,
+			"networkTechnology"        : null,
+			"networkRole"              : null,
+			"networkScope"             : null
+		}
+		],
+	"serviceAllottedResources": [
+			{
+			"modelInfo"       : {
+				"modelName"              : "IP_MUX_Demux",
+				"modelUuid"              : "64a1a718-556b-48ce-b3b7-ed3237ccc94f",
+				"modelInvariantUuid"     : "f110ef53-a0a6-4d72-ab91-fd88a835e8c4",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "4bab0880-2f06-4aeb-87cb-3734c8e8bf93",
+				"modelInstanceName"      : "Pri_IP_MUX_Demux 1"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "ContrailRoute",
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		},
+				{
+			"modelInfo"       : {
+				"modelName"              : "Service_Admin",
+				"modelUuid"              : "73501e03-ee76-4509-a8ce-96d2a9f33ee9",
+				"modelInvariantUuid"     : "462edf71-1a3c-487b-bf55-497460ab7de3",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "a896ffad-c8f9-404e-a527-7a8d0cc99ce6",
+				"modelInstanceName"      : "Pri_Service_Admin 5"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "SecurityZone",
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		}
+		]
+	}}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesDataForReplaceVnfInfra.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesDataForReplaceVnfInfra.json
new file mode 100644
index 0000000..b6e8a94
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesDataForReplaceVnfInfra.json
@@ -0,0 +1,98 @@
+{ "serviceResources"    : {
+	"serviceType"        : "PortMirroring",
+	"serviceRole"        : "InfraRole",
+	"environmentContext" : "Luna",
+	"workloadContext"    : "Oxygen",
+	"modelInfo"       : {
+		"modelName"          : "MSO Test Network",
+		"modelUuid"          : "aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e",
+		"modelInvariantUuid" : "52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f",
+		"modelVersion"       : null
+	},
+	"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vHNF for DHV Test",
+			"modelUuid"              : "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+			"modelInvariantUuid"     : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelVersion"           : "1.0",
+			"modelCustomizationUuid" : "MODEL-ID-1234",
+			"modelInstanceName"      : "vHNF for DHV Test 17"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: "vSCP",
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "introvert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		],
+	"serviceNetworks": [
+			{
+			"modelInfo"                : {
+				"modelName"              : "CONTRAIL_BASIC",
+				"modelUuid"              : "fe5be3a6-dbe0-46d6-bcac-44dc841a7edc",
+				"modelInvariantUuid"     : "ab07fbd8-185a-45ac-be45-db3eb02e98d5",
+				"modelVersion"           : null,
+				"modelCustomizationUuid" : "0cb9b26a-9820-48a7-86e5-16c510e993d9",
+				"modelInstanceName"      : "CONTRAIL_BASIC 5"
+		},
+			"toscaNodeType"            : null,
+			"networkType"              : null,
+			"networkTechnology"        : null,
+			"networkRole"              : null,
+			"networkScope"             : null
+		}
+		],
+	"serviceAllottedResources": [
+			{
+			"modelInfo"       : {
+				"modelName"              : "IP_MUX_Demux",
+				"modelUuid"              : "64a1a718-556b-48ce-b3b7-ed3237ccc94f",
+				"modelInvariantUuid"     : "f110ef53-a0a6-4d72-ab91-fd88a835e8c4",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "4bab0880-2f06-4aeb-87cb-3734c8e8bf93",
+				"modelInstanceName"      : "Pri_IP_MUX_Demux 1"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "ContrailRoute",
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		},
+				{
+			"modelInfo"       : {
+				"modelName"              : "Service_Admin",
+				"modelUuid"              : "73501e03-ee76-4509-a8ce-96d2a9f33ee9",
+				"modelInvariantUuid"     : "462edf71-1a3c-487b-bf55-497460ab7de3",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "a896ffad-c8f9-404e-a527-7a8d0cc99ce6",
+				"modelInstanceName"      : "Pri_Service_Admin 5"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "SecurityZone",
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		}
+		]
+	}}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesDataForUpdateVnfInfra.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesDataForUpdateVnfInfra.json
new file mode 100644
index 0000000..e1d3118
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogServiceResourcesDataForUpdateVnfInfra.json
@@ -0,0 +1,110 @@
+{ "serviceResources"    : {
+	"serviceType"        : "PortMirroring",
+	"serviceRole"        : "InfraRole",
+	"environmentContext" : "Luna",
+	"workloadContext"    : "Oxygen",
+	"modelInfo"       : {
+		"modelName"          : "MSO Test Network",
+		"modelUuid"          : "aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e",
+		"modelInvariantUuid" : "52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f",
+		"modelVersion"       : null
+	},
+	"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vHNF for DHV Test",
+			"modelUuid"              : "7097d8bb-f6ad-4cf7-866e-6a04c8f1b332",
+			"modelInvariantUuid"     : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelVersion"           : "2.0",
+			"modelCustomizationUuid" : "da86dd87-43c5-458c-b226-5315b7be9ad5",
+			"modelInstanceName"      : "vHNF for DHV Test 17"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: "vSCP",
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "introvert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-1",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0b",
+						"modelInvariantUuid"     : "extrovert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a788"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "addon_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		],
+	"serviceNetworks": [
+			{
+			"modelInfo"                : {
+				"modelName"              : "CONTRAIL_BASIC",
+				"modelUuid"              : "fe5be3a6-dbe0-46d6-bcac-44dc841a7edc",
+				"modelInvariantUuid"     : "ab07fbd8-185a-45ac-be45-db3eb02e98d5",
+				"modelVersion"           : null,
+				"modelCustomizationUuid" : "0cb9b26a-9820-48a7-86e5-16c510e993d9",
+				"modelInstanceName"      : "CONTRAIL_BASIC 5"
+		},
+			"toscaNodeType"            : null,
+			"networkType"              : null,
+			"networkTechnology"        : null,
+			"networkRole"              : null,
+			"networkScope"             : null
+		}
+		],
+	"serviceAllottedResources": [
+			{
+			"modelInfo"       : {
+				"modelName"              : "IP_MUX_Demux",
+				"modelUuid"              : "64a1a718-556b-48ce-b3b7-ed3237ccc94f",
+				"modelInvariantUuid"     : "f110ef53-a0a6-4d72-ab91-fd88a835e8c4",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "4bab0880-2f06-4aeb-87cb-3734c8e8bf93",
+				"modelInstanceName"      : "Pri_IP_MUX_Demux 1"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "ContrailRoute",
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		},
+				{
+			"modelInfo"       : {
+				"modelName"              : "Service_Admin",
+				"modelUuid"              : "73501e03-ee76-4509-a8ce-96d2a9f33ee9",
+				"modelInvariantUuid"     : "462edf71-1a3c-487b-bf55-497460ab7de3",
+				"modelVersion"           : "2.0",
+				"modelCustomizationUuid" : "a896ffad-c8f9-404e-a527-7a8d0cc99ce6",
+				"modelInstanceName"      : "Pri_Service_Admin 5"
+			},
+			"toscaNodeType"              : null,
+			"allottedResourceType"              : "SecurityZone",
+			"allottedResourceRole"              : null,
+			"providingServiceModelInvariantUuid"              : null,
+			"nfFunction"              : null,
+			"nfType"              : null,
+			"nfRole"              : null,
+			"nfNamingCode"              : null
+		}
+		]
+	}}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfData.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfData.json
new file mode 100644
index 0000000..c7938d1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfData.json
@@ -0,0 +1,44 @@
+{"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vHNF for DHV Test",
+			"modelUuid"              : "7097d8bb-f6ad-4cf7-866e-6a04c8f1b332",
+			"modelInvariantUuid"     : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelVersion"           : "2.0",
+			"modelCustomizationUuid" : "da86dd87-43c5-458c-b226-5315b7be9ad5",
+			"modelInstanceName"      : "vHNF for DHV Test 17"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: "vSCP",
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "introvert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-1",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0b",
+						"modelInvariantUuid"     : "extrovert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a788"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "addon_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		]
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfNoTwoPhasedForVfModule.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfNoTwoPhasedForVfModule.json
new file mode 100644
index 0000000..3067d12
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfNoTwoPhasedForVfModule.json
@@ -0,0 +1,44 @@
+{"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vSAMP12",
+			"modelUuid"              : "7097d8bb-f6ad-4cf7-866e-6a04c8f1b332",
+			"modelInvariantUuid"     : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelVersion"           : "2.0",
+			"modelCustomizationUuid" : "MODEL-123",
+			"modelInstanceName"      : "VNF for VF Module Create Test Two Phased"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: "vSCP",
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: null,
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "STMTN5MMSC21-MMSC::model-1-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "introvert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-1",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0b",
+						"modelInvariantUuid"     : "extrovert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a788"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "addon_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		]
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfYesTwoPhasedForVfModule.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfYesTwoPhasedForVfModule.json
new file mode 100644
index 0000000..a9b3226
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/getCatalogVnfYesTwoPhasedForVfModule.json
@@ -0,0 +1,44 @@
+{"serviceVnfs": [
+		{ "modelInfo"                    : {
+			"modelName"              : "vSAMP12",
+			"modelUuid"              : "7097d8bb-f6ad-4cf7-866e-6a04c8f1b332",
+			"modelInvariantUuid"     : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+			"modelVersion"           : "2.0",
+			"modelCustomizationUuid" : "MODEL-123",
+			"modelInstanceName"      : "VNF for VF Module Create Test Two Phased"
+			},
+		"toscaNodeType"            : null,
+		"nfFunction"           	: null,
+		"nfType"              		: null,
+		"nfRole"              		: "vSCP",
+		"nfNamingCode"         	: null,
+		"multiStageDesign"		: "true",
+			"vfModules": [
+				{
+					"modelInfo"               : { 
+						"modelName"              : "STMTN5MMSC21-MMSC::model-1-0",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0a",
+						"modelInvariantUuid"     : "introvert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a787"
+					},		"isBase"                 : true,
+					"vfModuleLabel"          : "base_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				},
+				{
+					"modelInfo"               : { 
+						"modelName"              : "VhnfForDhvTest..base_TEST..module-1",
+						"modelUuid"              : "ebc3d18c-3e62-4c24-bcd6-961e98701a0b",
+						"modelInvariantUuid"     : "extrovert",
+						"modelVersion"           : "1",
+						"modelCustomizationUuid" : "1740536a-742e-40f5-b9c8-83918849a788"
+					},		"isBase"                 : false,
+					"vfModuleLabel"          : "addon_TEST",
+					"initialCount"           : 1,
+					"hasVolumeGroup"           : true
+				}
+			]
+		}
+		]
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/serviceDecompositionATMFW.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/serviceDecompositionATMFW.json
new file mode 100644
index 0000000..bc54c55
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VIPR/serviceDecompositionATMFW.json
@@ -0,0 +1,110 @@
+{
+"serviceResources" : {
+    "modelInfo" : {
+      "modelName" : "CMW_Service",
+      "modelUuid" : "",
+      "modelInvariantId" : "cmw-123-456-789",
+      "modelVersion" : "",
+      "modelCustomizationUuid" : "",
+      "modelInstanceName" : "",
+      "modelCustomizationName" : "",
+      "modelVersionId" : "Cmw_123",
+      "modelType" : ""
+    },
+    "serviceInstanceData" : {
+      "instanceId" : "ff5256d2-5a33-55df-13ab-12abad84e7ff"
+    },
+    "serviceNetworks" : [ {
+      "modelInfo" : {
+        "modelName" : "CONTRAIL30_BASIC",
+        "modelUuid" : "",
+        "modelInvariantId" : "not yet implemented",
+        "modelVersion" : "1.0",
+        "modelCustomizationUuid" : "z_network_123",
+        "modelInstanceName" : "",
+        "modelCustomizationName" : "",
+        "modelVersionId" : "mod-inst-uuid-123",
+        "modelType" : "network"
+      },
+      "instanceData" : { },
+      "networkType" : "CONTRAIL30_BASIC"
+    } ],
+    "serviceVnfs" : [ {
+      "modelInfo" : {
+        "modelName" : "vSAMP12",
+        "modelUuid" : "",
+        "modelInvariantId" : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+        "modelVersion" : "1.0",
+        "modelCustomizationUuid" : "ff5256d2-5a33-55df-13ab-12abad84e7ff",
+        "modelInstanceName" : "",
+        "modelCustomizationName" : "",
+        "modelVersionId" : "fe6478e5-ea33-3346-ac12-ab121484a3fe",
+        "modelType" : "vnf"
+      },
+      "instanceData" : { },
+      "vfModules" : [ {
+        "modelInfo" : {
+          "modelName" : "vSAMP12::base::module-0",
+          "modelUuid" : "",
+          "modelInvariantId" : "miu-1001",
+          "modelVersion" : "1",
+          "modelCustomizationUuid" : "1001",
+          "modelInstanceName" : "",
+          "modelCustomizationName" : "",
+          "modelVersionId" : "",
+          "modelType" : "vfModule"
+        },
+        "instanceData" : { },
+        "hasVolumeGroup" : false,
+        "isBase" : true,
+        "initialCount" : 1
+      }, {
+        "modelInfo" : {
+          "modelName" : "base::module-0",
+          "modelUuid" : "",
+          "modelInvariantId" : "miu-1002",
+          "modelVersion" : "1",
+          "modelCustomizationUuid" : "1002",
+          "modelInstanceName" : "",
+          "modelCustomizationName" : "",
+          "modelVersionId" : "",
+          "modelType" : "vfModule"
+        },
+        "instanceData" : { },
+        "hasVolumeGroup" : false,
+        "isBase" : true,
+        "initialCount" : 1
+      }, {
+        "modelInfo" : {
+          "modelName" : "vSAMP12DEV::base::module-0",
+          "modelUuid" : "",
+          "modelInvariantId" : "miu-1003",
+          "modelVersion" : "1",
+          "modelCustomizationUuid" : "f86e8800-7629-427f-b284-3dbfd04db01f",
+          "modelInstanceName" : "",
+          "modelCustomizationName" : "",
+          "modelVersionId" : "",
+          "modelType" : "vfModule"
+        },
+        "instanceData" : { },
+        "hasVolumeGroup" : false,
+        "isBase" : true,
+        "initialCount" : 0
+      } ]
+    } ],
+    "serviceAllottedResources" : [ {
+      "modelInfo" : {
+        "modelName" : "Bruce Wayne",
+        "modelUuid" : "",
+        "modelInvariantId" : "not yet implemented",
+        "modelVersion" : "1.0",
+        "modelCustomizationUuid" : "ar-mod-custid-456-456",
+        "modelInstanceName" : "Clark Kent",
+        "modelCustomizationName" : "",
+        "modelVersionId" : "123-123",
+        "modelType" : "allottedResource"
+      },
+      "instanceData" : { }
+    } ]
+  }
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/AddNetworkPolicy_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/AddNetworkPolicy_AAIResponse_Success.xml
new file mode 100644
index 0000000..0688ea5
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/AddNetworkPolicy_AAIResponse_Success.xml
@@ -0,0 +1,21 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <network-policy xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-policy-id>9a7b327d9-287aa00-82c4b0-105757</network-policy-id>
+         <network-policy-fqdn>fqdn123</network-policy-fqdn>
+         <heat-stack-id>slowburn</heat-stack-id>
+         <resource-version>145878989</resource-version>
+      </network-policy>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/CreateVfModuleVolumeCallbackResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/CreateVfModuleVolumeCallbackResponse.xml
new file mode 100644
index 0000000..a421355
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/CreateVfModuleVolumeCallbackResponse.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<createVolumeGroupResponse>
+    <messageId>{{MESSAGE-ID}}</messageId>
+    <volumeGroupCreated>true</volumeGroupCreated>
+    <volumeGroupId>d485ecee-957c-4a0a-8b95-27a22b90103f</volumeGroupId>
+    <volumeGroupOutputs>
+        <entry>
+            <key>mmsc_vol_1</key>
+            <value>a73e0fe9-1ce8-49c2-8fef-e2788605be29</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_2</key>
+            <value>37b6455a-5ea8-463a-89e3-0efeaf7b7c6d</value>
+        </entry>
+        <entry>
+            <key>nemsfe_vol_1</key>
+            <value>b7ff1c21-d138-49a3-bf13-4cfd91efaf48</value>
+        </entry>
+        <entry>
+            <key>nemsbe_vol_1</key>
+            <value>a5988471-cd42-44d8-b078-64f2f13d3d4c</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_5</key>
+            <value>f7b91c1e-ab8c-413a-a850-ba80a246c7e0</value>
+        </entry>
+        <entry>
+            <key>nemsfe_vol_2</key>
+            <value>957ea3f3-2d4a-4707-bfd2-ba66f42037c2</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_3</key>
+            <value>de6fccfe-d61a-48b0-b03b-87bf1bf749b3</value>
+        </entry>
+        <entry>
+            <key>mmsc_vol_4</key>
+            <value>76162310-2c38-4c32-981c-5c2880190077</value>
+        </entry>
+    </volumeGroupOutputs>
+    <volumeGroupRollback>
+        <cloudSiteId>RDM2WAGPLCP</cloudSiteId>
+        <messageId>e585e4f4-9452-437a-b294-45a2d6d3b7a3</messageId>
+        <msoRequest>
+            <requestId>c30b9453-4b68-4c2e-aacf-58a5ba648bf5</requestId>
+            <serviceInstanceId>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</serviceInstanceId>
+        </msoRequest>
+        <tenantId>1bbab536a19b4756926e7d0ec1eb543c</tenantId>
+        <volumeGroupCreated>true</volumeGroupCreated>
+        <volumeGroupId>78987</volumeGroupId>
+        <volumeGroupStackId>ZRDM1MMSC01_base_vol/7f74e5e1-5fc1-4593-ac7e-cc9899a106ef</volumeGroupStackId>
+    </volumeGroupRollback>
+    <volumeGroupStackId>ZRDM1MMSC01_base_vol/7f74e5e1-5fc1-4593-ac7e-cc9899a106ef</volumeGroupStackId>
+</createVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/DBUpdateResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/DBUpdateResponse.xml
new file mode 100644
index 0000000..0ae5b79
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/DBUpdateResponse.xml
@@ -0,0 +1,4 @@
+
+
+<ns2:updateRequestResponse xmlns:ns2="http://org.onap.so/requestsdb"
+                           xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"/>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/DoUpdateVfModuleRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/DoUpdateVfModuleRequest.xml
new file mode 100644
index 0000000..5232e53
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/DoUpdateVfModuleRequest.xml
@@ -0,0 +1,29 @@
+<vnf-request xmlns="http://org.onap/so/infra/vnf-request/v1">
+	<request-info>
+		<request-id>DEV-VF-0011</request-id>
+		<action>UPDATE_VF_MODULE</action>
+		<source>PORTAL</source>
+	</request-info>
+	<vnf-inputs>
+ 		<vnf-id>skask</vnf-id>	 									<!-- Required -->
+		<vf-module-id>supercool</vf-module-id>						<!-- Required -->
+ 		<vnf-type>pcrf-capacity</vnf-type>							<!-- Optional -->
+		<vf-module-model-name>PCRF::module-0</vf-module-model-name>	<!-- Required -->
+		<asdc-service-model-version></asdc-service-model-version>	<!-- Optional -->
+		<service-id>serviceIdUUID</service-id>						<!-- Required -->
+		<aic-cloud-region>MDTWNJ21</aic-cloud-region>				<!-- Required -->
+		<tenant-id>fba1bd1e195a404cacb9ce17a9b2b421</tenant-id>		<!-- Required -->
+		<volume-group-id>78987</volume-group-id>					<!-- Optional -->
+		<persona-model-id>introvert</persona-model-id>				<!-- Optional -->
+		<persona-model-version>3.14</persona-model-version>			<!-- Optional -->
+		<contrail-service-instance-fqdn>myhost.appl.edu</contrail-service-instance-fqdn>	<!-- Optional -->
+		<vnf-persona-model-id>introvert</vnf-persona-model-id>		<!-- Optional -->
+		<vnf-persona-model-version>3.14</vnf-persona-model-version>	<!-- Optional -->
+	</vnf-inputs>
+	<vnf-params>
+		<param name="oam_network_name">VLAN-OAM-1323</param>
+		<param name="vm_name">slcp34246vbc246ceb</param>
+		<param name="ipag_network">970cd2b9-7f09-4a12-af47-182ea38ba1f0</param>
+		<param name="vpe_network">545cc2c3-1930-4100-b534-5d82d0e12bb6</param>
+	</vnf-params>
+</vnf-request>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/GenerateVfModuleName_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/GenerateVfModuleName_AAIResponse_Success.xml
new file mode 100644
index 0000000..1c73645
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/GenerateVfModuleName_AAIResponse_Success.xml
@@ -0,0 +1,51 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v7">
+	<vnf-id>12345678-f41f-4822-9323-b75962763d74</vnf-id>
+	<vnf-name>STMTN5MMSC20</vnf-name>
+	<vnf-type>pcrf-capacity</vnf-type>
+	<service-id>SDN-MOBILITY</service-id>
+	<equipment-role>vPCRF</equipment-role>
+	<orchestration-status>pending-create</orchestration-status>
+	<in-maint>false</in-maint>
+	<is-closed-loop-disabled>false</is-closed-loop-disabled>
+	<model-invariant-id>introvert</model-invariant-id>
+	<model-version-id>2.0</model-version-id>
+	<resource-version>0000020</resource-version>
+	<vf-modules>
+		<vf-module>
+			<vf-module-id>lukewarm</vf-module-id>
+			<vf-module-name>PCRF::module-0-0</vf-module-name>
+			<model-invariant-id>extrovert</model-invariant-id>
+			<model-version-id>2.0</model-version-id>
+			<is-base-vf-module>true</is-base-vf-module>
+			<heat-stack-id>fastburn</heat-stack-id>
+			<module-index>2</module-index>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000074</resource-version>
+		</vf-module>
+		<vf-module>
+			<vf-module-id>supercool</vf-module-id>
+			<vf-module-name>PCRF::module-1-0</vf-module-name>
+			<model-invariant-id>extrovert</model-invariant-id>
+			<model-version-id>2.0</model-version-id>
+			<is-base-vf-module>false</is-base-vf-module>			
+			<heat-stack-id>slowburn</heat-stack-id>
+			<module-index>0</module-index>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000075</resource-version>
+		</vf-module>
+		<vf-module>
+			<vf-module-id>supercool</vf-module-id>
+			<vf-module-name>PCRF::module-1-0</vf-module-name>
+			<model-invariant-id>introvert</model-invariant-id>
+			<model-version-id>2.0</model-version-id>
+			<is-base-vf-module>false</is-base-vf-module>			
+			<heat-stack-id>slowburn</heat-stack-id>
+			<module-index>1</module-index>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000075</resource-version>
+		</vf-module>
+	</vf-modules>
+	<relationship-list/>
+	<l-interfaces/>
+	<lag-interfaces/>
+</generic-vnf>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/GenericVnf.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/GenericVnf.xml
new file mode 100644
index 0000000..ed96028
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/GenericVnf.xml
@@ -0,0 +1,38 @@
+<generic-vnf xmlns="http://org.openecomp.aai.inventory/v7">
+	<vnf-id>skask</vnf-id>
+	<vnf-name>STMTN5MMSC20</vnf-name>
+	<vnf-type>pcrf-capacity</vnf-type>
+	<service-id>SDN-MOBILITY</service-id>
+	<equipment-role>vPCRF</equipment-role>
+	<orchestration-status>pending-create</orchestration-status>
+	<in-maint>false</in-maint>
+	<is-closed-loop-disabled>false</is-closed-loop-disabled>
+	<model-invariant-id>introvert</model-invariant-id>
+	<model-version-id>2.0</model-version-id>
+	<resource-version>0000020</resource-version>
+	<vf-modules>
+		<vf-module>
+			<vf-module-id>lukewarm</vf-module-id>
+			<vf-module-name>PCRF::module-0-0</vf-module-name>
+			<model-invariant-id>introvert</model-invariant-id>
+			<model-version-id>2.0</model-version-id>
+			<is-base-vf-module>true</is-base-vf-module>
+			<heat-stack-id>fastburn</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000074</resource-version>
+		</vf-module>
+		<vf-module>
+			<vf-module-id>supercool</vf-module-id>
+			<vf-module-name>PCRF::module-1-0</vf-module-name>
+			<model-invariant-id>extrovert</model-invariant-id>
+			<model-version-id>2.0</model-version-id>
+			<is-base-vf-module>false</is-base-vf-module>
+			<heat-stack-id>slowburn</heat-stack-id>
+			<orchestration-status>pending-create</orchestration-status>
+			<resource-version>0000075</resource-version>
+		</vf-module>
+	</vf-modules>
+	<relationship-list/>
+	<l-interfaces/>
+	<lag-interfaces/>
+</generic-vnf>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/QueryNetworkPolicy_AAIResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/QueryNetworkPolicy_AAIResponse_Success.xml
new file mode 100644
index 0000000..f3009e0
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/QueryNetworkPolicy_AAIResponse_Success.xml
@@ -0,0 +1,21 @@
+<rest:RESTResponse xmlns:rest="http://schemas.activebpel.org/REST/2007/12/01/aeREST.xsd"
+                   statusCode="200">
+   <rest:headers>
+      <rest:header name="Transfer-Encoding" value="chunked"/>
+      <rest:header name="Date" value="Mon,14 Mar 2016 20:53:33 GMT"/>
+      <rest:header name="Expires" value="Thu,01 Jan 1970 00:00:00 UTC"/>
+      <rest:header name="X-AAI-TXID"
+                   value="localhost-20160314-20:53:33:487-134392"/>
+      <rest:header name="Content-Type" value="application/xml"/>
+      <rest:header name="Server" value="Apache-Coyote/1.1"/>
+      <rest:header name="Cache-Control" value="private"/>
+   </rest:headers>
+   <rest:payload contentType="text/xml">
+      <network-policy xmlns="http://org.openecomp.aai.inventory/v8">
+         <network-policy-id>9a7b327d9-287aa00-82c4b0-105757</network-policy-id>
+         <network-policy-fqdn>GN_EVPN_Test</network-policy-fqdn>
+         <heat-stack-id>195159195</heat-stack-id>
+         <resource-version>14567890</resource-version>
+      </network-policy>
+   </rest:payload>
+</rest:RESTResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCSITopologyAssignCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCSITopologyAssignCallback.xml
new file mode 100644
index 0000000..d476b72
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCSITopologyAssignCallback.xml
@@ -0,0 +1,11 @@
+<output
+    xmlns="org:onap:sdnc:northbound:generic-resource">
+    <svc-request-id>094d311c-40bc-4ff1-9617-37c4226efcc3</svc-request-id>
+    <response-code>200</response-code>
+    <response-message></response-message>
+    <ack-final-indicator>Y</ack-final-indicator>
+    <service-response-information>
+        <instance-id>8462db9b-3e91-4e90-a2c8-6471313f87bf</instance-id>
+        <object-path>restconf/config/GENERIC-RESOURCE-API:services/service/8462db9b-3e91-4e90-a2c8-6471313f87bf/service-data/service-topology/</object-path>
+    </service-response-information>
+</output>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyActivateCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyActivateCallback.xml
new file mode 100644
index 0000000..4cab6c6
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyActivateCallback.xml
@@ -0,0 +1,13 @@
+<output xmlns="com:att:sdnctl:vnf">
+	<vnf-information>
+		<vnf-id>skask</vnf-id>
+	</vnf-information>
+	<response-code>200</response-code>
+	<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+	<ack-final-indicator>Y</ack-final-indicator>
+	<service-information>
+		<subscriber-name>dontcare</subscriber-name>
+		<service-instance-id>0</service-instance-id>
+		<service-type>SDN-MOBILITY</service-type>
+	</service-information>
+</output>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyAssignCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyAssignCallback.xml
new file mode 100644
index 0000000..7512435
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyAssignCallback.xml
@@ -0,0 +1,16 @@
+	<output xmlns="com:att:sdnctl:vnf">
+		<vnf-information>
+			<vnf-id>skask</vnf-id>			
+		</vnf-information>
+		<response-code>200</response-code>
+		<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+		<ack-final-indicator>Y</ack-final-indicator>
+		<service-information>
+			<subscriber-name>dontcare</subscriber-name>
+			<service-instance-id>0</service-instance-id>
+			<service-type>SDN-MOBILITY</service-type>
+		</service-information>
+		<instance-reference>
+			<object-path>restconf/SDNCObjectPath</object-path>
+		</instance-reference>
+	</output>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyChangeAssignCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyChangeAssignCallback.xml
new file mode 100644
index 0000000..7d3d0e5
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyChangeAssignCallback.xml
@@ -0,0 +1,13 @@
+	<output xmlns="com:att:sdnctl:vnf">
+		<vnf-information>
+			<vnf-id>skask</vnf-id>
+		</vnf-information>
+		<response-code>200</response-code>
+		<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+		<ack-final-indicator>Y</ack-final-indicator>
+		<service-information>
+			<subscriber-name>dontcare</subscriber-name>
+			<service-instance-id>0</service-instance-id>
+			<service-type>SDN-MOBILITY</service-type>
+		</service-information>
+	</output>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyCreateCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyCreateCallback.xml
new file mode 100644
index 0000000..c1a0353
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyCreateCallback.xml
@@ -0,0 +1,16 @@
+	<output xmlns="org:onap:sdnctl:vnf">
+		<vnf-information>
+			<vnf-id>skask</vnf-id>			
+		</vnf-information>
+		<response-code>200</response-code>
+		<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+		<ack-final-indicator>Y</ack-final-indicator>
+		<service-information>
+			<subscriber-name>dontcare</subscriber-name>
+			<service-instance-id>0</service-instance-id>
+			<service-type>SDN-MOBILITY</service-type>
+		</service-information>
+		<instance-reference>
+			<object-path>restconf/SDNCObjectPath</object-path>
+		</instance-reference>
+	</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeactivateCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeactivateCallback.xml
new file mode 100644
index 0000000..e43a131
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeactivateCallback.xml
@@ -0,0 +1,13 @@
+<output xmlns="org:onap:sdnctl:vnf">
+	<vnf-information>
+		<vnf-id>skask</vnf-id>
+	</vnf-information>
+	<response-code>200</response-code>
+	<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+	<ack-final-indicator>Y</ack-final-indicator>
+	<service-information>
+		<subscriber-name>dontcare</subscriber-name>
+		<service-instance-id>0</service-instance-id>
+		<service-type>SDN-MOBILITY</service-type>
+	</service-information>
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeactivateCallbackNotFound.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeactivateCallbackNotFound.xml
new file mode 100644
index 0000000..d061cda
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeactivateCallbackNotFound.xml
@@ -0,0 +1,8 @@
+<output xmlns="org:onap:sdnctl:vnf">
+	<vnf-information>
+		<vnf-id>skask</vnf-id>
+	</vnf-information>
+	<response-code>404</response-code>
+	<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+	<ack-final-indicator>Y</ack-final-indicator>
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeleteCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeleteCallback.xml
new file mode 100644
index 0000000..c1a0353
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyDeleteCallback.xml
@@ -0,0 +1,16 @@
+	<output xmlns="org:onap:sdnctl:vnf">
+		<vnf-information>
+			<vnf-id>skask</vnf-id>			
+		</vnf-information>
+		<response-code>200</response-code>
+		<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+		<ack-final-indicator>Y</ack-final-indicator>
+		<service-information>
+			<subscriber-name>dontcare</subscriber-name>
+			<service-instance-id>0</service-instance-id>
+			<service-type>SDN-MOBILITY</service-type>
+		</service-information>
+		<instance-reference>
+			<object-path>restconf/SDNCObjectPath</object-path>
+		</instance-reference>
+	</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallback.xml
new file mode 100644
index 0000000..0ee3f28
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallback.xml
@@ -0,0 +1,315 @@
+<output xmlns="com:att:sdnctl:vnf">
+<vnf-list xmlns="com:att:sdnctl:vnf">
+	<vnf-id>bd1b3789-6474-4935-94b2-90b656e035d0</vnf-id>
+	<service-data>
+		<vnf-id>bd1b3789-6474-4935-94b2-90b656e035d0</vnf-id>
+		<sdnc-request-header>
+			<svc-request-id>9ddf628a-9eca-430e-8974-22d520a31be1</svc-request-id>
+			<svc-action>assign</svc-action>
+			<svc-notification-url>https://localhost:8443/adapters/rest/SDNCNotify</svc-notification-url>
+		</sdnc-request-header>
+		<service-information>
+			<subscriber-name>notsurewecare</subscriber-name>
+			<service-instance-id>bd1b3789-6474-4935-94b2-90b656e035d0</service-instance-id>
+			<service-type>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-type>
+			<service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+		</service-information>
+		<oper-status>
+			<order-status>PendingCreate</order-status>
+		</oper-status>
+		<vnf-request-information>
+			<aic-cloud-region>VNN1CA52LCP</aic-cloud-region>
+			<vnf-name>skask</vnf-name>
+			<generic-vnf-id>afd0f02a-1ddb-43bb-aded-5113e46e82ae</generic-vnf-id>
+			<generic-vnf-type>ZVNN1MOGX01-SVC/ZVNN1MOGX01 - VF AUG 1 1</generic-vnf-type>
+			<generic-vnf-name>ZVNN1MOGX01</generic-vnf-name>
+			<tenant>33d209df14ac4c08ad60747185d2f3e0</tenant>
+			<vnf-id>bd1b3789-6474-4935-94b2-90b656e035d0</vnf-id>
+			<vnf-type>ZVNN1MOGX01 - VF AUG 1::module-0</vnf-type>
+		</vnf-request-information>
+		<vnf-topology-information>
+			<vnf-assignments>
+				<vnf-networks>
+					<network-role>mog_exn</network-role>
+					<network-id>03dbd833-785c-40c0-bf32-37594b5334bc</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_exn_protected_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>6f82d234-41a4-48e9-a9e8-415667a72929</neutron-id>
+					<sriov-vlan-filter-list>
+						<sriov-vlan-filter>filter1</sriov-vlan-filter>
+					</sriov-vlan-filter-list>
+					<sriov-vlan-filter-list>
+						<sriov-vlan-filter>filter2</sriov-vlan-filter>                         
+                     </sriov-vlan-filter-list>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_oam</network-role>
+					<network-id>3f181cde-9380-4c20-9d3a-e1a4ee74f994</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_oam_protected_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>713b6770-13fa-4949-8dbb-a1288c5e5932</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_cor_B</network-role>
+					<network-id>821a550a-3f50-4725-995b-f212d5caec7c</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_cor_direct_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>18926e56-12b6-4a4d-98b6-37e0c05626ee</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_cor_A</network-role>
+					<network-id>3dabf5c0-cffb-420c-8960-8499c74eb25f</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_cor_direct_net_2</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>35530b29-a4de-48ff-a014-111110ccc652</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_gn</network-role>
+					<network-id>3ce97321-6e7f-49af-bd12-f833e377c310</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_gn_direct_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>32bfdd2c-28e1-4895-87a6-373bf12c3129</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_dmz</network-role>
+					<network-id>d43ca910-02a5-47dc-8510-100a68a3c9e0</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_dmz_protected_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>cb9500fb-943f-412e-aea6-458711564a75</neutron-id>
+				</vnf-networks>
+				<availability-zones>
+					<availability-zone>nova</availability-zone>
+				</availability-zones>
+				<vnf-vms>
+					<vm-type>ps</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MPS001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MPS002</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MPS003</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MPS004</vm-name>
+					</vm-names>
+					<vm-count>4</vm-count>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.251</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.252</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.253</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.254</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+				</vnf-vms>
+				<vnf-vms>
+					<vm-type>cm</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MCM001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01OAM002</vm-name>
+					</vm-names>
+					<vm-count>1</vm-count>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.249</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.250</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_oam</network-role>
+						<network-ips>
+							<ip-address>107.239.167.250</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.239.167.251</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+				</vnf-vms>
+				<vnf-vms>
+					<vm-type>oam</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01OAM001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01OAM002</vm-name>
+					</vm-names>
+					<vm-count>2</vm-count>
+					<vm-networks>
+						<network-role>mog_oam</network-role>
+						<network-ips>
+							<ip-address>107.239.167.252</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.239.167.251</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.249</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.250</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+				</vnf-vms>
+				<vnf-vms>
+					<vm-type>pd</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MPD001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MPD002</vm-name>
+					</vm-names>
+					<vm-count>2</vm-count>
+					<vm-networks>
+						<network-role>mog_dmz</network-role>
+						<network-ips>
+							<ip-address>107.225.25.253</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.225.25.254</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.225.254.253</floating-ip>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_oam</network-role>
+						<network-ips>
+							<ip-address>107.239.167.254</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.239.167.253</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.239.167.249</floating-ip>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_exn</network-role>
+						<network-ips>
+							<ip-address>107.224.46.253</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.46.254</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.224.46.252</floating-ip>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.247</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.248</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.224.41.252</floating-ip>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_gn</network-role>
+						<network-ips>
+							<ip-address>107.224.41.253</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.41.254</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.224.41.252</floating-ip>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_cor_A</network-role>
+						<network-ips>
+							<ip-address>107.224.38.253</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.38.254</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+				</vnf-vms>
+				<vnf-vms>
+					<vm-type>sm</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MSM001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MSM002</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MSM003</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MSM004</vm-name>
+					</vm-names>
+					<vm-count>4</vm-count>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.243</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.244</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.245</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.246</ip-address>
+						</network-ips>
+						<use-dhcp>N</use-dhcp>
+					</vm-networks>
+				</vnf-vms>
+			</vnf-assignments>
+			<vnf-topology-identifier>
+				<vnf-name>ZVNNMOGX01_base</vnf-name>
+				<service-type>SDN-MOBILITY</service-type>
+				<vnf-type>ZVNN1MOGX01 - VF AUG 1::module-0</vnf-type>
+				<generic-vnf-type>ZVNN1MOGX01-SVC/ZVNN1MOGX01 - VF AUG 1 1</generic-vnf-type>
+				<generic-vnf-name>ZVNN1MOGX01</generic-vnf-name>
+			</vnf-topology-identifier>
+		</vnf-topology-information>
+		<request-information>
+			<request-id>9ddf628a-9eca-430e-8974-22d520a31be1</request-id>
+			<notification-url/>
+			<source>PORTAL</source>
+			<request-action>VNFActivateRequest</request-action>
+		</request-information>
+	</service-data>
+	<service-status>
+		<response-code>200</response-code>
+		<final-indicator>Y</final-indicator>
+		<request-status>synccomplete</request-status>
+		<response-timestamp>2016-08-05T16:15:19.398Z</response-timestamp>
+		<rpc-name>vnf-topology-operation</rpc-name>
+		<vnfsdn-action>VNFActivateRequest</vnfsdn-action>
+		<rpc-action>assign</rpc-action>
+	</service-status>
+</vnf-list>
+
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVfModule.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVfModule.xml
new file mode 100644
index 0000000..677ecb7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVfModule.xml
@@ -0,0 +1,141 @@
+<output xmlns="com:att:sdnctl:vnf">
+	<vnf-list xmlns="com:att:sdnctl:vnf">
+	<vnf-id>28455973-1ee5-4ad1-8d35-c4732679743a</vnf-id>
+	<service-status>
+		<response-code>200</response-code>
+		<final-indicator>Y</final-indicator>
+		<request-status>synccomplete</request-status>
+		<response-timestamp>2016-06-08T19:44:59.138Z</response-timestamp>
+		<rpc-name>vnf-topology-operation</rpc-name>
+		<vnfsdn-action>VNFActivateRequest</vnfsdn-action>
+		<rpc-action>assign</rpc-action>
+	</service-status>
+	<service-data>
+		<vnf-id>28455973-1ee5-4ad1-8d35-c4732679743</vnf-id>
+		<service-information>
+			<subscriber-name>notsurewecare</subscriber-name>
+			<service-instance-id>28455973-1ee5-4ad1-8d35-c4732679743a</service-instance-id>
+			<service-type>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-type>
+			<service-id>a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb</service-id>
+		</service-information>
+		<sdnc-request-header>
+			<svc-request-id>5e168556-a5c6-4813-bff3-cc03007afbbc</svc-request-id>
+			<svc-notification-url>http://localhost:8080/adapters/rest/SDNCNotify</svc-notification-url>
+			<svc-action>assign</svc-action>
+		</sdnc-request-header>
+		<vnf-request-information>
+			<aic-cloud-region>AAIAIC25</aic-cloud-region>
+			<vnf-name>MSOTEST06-vSAMP3::base::module-0</vnf-name>
+			<generic-vnf-id>91ad7ab0-9ffd-471d-971c-3eb913a2cc75</generic-vnf-id>
+			<generic-vnf-type>Test/vSAMP3 1</generic-vnf-type>
+			<generic-vnf-name>MSOTEST06</generic-vnf-name>
+			<tenant>4ae1d3446a4c48b2bec44b6cfba06d68</tenant>
+			<vnf-id>28455973-1ee5-4ad1-8d35-c4732679743a</vnf-id>
+			<vnf-type>vSAMP3::base::module-0</vnf-type>
+		</vnf-request-information>
+		<oper-status>
+			<order-status>PendingCreate</order-status>			
+		</oper-status>
+		<vnf-topology-information>
+			<vnf-parameters>
+				<vnf-parameter-name>image</vnf-parameter-name>
+				<vnf-parameter-value>Ubuntu_Perf</vnf-parameter-value>
+			</vnf-parameters>
+			<vnf-parameters>
+				<vnf-parameter-name>flavor</vnf-parameter-name>
+				<vnf-parameter-value>m1.small</vnf-parameter-value>
+			</vnf-parameters>
+			<vnf-assignments>
+				<vnf-networks>
+					<network-role>int_imbl</network-role>
+					<network-id>680b7453-0ec4-4d96-b355-280d981d418f</network-id>
+					<network-name>Nimbus-25193-T-Willows2_int_imbl_net_1</network-name>
+					<contrail-network-fqdn>default-domain:Nimbus-25193-T-Willows2:Nimbus-25193-T-Willows2_int_imbl_net_1</contrail-network-fqdn>
+					<subnet-id></subnet-id>
+					<ipv6-subnet-id>775607fb-e16a-45ef-94a7-82fba0d16eec</ipv6-subnet-id>
+					<neutron-id>640d07fb-e16a-45ef-94a7-82fba0d169bf</neutron-id>
+					<sriov-vlan-filter-list>
+						<sriov-vlan-filter>filter1</sriov-vlan-filter>
+					</sriov-vlan-filter-list>
+					<sriov-vlan-filter-list>
+						<sriov-vlan-filter>filter2</sriov-vlan-filter>                         
+                     </sriov-vlan-filter-list>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>sgi_protected</network-role>
+					<network-id>f9039ce9-e3cf-4716-b2d1-ec7912178ea4</network-id>
+					<network-name>Nimbus-25193-T-Willows2_sgi_protected_net_1</network-name>
+					<contrail-network-fqdn>default-domain:Nimbus-25193-T-Willows2:Nimbus-25193-T-Willows2_sgi_protected_net_1</contrail-network-fqdn>
+					<subnet-id>b9999ce9-e3cf-4716-b2d1-ec791217678c</subnet-id>
+					<ipv6-subnet-id></ipv6-subnet-id>
+					<neutron-id>bf11bba8-b971-4ab5-8281-215b3fedcd3c</neutron-id>
+				</vnf-networks>
+				<vnf-vms>
+					<vm-type>cm</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MCM001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01OAM002</vm-name>
+					</vm-names>
+					<vm-count>1</vm-count>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.249</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.250</ip-address>
+						</network-ips>
+						<network-ips-v6>
+							<ip-address-ipv6>2606:ae00:2e01:800::67</ip-address-ipv6>
+						</network-ips-v6>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.224.41.252</floating-ip>
+						<floating-ip-v6>2001:1890:1001:2B32::29:C</floating-ip-v6>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_oam</network-role>
+						<network-ips>
+							<ip-address>107.239.167.250</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.239.167.251</ip-address>
+						</network-ips>
+						<network-ips-v6>
+							<ip-address-ipv6>aa::aa::aa::aa::aa::aa</ip-address-ipv6>							
+						</network-ips-v6>
+						<network-ips-v6>
+							<ip-address-ipv6>bb::bb::bb::bb::bb::bb</ip-address-ipv6>
+						</network-ips-v6>
+						<interface-route-prefixes>							
+							<interface-route-prefix-cidr>1.2.3.4/26</interface-route-prefix-cidr>
+						</interface-route-prefixes>
+						<interface-route-prefixes>							
+							<interface-route-prefix-cidr>2002::/64</interface-route-prefix-cidr>
+						</interface-route-prefixes>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip-v6>1111:1890:1001:2B32::29:D</floating-ip-v6>
+					</vm-networks>
+				</vnf-vms>
+				<availability-zones>
+					<availability-zone>nova</availability-zone>
+				</availability-zones>
+			</vnf-assignments>
+			<vnf-topology-identifier>
+				<vnf-name>MSOTEST06-vSAMP3::base::module-0</vnf-name>
+				<service-type>SDN-MOBILITY</service-type>
+				<vnf-type>vSAMP3::base::module-0</vnf-type>
+				<generic-vnf-type>Test/vSAMP3 1</generic-vnf-type>
+				<generic-vnf-name>MSOTEST06</generic-vnf-name>
+			</vnf-topology-identifier>			
+		</vnf-topology-information>
+		<request-information>
+			<request-id>5e168556-a5c6-4813-bff3-cc03007afbbc</request-id>
+			<notification-url></notification-url>
+			<source>SoapUI-bns-vf-base-vSAMP3-9001</source>
+			<request-action>VNFActivateRequest</request-action>			
+		</request-information>
+	</service-data>
+</vnf-list>
+</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVfModuleNoVnf.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVfModuleNoVnf.xml
new file mode 100644
index 0000000..c50c256
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVfModuleNoVnf.xml
@@ -0,0 +1,81 @@
+<output xmlns="com:att:sdnctl:vnf">
+<vf-module-topology xmlns="org:onap:sdnc:northbound:generic-resource">
+	<vf-module-topology-identifier>
+		<vf-module-id>0725b072-b854-4705-bf8e-c1a1eb08651e</vf-module-id>
+		<vf-module-type>vSAMP10aDEV::base::module-0</vf-module-type>
+		<vf-module-name>zmtn6nf-code-111_base_0</vf-module-name>
+	</vf-module-topology-identifier>
+	<onap-model-information>
+		<model-name>vSAMP10aDEV::base::module-0</model-name>
+		<model-customization-uuid>819ef122-ca19-4141-a61e-62922f8fc279</model-customization-uuid>
+		<model-version>ff2ae348-214a-11e7-93ae-92361f002673</model-version>
+		<model-invariant-uuid>3a97db99-c4bb-498a-a13a-38f65f1ced3d</model-invariant-uuid>
+		<model-uuid>ff2ae348-214a-11e7-93ae-92361f002673</model-uuid>
+	</onap-model-information>
+	<tenant>19123c2924c648eb8e42a3c1f14b7682</tenant>
+	<aic-cloud-region>mtn6</aic-cloud-region>
+	<aic-clli>AUSTTXGR</aic-clli>		
+			<vf-module-parameters>
+				<param>
+					<name>image</name>
+					<value>Ubuntu_Perf</value>
+				</param>
+				<param>
+					<name>flavor</name>
+					<value>m1.small</value>
+				</param>
+			</vf-module-parameters>
+			<vf-module-assignments>				
+			<vms>
+				<vm>
+					<vm-type>cm</vm-type>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01MCM001</vm-name>
+					</vm-names>
+					<vm-names>
+						<vm-name>ZVNN1MOGX01OAM002</vm-name>
+					</vm-names>
+					<vm-count>1</vm-count>
+					<vm-networks>
+						<network-role>mog_cor_B</network-role>
+						<network-ips>
+							<ip-address>107.224.36.249</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.224.36.250</ip-address>
+						</network-ips>
+						<network-ips-v6>
+							<ip-address-ipv6>2606:ae00:2e01:800::67</ip-address-ipv6>
+						</network-ips-v6>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip>107.224.41.252</floating-ip>
+						<floating-ip-v6>2001:1890:1001:2B32::29:C</floating-ip-v6>
+					</vm-networks>
+					<vm-networks>
+						<network-role>mog_oam</network-role>
+						<network-ips>
+							<ip-address>107.239.167.250</ip-address>
+						</network-ips>
+						<network-ips>
+							<ip-address>107.239.167.251</ip-address>
+						</network-ips>
+						<network-ips-v6>
+							<ip-address-ipv6>aa::aa::aa::aa::aa::aa</ip-address-ipv6>							
+						</network-ips-v6>
+						<network-ips-v6>
+							<ip-address-ipv6>bb::bb::bb::bb::bb::bb</ip-address-ipv6>
+						</network-ips-v6>
+						<interface-route-prefixes>							
+							<interface-route-prefix-cidr>1.2.3.4/26</interface-route-prefix-cidr>
+						</interface-route-prefixes>
+						<interface-route-prefixes>							
+							<interface-route-prefix-cidr>2002::/64</interface-route-prefix-cidr>
+						</interface-route-prefixes>
+						<use-dhcp>N</use-dhcp>
+						<floating-ip-v6>1111:1890:1001:2B32::29:D</floating-ip-v6>
+					</vm-networks>
+				</vm>
+				</vms>
+			</vf-module-assignments>				
+</vf-module-topology>
+</output>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVnf.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVnf.xml
new file mode 100644
index 0000000..ba98ef8
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyQueryCallbackVnf.xml
@@ -0,0 +1,82 @@
+<output xmlns="com:att:sdnctl:vnf">
+<vnf-topology xmlns="org:onap:sdnc:northbound:generic-resource">
+	<vnf-topology-identifier-structure>
+		<nf-type>nf-type-1</nf-type>
+		<vnf-name>zmtn6nf-code-111</vnf-name>
+		<nf-role>nf-role-1</nf-role>
+		<nf-function>nf-function-1</nf-function>
+		<nf-code>nf-code-1</nf-code>
+		<vnf-id>eac30f85-f61f-4c5f-862e-2c62f9e135de</vnf-id>
+		<vnf-type>null</vnf-type>
+	</vnf-topology-identifier-structure>
+	<onap-model-information>
+		<model-name>vSAMP10a_macro</model-name>
+		<model-customization-uuid>819ef122-ca19-4141-a61e-62922f8fc279</model-customization-uuid>
+		<model-version>1.0</model-version>
+		<model-invariant-uuid>ef176121-f02c-4dd3-927c-22131d48446b</model-invariant-uuid>
+		<model-uuid>ff2ae348-214a-11e7-93ae-92361f002672</model-uuid>
+	</onap-model-information>
+	<vnf-resource-assignments>			
+			<vnf-networks>
+					<network-role>mog_exn</network-role>
+					<network-id>03dbd833-785c-40c0-bf32-37594b5334bc</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_exn_protected_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>6f82d234-41a4-48e9-a9e8-415667a72929</neutron-id>
+					<sriov-vlan-filter-list>
+						<sriov-vlan-filter>filter1</sriov-vlan-filter>
+					</sriov-vlan-filter-list>
+					<sriov-vlan-filter-list>
+						<sriov-vlan-filter>filter2</sriov-vlan-filter>                         
+                     </sriov-vlan-filter-list>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_oam</network-role>
+					<network-id>3f181cde-9380-4c20-9d3a-e1a4ee74f994</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_oam_protected_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>713b6770-13fa-4949-8dbb-a1288c5e5932</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_cor_B</network-role>
+					<network-id>821a550a-3f50-4725-995b-f212d5caec7c</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_cor_direct_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>18926e56-12b6-4a4d-98b6-37e0c05626ee</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_cor_A</network-role>
+					<network-id>3dabf5c0-cffb-420c-8960-8499c74eb25f</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_cor_direct_net_2</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>35530b29-a4de-48ff-a014-111110ccc652</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_gn</network-role>
+					<network-id>3ce97321-6e7f-49af-bd12-f833e377c310</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_gn_direct_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>32bfdd2c-28e1-4895-87a6-373bf12c3129</neutron-id>
+				</vnf-networks>
+				<vnf-networks>
+					<network-role>mog_dmz</network-role>
+					<network-id>d43ca910-02a5-47dc-8510-100a68a3c9e0</network-id>
+					<network-name>MNS-25180-P-VNNYCA01_dmz_protected_net_1</network-name>
+					<contrail-network-fqdn/>
+					<subnet-id/>
+					<neutron-id>cb9500fb-943f-412e-aea6-458711564a75</neutron-id>
+				</vnf-networks>
+				<availability-zones>
+					<availability-zone>nova</availability-zone>
+				</availability-zones>				
+			</vnf-resource-assignments>
+			<tenant>19123c2924c648eb8e42a3c1f14b7682</tenant>
+	<aic-cloud-region>mtn6</aic-cloud-region>
+	<aic-clli>AUSTTXGR</aic-clli>
+</vnf-topology>
+</output>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyUnassignCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyUnassignCallback.xml
new file mode 100644
index 0000000..c1a0353
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/SDNCTopologyUnassignCallback.xml
@@ -0,0 +1,16 @@
+	<output xmlns="org:onap:sdnctl:vnf">
+		<vnf-information>
+			<vnf-id>skask</vnf-id>			
+		</vnf-information>
+		<response-code>200</response-code>
+		<svc-request-id>{{REQUEST-ID}}</svc-request-id>
+		<ack-final-indicator>Y</ack-final-indicator>
+		<service-information>
+			<subscriber-name>dontcare</subscriber-name>
+			<service-instance-id>0</service-instance-id>
+			<service-type>SDN-MOBILITY</service-type>
+		</service-information>
+		<instance-reference>
+			<object-path>restconf/SDNCObjectPath</object-path>
+		</instance-reference>
+	</output>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/StandardSDNCSynchResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/StandardSDNCSynchResponse.xml
new file mode 100644
index 0000000..77528cc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/StandardSDNCSynchResponse.xml
@@ -0,0 +1,5 @@
+<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
+  <soap:Body>
+    <SDNCAdapterResponse xmlns="http://org.onap/workflow/sdnc/adapter/schema/v1"/>
+  </soap:Body>
+</soap:Envelope>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestCreateCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestCreateCallback.xml
new file mode 100644
index 0000000..49ecd0b
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestCreateCallback.xml
@@ -0,0 +1,55 @@
+<createVfModuleResponse>
+    <vnfId>skask</vnfId>
+    <vfModuleId>supercool</vfModuleId>
+    <vfModuleStackId>slowburn</vfModuleStackId>
+    <vfModuleCreated>true</vfModuleCreated>
+    <vfModuleOutputs>
+        <entry>
+            <key>key1</key>
+            <value>value1</value>
+        </entry>
+        <entry>
+            <key>key2</key>
+            <value>value2</value>
+        </entry>
+        <entry>
+<key>server1_private_ip</key>
+<value>192.168.28.3</value>
+</entry>
+<entry>
+<key>contrail-service-instance-fqdn</key>
+<value>default-domain:MSOTest:MsoNW-RA</value>
+</entry>
+<entry>
+<key>policyKey1_contrail_network_policy_fqdn</key>
+<value>MSOTest:DefaultPolicyFQDN1</value>
+</entry>
+<entry>
+<key>policyKey2_contrail_network_policy_fqdn</key>
+<value>MSOTest:DefaultPolicyFQDN2</value>
+</entry>
+<entry>
+<key>oam_management_v6_address</key>
+<value>2000:abc:bce:1111</value>
+</entry>
+<entry>
+<key>oam_management_v4_address</key>
+<value>127.0.0.1</value>
+</entry>
+    </vfModuleOutputs>
+    <rollback> <!-- JC's doc has "vfModuleRollback" -->
+        <vnfId>skask</vnfId>
+        <vfModuleId>supercool</vfModuleId>
+        <vfModuleStackId>slowburn</vfModuleStackId>
+        <vfModuleCreated>true</vfModuleCreated>
+        <tenantId>tenantId</tenantId>
+        <cloudSiteId>cloudSiteId</cloudSiteId>
+        <msoRequest>
+            <requestId>requestId</requestId>
+            <serviceInstanceId>serviceInstanceId</serviceInstanceId>
+        </msoRequest>
+        <messageId>{{MESSAGE-ID}}</messageId> <!-- JC's doc does not have this -->
+    </rollback>
+    <messageId>{{MESSAGE-ID}}</messageId>
+</createVfModuleResponse>
+
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestDeleteRequest.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestDeleteRequest.xml
new file mode 100644
index 0000000..61aeaa7
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestDeleteRequest.xml
@@ -0,0 +1,15 @@
+<deleteVfModuleRequest>
+	<messageId>testMessageId</messageId>
+	<skipAAI>true</skipAAI>
+	<notificationUrl>testNotificationUrl</notificationUrl>
+	<cloudSiteId>testAicCloudRegion}</cloudSiteId>
+	<tenantId>testTenantId</tenantId>
+	<vnfId>testVnfId</vnfId>
+	<vfModuleId>testVfModuleId</vfModuleId>
+	<vfModuleStackId>testVfModuleStackId</vfModuleStackId>
+	<msoRequest>
+		<requestId>testRequestId</requestId>
+		<serviceInstanceId>testServiceInstanceId</serviceInstanceId>
+		<synchronous>false</synchronous>
+	</msoRequest>
+</deleteVfModuleRequest>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestDeleteResponse.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestDeleteResponse.xml
new file mode 100644
index 0000000..b5b6119
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestDeleteResponse.xml
@@ -0,0 +1,56 @@
+<deleteVfModuleResponse>
+	<messageId>testMessageId</messageId> 
+	<vfModuleDeleted>true</vfModuleDeleted>
+	<vfModuleId>testVfModuleId</vfModuleId>
+	<vfModuleOutputs>
+		<entry>
+			<key>key1</key>
+			<value>value1</value>
+		</entry>
+		<entry>
+			<key>key2</key>
+			<value>value2</value>
+		</entry>
+		<entry>
+			<key>server1_private_ip</key>
+			<value>192.168.28.3</value>
+		</entry>
+		<entry>
+			<key>contrail-service-instance-fqdn</key>
+			<value>default-domain:MSOTest:MsoNW-RA</value>
+		</entry>
+		<entry>
+			<key>policyKey1_contrail_network_policy_fqdn</key>
+			<value>MSOTest:DefaultPolicyFQDN1</value>
+		</entry>
+		<entry>
+			<key>policyKey2_contrail_network_policy_fqdn</key>
+			<value>MSOTest:DefaultPolicyFQDN2</value>
+		</entry>
+		<entry>
+			<key>oam_management_v6_address</key>
+			<value>2000:abc:bce:1111</value>
+		</entry>
+		<entry>
+			<key>oam_management_v4_address</key>
+			<value>127.0.0.1</value>
+		</entry>
+		<entry> 
+            <key>internal_security_group</key> 
+            <value>test_internal_security_group</value>
+        </entry> 
+        <entry> 
+            <key>int_internal_net_id</key> 
+            <value>test_int_internal_net_id</value> 
+        </entry> 
+        <entry> 
+            <key>dsx_server_group_id</key> 
+            <value>test_dsx_server_group_id</value> 
+        </entry> 
+        <entry> 
+            <key>mcas_host_key</key> 
+            <value>test_mcas_host_key</value> 
+        </entry> 
+	</vfModuleOutputs>
+	<vnfId>testVnfId</vnfId>
+</deleteVfModuleResponse>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestUpdateCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestUpdateCallback.xml
new file mode 100644
index 0000000..c602dd9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestUpdateCallback.xml
@@ -0,0 +1,16 @@
+<updateVfModuleResponse>
+    <vnfId>skask</vnfId>
+    <vfModuleId>supercool</vfModuleId>
+    <vfModuleStackId>slowburn</vfModuleStackId>
+    <vfModuleOutputs>
+        <entry>
+            <key>key1</key>
+            <value>value1</value>
+        </entry>
+        <entry>
+            <key>key2</key>
+            <value>value2</value>
+        </entry>
+    </vfModuleOutputs>
+    <messageId>{{MESSAGE-ID}}</messageId>
+</updateVfModuleResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestVolumeGroupCallback.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestVolumeGroupCallback.xml
new file mode 100644
index 0000000..830d2e2
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VNFAdapterRestVolumeGroupCallback.xml
@@ -0,0 +1,15 @@
+<updateVolumeGroupResponse>
+    <volumeGroupId>78987</volumeGroupId>
+    <volumeGroupStackId>slowburn</volumeGroupStackId>
+    <vfModuleOutputs>
+        <entry>
+            <key>key1</key>
+            <value>value1</value>
+        </entry>
+        <entry>
+            <key>key2</key>
+            <value>value2</value>
+        </entry>
+    </vfModuleOutputs>
+    <messageId>{{MESSAGE-ID}}</messageId>
+</updateVolumeGroupResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-lukewarm.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-lukewarm.xml
new file mode 100644
index 0000000..ba0b4e4
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-lukewarm.xml
@@ -0,0 +1,10 @@
+<vf-module xmlns="http://org.openecomp.aai.inventory/v7">
+	<vf-module-id>lukewarm</vf-module-id>
+	<vf-module-name>PCRF::module-1</vf-module-name>
+	<heat-stack-id>slowburn</heat-stack-id>
+	<orchestration-status>pending-create</orchestration-status>
+	<is-base-vf-module>true</is-base-vf-module>
+	<resource-version>330-90</resource-version>
+	<model-invariant-id>introvert</model-invariant-id>
+	<model-version-id>2.0</model-version-id>
+</vf-module>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-new-PendingActivation.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-new-PendingActivation.xml
new file mode 100644
index 0000000..2ccba7d
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-new-PendingActivation.xml
@@ -0,0 +1,9 @@
+<vf-module xmlns="http://org.openecomp.aai.inventory/v7">
+	<vf-module-id>b37d96db-7d2c-47ce-bf61-a6c7b82fe161</vf-module-id>
+	<vf-module-name>PCRF::module-0-2</vf-module-name>
+	<model-invariant-id>00000000-0000-0000-0000-000000000000</model-invariant-id>
+	<model-version-id>1.0</model-version-id>
+	<is-base-vf-module>false</is-base-vf-module>
+	<orchestration-status>PendingActivation</orchestration-status>
+	<resource-version>330-90</resource-version>
+</vf-module>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-new.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-new.xml
new file mode 100644
index 0000000..481410c
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-new.xml
@@ -0,0 +1,9 @@
+<vf-module xmlns="http://org.openecomp.aai.inventory/v7">
+	<vf-module-id>b37d96db-7d2c-47ce-bf61-a6c7b82fe161</vf-module-id>
+	<vf-module-name>PCRF::module-0-2</vf-module-name>
+	<model-invariant-id>00000000-0000-0000-0000-000000000000</model-invariant-id>
+	<model-version-id>1.0</model-version-id>
+	<is-base-vf-module>false</is-base-vf-module>
+	<orchestration-status>pending-create</orchestration-status>
+	<resource-version>330-90</resource-version>
+</vf-module>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-supercool.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-supercool.xml
new file mode 100644
index 0000000..49513f1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VfModule-supercool.xml
@@ -0,0 +1,27 @@
+<vf-module xmlns="http://org.openecomp.aai.inventory/v7">
+	<vf-module-id>supercool</vf-module-id>
+	<vf-module-name>PCRF::module-2</vf-module-name>
+	<heat-stack-id>fastburn</heat-stack-id>
+	<orchestration-status>pending-create</orchestration-status>
+	<is-base-vf-module>false</is-base-vf-module>
+	<resource-version>330-89</resource-version>
+	<model-invariant-id>introvert</model-invariant-id>
+	<model-version-id>2.0</model-version-id>
+	<relationship-list>
+		<relationship>
+			<related-to>volume-group</related-to>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-owner</relationship-key>
+				<relationship-value>att-aic</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>cloud-region.cloud-region-id</relationship-key>
+				<relationship-value>pdk1</relationship-value>
+			</relationship-data>
+			<relationship-data>
+				<relationship-key>volume-group.volume-group-id</relationship-key>
+				<relationship-value>78987</relationship-value>
+			</relationship-data>
+		</relationship>
+	</relationship-list>
+</vf-module>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VolumeGroup.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VolumeGroup.xml
new file mode 100644
index 0000000..df84706
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/VfModularity/VolumeGroup.xml
@@ -0,0 +1,25 @@
+  <volume-group xmlns="http://org.openecomp.aai.inventory/v7">
+         <volume-group-id>78987</volume-group-id>
+         <volume-group-name>Volume_2</volume-group-name>
+         <heat-stack-id>slowburn</heat-stack-id>
+         <vnf-type>pcrf-capacity</vnf-type>
+         <orchestration-status>Active</orchestration-status>
+         <resource-version>0000020</resource-version>
+         <relationship-list>
+            <relationship>
+               <related-to>tenant</related-to>
+               <relationship-data>
+                  <relationship-key>cloud-region.cloud-owner</relationship-key>
+                  <relationship-value>att-aic</relationship-value>
+               </relationship-data>
+               <relationship-data>
+                  <relationship-key>cloud-region.cloud-region-id</relationship-key>
+                  <relationship-value>MDTWNJ21</relationship-value>
+               </relationship-data>
+               <relationship-data>
+                  <relationship-key>tenant.tenant-id</relationship-key>
+                  <relationship-value>fba1bd1e195a404cacb9ce17a9b2b421</relationship-value>
+               </relationship-data>
+            </relationship>
+         </relationship-list>
+      </volume-group>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/deleteNetworkResponse_Success.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/deleteNetworkResponse_Success.xml
new file mode 100644
index 0000000..b8b8a4f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/deleteNetworkResponse_Success.xml
@@ -0,0 +1,3 @@
+<ns2:deleteNetworkResponse xmlns:ns2="http://org.onap.so/network">
+	<networkDeleted>true</networkDeleted>
+</ns2:deleteNetworkResponse>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/requestDetails.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/requestDetails.json
new file mode 100644
index 0000000..76616e1
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/requestDetails.json
@@ -0,0 +1,37 @@
+{
+	"requestDetails": {
+		"project": {
+			"projectName": "vSAMP12 Project"
+		},
+		"owningEntity": {
+			"owningEntityId": "MSO-Test-OE",
+			"owningEntityName": "MSO-Test123"
+		},
+		"modelInfo": {
+			"modelType": "service",
+			"modelInvariantUuid": "d214abcc-2083-11e7-93ae-92361f002671",
+			"modelUuid": "c4503baa-2083-11e7-93ae-92361f002671",
+			"modelName": "MSOTADevInfra_vSAMP12_Service",
+			"modelVersion": "1.0"
+		},
+		"subscriberInfo": {
+			"globalSubscriberId": "MSO_1610_dev",
+			"subscriberName": "MSO_1610_dev"
+		},
+		"requestInfo": {
+			"instanceName": "bensServiceInstance3",
+			"source": "VID",
+			"suppressRollback": "true",
+			"productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb"
+		},
+		"cloudConfiguration": {
+			"lcpCloudRegionId": "mdt1",
+			"tenantId": "8b1df54faa3b49078e3416e21370a3ba"
+		},
+		"requestParameters": {
+			"subscriptionServiceType": "MSO-dev-service-type",
+			"aLaCarte": "false",
+			"userParams": []
+		}
+	}
+}
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/schema.json b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/schema.json
new file mode 100644
index 0000000..36b51e9
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/__files/schema.json
@@ -0,0 +1,16 @@
+{
+	"CreateServiceInstanceV3": {
+		"serviceInstance": {
+			"@class": "inventory.aai.onap.org.v12.ServiceInstance"
+		},
+		"project": {
+			"@class": "inventory.aai.onap.org.v12.Project"
+		},
+		"owningEntity": {
+			"@class": "inventory.aai.onap.org.v12.OwningEntity"
+		},
+		"customer": {
+			"@class": "inventory.aai.onap.org.v12.Customer"
+		}
+	}
+}
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/application-test.yml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/application-test.yml
new file mode 100644
index 0000000..96cdebc
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/application-test.yml
@@ -0,0 +1,334 @@
+aai:
+  auth: 757A94191D685FD2092AC1490730A4FC
+  dme2:
+    timeout: '30000'
+  endpoint: http://localhost:${wiremock.server.port}
+camunda:
+  bpm:
+    admin-user:
+      id: admin
+      password: admin
+    database:
+      type: h2
+    history-level: FULL
+    metrics:
+      enabled: false
+      db-reporter-activate: false
+canopi:
+  auth: 757A94191D685FD2092AC1490730A4FC
+csi:
+  aots:
+    addincidentmanagement:
+      endpoint: http://localhost:${wiremock.server.port}/AddIncidentManagementTicketRequest
+  networkstatus:
+    endpoint: http://localhost:${wiremock.server.port}/SendManagedNetworkStatusNotification
+entitymanager:
+  packagesToScan: com
+mso:
+  correlation:
+    timeout: PT60S
+  logPath: logs
+  async:
+    core-pool-size: 50
+    max-pool-size: 50
+    queue-capacity: 500
+  adapters:
+    completemsoprocess:
+      endpoint: http://localhost:30253/CompleteMsoProcess
+    db:
+      auth: 757A94191D685FD2092AC1490730A4FC
+      password: wLg4sjrAFUS8rfVfdvTXeQ==
+      endpoint: http://localhost:${wiremock.server.port}/services/RequestsDbAdapter
+      spring:
+        endpoint: http://localhost:${wiremock.server.port}
+    network:
+      endpoint: http://localhost:30253/services/NetworkAdapter
+      rest:
+        endpoint: http://localhost:30253/services/rest/v1/networks
+    openecomp:
+      db:
+        endpoint: http://localhost:${wiremock.server.port}/services/RequestsDbAdapter
+    po:
+      auth: 757A94191D685FD2092AC1490730A4FC
+      password: 3141634BF7E070AA289CF2892C986C0B
+    sdnc:
+      endpoint: http://localhost:${wiremock.server.port}/adapters/SDNCAdapter
+      rest:
+        endpoint: http://localhost:${wiremock.server.port}/adapters/rest/v1/sdnc
+      timeout: PT150S
+    tenant:
+      endpoint: http://localhost:30253/services/TenantAdapter
+    vnf:
+      endpoint: http://localhost:${wiremock.server.port}/services/VnfAdapter
+      rest:
+        endpoint: http://localhost:${wiremock.server.port}/services/rest/v1/vnfs
+    volume-groups:
+      rest:
+        endpoint: http://localhost:30253/services/rest/v1/volume-groups
+    vnf-async:
+      endpoint: http://localhost:30253/services/VnfAdapterAsync
+  adiod:
+    vce:
+      service:
+        model:
+          invariant:
+            uuid: 1cc4e2e4-eb6e-404d-a66f-c8733cedcce8
+          version: '5.0'
+  bpmn:
+    process:
+      historyTimeToLive: '30'
+  callbackRetryAttempts: '5'
+  catalog:
+    db:
+      endpoint: http://localhost:${wiremock.server.port}/ecomp/mso/catalog
+      spring:
+        endpoint: http://localhost:30258
+  csi:
+    pwd: 4EA237303511EFBBC37F17A351562131
+    sendmanagednetworkstatusnotification:
+      applicationname: NetworkManagementEthernetOverFiber
+      version: '212'
+    usrname: mso
+  db:
+    auth: Basic YnBlbDptc28tZGItMTUwNyE=
+  default:
+    adapter:
+      namespace: http://com.att.mso
+  gateway:
+    service:
+      model:
+        name: HNGWaaS for DHV Test
+  healthcheck:
+    log:
+      debug: 'false'
+  infra:
+    customer:
+      id: testCustIdInfra
+  msoKey: 07a7159d3bf51a0e53be7a8f89699be7
+  oam:
+    network:
+      role:
+        gateway: HngwOamNetVto.OAM
+        portal: HnportalOamNetVto.OAM
+  po:
+    timeout: PT60S
+  portal:
+    service:
+      model:
+        name: HNPortalaaS for DHV Test
+  request:
+    db:
+      endpoint: http://localhost:${wiremock.server.port}/
+  rollback: 'true'
+  sdnc:
+    firewall:
+      yang:
+        model:
+          version: '2015-05-15'
+    password: 3141634BF7E070AA289CF2892C986C0B
+    timeout:
+      firewall:
+        minutes: '20'
+      ucpe:
+        async:
+          hours: '120'
+          minutes: '5'
+  site-name: CamundaEngine
+  sriov:
+    network:
+      role:
+        gateway1: HngwSriovProviderNet.SR_IOV_Provider2_1
+        gateway2: HngwSriovProviderNet.SR_IOV_Provider2_2
+        portal1: HnportalSriovProviderNet3.SR_IOV_Provider2_1
+        portal2: HnportalSriovProviderNet3.SR_IOV_Provider2_2
+  workflow:
+    sdnc:
+      replication:
+        delay: PT5S
+    aai:
+      distribution:
+        delay: PT5S
+    CreateGenericVNFV1:
+      aai:
+        volume-group:
+          uri: /aai/v6/cloud-infrastructure/volume-groups/volume-group
+    DHVCreateService:
+      aai:
+        customer:
+          uri: /aai/v9/business/customers/customer
+    createvce:
+      delay:
+        seconds: '1'
+    default:
+      aai:
+        version: '8'
+        cloud-region:
+          version: '9'
+        generic-vnf:
+          version: '9'
+        v11:
+          customer:
+            uri: /aai/v11/business/customers/customer
+          generic-query:
+            uri: /aai/v11/search/generic-query
+          generic-vnf:
+            uri: /aai/v11/network/generic-vnfs/generic-vnf
+          l3-network:
+            uri: /aai/v11/network/l3-networks/l3-network
+          network-policy:
+            uri: /aai/v11/network/network-policies/network-policy
+          nodes-query:
+            uri: /aai/v11/search/nodes-query
+          route-table-reference:
+            uri: /aai/v11/network/route-table-references/route-table-reference
+          tenant:
+            uri: /aai/v11/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant
+          vce:
+            uri: /aai/v11/network/vces/vce
+          vpn-binding:
+            uri: /aai/v11/network/vpn-bindings/vpn-binding
+        v8:
+          configuration:
+            uri: /aai/v11/network/configurations/configuration
+          customer:
+            uri: /aai/v8/business/customers/customer
+          generic-query:
+            uri: /aai/v8/search/generic-query
+          l3-network:
+            uri: /aai/v8/network/l3-networks/l3-network
+          network-policy:
+            uri: /aai/v8/network/network-policies/network-policy
+          nodes-query:
+            uri: /aai/v8/search/nodes-query
+          route-table-reference:
+            uri: /aai/v8/network/route-table-references/route-table-reference
+          tenant:
+            uri: /aai/v8/cloud-infrastructure/cloud-regions/cloud-region/att-aic/AAIAIC25/tenants/tenant
+          vce:
+            uri: /aai/v8/network/vces/vce
+          vpn-binding:
+            uri: /aai/v8/network/vpn-bindings/vpn-binding
+        v9:
+          cloud-region:
+            uri: /aai/v9/cloud-infrastructure/cloud-regions/cloud-region/att-aic
+          generic-vnf:
+            uri: /aai/v9/network/generic-vnfs/generic-vnf
+      retry:
+        attempts: '1'
+    deleteCinderVolumeV1:
+      aai:
+        volume-group:
+          uri: /aai/v6/cloud-infrastructure/volume-groups/volume-group
+    global:
+      default:
+        aai:
+          namespace: http://org.openecomp.aai.inventory/
+    l3ToHigherLayerAddBonding:
+      model:
+        invariantid: 50359538-066f-4a8d-807f-f2bc8eaa79dc
+        name: WAN Bonding v0.1
+        version: '0.1'
+        versionid: 52dbec20-47aa-42e4-936c-331d8e350d44
+    message:
+      endpoint: http://localhost:30252/mso/WorkflowMessage
+    notification:
+      name: GenericNotificationServiceATT
+    sdncadapter:
+      callback: http://localhost:${wiremock.server.port}/mso/SDNCAdapterCallbackService
+    vnfadapter:
+      create:
+        callback: http://localhost:30253/mso/vnfAdapterNotify
+      delete:
+        callback: http://localhost:30253/mso/vnfAdapterNotify
+      query:
+        callback: http://localhost:30253/mso/vnfAdapterNotify
+      rollback:
+        callback: http://localhost:30253/mso/vnfAdapterNotify
+policy:
+  auth: Basic dGVzdHBkcDphbHBoYTEyMw==
+  client:
+    auth: Basic bTAzNzQzOnBvbGljeVIwY2sk
+  endpoint: https://localhost:8081/pdp/api/
+  environment: TEST
+sdnc:
+  auth: Basic YWRtaW46YWRtaW4=
+  host: https://localhost:8443
+  path: /restconf/operations/GENERIC-RESOURCE-API
+sdno:
+  health-check:
+    dmaap:
+      password: eHQ1cUJrOUc
+      publisher:
+        topic: com.att.sdno.test-health-diagnostic-v02
+      subscriber:
+        topic: com.att.sdno.test-health-diagnostic-v02
+      username: testuser
+pnf:
+  dmaap:
+    host:
+    port:
+sniro:
+  conductor:
+    host: http://localhost:30253
+    uri: /release
+  manager:
+    timeout: PT30M
+    host: http://localhost:${wiremock.server.port}
+    uri.v1: /sniro/api/v2/placement
+    uri.v2: /sniro/api/placement/v2
+    headers.auth: Basic dGVzdDp0ZXN0cHdk
+    headers.patchVersion: 1
+    headers.minorVersion: 1
+    headers.latestVersion: 2
+server:
+  port: 8080
+  tomcat:
+    max-threads: 50
+  # ssl:
+    # key-store: /app/msoClientKeyStore.jks
+    # key-store-password: mso4you
+    # key-store-type: JKS
+    # trust-store: /app/msoTrustStore.jks
+    # trust-store-password: mso_Domain2.0_4you
+spring:
+  h2:
+    console:
+      enabled: true
+      path: /h2
+  datasource:
+    url: jdbc:h2:mem:AZ;;DB_CLOSE_ON_EXIT=FALSE
+    username: sa
+    password: sa
+    driverClassName: org.h2.Driver
+  security:
+    usercredentials:
+    -  
+      username: test
+      password: '$2a$12$Zi3AuYcZoZO/gBQyUtST2.F5N6HqcTtaNci2Et.ufsQhski56srIu'
+      role: BPMN-Client    
+# Hibernate
+hibernate:
+  dialect: org.hibernate.dialect.MySQL5Dialect
+  show_sql: false
+
+management:
+  security:
+    enabled: false
+
+security:
+  basic:
+    enabled: false
+
+appc:
+  client:
+    topic:
+      read: 
+        name: APPC-TEST-AMDOCS2
+        timeout: 360000 
+      write: APPC-TEST-AMDOCS1-IST
+    response:
+      timeout: 360000
+    key: LSl8QKolmKcC0yJR
+    secret: lgjXraD1HutKxv8jEN6tVouu
+    service: ueb
+    poolMembers: localhost:3904,localhost:3904,localhost:3904
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/applicationContext_forPnfTesting.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/applicationContext_forPnfTesting.xml
new file mode 100644
index 0000000..72462bd
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/applicationContext_forPnfTesting.xml
@@ -0,0 +1,70 @@
+<beans xmlns="http://www.springframework.org/schema/beans"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xmlns:context="http://www.springframework.org/schema/context"
+  xsi:schemaLocation="http://www.springframework.org/schema/beans
+                         http://www.springframework.org/schema/beans/spring-beans.xsd
+                         http://www.springframework.org/schema/context
+                         http://www.springframework.org/schema/context/spring-context-2.5.xsd" >
+
+  <bean id="dataSource" class="org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy">
+    <property name="targetDataSource">
+      <bean class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
+        <property name="driverClass" value="org.h2.Driver" />
+        <property name="url"
+          value="jdbc:h2:mem:process-engine;DB_CLOSE_DELAY=1000" />
+        <property name="username" value="sa" />
+        <property name="password" value="" />
+      </bean>
+    </property>
+  </bean>
+
+  <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
+    <property name="dataSource" ref="dataSource" />
+  </bean>
+
+  <bean id="processEngineConfiguration" class="org.camunda.bpm.engine.spring.SpringProcessEngineConfiguration">
+    <property name="processEngineName" value="engine" />
+    <property name="dataSource" ref="dataSource" />
+    <property name="transactionManager" ref="transactionManager" />
+    <property name="databaseSchemaUpdate" value="true" />
+    <property name="jobExecutorActivate" value="false" />
+    <!--<property name="deploymentResources" value="classpath*:*.bpmn" />-->
+  </bean>
+
+  <bean id="processEngine" class="org.camunda.bpm.engine.spring.ProcessEngineFactoryBean">
+    <property name="processEngineConfiguration" ref="processEngineConfiguration" />
+  </bean>
+
+  <bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" />
+  <bean id="runtimeService" factory-bean="processEngine" factory-method="getRuntimeService" />
+  <bean id="taskService" factory-bean="processEngine" factory-method="getTaskService" />
+  <bean id="historyService" factory-bean="processEngine" factory-method="getHistoryService" />
+  <bean id="managementService" factory-bean="processEngine" factory-method="getManagementService" />
+
+  <context:annotation-config />
+
+  <bean id="processEngineRule" class="org.camunda.bpm.engine.test.ProcessEngineRule">
+    <property name="processEngine" ref="processEngine" />
+  </bean>
+
+  <bean id="aaiConnection" class="org.onap.so.bpmn.infrastructure.pnf.delegate.AaiConnectionTestImpl"/>
+
+  <bean id="checkAaiForCorrelationIdDelegate" class="org.onap.so.bpmn.infrastructure.pnf.delegate.CheckAaiForCorrelationIdDelegate">
+    <property name="aaiConnection" ref="aaiConnection"/>
+  </bean>
+
+  <bean id="createAaiEntryWithPnfIdDelegate" class="org.onap.so.bpmn.infrastructure.pnf.delegate.CreateAaiEntryWithPnfIdDelegate">
+    <property name="aaiConnection" ref="aaiConnection"/>
+  </bean>
+
+  <bean id="informDmaapClient" class="org.onap.so.bpmn.infrastructure.pnf.delegate.InformDmaapClient">
+    <property name="dmaapClient" ref="dmaapClient"/>
+  </bean>
+
+  <bean id="dmaapClient" class="org.onap.so.bpmn.infrastructure.pnf.delegate.DmaapClientTestImpl"/>
+
+
+  <bean id="pnfCheckInputs" class="org.onap.so.bpmn.infrastructure.pnf.delegate.PnfCheckInputs">
+    <property name="defaultTimeout" value="PT1S"/>
+  </bean>
+</beans>
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/catalogDBClientProps.properties b/bpmn/so-bpmn-infrastructure-common/src/test/resources/catalogDBClientProps.properties
new file mode 100644
index 0000000..bca529f
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/catalogDBClientProps.properties
@@ -0,0 +1 @@
+catalog.db.endpoint= http://localhost:
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/logback-test.xml b/bpmn/so-bpmn-infrastructure-common/src/test/resources/logback-test.xml
new file mode 100644
index 0000000..38a2ef6
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/logback-test.xml
@@ -0,0 +1,44 @@
+<configuration>
+
+
+
+    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>%d{HH:mm:ss.SSS} [%thread] |%X{RequestId}| %-5level
+                %logger{1024} - %msg%n
+            </pattern>
+        </encoder>
+    </appender>
+
+
+    <logger name="com.att.ecomp.audit" level="info" additivity="false">
+        <appender-ref ref="STDOUT" />
+    </logger>
+
+    <logger name="com.att.eelf.metrics" level="info" additivity="false">
+        <appender-ref ref="STDOUT" />
+    </logger>
+
+    <logger name="com.att.eelf.error" level="WARN" additivity="false">
+        <appender-ref ref="STDOUT" />
+    </logger>
+
+    <logger name="org.onap" level="${so.log.level:-DEBUG}" additivity="false">
+        <appender-ref ref="STDOUT" />
+    </logger>
+    
+
+    <logger name="ch.vorburger" level="WARN" additivity="false">
+        <appender-ref ref="STDOUT" />
+    </logger>
+    
+    <logger name="AUDIT" level="info" additivity="true">        
+        <appender-ref ref="STDOUT" />
+    </logger>
+
+    <root level="WARN">
+        <appender-ref ref="STDOUT" />
+    </root>
+
+
+</configuration>
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/requestsDBClientProps.properties b/bpmn/so-bpmn-infrastructure-common/src/test/resources/requestsDBClientProps.properties
new file mode 100644
index 0000000..758a6ed
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/requestsDBClientProps.properties
@@ -0,0 +1 @@
+requests.db.endpoint= http://localhost:
\ No newline at end of file
diff --git a/bpmn/so-bpmn-infrastructure-common/src/test/resources/stubprocess/GenericStub.bpmn b/bpmn/so-bpmn-infrastructure-common/src/test/resources/stubprocess/GenericStub.bpmn
new file mode 100644
index 0000000..66f4584
--- /dev/null
+++ b/bpmn/so-bpmn-infrastructure-common/src/test/resources/stubprocess/GenericStub.bpmn
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_vwRmIBsREeeIQtzUKIjH4g" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.11.2" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+  <bpmn2:process id="GenericStub" name="GenericStub" isExecutable="true">
+    <bpmn2:startEvent id="StartEvent_1">
+      <bpmn2:outgoing>SequenceFlow_0tyavm9</bpmn2:outgoing>
+    </bpmn2:startEvent>
+    <bpmn2:endEvent id="EndEvent_0n56tas">
+      <bpmn2:incoming>SequenceFlow_0tyavm9</bpmn2:incoming>
+      <bpmn2:terminateEventDefinition />
+    </bpmn2:endEvent>
+    <bpmn2:sequenceFlow id="SequenceFlow_0tyavm9" sourceRef="StartEvent_1" targetRef="EndEvent_0n56tas" />
+  </bpmn2:process>
+  <bpmn2:error id="Error_10hit0u" name="MSO Workflow Exception" errorCode="MSOWorkflowException" />
+  <bpmn2:error id="Error_1lwpypa" name="Java Lang Exception" errorCode="java.lang.Exception" />
+  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="GenericStub">
+      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
+        <dc:Bounds x="147" y="275" width="36" height="36" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNShape id="EndEvent_0ougemc_di" bpmnElement="EndEvent_0n56tas">
+        <dc:Bounds x="263" y="275" width="36" height="36" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="236" y="311" width="90" height="0" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_0tyavm9_di" bpmnElement="SequenceFlow_0tyavm9">
+        <di:waypoint xsi:type="dc:Point" x="183" y="293" />
+        <di:waypoint xsi:type="dc:Point" x="263" y="293" />
+        <bpmndi:BPMNLabel>
+          <dc:Bounds x="223" y="272" width="0" height="12" />
+        </bpmndi:BPMNLabel>
+      </bpmndi:BPMNEdge>
+    </bpmndi:BPMNPlane>
+  </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
