aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfig.java6
-rw-r--r--adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfigFactory.java60
-rw-r--r--adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigFactoryTest.java164
-rw-r--r--adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigTest.java292
-rw-r--r--adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudSiteTest.java67
-rw-r--r--adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/MsoTenantTest.java42
-rw-r--r--adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/NetworkRollbackTest.java69
-rw-r--r--adapters/mso-adapter-utils/src/test/resources/cloud_config.json11
-rw-r--r--adapters/mso-adapter-utils/src/test/resources/cloud_default_config.json13
-rw-r--r--adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/RequestInformationTest.java57
-rw-r--r--adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCEventTest.java81
-rw-r--r--adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceErrorTest.java51
-rw-r--r--adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceRequestTest.java79
-rw-r--r--adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceResponseTest.java58
-rw-r--r--adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/ServiceInformationTest.java42
-rw-r--r--adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/sdncrest/SDNCServiceRequestConnector.java2
-rw-r--r--adapters/mso-sdnc-adapter/src/test/java/org/openecomp/mso/adapters/sdnc/impl/SDNCResponseTest.java49
-rw-r--r--adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantAlreadyExistsTest.java32
-rw-r--r--adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionBeanTest.java47
-rw-r--r--adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionTest.java49
-rw-r--r--adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java2
-rw-r--r--adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/model/RestfulResponse.java6
-rw-r--r--adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/VfRollbackTest.java69
-rwxr-xr-xaria/aria-rest-java-client/pom.xml2
-rw-r--r--aria/pom.xml2
-rw-r--r--bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java8
-rw-r--r--bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/WorkflowTest.java3
-rw-r--r--bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilderTest.java2
-rw-r--r--bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/PropertyConfigurationSetup.java2
-rw-r--r--bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/json/JsonUtils.java20
-rw-r--r--bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/plugins/LoggingAndURNMappingPlugin.java2
-rw-r--r--bpmn/MSOCoreBPMN/src/test/java/org/openecomp/mso/bpmn/core/TestBaseTask.java4
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy144
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVFCNSResource.groovy (renamed from bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoCreateVFCNetworkServiceInstance.groovy)4
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoUpdateE2EServiceInstance.groovy545
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/UpdateCustomE2EServiceInstance.groovy9
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateSDNCNetworkResource.bpmn97
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVFCNSResource.bpmn14
-rw-r--r--bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoUpdateE2EServiceInstance.bpmn821
-rw-r--r--common/src/main/resources/ASDC.properties52
-rw-r--r--common/src/main/resources/ApiHandler.properties40
-rw-r--r--common/src/main/resources/BPMN.properties8
-rw-r--r--common/src/main/resources/GenericMessages.properties28
-rw-r--r--common/src/main/resources/ResourceAdapter.properties140
44 files changed, 2939 insertions, 356 deletions
diff --git a/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfig.java b/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfig.java
index 5d16a95e5f..275241f768 100644
--- a/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfig.java
+++ b/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfig.java
@@ -22,10 +22,10 @@ package org.openecomp.mso.cloud;
import java.io.FileReader;
import java.io.IOException;
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
-
import java.util.Optional;
import org.codehaus.jackson.annotate.JsonProperty;
import org.codehaus.jackson.map.DeserializationConfig;
@@ -78,8 +78,8 @@ public class CloudConfig {
/**
* Get a map of all cloud sites that have been loaded.
*/
- public synchronized Map<String, CloudSite> getCloudSites() {
- return cloudSites;
+ public Map<String, CloudSite> getCloudSites() {
+ return Collections.unmodifiableMap(cloudSites);
}
/**
diff --git a/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfigFactory.java b/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfigFactory.java
index 445c135dab..144506c3bd 100644
--- a/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfigFactory.java
+++ b/adapters/mso-adapter-utils/src/main/java/org/openecomp/mso/cloud/CloudConfigFactory.java
@@ -20,12 +20,10 @@
package org.openecomp.mso.cloud;
-
import java.io.IOException;
import java.io.Serializable;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.ReentrantReadWriteLock;
-
import javax.ejb.ConcurrencyManagement;
import javax.ejb.ConcurrencyManagementType;
import javax.ejb.LocalBean;
@@ -36,22 +34,17 @@ import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
-
import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
-
+import org.openecomp.mso.logger.MessageEnum;
import org.openecomp.mso.logger.MsoLogger;
import org.openecomp.mso.openstack.exceptions.MsoCloudIdentityNotFound;
import org.openecomp.mso.openstack.utils.MsoHeatUtils;
import org.openecomp.mso.openstack.utils.MsoKeystoneUtils;
import org.openecomp.mso.openstack.utils.MsoNeutronUtils;
-import org.openecomp.mso.properties.MsoPropertiesException;
-import org.openecomp.mso.logger.MessageEnum;
/**
* This class returns a cloud Config instances
- *
- *
*/
@Singleton(name = "CloudConfigFactory")
@@ -62,13 +55,13 @@ public class CloudConfigFactory implements Serializable {
private static final long serialVersionUID = 2956662716453261085L;
- private static CloudConfig cloudConfigCache = new CloudConfig ();
+ private CloudConfig cloudConfigCache = new CloudConfig();
protected static String prefixMsoPropertiesPath = System.getProperty ("mso.config.path");
private static final MsoLogger LOGGER = MsoLogger.getMsoLogger (MsoLogger.Catalog.RA);
- private static int refreshTimer;
+ private int refreshTimer;
private static final ReentrantReadWriteLock rwl = new ReentrantReadWriteLock ();
@@ -79,7 +72,6 @@ public class CloudConfigFactory implements Serializable {
}
public void initializeCloudConfig (String filePath, int refreshTimer) throws MsoCloudIdentityNotFound {
-
rwl.writeLock ().lock ();
try {
cloudConfigCache.loadCloudConfig (prefixMsoPropertiesPath + filePath, refreshTimer);
@@ -95,18 +87,6 @@ public class CloudConfigFactory implements Serializable {
}
}
- public void changeMsoPropertiesFilePath (String newMsoPropPath) {
- rwl.writeLock ().lock ();
- try {
- CloudConfigFactory.cloudConfigCache.configFilePath = prefixMsoPropertiesPath + newMsoPropPath;
- } finally {
- rwl.writeLock ().unlock ();
- }
- }
-
- public CloudConfigFactory () {
- }
-
public CloudConfig getCloudConfig () {
rwl.readLock ().lock ();
try {
@@ -127,7 +107,7 @@ public class CloudConfigFactory implements Serializable {
* @return true if Properties have been reloaded, false otherwise
*/
@Schedule(minute = "*/1", hour = "*", persistent = false)
- public static void reloadCloudConfig () {
+ public void reloadCloudConfig () {
try {
if (!rwl.writeLock ().tryLock () && !rwl.writeLock ().tryLock (30L, TimeUnit.SECONDS)) {
@@ -180,23 +160,17 @@ public class CloudConfigFactory implements Serializable {
@Path("/showConfig")
@Produces("text/plain")
public Response showCloudConfig () {
- CloudConfig cloudConfig = this.getCloudConfig ();
- if (cloudConfig != null) {
- StringBuffer response = new StringBuffer ();
- response.append ("Cloud Sites:\n");
- for (CloudSite site : cloudConfig.getCloudSites ().values ()) {
- response.append(site.toString()).append("\n");
- }
-
- response.append ("\n\nCloud Identity Services:\n");
- for (CloudIdentity identity : cloudConfig.getIdentityServices ().values ()) {
- response.append(identity.toString()).append("\n");
- }
-
- return Response.status (200).entity (response).build ();
- } else {
- return Response.status (500).entity ("Cloud Config has not been loaded properly, this could be due to a bad JSON structure (Check the logs for additional details)").build ();
+ CloudConfig cloudConfig = this.getCloudConfig();
+ StringBuffer response = new StringBuffer();
+ response.append("Cloud Sites:\n");
+ for (CloudSite site : cloudConfig.getCloudSites().values()) {
+ response.append(site.toString()).append("\n");
+ }
+ response.append("\n\nCloud Identity Services:\n");
+ for (CloudIdentity identity : cloudConfig.getIdentityServices().values()) {
+ response.append(identity.toString()).append("\n");
}
+ return Response.status(200).entity(response).build();
}
@GET
@@ -207,8 +181,7 @@ public class CloudConfigFactory implements Serializable {
MsoKeystoneUtils.adminCacheReset ();
MsoHeatUtils.heatCacheReset ();
MsoNeutronUtils.neutronCacheReset ();
-
- String response = "Client caches reset. All entries removed.";
+ String response = "Client caches reset. All entries removed.";
return Response.status (200).entity (response).build ();
}
@@ -220,8 +193,7 @@ public class CloudConfigFactory implements Serializable {
MsoKeystoneUtils.adminCacheCleanup ();
MsoHeatUtils.heatCacheCleanup ();
MsoNeutronUtils.neutronCacheCleanup ();
-
- String response = "Client caches cleaned up. All expired entries removed";
+ String response = "Client caches cleaned up. All expired entries removed.";
return Response.status (200).entity (response).build ();
}
diff --git a/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigFactoryTest.java b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigFactoryTest.java
new file mode 100644
index 0000000000..fe768b5774
--- /dev/null
+++ b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigFactoryTest.java
@@ -0,0 +1,164 @@
+/*-
+ * ============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.openecomp.mso.cloud;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import java.io.IOException;
+import java.lang.reflect.Field;
+import java.util.HashMap;
+import java.util.Map;
+import javax.ws.rs.core.Response;
+import org.junit.Before;
+import org.junit.Test;
+import org.openecomp.mso.openstack.exceptions.MsoCloudIdentityNotFound;
+
+public class CloudConfigFactoryTest {
+
+ private static final String CLOUD_CONFIG_FIELD_NAME = "cloudConfigCache";
+ private static final int REFRESH_TIMER_VALUE = 1;
+
+ private CloudConfigFactory testedObject;
+ private CloudConfig cloudConfigMock;
+
+ @Before
+ public void init() throws NoSuchFieldException, IllegalAccessException {
+ cloudConfigMock = mock(CloudConfig.class);
+ testedObject = new CloudConfigFactory();
+ setCloudConfig();
+ }
+
+ @Test
+ public void initializeCloudConfigSuccessful() throws MsoCloudIdentityNotFound, IOException {
+ ClassLoader classLoader = CloudConfigFactoryTest.class.getClassLoader();
+ String cloudConfigJsonFilePath = classLoader.getResource("cloud_config.json").getPath();
+ testedObject.initializeCloudConfig(cloudConfigJsonFilePath, REFRESH_TIMER_VALUE);
+ verify(cloudConfigMock).loadCloudConfig(cloudConfigJsonFilePath, REFRESH_TIMER_VALUE);
+ }
+
+ @Test
+ public void getValidCloudConfig() {
+ when(cloudConfigMock.isValidCloudConfig()).thenReturn(true);
+
+ testedObject.getCloudConfig();
+
+ verify(cloudConfigMock).clone();
+ }
+
+ @Test
+ public void getNotValidCloudConfig() {
+ when(cloudConfigMock.isValidCloudConfig()).thenReturn(false);
+
+ CloudConfig result = testedObject.getCloudConfig();
+
+ assertThat(result).isNotNull();
+ assertThat(result.getCloudSites()).isEmpty();
+ assertThat(result.getIdentityServices()).isEmpty();
+ }
+
+ @Test
+ public void reload_CloudConfigValid() throws IOException, MsoCloudIdentityNotFound {
+ when(cloudConfigMock.isValidCloudConfig()).thenReturn(true);
+
+ testedObject.reloadCloudConfig();
+
+ verify(cloudConfigMock).clone();
+ verify(cloudConfigMock).reloadPropertiesFile();
+ }
+
+ @Test
+ public void reload_CloudConfigNotValid()
+ throws IOException, MsoCloudIdentityNotFound {
+ when(cloudConfigMock.isValidCloudConfig()).thenReturn(false);
+
+ testedObject.reloadCloudConfig();
+
+ verify(cloudConfigMock).reloadPropertiesFile();
+ }
+
+ @Test
+ public void showCloudConfig() throws NoSuchFieldException, IllegalAccessException {
+ when(cloudConfigMock.isValidCloudConfig()).thenReturn(true);
+ when(cloudConfigMock.clone()).thenReturn(createCloudConfig("IdTest576", "identityTest456"));
+ Response response = testedObject.showCloudConfig();
+
+ assertThat(response.getStatus()).isEqualTo(200);
+ assertThat(response.getEntity().toString()).containsPattern("CloudSite:.*IdTest576")
+ .containsPattern("Cloud Identity Service:.*identityTest456");
+
+ }
+
+ @Test
+ public void resetClientCaches_Successful() {
+ Response response = testedObject.resetClientCaches();
+ assertThat(response.getStatus()).isEqualTo(200);
+ assertThat(response.getEntity().toString()).isEqualTo("Client caches reset. All entries removed.");
+ }
+
+ @Test
+ public void cleanUpClientCache_Successful() {
+ Response response = testedObject.cleanupClientCaches();
+ assertThat(response.getStatus()).isEqualTo(200);
+ assertThat(response.getEntity().toString()).isEqualTo("Client caches cleaned up. All expired entries removed.");
+ }
+
+ @Test
+ public void encryptPassword_Successful() {
+ Response response = testedObject.encryptPassword("passTest123");
+ String expectedEncryptedPassword = CloudIdentity.encryptPassword("passTest123");
+ assertThat(response.getStatus()).isEqualTo(200);
+ assertThat(response.getEntity().toString()).isEqualTo("Encrypted Password = "+expectedEncryptedPassword);
+ }
+
+ private CloudConfig createCloudConfig(String cloudSiteId, String identityServiceId)
+ throws NoSuchFieldException, IllegalAccessException {
+ CloudConfig cloudConfig = new CloudConfig();
+ Map<String, CloudSite> cloudSiteMap = new HashMap<>();
+ CloudSite cs = new CloudSite();
+ cs.setId(cloudSiteId);
+ cloudSiteMap.put("keyTest", cs);
+ Field cloudSitesField = cloudConfig.getClass().getDeclaredField("cloudSites");
+ cloudSitesField.setAccessible(true);
+ cloudSitesField.set(cloudConfig, cloudSiteMap);
+
+ Map<String, CloudIdentity> identityServicesMap = new HashMap<>();
+ CloudIdentity cloudIdentity = new CloudIdentity();
+ cloudIdentity.setId(identityServiceId);
+ identityServicesMap.put("identityKey", cloudIdentity);
+
+ Field identityServicesField = cloudConfig.getClass().getDeclaredField("identityServices");
+ identityServicesField.setAccessible(true);
+ identityServicesField.set(cloudConfig, identityServicesMap);
+
+ return cloudConfig;
+ }
+
+ private void setCloudConfig()
+ throws NoSuchFieldException, IllegalAccessException {
+ Field field = testedObject.getClass().getDeclaredField(CLOUD_CONFIG_FIELD_NAME);
+ field.setAccessible(true);
+ field.set(testedObject, cloudConfigMock);
+ }
+
+}
diff --git a/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigTest.java b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigTest.java
index 1c2501e8e4..5b6be03a22 100644
--- a/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigTest.java
+++ b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudConfigTest.java
@@ -20,161 +20,221 @@
package org.openecomp.mso.cloud;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.junit.Assert.assertTrue;
+import java.io.IOException;
+import java.lang.reflect.Field;
+import java.util.HashMap;
+import java.util.Map;
import java.util.Optional;
-import org.junit.Assert;
-import org.junit.BeforeClass;
+import org.junit.Before;
import org.junit.Test;
-import java.util.Map;
import org.openecomp.mso.openstack.exceptions.MsoCloudIdentityNotFound;
public class CloudConfigTest {
- private static String cloudConfigJsonFilePath;
- private static String cloudDefaultConfigJsonFilePath;
- private static String cloudConfigInvalidJsonFilePath;
+ private static final int NUMBER_OF_CLOUD_SITES_IN_JSON_FILE = 4;
+ private static final int NUMBER_OF_IDENTITY_SERVICES_IN_JSON_FILE = 4;
+ private static final String CLOUD_SITES_FIELD_NAME = "cloudSites";
+ private static final String IDENTITY_SERVICE_FIELD_NAME = "identityServices";
+ private static final String CLOUD_SITE_DEFAULT = "default";
+ private static final String CLOUD_CONFIG_JSON_FILE_NAME = "cloud_config.json";
+ private static final String CLOUD_CONFIG_INVALID_JSON_FILE_NAME = "cloud_config_bad.json";
+
+ private CloudConfig testedObject;
+ private CloudSite cloudSite;
+ private CloudSite cloudSiteDefault;
+
+ @Before
+ public void init() {
+ testedObject = new CloudConfig();
+ }
- @BeforeClass
- public static void preparePaths() {
- ClassLoader classLoader = CloudConfigTest.class.getClassLoader();
- cloudConfigJsonFilePath = classLoader.getResource("cloud_config.json").getPath();
- cloudDefaultConfigJsonFilePath = classLoader.getResource("cloud_default_config.json").getPath();
- cloudConfigInvalidJsonFilePath = classLoader.getResource("cloud_config_bad.json").getPath();
+ @Test
+ public void cloudSite_returnEmptyOptionalIfIdIsNull() {
+ Optional<CloudSite> cloudConfigOpt = new CloudConfig().getCloudSite(null);
+ assertThat(cloudConfigOpt).isEmpty();
+ }
+
+ @Test
+ public void cloudSiteIsGotById_when_IdFound() throws NoSuchFieldException, IllegalAccessException {
+ setCloudSitesMap();
+ Optional<CloudSite> cloudSiteOpt = testedObject.getCloudSite(cloudSite.getId());
+ assertThat(cloudSiteOpt).isPresent();
+ assertThat(cloudSiteOpt.get().getId()).isEqualTo(cloudSite.getId());
+ assertThat(cloudSiteOpt.get().getClli()).isEqualTo(cloudSite.getClli());
+ }
+
+ @Test
+ public void cloudSiteIsGotByClli_when_IdNotFound() throws NoSuchFieldException, IllegalAccessException {
+ setCloudSitesMap();
+ Optional<CloudSite> cloudSiteOpt = testedObject.getCloudSite(cloudSite.getClli());
+ assertTrue(cloudSiteOpt.isPresent());
+ assertThat(cloudSiteOpt.get().getId()).isEqualTo(cloudSite.getId());
+ assertThat(cloudSiteOpt.get().getClli()).isEqualTo(cloudSite.getClli());
+ }
+
+ @Test
+ public void cloudSiteIsGotByDefault_when_IdAndClliNotFound() throws NoSuchFieldException, IllegalAccessException {
+ setCloudSitesMap();
+ Optional<CloudSite> cloudSiteOpt = testedObject.getCloudSite("not_existing_id");
+ assertTrue(cloudSiteOpt.isPresent());
+ assertThat(cloudSiteOpt.get().getId()).isEqualTo("not_existing_id");
+ assertThat(cloudSiteOpt.get().getClli()).isEqualTo(cloudSiteDefault.getClli());
+ }
+
+ @Test
+ public void cloudSiteNotFound_returnNull() {
+ assertThat(testedObject.getCloudSite("not_existing_id")).isEmpty();
+ }
+
+ @Test
+ public void identityServiceFoundById() throws NoSuchFieldException, IllegalAccessException {
+ CloudIdentity cloudIdentity = createCloudIdentity();
+ setIdentityServiceMap();
+ CloudIdentity cloudIdentityResult = testedObject.getIdentityService(cloudIdentity.getId());
+
+ assertThat(cloudIdentityResult).isNotNull();
+ assertThat(cloudIdentityResult.getId()).isEqualTo(cloudIdentity.getId());
+ assertThat(cloudIdentityResult.getMsoId()).isEqualTo(cloudIdentity.getMsoId());
}
- private CloudConfig createTestObject(String jsonFilePath) throws MsoCloudIdentityNotFound {
- CloudConfigFactory cloudConfigFactory = new CloudConfigFactory();
- cloudConfigFactory.initializeCloudConfig(jsonFilePath, 1);
- return cloudConfigFactory.getCloudConfig();
+ @Test
+ public void defaultClodeSiteNotFound_returnNull() {
+ assertThat(testedObject.getIdentityService("not_existing_id")).isNull();
+ }
+
+ @Test
+ public void loadCloudConfigSuccessful() throws IOException, MsoCloudIdentityNotFound {
+ ClassLoader classLoader = CloudConfigTest.class.getClassLoader();
+ String cloudConfigJsonFilePath = classLoader.getResource(CLOUD_CONFIG_JSON_FILE_NAME).getPath();
+ testedObject.loadCloudConfig(cloudConfigJsonFilePath, 1);
+ assertThat(testedObject.isValidCloudConfig()).isTrue();
+ checkCloudSites();
+ checkIdentityServices();
}
@Test
- public void testGetCloudSites() throws MsoCloudIdentityNotFound {
- CloudConfig con = createTestObject(cloudConfigJsonFilePath);
- Map<String, CloudSite> siteMap = con.getCloudSites();
- assertNotNull(siteMap);
+ public void loadCloudConfig_cloudIdentityNotFound() {
+ ClassLoader classLoader = CloudConfigTest.class.getClassLoader();
+ String cloudConfigInvalidJsonFilePath = classLoader.getResource(CLOUD_CONFIG_INVALID_JSON_FILE_NAME).getPath();
+ assertThatThrownBy(() -> testedObject.loadCloudConfig(cloudConfigInvalidJsonFilePath, 1))
+ .isInstanceOf(MsoCloudIdentityNotFound.class)
+ .hasMessage("Cloud Identity [MT Cloud site refers to a non-existing identity service: "
+ + "MT_KEYSTONE_NOT_EXISTING] not found");
+ assertThat(testedObject.isValidCloudConfig()).isFalse();
+ }
+ private void checkCloudSites() {
+ Map<String, CloudSite> siteMap = testedObject.getCloudSites();
+ assertThat(siteMap).isNotEmpty().hasSize(NUMBER_OF_CLOUD_SITES_IN_JSON_FILE);
CloudSite site1 = siteMap.get("MT");
CloudSite site2 = siteMap.get("DAN");
CloudSite site3 = siteMap.get("MTINJVCC101");
CloudSite site4 = siteMap.get("MTSNJA4LCP1");
- assertEquals("regionOne", site1.getRegionId());
- assertEquals("MT_KEYSTONE", site1.getIdentityServiceId());
- assertEquals("RegionOne", site2.getRegionId());
- assertEquals("DAN_KEYSTONE", site2.getIdentityServiceId());
- assertEquals("regionTwo", site3.getRegionId());
- assertEquals("MTINJVCC101_DCP", site3.getIdentityServiceId());
- assertEquals("mtsnjlcp1", site4.getRegionId());
- assertEquals("MTSNJA3DCP1", site4.getIdentityServiceId());
+ assertThat(site1.getId()).isEqualTo("MT");
+ assertThat(site1.getRegionId()).isEqualTo("regionOne");
+ assertThat(site1.getIdentityServiceId()).isEqualTo("MT_KEYSTONE");
+ assertThat(site1.getIdentityService()).isNotNull();
+ assertThat(site1.getIdentityService().getId()).isEqualTo(site1.getIdentityServiceId());
+
+ assertThat(site2.getId()).isEqualTo("DAN");
+ assertThat(site2.getRegionId()).isEqualTo("RegionOne");
+ assertThat(site2.getIdentityServiceId()).isEqualTo("DAN_KEYSTONE");
+ assertThat(site2.getIdentityService()).isNotNull();
+ assertThat(site2.getIdentityService().getId()).isEqualTo(site2.getIdentityServiceId());
+
+ assertThat(site3.getId()).isEqualTo("MTINJVCC101");
+ assertThat(site3.getRegionId()).isEqualTo("regionTwo");
+ assertThat(site3.getIdentityServiceId()).isEqualTo("MTINJVCC101_DCP");
+ assertThat(site3.getIdentityService()).isNotNull();
+ assertThat(site3.getIdentityService().getId()).isEqualTo(site3.getIdentityServiceId());
+
+ assertThat(site4.getId()).isEqualTo("MTSNJA4LCP1");
+ assertThat(site4.getRegionId()).isEqualTo("mtsnjlcp1");
+ assertThat(site4.getIdentityServiceId()).isEqualTo("MTSNJA3DCP1");
+ assertThat(site4.getIdentityService()).isNotNull();
+ assertThat(site4.getIdentityService().getId()).isEqualTo(site4.getIdentityServiceId());
}
- @Test
- public void testGetIdentityServices() throws MsoCloudIdentityNotFound {
- CloudConfig con = createTestObject(cloudConfigJsonFilePath);
- Map<String, CloudIdentity> identityMap = con.getIdentityServices();
- assertNotNull(identityMap);
+ private void checkIdentityServices() {
+ Map<String, CloudIdentity> identityMap = testedObject.getIdentityServices();
+ assertThat(identityMap).isNotEmpty().hasSize(NUMBER_OF_IDENTITY_SERVICES_IN_JSON_FILE);
CloudIdentity identity1 = identityMap.get("MT_KEYSTONE");
CloudIdentity identity2 = identityMap.get("DAN_KEYSTONE");
CloudIdentity identity3 = identityMap.get("MTINJVCC101_DCP");
CloudIdentity identity4 = identityMap.get("MTSNJA3DCP1");
- assertEquals("john", identity1.getMsoId());
- assertEquals("changeme", identity1.getMsoPass());
- assertEquals("admin", identity1.getAdminTenant());
- assertEquals("_member_", identity1.getMemberRole());
- assertFalse(identity1.hasTenantMetadata());
-
- assertEquals("mockId", identity2.getMsoId());
- assertEquals("stack123", identity2.getMsoPass());
- assertEquals("service", identity2.getAdminTenant());
- assertEquals("_member_", identity2.getMemberRole());
- assertFalse(identity2.hasTenantMetadata());
-
- assertEquals("mockIdToo", identity3.getMsoId());
- assertEquals("AICG@mm@@2015", identity3.getMsoPass());
- assertEquals("service", identity3.getAdminTenant());
- assertEquals("admin", identity3.getMemberRole());
- assertTrue(identity3.hasTenantMetadata());
-
- assertEquals("mockIdToo", identity4.getMsoId());
- assertEquals("2315QRS2015srq", identity4.getMsoPass());
- assertEquals("service", identity4.getAdminTenant());
- assertEquals("admin", identity4.getMemberRole());
- assertTrue(identity4.hasTenantMetadata());
+ assertThat(identity1.getMsoId()).isEqualTo("john");
+ assertThat(identity1.getMsoPass()).isEqualTo("changeme");
+ assertThat(identity1.getAdminTenant()).isEqualTo("admin");
+ assertThat(identity1.getMemberRole()).isEqualTo("_member_");
+ assertThat(identity1.hasTenantMetadata()).isFalse();
+
+ assertThat(identity2.getMsoId()).isEqualTo("mockId");
+ assertThat(identity2.getMsoPass()).isEqualTo("stack123");
+ assertThat(identity2.getAdminTenant()).isEqualTo("service");
+ assertThat(identity2.getMemberRole()).isEqualTo("_member_");
+ assertThat(identity2.hasTenantMetadata()).isFalse();
+
+ assertThat(identity3.getMsoId()).isEqualTo("mockIdToo");
+ assertThat(identity3.getMsoPass()).isEqualTo("AICG@mm@@2015");
+ assertThat(identity3.getAdminTenant()).isEqualTo("service");
+ assertThat(identity3.getMemberRole()).isEqualTo("admin");
+ assertThat(identity3.hasTenantMetadata()).isTrue();
+
+ assertThat(identity4.getMsoId()).isEqualTo("mockIdToo");
+ assertThat(identity4.getMsoPass()).isEqualTo("2315QRS2015srq");
+ assertThat(identity4.getAdminTenant()).isEqualTo("service");
+ assertThat(identity4.getMemberRole()).isEqualTo("admin");
+ assertThat(identity4.hasTenantMetadata()).isTrue();
}
@Test
- public void cloudSiteIsGotById_when_IdFound() throws MsoCloudIdentityNotFound {
- CloudConfig con = createTestObject(cloudConfigJsonFilePath);
- Optional<CloudSite> cloudSite = con.getCloudSite("MT");
- assertTrue(cloudSite.isPresent());
- assertEquals("regionOne", cloudSite.get().getRegionId());
- assertEquals("MT_KEYSTONE", cloudSite.get().getIdentityServiceId());
+ public void cloneSuccessful() throws NoSuchFieldException, IllegalAccessException {
+ setCloudSitesMap();
+ setIdentityServiceMap();
+ assertThat(testedObject.clone()).isEqualTo(testedObject);
}
- @Test
- public void cloudSiteIsGotByClli_when_IdNotFound() throws MsoCloudIdentityNotFound {
- CloudConfig con = createTestObject(cloudConfigJsonFilePath);
- Optional<CloudSite> cloudSite = con.getCloudSite("CS_clli");
- assertTrue(cloudSite.isPresent());
- assertEquals("clliRegion", cloudSite.get().getRegionId());
- assertEquals("CS_clli", cloudSite.get().getClli());
- assertEquals("CS_service", cloudSite.get().getIdentityServiceId());
+ private void setCloudSitesMap() throws NoSuchFieldException, IllegalAccessException {
+ Field field = testedObject.getClass().getDeclaredField(CLOUD_SITES_FIELD_NAME);
+ field.setAccessible(true);
+ Map<String, CloudSite> cloudSites = new HashMap<>();
+ cloudSite = createCloudSite("idTest1", "clliTest1");
+ cloudSiteDefault = createCloudSite(CLOUD_SITE_DEFAULT, "clliTest2");
+ cloudSites.put(cloudSite.getId(), cloudSite);
+ cloudSites.put(cloudSiteDefault.getId(), cloudSiteDefault);
+ field.set(testedObject, cloudSites);
}
- @Test
- public void cloudSiteIsGotByDefault_when_IdAndClliNotFound() throws MsoCloudIdentityNotFound {
- CloudConfig con = createTestObject(cloudDefaultConfigJsonFilePath);
- Optional<CloudSite> cloudSite = con.getCloudSite("not_existing_id");
- assertTrue(cloudSite.isPresent());
- assertEquals("not_existing_id", cloudSite.get().getId());
- assertEquals("not_existing_id", cloudSite.get().getRegionId());
- }
+ private void setIdentityServiceMap() throws NoSuchFieldException, IllegalAccessException {
+ Field field = testedObject.getClass().getDeclaredField(IDENTITY_SERVICE_FIELD_NAME);
+ field.setAccessible(true);
- @Test
- public void testGetIdentityService() throws MsoCloudIdentityNotFound {
- CloudConfig con = createTestObject(cloudConfigJsonFilePath);
- CloudIdentity identity1 = con.getIdentityService("MT_KEYSTONE");
- assertNotNull(identity1);
- assertEquals("john", identity1.getMsoId());
- assertEquals("changeme", identity1.getMsoPass());
- assertEquals("admin", identity1.getAdminTenant());
- assertEquals("_member_", identity1.getMemberRole());
- assertFalse(identity1.hasTenantMetadata());
-
- CloudIdentity identity2 = con.getIdentityService("Test");
- assertNull(identity2);
+ Map<String, CloudIdentity> cloudIdentityMap = new HashMap<>();
+ CloudIdentity cloudIdentity = createCloudIdentity();
+ cloudIdentityMap.put(cloudIdentity.getId(), cloudIdentity);
+ field.set(testedObject, cloudIdentityMap);
}
- @Test(expected = MsoCloudIdentityNotFound.class)
- public void testLoadWithWrongFile() throws MsoCloudIdentityNotFound {
- createTestObject(cloudConfigInvalidJsonFilePath);
+ private CloudIdentity createCloudIdentity() {
+ CloudIdentity cloudIdentity = new CloudIdentity();
+ cloudIdentity.setId("identityTestId");
+ cloudIdentity.setMsoId("msoTestId");
+ return cloudIdentity;
}
- @Test
- public void testReloadWithWrongFile() {
- CloudConfigFactory cloudConfigFactory = new CloudConfigFactory();
- try {
- cloudConfigFactory.initializeCloudConfig(cloudConfigInvalidJsonFilePath, 1);
- Assert.fail("MsoCloudIdentityNotFound was expected");
- } catch (MsoCloudIdentityNotFound e) {
-
- }
- assertTrue("Should be an empty CloudConfig", cloudConfigFactory.getCloudConfig().getCloudSites().isEmpty());
- assertTrue("Should be an empty CloudConfig",
- cloudConfigFactory.getCloudConfig().getIdentityServices().isEmpty());
- // Now reload the right config
- cloudConfigFactory.changeMsoPropertiesFilePath(cloudConfigJsonFilePath);
- cloudConfigFactory.reloadCloudConfig();
- assertTrue("Flag valid Config should be true now that the cloud_config is correct",
- cloudConfigFactory.getCloudConfig().isValidCloudConfig());
+ private CloudSite createCloudSite(String id, String clli) {
+ CloudSite cloudSite = new CloudSite();
+ cloudSite.setId(id);
+ cloudSite.setClli(clli);
+ cloudSite.setAic_version("2.5");
+ cloudSite.setIdentityService(createCloudIdentity());
+ return cloudSite;
}
-
}
diff --git a/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudSiteTest.java b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudSiteTest.java
new file mode 100644
index 0000000000..4c5ceb238c
--- /dev/null
+++ b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/cloud/CloudSiteTest.java
@@ -0,0 +1,67 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.cloud;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+
+public class CloudSiteTest {
+
+ @Mock
+ CloudIdentity ci= new CloudIdentity();
+
+ @InjectMocks
+ CloudSite cs = new CloudSite();
+
+
+@Before
+public void init(){
+ MockitoAnnotations.initMocks(this);
+ }
+ @Test
+ public void testCloudSite() {
+ cs.setAic_version("aic_version");
+ cs.setClli("clli");
+ cs.setId("id");
+ cs.setIdentityService(ci);
+ cs.setRegionId("regionId");
+ assert(cs.getAic_version().equals("aic_version"));
+ assert(cs.getClli().equals("clli"));
+ assert(cs.getId().equals("id"));
+ assert(cs.getIdentityService().equals(ci));
+ assert(cs.getRegionId().equals("regionId"));
+ }
+ @Test
+ public void testtoStringmethod(){
+ assert(cs.toString()!=null);
+ }
+ @Test
+ public void testhashCodemethod(){
+ assert(cs.hashCode()!=0);
+ }
+ @Test
+ public void testclone(){
+ assert(cs.clone()!=null);
+ }
+}
diff --git a/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/MsoTenantTest.java b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/MsoTenantTest.java
new file mode 100644
index 0000000000..a1de54e231
--- /dev/null
+++ b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/MsoTenantTest.java
@@ -0,0 +1,42 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.openstack.beans;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.Test;
+
+public class MsoTenantTest {
+ MsoTenant ms = new MsoTenant();
+
+ @Test
+ public void test() {
+ Map<String, String> map = new HashMap<>();
+ map.put("id","name");
+ ms.setTenantId("tenantId");
+ ms.setTenantName("tenantName");
+ ms.setMetadata(map);
+ assert(ms.getMetadata().equals(map));
+ assert(ms.getTenantId().equals("tenantId"));
+ assert(ms.getTenantName().equals("tenantName"));
+ }
+}
diff --git a/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/NetworkRollbackTest.java b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/NetworkRollbackTest.java
new file mode 100644
index 0000000000..d70c01d0d3
--- /dev/null
+++ b/adapters/mso-adapter-utils/src/test/java/org/openecomp/mso/openstack/beans/NetworkRollbackTest.java
@@ -0,0 +1,69 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.openstack.beans;
+
+import static org.junit.Assert.*;
+import java.util.ArrayList;
+import java.util.List;
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.openecomp.mso.entity.MsoRequest;
+
+public class NetworkRollbackTest {
+ @Mock
+ MsoRequest ms = new MsoRequest();
+
+ @InjectMocks
+ NetworkRollback nr = new NetworkRollback();
+
+ @Test
+ public void test() {
+ List<Integer> vlans = new ArrayList();
+ vlans.add(1);
+ vlans.add(2);
+ nr.setCloudId("cloudId");
+ nr.setModelCustomizationUuid("modelCustomizationUuid");
+ nr.setNetworkId("networkId");
+ nr.setNetworkName("networkName");
+ nr.setNetworkStackId("networkStackId");
+ nr.setNetworkType("networkType");;
+ nr.setNeutronNetworkId("neutronNetworkId");
+ nr.setPhysicalNetwork("physicalNetwork");
+ nr.setTenantId("tenantId");
+ nr.setNetworkCreated(false);
+ nr.setVlans(vlans);
+ nr.setMsoRequest(ms);
+ assert(nr.getCloudId().equals("cloudId"));
+ assert(nr.getModelCustomizationUuid().equals("modelCustomizationUuid"));
+ assert(nr.getNetworkId().equals("networkId"));
+ assert(nr.getNetworkName().equals("networkName"));
+ assert(nr.getNetworkStackId().equals("networkStackId"));
+ assert(nr.getNeutronNetworkId().equals("neutronNetworkId"));
+ assert(nr.getPhysicalNetwork().equals("physicalNetwork"));
+ assert(nr.getNetworkType().equals("networkType"));
+ assert(nr.getTenantId().equals("tenantId"));
+ assert(nr.getMsoRequest().equals(ms));
+ assertFalse(nr.getNetworkCreated());
+ assert(nr.getVlans().equals(vlans));
+ assert(nr.toString()!=null);
+ }
+}
diff --git a/adapters/mso-adapter-utils/src/test/resources/cloud_config.json b/adapters/mso-adapter-utils/src/test/resources/cloud_config.json
index ff24633f32..ee3532fe15 100644
--- a/adapters/mso-adapter-utils/src/test/resources/cloud_config.json
+++ b/adapters/mso-adapter-utils/src/test/resources/cloud_config.json
@@ -44,8 +44,7 @@
"tenant_metadata": true,
"identity_server_type": "KEYSTONE",
"identity_authentication_type": "USERNAME_PASSWORD"
- },
- "CS_service": {}
+ }
},
"cloud_sites":
@@ -77,14 +76,8 @@
"clli": "MTSNJA4LCP1",
"aic_version": "2.5",
"identity_service_id": "MTSNJA3DCP1"
- },
- "CS":
- {
- "region_id": "clliRegion",
- "clli": "CS_clli",
- "aic_version": "2.5",
- "identity_service_id": "CS_service"
}
+
}
}
}
diff --git a/adapters/mso-adapter-utils/src/test/resources/cloud_default_config.json b/adapters/mso-adapter-utils/src/test/resources/cloud_default_config.json
deleted file mode 100644
index 35d18e9789..0000000000
--- a/adapters/mso-adapter-utils/src/test/resources/cloud_default_config.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "cloud_config": {
- "identity_services": {
- "default_service": {}
- },
- "cloud_sites": {
- "default": {
- "region_id": "defaultRegion",
- "identity_service_id": "default_service"
- }
- }
- }
-} \ No newline at end of file
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/RequestInformationTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/RequestInformationTest.java
new file mode 100644
index 0000000000..c6d815a960
--- /dev/null
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/RequestInformationTest.java
@@ -0,0 +1,57 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 TechMahindra
+ * ================================================================================
+ * 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.openecomp.mso.adapters.sdncrest;
+
+import org.junit.Assert;
+
+import org.junit.Before;
+import org.junit.Test;
+
+public class RequestInformationTest {
+
+ private RequestInformation requestInformation;
+
+ @Before
+ public void setUp() {
+ requestInformation = new RequestInformation();
+ }
+
+ @Test
+ public void testGetRequestId() {
+ requestInformation.setRequestId("requestId");
+ Assert.assertNotNull(requestInformation.getRequestId());
+ Assert.assertEquals(requestInformation.getRequestId(), "requestId");
+ }
+
+ @Test
+ public void testGetSource() {
+ requestInformation.setSource("source");
+ Assert.assertNotNull(requestInformation.getSource());
+ Assert.assertEquals(requestInformation.getSource(), "source");
+ }
+
+ @Test
+ public void testGetNotificationUrl() {
+ requestInformation.setNotificationUrl("notificationUrl");
+ Assert.assertNotNull(requestInformation.getNotificationUrl());
+ Assert.assertEquals(requestInformation.getNotificationUrl(), "notificationUrl");
+ }
+}
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCEventTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCEventTest.java
new file mode 100644
index 0000000000..81d888bf70
--- /dev/null
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCEventTest.java
@@ -0,0 +1,81 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 TechMahindra
+ * ================================================================================
+ * 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.openecomp.mso.adapters.sdncrest;
+
+import static org.junit.Assert.*;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class SDNCEventTest {
+
+ private SDNCEvent sdncEvent;
+ private Map<String, String> param;
+ private String name = "name";
+ private String value = "value";
+
+ @Before
+ public void setUp() {
+ sdncEvent = new SDNCEvent();
+ }
+
+ @Test
+ public void testGetEventType() {
+ sdncEvent.setEventType("eventType");
+ Assert.assertNotNull(sdncEvent.getEventType());
+ Assert.assertEquals(sdncEvent.getEventType(), "eventType");
+ }
+
+ @Test
+ public void testGetEventCorrelatorType() {
+ sdncEvent.setEventCorrelatorType("eventCorrelatorType");
+ Assert.assertNotNull(sdncEvent.getEventCorrelatorType());
+ Assert.assertEquals(sdncEvent.getEventCorrelatorType(), "eventCorrelatorType");
+ }
+
+ @Test
+ public void testGetEventCorrelator() {
+ sdncEvent.setEventCorrelator("eventCorrelator");
+ Assert.assertNotNull(sdncEvent.getEventCorrelator());
+ Assert.assertEquals(sdncEvent.getEventCorrelator(), "eventCorrelator");
+ }
+
+ @Test
+ public void testGetParams() {
+ param = new HashMap<>();
+ param.put("paramKey", "paramValue");
+ sdncEvent.setParams(param);
+ Assert.assertNotNull(sdncEvent.getParams());
+ Assert.assertTrue(sdncEvent.getParams().containsKey("paramKey"));
+ Assert.assertTrue(sdncEvent.getParams().containsValue("paramValue"));
+ }
+
+ @Test
+ public void testAddParam() {
+ sdncEvent.addParam("name", "value");
+
+ }
+
+}
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceErrorTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceErrorTest.java
new file mode 100644
index 0000000000..df69b377ca
--- /dev/null
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceErrorTest.java
@@ -0,0 +1,51 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.sdncrest;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.mso.adapters.sdncrest.SDNCErrorCommon;
+import org.openecomp.mso.adapters.sdncrest.SDNCServiceError;
+
+public class SDNCServiceErrorTest {
+
+ @Mock
+ SDNCErrorCommon sec;
+
+ @InjectMocks
+ SDNCServiceError ssc;
+
+ @Before
+ public void init(){
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void testSDNCServiceError() {
+
+ ssc= new SDNCServiceError("id", "200",
+ "msg", "indicator");
+ assert(ssc!=null);
+ }
+}
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceRequestTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceRequestTest.java
new file mode 100644
index 0000000000..c63f1b8f82
--- /dev/null
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceRequestTest.java
@@ -0,0 +1,79 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.sdncrest;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.mso.adapters.sdncrest.SDNCRequestCommon;
+import org.openecomp.mso.adapters.sdncrest.ServiceInformation;
+import org.openecomp.mso.adapters.sdncrest.RequestInformation;
+
+public class SDNCServiceRequestTest {
+
+ @Mock
+ SDNCRequestCommon src;
+
+ @Mock
+ ServiceInformation si;
+
+ @Mock
+ RequestInformation ri;
+
+ @InjectMocks
+ SDNCServiceRequest ssr;
+
+ @Before
+ public void init(){
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void test() {
+ ssr= new SDNCServiceRequest("url", "timeout",
+ "sdncRequestId", "sdncService", "sdncOperation",
+ ri,
+ si, "sdncServiceDataType",
+ "sndcServiceData");
+
+ ssr.setSDNCService("sdncService");
+ ssr.setSDNCServiceData("sndcServiceData");
+ ssr.setSDNCServiceDataType("sdncServiceDataType");
+ ssr.setBPTimeout("timeout");
+ ssr.setBPNotificationUrl("url");
+ ssr.setRequestInformation(ri);
+ ssr.setServiceInformation(si);
+ ssr.setSDNCOperation("sdncOperation");
+ ssr.setSDNCRequestId("sdncRequestId");
+ assert(ssr.getSDNCService().equals("sdncService"));
+ assert(ssr.getSDNCServiceData().equals("sndcServiceData"));
+ assert(ssr.getSDNCServiceDataType().equals("sdncServiceDataType"));
+ assert(ssr.getBPTimeout().equals("timeout"));
+ assert(ssr.getBPNotificationUrl().equals("url"));
+ assert(ssr.getRequestInformation().equals(ri));
+ assert(ssr.getServiceInformation().equals(si));
+ assert(ssr.getSDNCOperation().equals("sdncOperation"));
+ assert(ssr.getSDNCRequestId().equals("sdncRequestId"));
+ }
+
+}
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceResponseTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceResponseTest.java
new file mode 100644
index 0000000000..9c4e98a02b
--- /dev/null
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/SDNCServiceResponseTest.java
@@ -0,0 +1,58 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.sdncrest;
+
+import static org.junit.Assert.*;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.openecomp.mso.adapters.sdncrest.SDNCResponseCommon;
+
+public class SDNCServiceResponseTest {
+
+ @Mock
+ SDNCResponseCommon src;
+
+ @InjectMocks
+ SDNCServiceResponse ssr;
+
+ @Before
+ public void init(){
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void test() {
+ ssr=new SDNCServiceResponse("sdncRequestId", "200",
+ "msg", "indicator");
+ Map<String, String> mp = new HashMap<>();
+ mp.put("name", "value");
+ ssr.setParams(mp);
+ assert(ssr.getParams().equals(mp));
+ assertNotNull(ssr);
+ }
+}
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/ServiceInformationTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/ServiceInformationTest.java
new file mode 100644
index 0000000000..2b87bbf101
--- /dev/null
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/openecomp/mso/adapters/sdncrest/ServiceInformationTest.java
@@ -0,0 +1,42 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.sdncrest;
+
+import org.junit.Test;
+
+public class ServiceInformationTest {
+
+
+
+ @Test
+ public void test() {
+ ServiceInformation si= new ServiceInformation("id","service","GlobalId","name");
+
+ si.setServiceInstanceId("id");
+ si.setServiceType("service");
+ si.setSubscriberGlobalId("GlobalId");
+ si.setSubscriberName("name");
+ assert(si.getServiceInstanceId().equals("id"));
+ assert(si.getServiceType().equals("service"));
+ assert(si.getSubscriberGlobalId().equals("GlobalId"));
+ assert(si.getSubscriberName().equals("name"));
+ }
+}
diff --git a/adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/sdncrest/SDNCServiceRequestConnector.java b/adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/sdncrest/SDNCServiceRequestConnector.java
index ab2c4eff2c..69e015ea50 100644
--- a/adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/sdncrest/SDNCServiceRequestConnector.java
+++ b/adapters/mso-sdnc-adapter/src/main/java/org/openecomp/mso/adapters/sdnc/sdncrest/SDNCServiceRequestConnector.java
@@ -115,7 +115,7 @@ public class SDNCServiceRequestConnector extends SDNCConnector {
} else if ("ack-final-indicator".equals(child.getNodeName())) {
ackFinalIndicator = child.getTextContent();
} else if ("response-parameters".equals(child.getNodeName())) {
- responseParameters.add((Element) child);
+ responseParameters.add(child);
}
}
diff --git a/adapters/mso-sdnc-adapter/src/test/java/org/openecomp/mso/adapters/sdnc/impl/SDNCResponseTest.java b/adapters/mso-sdnc-adapter/src/test/java/org/openecomp/mso/adapters/sdnc/impl/SDNCResponseTest.java
new file mode 100644
index 0000000000..f8867ae4f8
--- /dev/null
+++ b/adapters/mso-sdnc-adapter/src/test/java/org/openecomp/mso/adapters/sdnc/impl/SDNCResponseTest.java
@@ -0,0 +1,49 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.sdnc.impl;
+
+import static org.junit.Assert.*;
+
+import org.junit.Test;
+
+public class SDNCResponseTest {
+
+ private SDNCResponse sdncresponse = new SDNCResponse(null, 0, null);
+
+ @Test
+ public void testSDNCResponse()
+ {
+ sdncresponse.setReqId("reqId");
+ sdncresponse.setRespCode(0);
+ sdncresponse.setRespMsg("respMsg");
+ sdncresponse.setSdncRespXml("sdncRespXml");
+ assertEquals(sdncresponse.getReqId(), "reqId");
+ assertEquals(sdncresponse.getRespCode(), 0);
+ assertEquals(sdncresponse.getRespMsg(), "respMsg");
+ assertEquals(sdncresponse.getSdncRespXml(),"sdncRespXml");
+ }
+
+ @Test
+ public void testtoString()
+ {
+ assert(sdncresponse.toString()!=null);
+ }
+}
+ \ No newline at end of file
diff --git a/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantAlreadyExistsTest.java b/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantAlreadyExistsTest.java
new file mode 100644
index 0000000000..7f30b70742
--- /dev/null
+++ b/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantAlreadyExistsTest.java
@@ -0,0 +1,32 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.tenant.exceptions;
+
+import org.junit.Test;
+
+public class TenantAlreadyExistsTest {
+
+ @Test
+ public void test() {
+ TenantAlreadyExists tar= new TenantAlreadyExists("name", "cloudId", "tenantId");
+ assert(tar!=null);
+ }
+} \ No newline at end of file
diff --git a/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionBeanTest.java b/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionBeanTest.java
new file mode 100644
index 0000000000..c2f1d4e7aa
--- /dev/null
+++ b/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionBeanTest.java
@@ -0,0 +1,47 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.tenant.exceptions;
+
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.openecomp.mso.openstack.exceptions.MsoExceptionCategory;
+
+public class TenantExceptionBeanTest {
+
+@Mock
+private MsoExceptionCategory mec;
+
+@InjectMocks
+private TenantExceptionBean teb;
+
+@Test
+ public void test() {
+ teb =new TenantExceptionBean("message",mec);
+ teb.setMessage("message");
+ teb.setCategory(MsoExceptionCategory.INTERNAL);
+ teb.setCategory(MsoExceptionCategory.IO);
+ teb.setCategory(MsoExceptionCategory.OPENSTACK);
+ teb.setCategory(MsoExceptionCategory.USERDATA);
+ assert(teb.getMessage().equals("message"));
+ assert(teb.getCategory()!=null);
+ }
+}
diff --git a/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionTest.java b/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionTest.java
new file mode 100644
index 0000000000..32e1fd198d
--- /dev/null
+++ b/adapters/mso-tenant-adapter/src/test/java/org/openecomp/mso/adapters/tenant/exceptions/TenantExceptionTest.java
@@ -0,0 +1,49 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.tenant.exceptions;
+
+import org.junit.Test;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.openecomp.mso.openstack.exceptions.MsoExceptionCategory;
+
+public class TenantExceptionTest {
+
+ @Mock
+ private TenantExceptionBean teb;
+
+ @Mock
+ private MsoExceptionCategory mec;
+
+ @InjectMocks
+ private TenantException te;
+
+ @Test
+ public void test() {
+ teb=new TenantExceptionBean("message");
+ teb.setMessage("message");
+ teb.setCategory(MsoExceptionCategory.INTERNAL);
+ te = new TenantException("message", mec);
+ te.setFaultInfo(teb);
+ assert(te.getFaultInfo()!=null);
+ assert(te.getFaultInfo().equals(teb));
+ }
+}
diff --git a/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java b/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java
index 2c2143c32e..6f06fbfb4d 100644
--- a/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java
+++ b/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/VfcManager.java
@@ -398,7 +398,7 @@ public class VfcManager {
String url;
String originalUrl;
- originalUrl = (String)nfvoUrlMap.get(step);
+ originalUrl = nfvoUrlMap.get(step);
url = String.format(originalUrl, variable);
return url;
diff --git a/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/model/RestfulResponse.java b/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/model/RestfulResponse.java
index 483c952a97..e4f7f306b2 100644
--- a/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/model/RestfulResponse.java
+++ b/adapters/mso-vfc-adapter/src/main/java/org/openecomp/mso/adapters/vfc/model/RestfulResponse.java
@@ -65,7 +65,7 @@ public class RestfulResponse {
public int getRespHeaderInt(String key) {
if(this.respHeaderMap != null) {
- String result = (String)this.respHeaderMap.get(key);
+ String result = this.respHeaderMap.get(key);
if(result != null) {
return Integer.parseInt(result);
}
@@ -75,7 +75,7 @@ public class RestfulResponse {
public long getRespHeaderLong(String key) {
if(this.respHeaderMap != null) {
- String result = (String)this.respHeaderMap.get(key);
+ String result = this.respHeaderMap.get(key);
if(result != null) {
return Long.parseLong(result);
}
@@ -85,7 +85,7 @@ public class RestfulResponse {
public String getRespHeaderStr(String key) {
if(this.respHeaderMap != null) {
- return ((String)this.respHeaderMap.get(key));
+ return this.respHeaderMap.get(key);
}
return null;
}
diff --git a/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/VfRollbackTest.java b/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/VfRollbackTest.java
new file mode 100644
index 0000000000..03de139b1d
--- /dev/null
+++ b/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/VfRollbackTest.java
@@ -0,0 +1,69 @@
+/*
+* ============LICENSE_START=======================================================
+* ONAP : SO
+* ================================================================================
+* Copyright 2018 TechMahindra
+*=================================================================================
+* 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.openecomp.mso.adapters.vnf;
+import static org.junit.Assert.assertEquals;
+import org.junit.Test;
+public class VfRollbackTest {
+ private VfRollback vfRollback = new VfRollback();
+
+ @Test
+ public void test() {
+ vfRollback.setVnfId("vnfId");
+ vfRollback.setTenantId("tenantId");
+ vfRollback.setCloudSiteId("cloudId");
+ vfRollback.setTenantCreated(true);
+ vfRollback.setVnfCreated(true);
+ vfRollback.setMsoRequest(null);
+ vfRollback.setVolumeGroupName("volumeGroupName");
+ vfRollback.setVolumeGroupId("volumeGroupId");
+ vfRollback.setRequestType("requestType");
+ vfRollback.setVolumeGroupHeatStackId("volumeGroupHeatStackId");
+ vfRollback.setBaseGroupHeatStackId("baseGroupHeatStackId");
+ vfRollback.setIsBase(true);
+ vfRollback.setVfModuleStackId("vfModuleStackId");
+ assert(vfRollback.getVnfId() != null);
+ assert(vfRollback.getTenantId() != null);
+ assert(vfRollback.getCloudSiteId() != null);
+ assert(vfRollback.getVolumeGroupName() != null);
+ assert(vfRollback.getVolumeGroupId() != null);
+ assert(vfRollback.getRequestType() != null);
+ assert(vfRollback.getVolumeGroupHeatStackId() != null);
+ assert(vfRollback.getBaseGroupHeatStackId() != null);
+ assert(vfRollback.getVfModuleStackId() != null);
+ assertEquals(vfRollback.getVnfId(), "vnfId");
+ assertEquals(vfRollback.getTenantId(),"tenantId");
+ assertEquals(vfRollback.getCloudSiteId(), "cloudId");
+ assertEquals(vfRollback.getTenantCreated(), true);
+ assertEquals(vfRollback.getVnfCreated(), true);
+ assertEquals(vfRollback.getMsoRequest(), null);
+ assertEquals(vfRollback.getVolumeGroupName(), "volumeGroupName");
+ assertEquals(vfRollback.getVolumeGroupId(), "volumeGroupId");
+ assertEquals(vfRollback.getRequestType(), "requestType");
+ assertEquals(vfRollback.getVolumeGroupHeatStackId(), "volumeGroupHeatStackId");
+ assertEquals(vfRollback.getBaseGroupHeatStackId(), "baseGroupHeatStackId");
+ assertEquals(vfRollback.isBase(), true);
+ assertEquals(vfRollback.getVfModuleStackId(), "vfModuleStackId");
+ }
+
+ @Test
+ public void testtoString() {
+ assert(vfRollback.toString() != null);
+ }
+}
diff --git a/aria/aria-rest-java-client/pom.xml b/aria/aria-rest-java-client/pom.xml
index 0af9923401..adfc25348f 100755
--- a/aria/aria-rest-java-client/pom.xml
+++ b/aria/aria-rest-java-client/pom.xml
@@ -23,7 +23,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>aria-client</groupId>
+ <groupId>org.onap.so</groupId>
<artifactId>aria-client</artifactId>
<version>1.2.0-SNAPSHOT</version>
diff --git a/aria/pom.xml b/aria/pom.xml
index 95ef93b6c8..c2617dafcc 100644
--- a/aria/pom.xml
+++ b/aria/pom.xml
@@ -17,7 +17,7 @@
<modules>
<module>aria-rest-java-client</module>
- <module>aria-rest-server</module>
+ <!-- <module>aria-rest-server</module> -->
<!-- <module>multivim-plugin</module> -->
</modules>
</project>
diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java b/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java
index 33f64c81b9..3f05720ed6 100644
--- a/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java
+++ b/bpmn/MSOCommonBPMN/src/main/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilder.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP - SO
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * 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.
@@ -44,7 +44,7 @@ import java.util.Optional;
public class ResourceRequestBuilder {
public static String CUSTOMIZATION_UUID = "customizationUUID";
- public static String SERVICE_URL_TOSCA_CSAR = "http://localhost:3099/serviceToscaCsar?serviceModelUuid=";
+ public static String SERVICE_URL_TOSCA_CSAR = "http://localhost:8080/ecomp/mso/catalog/v3/serviceToscaCsar?serviceModelUuid=";
private static MsoLogger LOGGER = MsoLogger.getMsoLogger(MsoLogger.Catalog.RA);
@@ -114,13 +114,13 @@ public class ResourceRequestBuilder {
private static String getCsarFromUuid(String uuid) throws Exception {
ResteasyClient client = new ResteasyClientBuilder().build();
- ResteasyWebTarget target = client.target(SERVICE_URL_TOSCA_CSAR + uuid + "\"");
+ ResteasyWebTarget target = client.target(SERVICE_URL_TOSCA_CSAR + uuid);
Response response = target.request().get();
String value = response.readEntity(String.class);
HashMap<String,String> map = new Gson().fromJson(value, new TypeToken<HashMap<String, String>>(){}.getType());
- File csarFile = new File(System.getProperty("mso.config.path") + "ASDC/" + map.get("NAME"));
+ File csarFile = new File(System.getProperty("mso.config.path") + "ASDC/" + map.get("name"));
if (!csarFile.exists()) {
throw new Exception("csar file does not exist.");
diff --git a/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/WorkflowTest.java b/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/WorkflowTest.java
index 6f0095fb02..849aae8aaa 100644
--- a/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/WorkflowTest.java
+++ b/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/WorkflowTest.java
@@ -133,8 +133,7 @@ public class WorkflowTest {
List<ResponseTransformer> transformerList = new ArrayList<ResponseTransformer>();
for (Field field : getClass().getFields()) {
- WorkflowTestTransformer annotation = (WorkflowTestTransformer)
- field.getAnnotation(WorkflowTestTransformer.class);
+ WorkflowTestTransformer annotation = field.getAnnotation(WorkflowTestTransformer.class);
if (annotation == null) {
continue;
diff --git a/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilderTest.java b/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilderTest.java
index 262c12e833..54442b1d5f 100644
--- a/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilderTest.java
+++ b/bpmn/MSOCommonBPMN/src/test/java/org/openecomp/mso/bpmn/common/resource/ResourceRequestBuilderTest.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* ONAP - SO
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * 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.
diff --git a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/PropertyConfigurationSetup.java b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/PropertyConfigurationSetup.java
index a1719a90ef..98659d2a62 100644
--- a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/PropertyConfigurationSetup.java
+++ b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/PropertyConfigurationSetup.java
@@ -217,7 +217,7 @@ public class PropertyConfigurationSetup {
String newTimestamp = PropertyConfiguration.getInstance().getProperties(type)
.get(PropertyConfiguration.TIMESTAMP_PROPERTY);
- if (newTimestamp != oldTimestamp) {
+ if (!newTimestamp.equals(oldTimestamp)) {
return;
}
diff --git a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/json/JsonUtils.java b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/json/JsonUtils.java
index b0152a1296..bfad9bac26 100644
--- a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/json/JsonUtils.java
+++ b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/json/JsonUtils.java
@@ -327,7 +327,7 @@ public class JsonUtils {
return null;
} else {
if (rawValue instanceof String) {
- msoLogger.debug("getJsonValue(): the raw value is a String Object=" + ((String) rawValue));
+ msoLogger.debug("getJsonValue(): the raw value is a String Object=" + rawValue);
return (String) rawValue;
} else {
msoLogger.debug("getJsonValue(): the raw value is NOT a String Object=" + rawValue.toString());
@@ -356,7 +356,7 @@ public class JsonUtils {
return null;
} else {
if (rawValue instanceof String) {
- msoLogger.debug("getJsonNodeValue(): the raw value is a String Object=" + ((String) rawValue));
+ msoLogger.debug("getJsonNodeValue(): the raw value is a String Object=" + rawValue);
return (String) rawValue;
} else {
msoLogger.debug("getJsonNodeValue(): the raw value is NOT a String Object=" + rawValue.toString());
@@ -388,7 +388,7 @@ public class JsonUtils {
return 0;
} else {
if (rawValue instanceof Integer) {
- msoLogger.debug("getJsonValue(): the raw value is an Integer Object=" + ((String) rawValue));
+ msoLogger.debug("getJsonValue(): the raw value is an Integer Object=" + rawValue);
return (Integer) rawValue;
} else {
msoLogger.debug("getJsonValue(): the raw value is NOT an Integer Object=" + rawValue.toString());
@@ -416,7 +416,7 @@ public class JsonUtils {
return false;
} else {
if (rawValue instanceof Boolean) {
- msoLogger.debug("getJsonValue(): the raw value is a Boolean Object=" + ((String) rawValue));
+ msoLogger.debug("getJsonValue(): the raw value is a Boolean Object=" + rawValue);
return (Boolean) rawValue;
} else {
msoLogger.debug("getJsonValue(): the raw value is NOT an Boolean Object=" + rawValue.toString());
@@ -462,7 +462,7 @@ public class JsonUtils {
return null;
} else {
if (rawValue instanceof JSONArray) {
- msoLogger.debug("getJsonParamValue(): keys=" + keys + " points to JSONArray: " + ((JSONArray) rawValue).toString());
+ msoLogger.debug("getJsonParamValue(): keys=" + keys + " points to JSONArray: " + rawValue.toString());
int arrayLen = ((JSONArray) rawValue).length();
if (index < 0 || arrayLen < index+1) {
msoLogger.debug("getJsonParamValue(): index: " + index + " is out of bounds for array size of " + arrayLen);
@@ -549,7 +549,7 @@ public class JsonUtils {
msoLogger.debug("getJsonValueForKey(): iterating over the keys");
Iterator <String> itr = jsonObj.keys();
while (itr.hasNext()) {
- String nextKey = (String) itr.next();
+ String nextKey = itr.next();
Object obj = jsonObj.get(nextKey);
if (obj instanceof JSONObject) {
msoLogger.debug("getJsonValueForKey(): key=" + nextKey + ", points to JSONObject, recursive call");
@@ -592,7 +592,7 @@ public class JsonUtils {
msoLogger.debug("getJsonValueForKey(): iterating over the keys");
Iterator <String> itr = jsonObj.keys();
while (itr.hasNext()) {
- String nextKey = (String) itr.next();
+ String nextKey = itr.next();
Object obj = jsonObj.get(nextKey);
if (obj instanceof JSONObject) {
msoLogger.debug("getJsonValueForKey(): key=" + nextKey + ", points to JSONObject, recursive call");
@@ -634,7 +634,7 @@ public class JsonUtils {
msoLogger.debug("getJsonBooleanValueForKey(): iterating over the keys");
Iterator <String> itr = jsonObj.keys();
while (itr.hasNext()) {
- String nextKey = (String) itr.next();
+ String nextKey = itr.next();
Object obj = jsonObj.get(nextKey);
if (obj instanceof JSONObject) {
msoLogger.debug("getJsonBooleanValueForKey(): key=" + nextKey + ", points to JSONObject, recursive call");
@@ -690,7 +690,7 @@ public class JsonUtils {
if (!jsonValueExists(jsonStr, keys)) {
return putJsonValue(jsonStr, keys, value);
} else {
- msoLogger.debug("addJsonValue(): JSON add failed, key=" + keys + "/value=" + (String) value + " already exists");
+ msoLogger.debug("addJsonValue(): JSON add failed, key=" + keys + "/value=" + value + " already exists");
return jsonStr;
}
}
@@ -826,7 +826,7 @@ public class JsonUtils {
msoLogger.debug("putJsonValue(): key=" + keyStr + " points to json object");
jsonObj = (JSONObject) keyValue;
} else {
- msoLogger.debug("putJsonValue(): key=" + keyStr + " not the last key but points to non-json object: " + (String) keyValue);
+ msoLogger.debug("putJsonValue(): key=" + keyStr + " not the last key but points to non-json object: " + keyValue);
return null;
}
} else { // at the last/new key value
diff --git a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/plugins/LoggingAndURNMappingPlugin.java b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/plugins/LoggingAndURNMappingPlugin.java
index 730c1451d5..b66169db92 100644
--- a/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/plugins/LoggingAndURNMappingPlugin.java
+++ b/bpmn/MSOCoreBPMN/src/main/java/org/openecomp/mso/bpmn/core/plugins/LoggingAndURNMappingPlugin.java
@@ -421,7 +421,7 @@ public class LoggingAndURNMappingPlugin extends AbstractProcessEnginePlugin {
try {
String id = execution.getId();
if ("START".equals(event) && id != null ) {
- startTimes.put(id, (Long)System.currentTimeMillis());
+ startTimes.put(id, System.currentTimeMillis());
} else if ("END".equals(event) && id != null) {
String prefix = (String) execution.getVariable("prefix");
diff --git a/bpmn/MSOCoreBPMN/src/test/java/org/openecomp/mso/bpmn/core/TestBaseTask.java b/bpmn/MSOCoreBPMN/src/test/java/org/openecomp/mso/bpmn/core/TestBaseTask.java
index 2d204c338a..d434ac702d 100644
--- a/bpmn/MSOCoreBPMN/src/test/java/org/openecomp/mso/bpmn/core/TestBaseTask.java
+++ b/bpmn/MSOCoreBPMN/src/test/java/org/openecomp/mso/bpmn/core/TestBaseTask.java
@@ -58,8 +58,8 @@ public class TestBaseTask {
Map<String, Object> variables = new HashMap<>();
variables.put("firstName", "Jane");
variables.put("lastName", "Doe");
- variables.put("age", (Integer)25);
- variables.put("lastVisit", (Long)1438270117000L);
+ variables.put("age", 25);
+ variables.put("lastVisit", 1438270117000L);
RuntimeService runtimeService = processEngineRule.getRuntimeService();
assertNotNull(runtimeService);
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy
new file mode 100644
index 0000000000..400b0d40d5
--- /dev/null
+++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateSDNCNetworkResource.groovy
@@ -0,0 +1,144 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * OPENECOMP - SO
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Technologies Co., Ltd. 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.openecomp.mso.bpmn.infrastructure.scripts;
+
+import static org.apache.commons.lang3.StringUtils.*;
+import groovy.xml.XmlUtil
+import groovy.json.*
+import org.openecomp.mso.bpmn.common.scripts.AbstractServiceTaskProcessor
+import org.openecomp.mso.bpmn.common.scripts.ExceptionUtil
+import org.openecomp.mso.bpmn.core.WorkflowException
+import org.openecomp.mso.bpmn.core.json.JsonUtils
+import org.openecomp.mso.rest.APIResponse
+
+import java.util.UUID;
+
+import org.camunda.bpm.engine.delegate.BpmnError
+import org.camunda.bpm.engine.runtime.Execution
+import org.apache.commons.lang3.*
+import org.apache.commons.codec.binary.Base64;
+import org.springframework.web.util.UriUtils
+import org.openecomp.mso.rest.RESTClient
+import org.openecomp.mso.rest.RESTConfig
+import org.openecomp.mso.rest.APIResponse;
+
+/**
+ * This groovy class supports the <class>CreateSDNCCNetworkResource.bpmn</class> process.
+ * flow for SDNC Network Resource Create
+ */
+public class CreateSDNCCNetworkResource extends AbstractServiceTaskProcessor {
+
+ String vfcUrl = "/vfc/rest/v1/vfcadapter"
+
+ String host = "http://mso.mso.testlab.openecomp.org:8080"
+
+ ExceptionUtil exceptionUtil = new ExceptionUtil()
+
+ JsonUtils jsonUtil = new JsonUtils()
+
+ /**
+ * Pre Process the BPMN Flow Request
+ * Inclouds:
+ * generate the nsOperationKey
+ * generate the nsParameters
+ */
+ public void preProcessRequest (Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+ String msg = ""
+ utils.log("INFO", " *** preProcessRequest() *** ", isDebugEnabled)
+ try {
+ //deal with nsName and Description
+ String nsServiceName = execution.getVariable("nsServiceName")
+ String nsServiceDescription = execution.getVariable("nsServiceDescription")
+ utils.log("INFO", "nsServiceName:" + nsServiceName + " nsServiceDescription:" + nsServiceDescription, isDebugEnabled)
+ //deal with operation key
+ String globalSubscriberId = execution.getVariable("globalSubscriberId")
+ utils.log("INFO", "globalSubscriberId:" + globalSubscriberId, isDebugEnabled)
+ String serviceType = execution.getVariable("serviceType")
+ utils.log("INFO", "serviceType:" + serviceType, isDebugEnabled)
+ String serviceId = execution.getVariable("serviceId")
+ utils.log("INFO", "serviceId:" + serviceId, isDebugEnabled)
+ String operationId = execution.getVariable("operationId")
+ utils.log("INFO", "serviceType:" + serviceType, isDebugEnabled)
+ String nodeTemplateUUID = execution.getVariable("resourceUUID")
+ utils.log("INFO", "nodeTemplateUUID:" + nodeTemplateUUID, isDebugEnabled)
+ /*
+ * segmentInformation needed as a object of segment
+ * {
+ * "domain":"",
+ * "nodeTemplateName":"",
+ * "nodeType":"",
+ * "nsParameters":{
+ * //this is the nsParameters sent to VF-C
+ * }
+ * }
+ */
+ String nsParameters = execution.getVariable("resourceParameters")
+ utils.log("INFO", "nsParameters:" + nsParameters, isDebugEnabled)
+ String nsOperationKey = """{
+ "globalSubscriberId":"${globalSubscriberId}",
+ "serviceType":"${serviceType}",
+ "serviceId":"${serviceId}",
+ "operationId":"${operationId}",
+ "nodeTemplateUUID":"${nodeTemplateUUID}"
+ }"""
+ execution.setVariable("nsOperationKey", nsOperationKey);
+ execution.setVariable("nsParameters", nsParameters)
+
+
+ } catch (BpmnError e) {
+ throw e;
+ } catch (Exception ex){
+ msg = "Exception in preProcessRequest " + ex.getMessage()
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+ }
+ utils.log("INFO"," ***** Exit preProcessRequest *****", isDebugEnabled)
+ }
+
+
+ /**
+ * post request
+ * url: the url of the request
+ * requestBody: the body of the request
+ */
+ private APIResponse postRequest(Execution execution, String url, String requestBody){
+ def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+ utils.log("INFO"," ***** Started Execute VFC adapter Post Process *****", isDebugEnabled)
+ utils.log("INFO","url:"+url +"\nrequestBody:"+ requestBody, isDebugEnabled)
+ APIResponse apiResponse = null
+ try{
+ RESTConfig config = new RESTConfig(url);
+ RESTClient client = new RESTClient(config).addHeader("Content-Type", "application/json").addHeader("Accept","application/json").addHeader("Authorization","Basic QlBFTENsaWVudDpwYXNzd29yZDEk");
+ apiResponse = client.httpPost(requestBody)
+ utils.log("INFO","response code:"+ apiResponse.getStatusCode() +"\nresponse body:"+ apiResponse.getResponseBodyAsString(), isDebugEnabled)
+ utils.log("INFO","======== Completed Execute VF-C adapter Post Process ======== ", isDebugEnabled)
+ }catch(Exception e){
+ utils.log("ERROR","Exception occured while executing AAI Post Call. Exception is: \n" + e, isDebugEnabled)
+ throw new BpmnError("MSOWorkflowException")
+ }
+ return apiResponse
+ }
+
+ public void postCreateSDNCCall(Execution execution){
+
+ }
+}
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoCreateVFCNetworkServiceInstance.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVFCNSResource.groovy
index 06cf8c3cd1..970a4f7d07 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoCreateVFCNetworkServiceInstance.groovy
+++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/CreateVFCNSResource.groovy
@@ -44,7 +44,7 @@ import org.openecomp.mso.rest.APIResponse;
* This groovy class supports the <class>DoCreateVFCNetworkServiceInstance.bpmn</class> process.
* flow for VFC Network Service Create
*/
-public class DoCreateVFCNetworkServiceInstance extends AbstractServiceTaskProcessor {
+public class CreateVFCNSResource extends AbstractServiceTaskProcessor {
String vfcUrl = "/vfc/rest/v1/vfcadapter"
@@ -54,7 +54,7 @@ public class DoCreateVFCNetworkServiceInstance extends AbstractServiceTaskProces
JsonUtils jsonUtil = new JsonUtils()
- /**
+ /**CreateVFCNSResource
* Pre Process the BPMN Flow Request
* Inclouds:
* generate the nsOperationKey
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoUpdateE2EServiceInstance.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoUpdateE2EServiceInstance.groovy
new file mode 100644
index 0000000000..857ed8d21a
--- /dev/null
+++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/DoUpdateE2EServiceInstance.groovy
@@ -0,0 +1,545 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP - SO
+ * ================================================================================
+ * Copyright (C) 2018 Huawei Technologies Co., Ltd. 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.openecomp.mso.bpmn.infrastructure.scripts;
+
+import static org.apache.commons.lang3.StringUtils.*;
+import groovy.xml.XmlUtil
+import groovy.json.*
+
+import org.openecomp.mso.bpmn.core.domain.ServiceDecomposition
+import org.openecomp.mso.bpmn.core.domain.ServiceInstance
+import org.openecomp.mso.bpmn.core.domain.ModelInfo
+import org.openecomp.mso.bpmn.core.json.JsonUtils
+import org.openecomp.mso.bpmn.common.scripts.AaiUtil
+import org.openecomp.mso.bpmn.common.scripts.AbstractServiceTaskProcessor
+import org.openecomp.mso.bpmn.common.scripts.ExceptionUtil
+import org.openecomp.mso.bpmn.common.scripts.SDNCAdapterUtils
+import org.openecomp.mso.bpmn.core.RollbackData
+import org.openecomp.mso.bpmn.core.WorkflowException
+import org.openecomp.mso.rest.APIResponse;
+import org.openecomp.mso.rest.RESTClient
+import org.openecomp.mso.rest.RESTConfig
+
+import java.util.UUID;
+import javax.xml.parsers.DocumentBuilder
+import javax.xml.parsers.DocumentBuilderFactory
+
+import org.camunda.bpm.engine.delegate.BpmnError
+import org.camunda.bpm.engine.runtime.Execution
+import org.json.JSONObject;
+import org.json.JSONArray;
+import org.apache.commons.lang3.*
+import org.apache.commons.codec.binary.Base64;
+import org.springframework.web.util.UriUtils;
+
+import org.w3c.dom.Document
+import org.w3c.dom.Element
+import org.w3c.dom.Node
+import org.w3c.dom.NodeList
+import org.xml.sax.InputSource
+/**
+ * This groovy class supports the <class>DoCreateServiceInstance.bpmn</class> process.
+ *
+ * Inputs:
+ * @param - msoRequestId
+ * @param - globalSubscriberId
+ * @param - subscriptionServiceType
+ * @param - serviceInstanceId
+ * @param - serviceInstanceName - O
+ * @param - serviceModelInfo
+ * @param - productFamilyId
+ * @param - disableRollback
+ * @param - failExists - TODO
+ * @param - serviceInputParams (should contain aic_zone for serviceTypes TRANSPORT,ATM)
+ * @param - sdncVersion ("1610")
+ * @param - serviceDecomposition - Decomposition for R1710
+ * (if macro provides serviceDecompsition then serviceModelInfo, serviceInstanceId & serviceInstanceName will be ignored)
+ *
+ * Outputs:
+ * @param - rollbackData (localRB->null)
+ * @param - rolledBack (no localRB->null, localRB F->false, localRB S->true)
+ * @param - WorkflowException
+ * @param - serviceInstanceName - (GET from AAI if null in input)
+ *
+ */
+public class DoUpdateE2EServiceInstance extends AbstractServiceTaskProcessor {
+
+ String Prefix="DUPDSI_"
+ private static final String DebugFlag = "isDebugEnabled"
+
+ ExceptionUtil exceptionUtil = new ExceptionUtil()
+ JsonUtils jsonUtil = new JsonUtils()
+
+ public void preProcessRequest (Execution execution) {
+ //only for dug
+ execution.setVariable("isDebugLogEnabled","true")
+ execution.setVariable("unit_test", "true")
+ execution.setVariable("skipVFC", "true")
+
+ def method = getClass().getSimpleName() + '.preProcessRequest(' +'execution=' + execution.getId() +')'
+ def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+ utils.log("INFO","Entered " + method, isDebugEnabled)
+ String msg = ""
+ utils.log("INFO"," ***** Enter DoUpdateE2EServiceInstance preProcessRequest *****", isDebugEnabled)
+
+ utils.log("INFO"," unit test : " + execution.getVariable("unit_test"), isDebugEnabled)
+
+ try {
+ execution.setVariable("prefix", Prefix)
+ //Inputs
+ //requestDetails.subscriberInfo. for AAI GET & PUT & SDNC assignToplology
+ String globalSubscriberId = execution.getVariable("globalSubscriberId") //globalCustomerId
+ utils.log("INFO"," ***** globalSubscriberId *****" + globalSubscriberId, isDebugEnabled)
+
+ //requestDetails.requestParameters. for AAI PUT & SDNC assignTopology
+ String serviceType = execution.getVariable("serviceType")
+ utils.log("INFO"," ***** serviceType *****" + serviceType, isDebugEnabled)
+
+ //requestDetails.requestParameters. for SDNC assignTopology
+ String productFamilyId = execution.getVariable("productFamilyId") //AAI productFamilyId
+
+ if (isBlank(globalSubscriberId)) {
+ msg = "Input globalSubscriberId is null"
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+ }
+
+ if (isBlank(serviceType)) {
+ msg = "Input serviceType is null"
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+ }
+
+ //Generated in parent for AAI
+ String serviceInstanceId = execution.getVariable("serviceInstanceId")
+ if (isBlank(serviceInstanceId)){
+ msg = "Input serviceInstanceId is null"
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+ }
+
+ if (productFamilyId == null) {
+ execution.setVariable("productFamilyId", "")
+ }
+
+ String sdncCallbackUrl = execution.getVariable('URN_mso_workflow_sdncadapter_callback')
+ if (isBlank(sdncCallbackUrl)) {
+ msg = "URN_mso_workflow_sdncadapter_callback is null"
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+ }
+ execution.setVariable("sdncCallbackUrl", sdncCallbackUrl)
+ utils.log("INFO","SDNC Callback URL: " + sdncCallbackUrl, isDebugEnabled)
+
+ //requestDetails.modelInfo.for AAI PUT servieInstanceData
+ //requestDetails.requestInfo. for AAI GET/PUT serviceInstanceData
+ String serviceInstanceName = execution.getVariable("serviceInstanceName")
+ //String serviceInstanceId = execution.getVariable("serviceInstanceId")
+ String uuiRequest = execution.getVariable("uuiRequest")
+ utils.log("INFO","uuiRequest: " + uuiRequest, isDebugEnabled)
+
+ String modelInvariantUuid = jsonUtil.getJsonValue(uuiRequest, "service.serviceDefId")
+ utils.log("INFO","modelInvariantUuid: " + modelInvariantUuid, isDebugEnabled)
+
+ String modelUuid = jsonUtil.getJsonValue(uuiRequest, "service.templateId")
+ utils.log("INFO","modelUuid: " + modelUuid, isDebugEnabled)
+
+ String serviceModelName = jsonUtil.getJsonValue(uuiRequest, "service.parameters.templateName")
+ utils.log("INFO","serviceModelName: " + serviceModelName, isDebugEnabled)
+ execution.setVariable("serviceModelName", serviceModelName)
+
+ //aai serviceType and Role can be setted as fixed value now.
+ String aaiServiceType = serviceType
+ String aaiServiceRole = serviceType+"Role"
+
+ execution.setVariable("modelInvariantUuid", modelInvariantUuid)
+ execution.setVariable("model-invariant-id-target", modelInvariantUuid)
+ execution.setVariable("modelUuid", modelUuid)
+ execution.setVariable("model-version-id-target", modelUuid_target)
+
+ //AAI PUT
+ String oStatus = execution.getVariable("initialStatus") ?: ""
+ utils.log("INFO","oStatus: " + oStatus, isDebugEnabled)
+ if ("TRANSPORT".equalsIgnoreCase(serviceType))
+ {
+ oStatus = "Update"
+ }
+
+ String statusLine = isBlank(oStatus) ? "" : "<orchestration-status>${oStatus}</orchestration-status>"
+ utils.log("INFO","statusLine: " + statusLine, isDebugEnabled)
+ AaiUtil aaiUriUtil = new AaiUtil(this)
+ utils.log("INFO","start create aai uri: " + aaiUriUtil, isDebugEnabled)
+ String aai_uri = aaiUriUtil.getBusinessCustomerUri(execution)
+ utils.log("INFO","aai_uri: " + aai_uri, isDebugEnabled)
+ String namespace = aaiUriUtil.getNamespaceFromUri(aai_uri)
+ utils.log("INFO","namespace: " + namespace, isDebugEnabled)
+ /*
+ String serviceInstanceData =
+ """<service-instance xmlns=\"${namespace}\">
+ <service-instance-id>${serviceInstanceId}</service-instance-id>
+ <service-instance-name>${serviceInstanceName}</service-instance-name>
+ <service-type>${aaiServiceType}</service-type>
+ <service-role>${aaiServiceRole}</service-role>
+ ${statusLine}
+ <model-invariant-id>${modelInvariantUuid}</model-invariant-id>
+ <model-version-id>${modelUuid}</model-version-id>
+ </service-instance>""".trim()
+ */
+ //begin only for test
+ String serviceInstanceData =
+ """<service-instance xmlns=\"${namespace}\">
+ <service-instance-id>${serviceInstanceId}</service-instance-id>
+ <service-instance-name>${serviceInstanceName}</service-instance-name>
+ <service-type>${aaiServiceType}</service-type>
+ <service-role>${aaiServiceRole}</service-role>
+ ${statusLine}
+ </service-instance>""".trim()
+ //end only for test
+ execution.setVariable("serviceInstanceData", serviceInstanceData)
+ utils.log("INFO","serviceInstanceData: " + serviceInstanceData, isDebugEnabled)
+ utils.logAudit(serviceInstanceData)
+ utils.log("INFO", " aai_uri " + aai_uri + " namespace:" + namespace, isDebugEnabled)
+ utils.log("INFO", " 'payload' to create Service Instance in AAI - " + "\n" + serviceInstanceData, isDebugEnabled)
+
+ execution.setVariable("serviceSDNCCreate", "false")
+ execution.setVariable("operationStatus", "Waiting deploy resource...")
+
+ } catch (BpmnError e) {
+ throw e;
+ } catch (Exception ex){
+ msg = "Exception in preProcessRequest " + ex.getMessage()
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+ }
+ utils.log("INFO", "Exited " + method, isDebugEnabled)
+ }
+
+ public void postProcessAAIGET(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+ utils.log("INFO"," ***** postProcessAAIGET ***** ", isDebugEnabled)
+ String msg = ""
+
+ try {
+ String serviceInstanceId = execution.getVariable("serviceInstanceId")
+ boolean foundInAAI = execution.getVariable("GENGS_FoundIndicator")
+ String serviceType = ""
+
+ if(foundInAAI){
+ utils.log("INFO","Found Service-instance in AAI", isDebugEnabled)
+
+ String siData = execution.getVariable("GENGS_service")
+ utils.log("INFO", "SI Data", isDebugEnabled)
+ if (isBlank(siData))
+ {
+ msg = "Could not retrive ServiceInstance data from AAI, Id:" + serviceInstanceId
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 500, msg)
+ }
+ else
+ {
+ utils.log("INFO", "SI Data" + siData, isDebugEnabled)
+
+ InputSource source = new InputSource(new StringReader(siData));
+ DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
+ DocumentBuilder docBuilder = docFactory.newDocumentBuilder()
+ Document serviceXml = docBuilder.parse(source)
+ serviceXml.getDocumentElement().normalize()
+
+ // Get Template uuid and version
+ if (utils.nodeExists(siData, "model-invariant-id") && utils.nodeExists(siData, "model-version-id") ) {
+ utils.log("INFO", "SI Data model-invariant-id and model-version-id exist:", isDebugEnabled)
+ def modelInvariantId = serviceXml.getElementsByTagName("model-invariant-id").item(0).getTextContent()
+ def modelVersionId = serviceXml.getElementsByTagName("model-version-id").item(0).getTextContent()
+
+ // Set Original Template info
+ execution.setVariable("model-invariant-id-original", modelInvariantId)
+ execution.setVariable("model-version-id-original", modelVersionId)
+ }
+
+ //Confirm there are no related service instances (vnf/network or volume)
+ if (utils.nodeExists(siData, "relationship-list")) {
+ utils.log("INFO", "SI Data relationship-list exists:", isDebugEnabled)
+
+ //test(siData)
+ NodeList nodeList = serviceXml.getElementsByTagName("relationship")
+ JSONArray jArray = new JSONArray()
+ for (int x = 0; x < nodeList.getLength(); x++) {
+ Node node = nodeList.item(x)
+ if (node.getNodeType() == Node.ELEMENT_NODE) {
+ Element eElement = (Element) node
+ def e = eElement.getElementsByTagName("related-to").item(0).getTextContent() //for ns
+ if(e.equals("service-instance")){
+ def relatedObject = eElement.getElementsByTagName("related-link").item(0).getTextContent()
+ utils.log("INFO", "ServiceInstance Related NS :" + relatedObject, isDebugEnabled)
+ NodeList dataList = node.getChildNodes()
+ if(null != dataList) {
+ JSONObject jObj = new JSONObject()
+ for (int i = 0; i < dataList.getLength(); i++) {
+ Node dNode = dataList.item(i)
+ if(dNode.getNodeName() == "relationship-data") {
+ Element rDataEle = (Element)dNode
+ def eKey = rDataEle.getElementsByTagName("relationship-key").item(0).getTextContent()
+ def eValue = rDataEle.getElementsByTagName("relationship-value").item(0).getTextContent()
+ if(eKey.equals("service-instance.service-instance-id")){
+ jObj.put("resourceInstanceId", eValue)
+ }
+ }
+ else if(dNode.getNodeName() == "related-to-property"){
+ Element rDataEle = (Element)dNode
+ def eKey = rDataEle.getElementsByTagName("property-key").item(0).getTextContent()
+ def eValue = rDataEle.getElementsByTagName("property-value").item(0).getTextContent()
+ if(eKey.equals("service-instance.service-instance-name")){
+ jObj.put("resourceType", eValue)
+ }
+ }
+ }
+ utils.log("INFO", "Relationship related to Resource:" + jObj.toString(), isDebugEnabled)
+ jArray.put(jObj)
+ }
+ //for overlay/underlay
+ }else if (e.equals("configuration")){
+ def relatedObject = eElement.getElementsByTagName("related-link").item(0).getTextContent()
+ utils.log("INFO", "ServiceInstance Related Configuration :" + relatedObject, isDebugEnabled)
+ NodeList dataList = node.getChildNodes()
+ if(null != dataList) {
+ JSONObject jObj = new JSONObject()
+ for (int i = 0; i < dataList.getLength(); i++) {
+ Node dNode = dataList.item(i)
+ if(dNode.getNodeName() == "relationship-data") {
+ Element rDataEle = (Element)dNode
+ def eKey = rDataEle.getElementsByTagName("relationship-key").item(0).getTextContent()
+ def eValue = rDataEle.getElementsByTagName("relationship-value").item(0).getTextContent()
+ if(eKey.equals("configuration.configuration-id")){
+ jObj.put("resourceInstanceId", eValue)
+ }
+ }
+ else if(dNode.getNodeName() == "related-to-property"){
+ Element rDataEle = (Element)dNode
+ def eKey = rDataEle.getElementsByTagName("property-key").item(0).getTextContent()
+ def eValue = rDataEle.getElementsByTagName("property-value").item(0).getTextContent()
+ if(eKey.equals("configuration.configuration-type")){
+ jObj.put("resourceType", eValue)
+ }
+ }
+ }
+ utils.log("INFO", "Relationship related to Resource:" + jObj.toString(), isDebugEnabled)
+ jArray.put(jObj)
+ }
+ }
+ }
+ }
+ execution.setVariable("serviceRelationShip", jArray.toString())
+ }
+ }
+ }else{
+ boolean succInAAI = execution.getVariable("GENGS_SuccessIndicator")
+ if(!succInAAI){
+ utils.log("INFO","Error getting Service-instance from AAI", + serviceInstanceId, isDebugEnabled)
+ WorkflowException workflowException = execution.getVariable("WorkflowException")
+ utils.logAudit("workflowException: " + workflowException)
+ if(workflowException != null){
+ exceptionUtil.buildAndThrowWorkflowException(execution, workflowException.getErrorCode(), workflowException.getErrorMessage())
+ }
+ else
+ {
+ msg = "Failure in postProcessAAIGET GENGS_SuccessIndicator:" + succInAAI
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 2500, msg)
+ }
+ }
+
+ utils.log("INFO","Service-instance NOT found in AAI. Silent Success", isDebugEnabled)
+ }
+ }catch (BpmnError e) {
+ throw e;
+ } catch (Exception ex) {
+ msg = "Exception in DoDeleteE2EServiceInstance.postProcessAAIGET. " + ex.getMessage()
+ utils.log("INFO", msg, isDebugEnabled)
+ exceptionUtil.buildAndThrowWorkflowException(execution, 7000, msg)
+ }
+ utils.log("INFO"," *** Exit postProcessAAIGET *** ", isDebugEnabled)
+ }
+
+
+ public void preInitResourcesOperStatus(Execution execution){
+ def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+
+ utils.log("INFO", " ======== STARTED preInitResourcesOperStatus Process ======== ", isDebugEnabled)
+ try{
+ String serviceId = execution.getVariable("serviceInstanceId")
+ String operationId = execution.getVariable("operationId")
+ String operationType = execution.getVariable("operationType")
+ String resourceTemplateUUIDs = ""
+ String result = "processing"
+ String progress = "0"
+ String reason = ""
+ String operationContent = "Prepare service updating"
+ utils.log("INFO", "Generated new operation for Service Instance serviceId:" + serviceId + " operationId:" + operationId + " operationType:" + operationType, isDebugEnabled)
+ serviceId = UriUtils.encode(serviceId,"UTF-8")
+ execution.setVariable("serviceInstanceId", serviceId)
+ execution.setVariable("operationId", operationId)
+ execution.setVariable("operationType", operationType)
+
+ String serviceRelationShip = execution.getVariable("serviceRelationShip")
+
+ def jsonSlurper = new JsonSlurper()
+ def jsonOutput = new JsonOutput()
+ List relationShipList = jsonSlurper.parseText(serviceRelationShip)
+
+ if (relationShipList != null) {
+ relationShipList.each {
+ resourceTemplateUUIDs = resourceTemplateUUIDs + it.resourceInstanceId + ":"
+ }
+ }
+ execution.setVariable("URN_mso_openecomp_adapters_db_endpoint","http://mso.mso.testlab.openecomp.org:8080/dbadapters/RequestsDbAdapter")
+
+ String payload =
+ """<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:ns="http://org.openecomp.mso/requestsdb">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <ns:initResourceOperationStatus xmlns:ns="http://org.openecomp.mso/requestsdb">
+ <serviceId>${serviceId}</serviceId>
+ <operationId>${operationId}</operationId>
+ <operationType>${operationType}</operationType>
+ <resourceTemplateUUIDs>${resourceTemplateUUIDs}</resourceTemplateUUIDs>
+ </ns:initResourceOperationStatus>
+ </soapenv:Body>
+ </soapenv:Envelope>"""
+
+ payload = utils.formatXml(payload)
+ execution.setVariable("CVFMI_initResOperStatusRequest", payload)
+ utils.log("INFO", "Outgoing initResourceOperationStatus: \n" + payload, isDebugEnabled)
+ utils.logAudit("CreateVfModuleInfra Outgoing initResourceOperationStatus Request: " + payload)
+
+ }catch(Exception e){
+ utils.log("ERROR", "Exception Occured Processing preInitResourcesOperStatus. Exception is:\n" + e, isDebugEnabled)
+ execution.setVariable("CVFMI_ErrorResponse", "Error Occurred during preInitResourcesOperStatus Method:\n" + e.getMessage())
+ }
+ utils.log("INFO", "======== COMPLETED preInitResourcesOperStatus Process ======== ", isDebugEnabled)
+ }
+
+ /**
+ * Init the service Operation Status
+ */
+ public void preUpdateServiceOperationStatus(Execution execution){
+ def method = getClass().getSimpleName() + '.preUpdateServiceOperationStatus(' +'execution=' + execution.getId() +')'
+ def isDebugEnabled = execution.getVariable("isDebugLogEnabled")
+ utils.log("INFO","Entered " + method, isDebugEnabled)
+
+ try{
+ String serviceId = execution.getVariable("serviceInstanceId")
+ String operationId = execution.getVariable("operationId")
+ String serviceName = execution.getVariable("serviceInstanceName")
+ String userId = ""
+ String result = "processing"
+ String progress = execution.getVariable("progress")
+ utils.log("INFO", "progress: " + progress , isDebugEnabled)
+ if ("100".equalsIgnoreCase(progress))
+ {
+ result = "finished"
+ }
+ String reason = ""
+ String operationContent = "Prepare service : " + execution.getVariable("operationStatus")
+
+ utils.log("INFO", "Generated new operation for Service Instance serviceId:" + serviceId + " operationId:" + operationId, isDebugEnabled)
+ serviceId = UriUtils.encode(serviceId,"UTF-8")
+ execution.setVariable("serviceInstanceId", serviceId)
+ execution.setVariable("operationId", operationId)
+ execution.setVariable("operationType", operationType)
+
+ def dbAdapterEndpoint = "http://mso.mso.testlab.openecomp.org:8080/dbadapters/RequestsDbAdapter"
+ execution.setVariable("CVFMI_dbAdapterEndpoint", dbAdapterEndpoint)
+ utils.log("INFO", "DB Adapter Endpoint is: " + dbAdapterEndpoint, isDebugEnabled)
+
+ execution.setVariable("URN_mso_openecomp_adapters_db_endpoint","http://mso.mso.testlab.openecomp.org:8080/dbadapters/RequestsDbAdapter")
+ String payload =
+ """<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+ xmlns:ns="http://org.openecomp.mso/requestsdb">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <ns:updateServiceOperationStatus xmlns:ns="http://org.openecomp.mso/requestsdb">
+ <serviceId>${serviceId}</serviceId>
+ <operationId>${operationId}</operationId>
+ <serviceName>${serviceName}</serviceName>
+ <operationType>${operationType}</operationType>
+ <userId>${userId}</userId>
+ <result>${result}</result>
+ <operationContent>${operationContent}</operationContent>
+ <progress>${progress}</progress>
+ <reason>${reason}</reason>
+ </ns:updateServiceOperationStatus>
+ </soapenv:Body>
+ </soapenv:Envelope>"""
+
+ payload = utils.formatXml(payload)
+ execution.setVariable("CVFMI_updateServiceOperStatusRequest", payload)
+ utils.log("INFO", "Outgoing preUpdateServiceOperationStatus: \n" + payload, isDebugEnabled)
+
+
+ }catch(Exception e){
+ utils.log("ERROR", "Exception Occured Processing preUpdateServiceOperationStatus. Exception is:\n" + e, isDebugEnabled)
+ execution.setVariable("CVFMI_ErrorResponse", "Error Occurred during preUpdateServiceOperationStatus Method:\n" + e.getMessage())
+ }
+ utils.log("INFO", "======== COMPLETED preUpdateServiceOperationStatus Process ======== ", isDebugEnabled)
+ utils.log("INFO", "Exited " + method, isDebugEnabled)
+ }
+
+ public void postResourcesOperStatus(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+
+ }
+
+ public void preCompareModelVersions(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+
+ }
+
+ public void postCompareModelVersions(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+ }
+
+ public void preProcessForAddResource(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+
+ }
+
+ public void postProcessForAddResource(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+
+ }
+
+ public void preProcessForDeleteResource(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+
+ }
+
+ public void postProcessForDeleteResource(Execution execution) {
+ def isDebugEnabled=execution.getVariable("isDebugLogEnabled")
+
+ }
+
+ public void postConfigRequest(execution){
+ //now do noting
+ }
+
+
+}
+
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/UpdateCustomE2EServiceInstance.groovy b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/UpdateCustomE2EServiceInstance.groovy
index c91f353293..44eaa349b6 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/UpdateCustomE2EServiceInstance.groovy
+++ b/bpmn/MSOInfrastructureBPMN/src/main/groovy/org/openecomp/mso/bpmn/infrastructure/scripts/UpdateCustomE2EServiceInstance.groovy
@@ -118,6 +118,15 @@ public class UpdateCustomE2EServiceInstance extends AbstractServiceTaskProcessor
} else {
execution.setVariable("serviceType", serviceType)
}
+
+ //operationId
+ String operationId = jsonUtil.getJsonValue(siRequest, "operationId")
+ if (isBlank(operationId)) {
+ operationId = UUID.randomUUID().toString()
+ }
+ execution.setVariable("operationId", operationId)
+ execution.setVariable("operationType", "UPDATE")
+
execution.setVariable("URN_mso_adapters_openecomp_db_endpoint","http://mso.mso.testlab.openecomp.org:8080/dbadapters/RequestsDbAdapter")
} catch (BpmnError e) {
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateSDNCNetworkResource.bpmn b/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateSDNCNetworkResource.bpmn
new file mode 100644
index 0000000000..c88f78763b
--- /dev/null
+++ b/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateSDNCNetworkResource.bpmn
@@ -0,0 +1,97 @@
+<?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" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="1.10.0">
+ <bpmn:process id="CreateSDNCNetworkResource" name="CreateSDNCNetworkResource" isExecutable="true">
+ <bpmn:startEvent id="createNS_StartEvent" name="createNS_StartEvent">
+ <bpmn:outgoing>SequenceFlow_1qo2pln</bpmn:outgoing>
+ </bpmn:startEvent>
+ <bpmn:sequenceFlow id="SequenceFlow_1qo2pln" sourceRef="createNS_StartEvent" targetRef="PreprocessIncomingRequest_task" />
+ <bpmn:sequenceFlow id="SequenceFlow_0khtova" sourceRef="PreprocessIncomingRequest_task" targetRef="CallActivity_1600xlj" />
+ <bpmn:scriptTask id="PreprocessIncomingRequest_task" name="Preprocess Incoming Request" scriptFormat="groovy">
+ <bpmn:incoming>SequenceFlow_1qo2pln</bpmn:incoming>
+ <bpmn:outgoing>SequenceFlow_0khtova</bpmn:outgoing>
+ <bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new CreateSDNCNetworkResource()
+dcsi.preProcessRequest(execution)]]></bpmn:script>
+ </bpmn:scriptTask>
+ <bpmn:endEvent id="EndEvent_1x6k78c" name="create SDNC call end">
+ <bpmn:incoming>SequenceFlow_0ow44q0</bpmn:incoming>
+ </bpmn:endEvent>
+ <bpmn:callActivity id="CallActivity_1600xlj" name="Call SDNC RSRC Create&#10; Adapter V1&#10;" calledElement="sdncAdapter">
+ <bpmn:extensionElements>
+ <camunda:in source="CRENWKI_activateSDNCRequest" target="sdncAdapterWorkflowRequest" />
+ <camunda:in source="mso-request-id" target="mso-request-id" />
+ <camunda:in source="mso-service-instance-id" target="mso-service-instance-id" />
+ <camunda:out source="sdncAdapterResponse" target="CRENWKI_activateSDNCResponse" />
+ <camunda:out source="SDNCA_ResponseCode" target="CRENWKI_sdncActivateReturnCode" />
+ <camunda:out source="SDNCA_SuccessIndicator" target="SDNCA_SuccessIndicator" />
+ <camunda:out source="WorkflowException" target="WorkflowException" />
+ </bpmn:extensionElements>
+ <bpmn:incoming>SequenceFlow_0khtova</bpmn:incoming>
+ <bpmn:outgoing>SequenceFlow_1xk5xed</bpmn:outgoing>
+ </bpmn:callActivity>
+ <bpmn:sequenceFlow id="SequenceFlow_1xk5xed" sourceRef="CallActivity_1600xlj" targetRef="Task_023hred" />
+ <bpmn:sequenceFlow id="SequenceFlow_0ow44q0" sourceRef="Task_023hred" targetRef="EndEvent_1x6k78c" />
+ <bpmn:scriptTask id="Task_023hred" name="post SDNC create call">
+ <bpmn:incoming>SequenceFlow_1xk5xed</bpmn:incoming>
+ <bpmn:outgoing>SequenceFlow_0ow44q0</bpmn:outgoing>
+ <bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new CreateSDNCNetworkResource()
+dcsi.postCreateSDNCCall(execution)]]></bpmn:script>
+ </bpmn:scriptTask>
+ </bpmn:process>
+ <bpmndi:BPMNDiagram id="BPMNDiagram_1">
+ <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateSDNCNetworkResource">
+ <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="createNS_StartEvent">
+ <dc:Bounds x="175" y="111" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="152" y="147" width="83" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1qo2pln_di" bpmnElement="SequenceFlow_1qo2pln">
+ <di:waypoint xsi:type="dc:Point" x="211" y="129" />
+ <di:waypoint xsi:type="dc:Point" x="251" y="129" />
+ <di:waypoint xsi:type="dc:Point" x="251" y="129" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="129" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="266" y="123" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0khtova_di" bpmnElement="SequenceFlow_0khtova">
+ <di:waypoint xsi:type="dc:Point" x="393" y="129" />
+ <di:waypoint xsi:type="dc:Point" x="544" y="129" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="423.5" y="108" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_03j6ogo_di" bpmnElement="PreprocessIncomingRequest_task">
+ <dc:Bounds x="293" y="89" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="EndEvent_15pcuuc_di" bpmnElement="EndEvent_1x6k78c">
+ <dc:Bounds x="951" y="111" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="912" y="153" width="85" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="CallActivity_1600xlj_di" bpmnElement="CallActivity_1600xlj">
+ <dc:Bounds x="544" y="89" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1xk5xed_di" bpmnElement="SequenceFlow_1xk5xed">
+ <di:waypoint xsi:type="dc:Point" x="644" y="129" />
+ <di:waypoint xsi:type="dc:Point" x="800" y="129" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="677" y="108" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0ow44q0_di" bpmnElement="SequenceFlow_0ow44q0">
+ <di:waypoint xsi:type="dc:Point" x="900" y="129" />
+ <di:waypoint xsi:type="dc:Point" x="951" y="129" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="880.5" y="108" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_0gyej62_di" bpmnElement="Task_023hred">
+ <dc:Bounds x="800" y="89" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ </bpmndi:BPMNPlane>
+ </bpmndi:BPMNDiagram>
+</bpmn:definitions>
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVFCNSResource.bpmn b/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVFCNSResource.bpmn
index 29dbca4e55..e6d4af3a6b 100644
--- a/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVFCNSResource.bpmn
+++ b/bpmn/MSOInfrastructureBPMN/src/main/resources/process/CreateVFCNSResource.bpmn
@@ -11,21 +11,21 @@
<bpmn:incoming>SequenceFlow_0khtova</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_1uiz85h</bpmn:outgoing>
<bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def dcsi = new DoCreateVFCNetworkServiceInstance()
+def dcsi = new CreateVFCNSResource()
dcsi.createNetworkService(execution)]]></bpmn:script>
</bpmn:scriptTask>
<bpmn:scriptTask id="PreprocessIncomingRequest_task" name="Preprocess Incoming Request" scriptFormat="groovy">
<bpmn:incoming>SequenceFlow_1qo2pln</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0khtova</bpmn:outgoing>
<bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def dcsi = new DoCreateVFCNetworkServiceInstance()
+def dcsi = new CreateVFCNSResource()
dcsi.preProcessRequest(execution)]]></bpmn:script>
</bpmn:scriptTask>
<bpmn:scriptTask id="instantiate_NSTask" name="Instantiate Network Service" scriptFormat="groovy">
<bpmn:incoming>createNSSuccess_SequenceFlow</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_1ywe21t</bpmn:outgoing>
<bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def dcsi = new DoCreateVFCNetworkServiceInstance()
+def dcsi = new CreateVFCNSResource()
dcsi.instantiateNetworkService(execution)]]></bpmn:script>
</bpmn:scriptTask>
<bpmn:exclusiveGateway id="ExclusiveGateway_0zfksms" name="Create NS Success?">
@@ -77,14 +77,14 @@ dcsi.instantiateNetworkService(execution)]]></bpmn:script>
<bpmn:incoming>SequenceFlow_1gsbpxj</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0xqo13p</bpmn:outgoing>
<bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def dcsi = new DoCreateVFCNetworkServiceInstance()
+def dcsi = new CreateVFCNSResource()
dcsi.queryNSProgress(execution)]]></bpmn:script>
</bpmn:scriptTask>
<bpmn:scriptTask id="finishNSCreate_Task" name="Add NS RelationShip" scriptFormat="groovy">
<bpmn:incoming>operationFinished_SequenceFlow</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_0cq2q6g</bpmn:outgoing>
<bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def dcsi = new DoCreateVFCNetworkServiceInstance()
+def dcsi = new CreateVFCNSResource()
dcsi.addNSRelationship(execution)]]></bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="SequenceFlow_0xqo13p" sourceRef="queryJob_Task" targetRef="ExclusiveGateway_15492gl" />
@@ -92,13 +92,13 @@ dcsi.addNSRelationship(execution)]]></bpmn:script>
<bpmn:incoming>operationProcessing_SequenceFlow</bpmn:incoming>
<bpmn:outgoing>SequenceFlow_1gsbpxj</bpmn:outgoing>
<bpmn:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
-def dcsi = new DoCreateVFCNetworkServiceInstance()
+def dcsi = new CreateVFCNSResource()
dcsi.timeDelay(execution)]]></bpmn:script>
</bpmn:scriptTask>
<bpmn:sequenceFlow id="SequenceFlow_1gsbpxj" sourceRef="timeDelay_Task" targetRef="queryJob_Task" />
</bpmn:process>
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
- <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="DoCreateVFCNetworkServiceInstance">
+ <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="CreateVFCNSResource">
<bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="createNS_StartEvent">
<dc:Bounds x="175" y="111" width="36" height="36" />
<bpmndi:BPMNLabel>
diff --git a/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoUpdateE2EServiceInstance.bpmn b/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoUpdateE2EServiceInstance.bpmn
new file mode 100644
index 0000000000..75f6b4c8f8
--- /dev/null
+++ b/bpmn/MSOInfrastructureBPMN/src/main/resources/subprocess/DoUpdateE2EServiceInstance.bpmn
@@ -0,0 +1,821 @@
+<?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:camunda="http://camunda.org/schema/1.0/bpmn" 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.11.3" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
+ <bpmn2:process id="DoUpdateE2EServiceInstance" name="DoUpdateE2EServiceInstance" isExecutable="true">
+ <bpmn2:startEvent id="createSI_startEvent" name="Start Flow">
+ <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
+ </bpmn2:startEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="createSI_startEvent" targetRef="preProcessRequest_ScriptTask" />
+ <bpmn2:scriptTask id="preProcessRequest_ScriptTask" name="PreProcess Incoming Request" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new DoUpdateE2EServiceInstance()
+dcsi.preProcessRequest(execution)
+]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="preProcessRequest_ScriptTask" targetRef="CallActivity_18nvmnn" />
+ <bpmn2:scriptTask id="ScriptTask_0i8cqdy_PostProcessAAIGET" name="Post Process AAI GET" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_0qg0uyn</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0wc7v9z</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new DoUpdateE2EServiceInstance()
+dcsi.postProcessAAIGET(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:scriptTask id="Task_09laxun" name="PreProcess for Add Resources" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_115mdln</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0yztz2p</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def csi = new DoUpdateE2EServiceInstance()
+csi.preProcessForAddResource(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:callActivity id="Task_1wyyy33" name="Call DoCreateResources" calledElement="DoCreateResources">
+ <bpmn2:extensionElements>
+ <camunda:in source="nsServiceName" target="nsServiceName" />
+ <camunda:in source="nsServiceDescription" target="nsServiceDescription" />
+ <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
+ <camunda:in source="serviceType" target="serviceType" />
+ <camunda:in source="serviceId" target="serviceId" />
+ <camunda:in source="operationId" target="operationId" />
+ <camunda:in source="resourceType" target="resourceType" />
+ <camunda:in source="resourceUUID" target="resourceUUID" />
+ <camunda:in source="resourceParameters" target="resourceParameters" />
+ <camunda:in source="operationType" target="operationType" />
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_0yztz2p</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0lblyhi</bpmn2:outgoing>
+ </bpmn2:callActivity>
+ <bpmn2:scriptTask id="Task_0ag30bf" name="PostProcess for Add Resource" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_0lblyhi</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1fr4uwt</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def csi = new DoUpdateE2EServiceInstance()
+csi.postProcessForAddResource(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:scriptTask id="ScriptTask_04rn9mp" name="Post Config Service Instance Update" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_0cnuo36</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1lkpfe2</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def csi = new DoUpdateE2EServiceInstance()
+csi.postConfigRequest(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:intermediateCatchEvent id="StartEvent_StartResource" name="StartAddResources">
+ <bpmn2:outgoing>SequenceFlow_115mdln</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="StartAddResource" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1dwg5lz" name="GoToStartCompareModelVersions">
+ <bpmn2:incoming>SequenceFlow_1i45vfx</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="StartCompareModelVersions" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_1rebkae" sourceRef="StartEvent_0jhv664" targetRef="ScriptTask_1wk7zcu" />
+ <bpmn2:intermediateCatchEvent id="StartEvent_0jhv664" name="FinishProcess">
+ <bpmn2:outgoing>SequenceFlow_1rebkae</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="FinishProcess" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:endEvent id="EndEvent_0x8im5g">
+ <bpmn2:incoming>SequenceFlow_1lkpfe2</bpmn2:incoming>
+ </bpmn2:endEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_1lkpfe2" sourceRef="ScriptTask_04rn9mp" targetRef="EndEvent_0x8im5g" />
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_GoToFinishProcess" name="GoTo StartDeleteResources">
+ <bpmn2:incoming>SequenceFlow_1fr4uwt</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="StartDeleteResources" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:intermediateCatchEvent id="StartEvent_1p7w4fj" name="Update Resource Oper Status">
+ <bpmn2:outgoing>SequenceFlow_0e8oxe4</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="UpdateResourceOperStatus" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_0e8oxe4" sourceRef="StartEvent_1p7w4fj" targetRef="ScriptTask_1pwo0jp" />
+ <bpmn2:scriptTask id="ScriptTask_1wk7zcu" name="Prepare Update Service Oper Status(100%)" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1rebkae</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0gr3l25</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+execution.setVariable("progress", "100")
+execution.setVariable("operationStatus", "End")
+def ddsi = new DoUpdateE2EServiceInstance()
+ddsi.preUpdateServiceOperationStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:serviceTask id="ServiceTask_1a6cmdu" name="Update Service Oper Status">
+ <bpmn2:extensionElements>
+ <camunda:connector>
+ <camunda:inputOutput>
+ <camunda:inputParameter name="url">${URN_mso_openecomp_adapters_db_endpoint}</camunda:inputParameter>
+ <camunda:inputParameter name="headers">
+ <camunda:map>
+ <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+ <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+ </camunda:map>
+ </camunda:inputParameter>
+ <camunda:inputParameter name="payload">${CVFMI_updateServiceOperStatusRequest}</camunda:inputParameter>
+ <camunda:inputParameter name="method">POST</camunda:inputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>
+ </camunda:inputOutput>
+ <camunda:connectorId>http-connector</camunda:connectorId>
+ </camunda:connector>
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_0gr3l25</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0cnuo36</bpmn2:outgoing>
+ </bpmn2:serviceTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_0gr3l25" sourceRef="ScriptTask_1wk7zcu" targetRef="ServiceTask_1a6cmdu" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0cnuo36" sourceRef="ServiceTask_1a6cmdu" targetRef="ScriptTask_04rn9mp" />
+ <bpmn2:scriptTask id="ScriptTask_1pwo0jp" name="Prepare Resource Oper Status" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_0e8oxe4</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0aylb6e</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def ddsi = new DoUpdateE2EServiceInstance()
+ddsi.preInitResourcesOperStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_0aylb6e" sourceRef="ScriptTask_1pwo0jp" targetRef="ServiceTask_1dqzdko" />
+ <bpmn2:serviceTask id="ServiceTask_1dqzdko" name="Init Resource Oper Status">
+ <bpmn2:extensionElements>
+ <camunda:connector>
+ <camunda:inputOutput>
+ <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+ <camunda:inputParameter name="headers">
+ <camunda:map>
+ <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+ <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+ </camunda:map>
+ </camunda:inputParameter>
+ <camunda:inputParameter name="payload">${CVFMI_initResOperStatusRequest}</camunda:inputParameter>
+ <camunda:inputParameter name="method">POST</camunda:inputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>
+ </camunda:inputOutput>
+ <camunda:connectorId>http-connector</camunda:connectorId>
+ </camunda:connector>
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_0aylb6e</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1r1hl23</bpmn2:outgoing>
+ </bpmn2:serviceTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_1r1hl23" sourceRef="ServiceTask_1dqzdko" targetRef="ScriptTask_17ssed5" />
+ <bpmn2:sequenceFlow id="SequenceFlow_115mdln" sourceRef="StartEvent_StartResource" targetRef="Task_09laxun" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0yztz2p" sourceRef="Task_09laxun" targetRef="Task_1wyyy33" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0lblyhi" sourceRef="Task_1wyyy33" targetRef="Task_0ag30bf" />
+ <bpmn2:sequenceFlow id="SequenceFlow_1fr4uwt" sourceRef="Task_0ag30bf" targetRef="IntermediateThrowEvent_GoToFinishProcess" />
+ <bpmn2:scriptTask id="ScriptTask_1xxvnst" name="PreProcess for Delete Resources" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1qn0865</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_14rubz2</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def csi = new DoUpdateE2EServiceInstance()
+csi.preProcessForDeleteResource(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:callActivity id="CallActivity_0yphqzk" name="Call DoDeleteResources" calledElement="DoDeleteResources">
+ <bpmn2:extensionElements>
+ <camunda:in source="nsServiceName" target="nsServiceName" />
+ <camunda:in source="nsServiceDescription" target="nsServiceDescription" />
+ <camunda:in source="globalSubscriberId" target="globalSubscriberId" />
+ <camunda:in source="serviceType" target="serviceType" />
+ <camunda:in source="serviceId" target="serviceId" />
+ <camunda:in source="operationId" target="operationId" />
+ <camunda:in source="resourceType" target="resourceType" />
+ <camunda:in source="resourceUUID" target="resourceUUID" />
+ <camunda:in source="resourceParameters" target="resourceParameters" />
+ <camunda:in source="operationType" target="operationType" />
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_14rubz2</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0tm9bw9</bpmn2:outgoing>
+ </bpmn2:callActivity>
+ <bpmn2:scriptTask id="ScriptTask_00wgfrc" name="PostProcess for Delete Resource" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_0tm9bw9</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0ynd3rm</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def csi = new DoUpdateE2EServiceInstance()
+csi.postProcessForDeleteResource(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_0h6d9jb" name="StartDeleteResources">
+ <bpmn2:outgoing>SequenceFlow_1qn0865</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="StartDeleteResources" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1er2v7q" name="GoTo FinishProcess">
+ <bpmn2:incoming>SequenceFlow_0ynd3rm</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="FinishProcess" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_1qn0865" sourceRef="IntermediateCatchEvent_0h6d9jb" targetRef="ScriptTask_1xxvnst" />
+ <bpmn2:sequenceFlow id="SequenceFlow_14rubz2" sourceRef="ScriptTask_1xxvnst" targetRef="CallActivity_0yphqzk" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0tm9bw9" sourceRef="CallActivity_0yphqzk" targetRef="ScriptTask_00wgfrc" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0ynd3rm" sourceRef="ScriptTask_00wgfrc" targetRef="IntermediateThrowEvent_1er2v7q" />
+ <bpmn2:subProcess id="SubProcess_0roysbg" name="Sub-process for UnexpectedErrors" triggeredByEvent="true">
+ <bpmn2:startEvent id="StartEvent_0xtpw6j">
+ <bpmn2:outgoing>SequenceFlow_19sogyb</bpmn2:outgoing>
+ <bpmn2:errorEventDefinition />
+ </bpmn2:startEvent>
+ <bpmn2:scriptTask id="ScriptTask_0xk9fk3" name="Log / Print Unexpected Error" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_19sogyb</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0ofhz2u</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.common.scripts.*
+ExceptionUtil ex = new ExceptionUtil()
+ex.processJavaException(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_19sogyb" name="" sourceRef="StartEvent_0xtpw6j" targetRef="ScriptTask_0xk9fk3" />
+ <bpmn2:endEvent id="EndEvent_05a2pr9">
+ <bpmn2:incoming>SequenceFlow_0ofhz2u</bpmn2:incoming>
+ </bpmn2:endEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_0ofhz2u" sourceRef="ScriptTask_0xk9fk3" targetRef="EndEvent_05a2pr9" />
+ </bpmn2:subProcess>
+ <bpmn2:scriptTask id="ScriptTask_0wl77h6" name="Post for Compare Model Versions" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_02d5ibj</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0l4gosl</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def csi = new DoUpdateE2EServiceInstance()
+csi.postCompareModelVersions(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_0gk8ige" name="StartCompareModelVersions">
+ <bpmn2:outgoing>SequenceFlow_1vtlt1v</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="StartCompareModelVersions" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:scriptTask id="ScriptTask_1afvv50" name="Prepare for Compare Model Versions" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1vtlt1v</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0h40pn8</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def ddsi = new DoUpdateE2EServiceInstance()
+ddsi.preCompareModelVersions(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_02d5ibj" sourceRef="ServiceTask_02u5iza" targetRef="ScriptTask_0wl77h6" />
+ <bpmn2:sequenceFlow id="SequenceFlow_1vtlt1v" sourceRef="IntermediateCatchEvent_0gk8ige" targetRef="ScriptTask_1afvv50" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0h40pn8" sourceRef="ScriptTask_1afvv50" targetRef="ServiceTask_02u5iza" />
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_09ur9ds" name="GoTo StartAddResources">
+ <bpmn2:incoming>SequenceFlow_0l4gosl</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="StartAddResource" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:sequenceFlow id="SequenceFlow_0l4gosl" sourceRef="ScriptTask_0wl77h6" targetRef="IntermediateThrowEvent_09ur9ds" />
+ <bpmn2:callActivity id="ServiceTask_02u5iza" name="Call DoCompareModelVersions" calledElement="DoCompareModelVersions">
+ <bpmn2:incoming>SequenceFlow_0h40pn8</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_02d5ibj</bpmn2:outgoing>
+ </bpmn2:callActivity>
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_0cabwkq" name="GoTo UpdateResourceOperStatus">
+ <bpmn2:incoming>SequenceFlow_0wc7v9z</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="UpdateResourceOperStatus" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:callActivity id="CallActivity_18nvmnn" name="Call AAI Generic GetService" calledElement="GenericGetService">
+ <bpmn2:extensionElements>
+ <camunda:in source="serviceInstanceId" target="GENGS_serviceInstanceId" />
+ <camunda:in sourceExpression="service-instance" target="GENGS_type" />
+ <camunda:out source="GENGS_FoundIndicator" target="GENGS_FoundIndicator" />
+ <camunda:out source="GENGS_SuccessIndicator" target="GENGS_SuccessIndicator" />
+ <camunda:out source="WorkflowException" target="WorkflowException" />
+ <camunda:out source="GENGS_siResourceLink" target="GENGS_siResourceLink" />
+ <camunda:out source="GENGS_service" target="GENGS_service" />
+ <camunda:in source="globalSubscriberId" target="GENGS_globalCustomerId" />
+ <camunda:in source="serviceType" target="GENGS_serviceType" />
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0qg0uyn</bpmn2:outgoing>
+ </bpmn2:callActivity>
+ <bpmn2:sequenceFlow id="SequenceFlow_0qg0uyn" sourceRef="CallActivity_18nvmnn" targetRef="ScriptTask_0i8cqdy_PostProcessAAIGET" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0wc7v9z" sourceRef="ScriptTask_0i8cqdy_PostProcessAAIGET" targetRef="IntermediateThrowEvent_0cabwkq" />
+ <bpmn2:scriptTask id="ScriptTask_17ssed5" name="Post Resource Oper Status" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1r1hl23</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1i45vfx</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new DoUpdateE2EServiceInstance()
+dcsi.postResourcesOperStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_1i45vfx" sourceRef="ScriptTask_17ssed5" targetRef="IntermediateThrowEvent_1dwg5lz" />
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_1da7q01" name="GoToStartCompareModelVersions">
+ <bpmn2:incoming>SequenceFlow_16evvx4</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="StartCompareModelVersions" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1uv1dxj" name="Update Resource Oper Status">
+ <bpmn2:outgoing>SequenceFlow_1sphzdm</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="UpdateResourceOperStatus" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:scriptTask id="ScriptTask_0acnvkp" name="Prepare Resource Oper Status(10%)" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1sphzdm</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0r6c0ci</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+execution.setVariable("progress", "10")
+def ddsi = new DoUpdateE2EServiceInstance()
+ddsi.preUpdateServiceOperationStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:serviceTask id="ServiceTask_17u9q9u" name="Init Resource Oper Status">
+ <bpmn2:extensionElements>
+ <camunda:connector>
+ <camunda:inputOutput>
+ <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+ <camunda:inputParameter name="headers">
+ <camunda:map>
+ <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+ <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+ </camunda:map>
+ </camunda:inputParameter>
+ <camunda:inputParameter name="payload">${CVFMI_initResOperStatusRequest}</camunda:inputParameter>
+ <camunda:inputParameter name="method">POST</camunda:inputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>
+ </camunda:inputOutput>
+ <camunda:connectorId>http-connector</camunda:connectorId>
+ </camunda:connector>
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_0r6c0ci</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1muxopq</bpmn2:outgoing>
+ </bpmn2:serviceTask>
+ <bpmn2:scriptTask id="ScriptTask_0r74c3c" name="Post Resource Oper Status" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1muxopq</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_16evvx4</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new DoUpdateE2EServiceInstance()
+dcsi.postResourcesOperStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_16evvx4" sourceRef="ScriptTask_0r74c3c" targetRef="IntermediateThrowEvent_1da7q01" />
+ <bpmn2:sequenceFlow id="SequenceFlow_1sphzdm" sourceRef="IntermediateCatchEvent_1uv1dxj" targetRef="ScriptTask_0acnvkp" />
+ <bpmn2:sequenceFlow id="SequenceFlow_0r6c0ci" sourceRef="ScriptTask_0acnvkp" targetRef="ServiceTask_17u9q9u" />
+ <bpmn2:sequenceFlow id="SequenceFlow_1muxopq" sourceRef="ServiceTask_17u9q9u" targetRef="ScriptTask_0r74c3c" />
+ <bpmn2:intermediateThrowEvent id="IntermediateThrowEvent_0vneaao" name="GoToStartCompareModelVersions">
+ <bpmn2:incoming>SequenceFlow_0s57qft</bpmn2:incoming>
+ <bpmn2:linkEventDefinition name="StartCompareModelVersions" />
+ </bpmn2:intermediateThrowEvent>
+ <bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_0a418ef" name="Update Resource Oper Status">
+ <bpmn2:outgoing>SequenceFlow_02taco0</bpmn2:outgoing>
+ <bpmn2:linkEventDefinition name="UpdateResourceOperStatus" />
+ </bpmn2:intermediateCatchEvent>
+ <bpmn2:scriptTask id="ScriptTask_1na4qzo" name="Prepare Resource Oper Status(60%)" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_02taco0</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_07l3twh</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+execution.setVariable("progress", "60")
+def ddsi = new DoUpdateE2EServiceInstance()
+ddsi.preUpdateServiceOperationStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:serviceTask id="ServiceTask_0c13nyt" name="Init Resource Oper Status">
+ <bpmn2:extensionElements>
+ <camunda:connector>
+ <camunda:inputOutput>
+ <camunda:inputParameter name="url">${CVFMI_dbAdapterEndpoint}</camunda:inputParameter>
+ <camunda:inputParameter name="headers">
+ <camunda:map>
+ <camunda:entry key="content-type">application/soap+xml</camunda:entry>
+ <camunda:entry key="Authorization">Basic QlBFTENsaWVudDpwYXNzd29yZDEk</camunda:entry>
+ </camunda:map>
+ </camunda:inputParameter>
+ <camunda:inputParameter name="payload">${CVFMI_initResOperStatusRequest}</camunda:inputParameter>
+ <camunda:inputParameter name="method">POST</camunda:inputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponseCode">${statusCode}</camunda:outputParameter>
+ <camunda:outputParameter name="CVFMI_dbResponse">${response}</camunda:outputParameter>
+ </camunda:inputOutput>
+ <camunda:connectorId>http-connector</camunda:connectorId>
+ </camunda:connector>
+ </bpmn2:extensionElements>
+ <bpmn2:incoming>SequenceFlow_07l3twh</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_1eg944u</bpmn2:outgoing>
+ </bpmn2:serviceTask>
+ <bpmn2:scriptTask id="ScriptTask_0iq531p" name="Post Resource Oper Status" scriptFormat="groovy">
+ <bpmn2:incoming>SequenceFlow_1eg944u</bpmn2:incoming>
+ <bpmn2:outgoing>SequenceFlow_0s57qft</bpmn2:outgoing>
+ <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
+def dcsi = new DoUpdateE2EServiceInstance()
+dcsi.postResourcesOperStatus(execution)]]></bpmn2:script>
+ </bpmn2:scriptTask>
+ <bpmn2:sequenceFlow id="SequenceFlow_0s57qft" sourceRef="ScriptTask_0iq531p" targetRef="IntermediateThrowEvent_0vneaao" />
+ <bpmn2:sequenceFlow id="SequenceFlow_02taco0" sourceRef="IntermediateCatchEvent_0a418ef" targetRef="ScriptTask_1na4qzo" />
+ <bpmn2:sequenceFlow id="SequenceFlow_07l3twh" sourceRef="ScriptTask_1na4qzo" targetRef="ServiceTask_0c13nyt" />
+ <bpmn2:sequenceFlow id="SequenceFlow_1eg944u" sourceRef="ServiceTask_0c13nyt" targetRef="ScriptTask_0iq531p" />
+ </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="DoUpdateE2EServiceInstance">
+ <bpmndi:BPMNShape id="_BPMNShape_StartEvent_47" bpmnElement="createSI_startEvent">
+ <dc:Bounds x="-14" y="334" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-20" y="375" width="50" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_61" bpmnElement="preProcessRequest_ScriptTask">
+ <dc:Bounds x="293" y="312" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_47" targetElement="_BPMNShape_ScriptTask_61">
+ <di:waypoint xsi:type="dc:Point" x="22" y="352" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="352" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="112.5" y="337" width="90" height="0" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_61" targetElement="CallActivity_18nvmnn_di">
+ <di:waypoint xsi:type="dc:Point" x="393" y="352" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="352" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="446" y="337" width="90" height="0" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_0i8cqdy_di" bpmnElement="ScriptTask_0i8cqdy_PostProcessAAIGET">
+ <dc:Bounds x="858" y="312" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_1azssf7_di" bpmnElement="Task_09laxun">
+ <dc:Bounds x="293" y="828" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="CallActivity_1v57nb9_di" bpmnElement="Task_1wyyy33">
+ <dc:Bounds x="589" y="828" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_1fj89ew_di" bpmnElement="Task_0ag30bf">
+ <dc:Bounds x="858" y="828" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_04rn9mp_di" bpmnElement="ScriptTask_04rn9mp">
+ <dc:Bounds x="858" y="1208" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_0jks7by_di" bpmnElement="StartEvent_StartResource">
+ <dc:Bounds x="-14" y="850" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-38" y="895" width="84" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_0ys6800_di" bpmnElement="IntermediateThrowEvent_1dwg5lz">
+ <dc:Bounds x="1239" y="473" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1213" y="513" width="90" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1rebkae_di" bpmnElement="SequenceFlow_1rebkae">
+ <di:waypoint xsi:type="dc:Point" x="22" y="1248" />
+ <di:waypoint xsi:type="dc:Point" x="283" y="1248" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="107.5" y="1227" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_05z1jyy_di" bpmnElement="StartEvent_0jhv664">
+ <dc:Bounds x="-14" y="1230" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-31" y="1270" width="70" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="EndEvent_0x8im5g_di" bpmnElement="EndEvent_0x8im5g">
+ <dc:Bounds x="1239" y="1230" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1212" y="1270" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1lkpfe2_di" bpmnElement="SequenceFlow_1lkpfe2">
+ <di:waypoint xsi:type="dc:Point" x="958" y="1248" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="1248" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1053.5" y="1227" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_11jt9tx_di" bpmnElement="IntermediateThrowEvent_GoToFinishProcess">
+ <dc:Bounds x="1239" y="850" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1214" y="892" width="86" height="36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_0v3ecwh_di" bpmnElement="StartEvent_1p7w4fj">
+ <dc:Bounds x="-14" y="473" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-38" y="513" width="86" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0e8oxe4_di" bpmnElement="SequenceFlow_0e8oxe4">
+ <di:waypoint xsi:type="dc:Point" x="22" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="158" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="158" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="491" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="128" y="485" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_1wk7zcu_di" bpmnElement="ScriptTask_1wk7zcu">
+ <dc:Bounds x="283" y="1208" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ServiceTask_1a6cmdu_di" bpmnElement="ServiceTask_1a6cmdu">
+ <dc:Bounds x="589" y="1208" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0gr3l25_di" bpmnElement="SequenceFlow_0gr3l25">
+ <di:waypoint xsi:type="dc:Point" x="383" y="1248" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="1248" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="441" y="1227" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0cnuo36_di" bpmnElement="SequenceFlow_0cnuo36">
+ <di:waypoint xsi:type="dc:Point" x="689" y="1248" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="1248" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="728.5" y="1227" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_1pwo0jp_di" bpmnElement="ScriptTask_1pwo0jp">
+ <dc:Bounds x="293" y="451" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0aylb6e_di" bpmnElement="SequenceFlow_0aylb6e">
+ <di:waypoint xsi:type="dc:Point" x="393" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="552" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="552" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="491" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="522" y="485" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ServiceTask_1dqzdko_di" bpmnElement="ServiceTask_1dqzdko">
+ <dc:Bounds x="589" y="451" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1r1hl23_di" bpmnElement="SequenceFlow_1r1hl23">
+ <di:waypoint xsi:type="dc:Point" x="689" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="491" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="728.5" y="470" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_115mdln_di" bpmnElement="SequenceFlow_115mdln">
+ <di:waypoint xsi:type="dc:Point" x="22" y="868" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="868" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="112.5" y="847" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0yztz2p_di" bpmnElement="SequenceFlow_0yztz2p">
+ <di:waypoint xsi:type="dc:Point" x="393" y="868" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="868" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="446" y="847" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0lblyhi_di" bpmnElement="SequenceFlow_0lblyhi">
+ <di:waypoint xsi:type="dc:Point" x="689" y="868" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="868" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="728.5" y="847" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1fr4uwt_di" bpmnElement="SequenceFlow_1fr4uwt">
+ <di:waypoint xsi:type="dc:Point" x="958" y="868" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="868" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1053.5" y="847" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_1xxvnst_di" bpmnElement="ScriptTask_1xxvnst">
+ <dc:Bounds x="293" y="1081" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="CallActivity_0yphqzk_di" bpmnElement="CallActivity_0yphqzk">
+ <dc:Bounds x="589" y="1081" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_00wgfrc_di" bpmnElement="ScriptTask_00wgfrc">
+ <dc:Bounds x="858" y="1081" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_0h6d9jb_di" bpmnElement="IntermediateCatchEvent_0h6d9jb">
+ <dc:Bounds x="-14" y="1103" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-38" y="1143" width="86" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_1er2v7q_di" bpmnElement="IntermediateThrowEvent_1er2v7q">
+ <dc:Bounds x="1239" y="1103" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1224" y="1143" width="70" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1qn0865_di" bpmnElement="SequenceFlow_1qn0865">
+ <di:waypoint xsi:type="dc:Point" x="22" y="1121" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="1121" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="112.5" y="1100" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_14rubz2_di" bpmnElement="SequenceFlow_14rubz2">
+ <di:waypoint xsi:type="dc:Point" x="393" y="1121" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="1121" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="446" y="1100" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0tm9bw9_di" bpmnElement="SequenceFlow_0tm9bw9">
+ <di:waypoint xsi:type="dc:Point" x="689" y="1121" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="1121" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="728.5" y="1100" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0ynd3rm_di" bpmnElement="SequenceFlow_0ynd3rm">
+ <di:waypoint xsi:type="dc:Point" x="958" y="1121" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="1121" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1053.5" y="1100" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="SubProcess_0roysbg_di" bpmnElement="SubProcess_0roysbg" isExpanded="true">
+ <dc:Bounds x="-50" y="1386" width="1361" height="147" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="StartEvent_0xtpw6j_di" bpmnElement="StartEvent_0xtpw6j">
+ <dc:Bounds x="-14" y="1453" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-131" y="1494" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="EndEvent_05a2pr9_di" bpmnElement="EndEvent_05a2pr9">
+ <dc:Bounds x="1229" y="1453" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1112" y="1494" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_0xk9fk3_di" bpmnElement="ScriptTask_0xk9fk3">
+ <dc:Bounds x="585" y="1431" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_19sogyb_di" bpmnElement="SequenceFlow_19sogyb">
+ <di:waypoint xsi:type="dc:Point" x="22" y="1471" />
+ <di:waypoint xsi:type="dc:Point" x="304" y="1471" />
+ <di:waypoint xsi:type="dc:Point" x="304" y="1471" />
+ <di:waypoint xsi:type="dc:Point" x="585" y="1471" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="274" y="1465" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_0wl77h6_di" bpmnElement="ScriptTask_0wl77h6">
+ <dc:Bounds x="858" y="600" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_0gk8ige_di" bpmnElement="IntermediateCatchEvent_0gk8ige">
+ <dc:Bounds x="-14" y="622" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-38" y="684" width="89" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_1afvv50_di" bpmnElement="ScriptTask_1afvv50">
+ <dc:Bounds x="293" y="600" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_02d5ibj_di" bpmnElement="SequenceFlow_02d5ibj">
+ <di:waypoint xsi:type="dc:Point" x="689" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="774" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="774" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="640" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="744" y="593" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1vtlt1v_di" bpmnElement="SequenceFlow_1vtlt1v">
+ <di:waypoint xsi:type="dc:Point" x="22" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="640" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="112.5" y="578" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0h40pn8_di" bpmnElement="SequenceFlow_0h40pn8">
+ <di:waypoint xsi:type="dc:Point" x="393" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="640" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="446" y="578" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_09ur9ds_di" bpmnElement="IntermediateThrowEvent_09ur9ds">
+ <dc:Bounds x="1239" y="622" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1215" y="663" width="84" height="36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0l4gosl_di" bpmnElement="SequenceFlow_0l4gosl">
+ <di:waypoint xsi:type="dc:Point" x="958" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="1098" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="1098" y="640" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="640" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1068" y="593" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="CallActivity_00ftzjj_di" bpmnElement="ServiceTask_02u5iza">
+ <dc:Bounds x="589" y="600" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_0nf1193_di" bpmnElement="IntermediateThrowEvent_0cabwkq">
+ <dc:Bounds x="1235" y="334" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1215" y="374" width="83" height="36" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="CallActivity_18nvmnn_di" bpmnElement="CallActivity_18nvmnn">
+ <dc:Bounds x="589" y="312" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0qg0uyn_di" bpmnElement="SequenceFlow_0qg0uyn">
+ <di:waypoint xsi:type="dc:Point" x="689" y="352" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="352" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="728.5" y="331" width="90" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0wc7v9z_di" bpmnElement="SequenceFlow_0wc7v9z">
+ <di:waypoint xsi:type="dc:Point" x="958" y="352" />
+ <di:waypoint xsi:type="dc:Point" x="1235" y="352" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1096.5" y="331" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="ScriptTask_17ssed5_di" bpmnElement="ScriptTask_17ssed5">
+ <dc:Bounds x="858" y="451" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_1i45vfx_di" bpmnElement="SequenceFlow_1i45vfx">
+ <di:waypoint xsi:type="dc:Point" x="958" y="491" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="491" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1098.5" y="470" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_1da7q01_di" bpmnElement="IntermediateThrowEvent_1da7q01">
+ <dc:Bounds x="1239" y="718" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1212" y="760" width="90" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_1uv1dxj_di" bpmnElement="IntermediateCatchEvent_1uv1dxj">
+ <dc:Bounds x="-14" y="718" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-36" y="760" width="86" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_0acnvkp_di" bpmnElement="ScriptTask_0acnvkp">
+ <dc:Bounds x="293" y="696" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ServiceTask_17u9q9u_di" bpmnElement="ServiceTask_17u9q9u">
+ <dc:Bounds x="589" y="696" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_0r74c3c_di" bpmnElement="ScriptTask_0r74c3c">
+ <dc:Bounds x="858" y="696" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_16evvx4_di" bpmnElement="SequenceFlow_16evvx4">
+ <di:waypoint xsi:type="dc:Point" x="958" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="736" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1098.5" y="753" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1sphzdm_di" bpmnElement="SequenceFlow_1sphzdm">
+ <di:waypoint xsi:type="dc:Point" x="22" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="158" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="158" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="736" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="173" y="768" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0r6c0ci_di" bpmnElement="SequenceFlow_0r6c0ci">
+ <di:waypoint xsi:type="dc:Point" x="393" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="552" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="552" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="736" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="567" y="768" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1muxopq_di" bpmnElement="SequenceFlow_1muxopq">
+ <di:waypoint xsi:type="dc:Point" x="689" y="736" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="736" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="773.5" y="753" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNShape id="IntermediateThrowEvent_0vneaao_di" bpmnElement="IntermediateThrowEvent_0vneaao">
+ <dc:Bounds x="1239" y="948" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1213" y="988" width="90" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="IntermediateCatchEvent_0a418ef_di" bpmnElement="IntermediateCatchEvent_0a418ef">
+ <dc:Bounds x="-14" y="948" width="36" height="36" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="-38" y="988" width="86" height="24" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_1na4qzo_di" bpmnElement="ScriptTask_1na4qzo">
+ <dc:Bounds x="293" y="926" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ServiceTask_0c13nyt_di" bpmnElement="ServiceTask_0c13nyt">
+ <dc:Bounds x="589" y="926" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNShape id="ScriptTask_0iq531p_di" bpmnElement="ScriptTask_0iq531p">
+ <dc:Bounds x="858" y="926" width="100" height="80" />
+ </bpmndi:BPMNShape>
+ <bpmndi:BPMNEdge id="SequenceFlow_0s57qft_di" bpmnElement="SequenceFlow_0s57qft">
+ <di:waypoint xsi:type="dc:Point" x="958" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="1239" y="966" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="1098.5" y="945" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_02taco0_di" bpmnElement="SequenceFlow_02taco0">
+ <di:waypoint xsi:type="dc:Point" x="22" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="158" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="158" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="293" y="966" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="128" y="960" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_07l3twh_di" bpmnElement="SequenceFlow_07l3twh">
+ <di:waypoint xsi:type="dc:Point" x="393" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="552" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="552" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="589" y="966" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="522" y="960" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_1eg944u_di" bpmnElement="SequenceFlow_1eg944u">
+ <di:waypoint xsi:type="dc:Point" x="689" y="966" />
+ <di:waypoint xsi:type="dc:Point" x="858" y="966" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="728.5" y="945" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ <bpmndi:BPMNEdge id="SequenceFlow_0ofhz2u_di" bpmnElement="SequenceFlow_0ofhz2u">
+ <di:waypoint xsi:type="dc:Point" x="685" y="1471" />
+ <di:waypoint xsi:type="dc:Point" x="1229" y="1471" />
+ <bpmndi:BPMNLabel>
+ <dc:Bounds x="957" y="1450" width="0" height="12" />
+ </bpmndi:BPMNLabel>
+ </bpmndi:BPMNEdge>
+ </bpmndi:BPMNPlane>
+ </bpmndi:BPMNDiagram>
+</bpmn2:definitions>
diff --git a/common/src/main/resources/ASDC.properties b/common/src/main/resources/ASDC.properties
index 4f3864dac2..5f4f0baa6c 100644
--- a/common/src/main/resources/ASDC.properties
+++ b/common/src/main/resources/ASDC.properties
@@ -51,7 +51,7 @@ ASDC_GENERAL_WARNING=\
MSO-ASDC-5301W|\
WARNING: {0}|\
Please check other logs for more detailed info|\
- General warning
+ General warning
ASDC_AUDIT_EXEC=\
MSO-ASDC-5302I|\
Executing method: {0}. {1}|\
@@ -61,77 +61,77 @@ ASDC_GENERAL_METRICS=\
MSO-ASDC-5305I|\
Executed method: {0}. {1}|\
No resolution needed|\
- Generate information for Metric events
+ Generate information for Metric events
ASDC_CREATE_SERVICE=\
MSO-ASDC-5306I|\
Creating new VNF Resource for service {0} with id {1} and version {2}|\
No resolution needed|\
- Method triggered to create new VNF Resource
+ Method triggered to create new VNF Resource
ASDC_CREATE_ARTIFACT=\
MSO-ASDC-5307I|\
Installing new {0} for service {1} with id {2} and version {3}|\
No resolution needed|\
- Method triggered to create new VNF Resource
+ Method triggered to create new VNF Resource
ASDC_ARTIFACT_ALREADY_DEPLOYED=\
MSO-ASDC-5308W|\
Constraint violation caught, artifact is already deployed {0} and version {1}|\
No resolution needed|\
- Artifact is already deployed
+ Artifact is already deployed
ASDC_ARTIFACT_INSTALL_EXC=\
MSO-ASDC-5309E|\
Exception caught during installation of the {0}. Transaction rollback.|\
Please check other logs for more detailed info|\
- Exception caught during installation of the artifact
+ Exception caught during installation of the artifact
ASDC_CHECK_HEAT_TEMPLATE=\
MSO-ASDC-5310I|\
Start to verify whether {0} with name {1} and version {2} is already deployed|\
No resolution needed|\
- Check artifact
+ Check artifact
ASDC_ARTIFACT_ALREADY_DEPLOYED_DETAIL=\
MSO-ASDC-5311I|\
ResourceInstanceName:{0} (ResourceUUID:{1}) is already deployed for this Service:{2}/{3}(ServiceUUID:{4}) (ResourceName: {5})|\
No resolution needed|\
- Resource is already deployed
+ Resource is already deployed
ASDC_ARTIFACT_NOT_DEPLOYED_DETAIL=\
MSO-ASDC-5312I|\
ResourceInstanceName:{0} (ResourceUUID:{1}) is not yet deployed for this Service:{2}/{3}(ServiceUUID:{4}) (ResourceName: {5})|\
No resolution needed|\
- Resource is not yet deployed
+ Resource is not yet deployed
ASDC_INIT_ASDC_CLIENT_EXC=\
MSO-ASDC-5314W|\
ASDControllerException caught during the Init/closing of ASDC Client with address {0} and environment {1}|\
Please check other logs for more detailed info|\
- ASDControllerException caught during the Init/closing of ASDC Client
+ ASDControllerException caught during the Init/closing of ASDC Client
ASDC_LOAD_ASDC_CLIENT_EXC=\
MSO-ASDC-5315W|\
ASDCParametersException caught during loading/reloading of the ASDC Client with address {0} and environment {1}|\
Please check other logs for more detailed info|\
- ASDCParametersException caught during loading/reloading of the ASDC Client
+ ASDCParametersException caught during loading/reloading of the ASDC Client
ASDC_SHUTDOWN_ASDC_CLIENT_EXC=\
MSO-ASDC-5317W|\
{0} caught during the ASDC Controller with address {1} and environment {2} shutdown|\
Please check other logs for more detailed info|\
- Exception caught during the ASDC Controller shutdown
+ Exception caught during the ASDC Controller shutdown
ASDC_START_INSTALL_ARTIFACT=\
MSO-ASDC-5318I|\
Trying to install the artifact:{0}|\
No resolution needed|\
- Trying to install the artifact
+ Trying to install the artifact
ASDC_ARTIFACT_TYPE_NOT_SUPPORT=\
MSO-ASDC-5319W|\
This artifact type is not supported:{0}|\
No resolution needed|\
- Artifact type is not supported
+ Artifact type is not supported
ASDC_ARTIFACT_ALREADY_EXIST=\
MSO-ASDC-5320I|\
No need to download the artifact as it exists already in MSO:{0} (UUID:{1}) associated to ResourceName {2}|\
No resolution needed|\
- Artifact already exists
+ Artifact already exists
ASDC_ARTIFACT_DOWNLOAD_SUC=\
MSO-ASDC-5321I|\
Artifact successfully downloaded:{0} (UUID:{1}) (SIZE in Bytes:{2})|\
No resolution needed|\
- Artifact successfully downloaded
+ Artifact successfully downloaded
ASDC_ARTIFACT_DOWNLOAD_FAIL=\
MSO-ASDC-5322E|\
Artifact :{0} could not be downloaded correctly from ASDC URL {1} (UUID:{2}) Error message is {3})|\
@@ -141,47 +141,47 @@ ASDC_START_DEPLOY_ARTIFACT=\
MSO-ASDC-5323I|\
Trying to deploy the artifact:{0} (UUID:{1})|\
No resolution needed|\
- Trying to deploy the artifact
+ Trying to deploy the artifact
ASDC_ARTIFACT_DEPLOY_SUC=\
MSO-ASDC-5324I|\
Resource successfully installed:{0} (UUID:{1}) (Nb of Modules:{2})|\
No resolution needed|\
- Resource successfully installed
+ Resource successfully installed
ASDC_SEND_NOTIF_ASDC=\
MSO-ASDC-5325I|\
Sending {0} ({1}) notification to ASDC for artifact:{2}|\
No resolution needed|\
- Sending notif to ASDC
+ Sending notif to ASDC
ASDC_SEND_NOTIF_ASDC_EXEC=\
MSO-ASDC-5326W|\
Exception caught when trying to notify ASDC|\
Please check other logs for more detailed info|\
- Exception caught when trying to notify ASDC
+ Exception caught when trying to notify ASDC
ASDC_RECEIVE_CALLBACK_NOTIF=\
MSO-ASDC-5327I|\
Receive a callback notification in ASDC, nb of artifacts: {0} (ServiceUUID:{1})|\
No resolution needed|\
- Receive a callback notification in ASDC
+ Receive a callback notification in ASDC
ASDC_RECEIVE_SERVICE_NOTIF=\
MSO-ASDC-5328I|\
Notification is ServiceVNF, (ServiceUUID:{0})|\
No resolution needed|\
- Receive a callback notification for ServiceVNF
+ Receive a callback notification for ServiceVNF
ASDC_ARTIFACT_NULL=\
MSO-ASDC-5329I|\
Nothing to deploy artifact is NULL, (ServiceUUID:{0})|\
No resolution needed|\
- Nothing to deploy artifact is NULL
+ Nothing to deploy artifact is NULL
ASDC_SERVICE_NOT_SUPPORT=\
MSO-ASDC-5330W|\
Notification received, (ServiceUUID:{0}) is not a ServiceVNF and is therefore skipped|\
No resolution needed|\
- Service not support
+ Service not support
ASDC_INIT_ASDC_CLIENT_SUC=\
MSO-ASDC-5331I|\
ASDC Controller successfully initialized|\
No resolution needed|\
- ASDC client initialized
+ ASDC client initialized
ASDC_GENERAL_EXCEPTION_ARG=\
MSO-ASDC-9300E|\
Exception: {0}|\
@@ -212,4 +212,4 @@ ASDC_GENERAL_INFO=\
MSO-ASDC-9305I|\
INFO: {0}|\
No resolution needed|\
- General Info
+ General Info
diff --git a/common/src/main/resources/ApiHandler.properties b/common/src/main/resources/ApiHandler.properties
index 82d452ae4e..60ecf94655 100644
--- a/common/src/main/resources/ApiHandler.properties
+++ b/common/src/main/resources/ApiHandler.properties
@@ -81,12 +81,12 @@ APIH_DB_UPDATE_EXC=\
MSO-APIH-3008E|\
Unable to update record to DB: {0}|\
Please check other logs for more detailed info|\
- Unable to insert record to DB
+ Unable to insert record to DB
APIH_VALIDATION_ERROR=\
MSO-APIH-4000E|\
Validation failed|\
Please check other logs for more detailed info|\
- Validation failed
+ Validation failed
APIH_REQUEST_VALIDATION_ERROR=\
MSO-APIH-4001E|\
Validation of the input request failed, for incoming request:{0}|\
@@ -96,17 +96,17 @@ APIH_SERVICE_VALIDATION_ERROR=\
MSO-APIH-4002E|\
Service params failed schema validation|\
Please check other logs for more detailed info|\
- Service params failed schema validation
+ Service params failed schema validation
APIH_REQUEST_VALIDATION_ERROR_REASON=\
MSO-APIH-4003E|\
Validation of the input request failed:{0}|\
Please verify the input request|\
- Validation of the input request failed
+ Validation of the input request failed
APIH_VNFREQUEST_VALIDATION_ERROR=\
MSO-APIH-4004E|\
Validation of the VNF Request failed|\
Please verify the VNF Request|\
- Validation of the VNF Request failed
+ Validation of the VNF Request failed
APIH_QUERY_PARAM_WRONG=\
MSO-APIH-5003W|\
Bad Request: {0}|\
@@ -116,7 +116,7 @@ APIH_GENERAL_WARNING=\
MSO-APIH-5004W|\
WARNING: {0}|\
Please check other logs for more detailed info|\
- General warning
+ General warning
APIH_AUDIT_EXEC=\
MSO-APIH-5005I|\
Executing request: {0}. {1}|\
@@ -126,32 +126,32 @@ APIH_GENERAL_METRICS=\
MSO-APIH-5008I|\
Executed method: {0}. {1}|\
No resolution needed|\
- Generate information for Metric events
+ Generate information for Metric events
APIH_REQUEST_NULL=\
MSO-APIH-5009W|\
The request received by MSO is null|\
Please check other logs for more detailed info|\
- The request received by MSO is null
+ The request received by MSO is null
APIH_DUPLICATE_FOUND=\
MSO-APIH-5011W|\
Duplicated request found: {0}|\
Please check other logs for more detailed info|\
- Duplicated request found
+ Duplicated request found
APIH_BAD_ORDER=\
MSO-APIH-5012W|\
Request received with wrong order: {0}|\
Please check other logs for more detailed info|\
- Request received with wrong order
+ Request received with wrong order
APIH_BPEL_RESPONSE_ERROR=\
MSO-APIH-5014E|\
Abnormal response received from BPEL server: {0}|\
Please check other logs for more detailed info|\
- Abnormal response received from BPEL server
+ Abnormal response received from BPEL server
APIH_WARP_REQUEST=\
MSO-APIH-5015E|\
Error wrapping request|\
Please check other logs for more detailed info|\
- Error wrapping request to be sent to BPEL server
+ Error wrapping request to be sent to BPEL server
APIH_ERROR_FROM_BPEL_SERVER=\
MSO-APIH-5016E|\
Error from {0} with status:{1} and responseBody:{2}|\
@@ -161,12 +161,12 @@ APIH_CANNOT_READ_SCHEMA=\
MSO-APIH-5017E|\
MSO Configuration Error - Unable to read the schema file|\
Please check other logs for more detailed info|\
- MSO Configuration Error - Unable to read the schema file
+ MSO Configuration Error - Unable to read the schema file
APIH_PROPERTY_LOAD_SUC=\
MSO-APIH-5018I|\
Properties file loaded successfully|\
No resolution needed|\
- Properties file loaded successfully
+ Properties file loaded successfully
APIH_NO_PROPERTIES=\
MSO-APIH-5019E|\
Missing or invalid properties file: {0}|\
@@ -201,7 +201,7 @@ APIH_GENERAL_EXCEPTION=\
MSO-APIH-9001E|\
Exception encountered|\
Please check other logs for more detailed info|\
- Exception encountered
+ Exception encountered
APIH_HEALTH_CHECK_EXCEPTION=\
MSO-APIH-9002E|\
Exception during health check|\
@@ -221,27 +221,27 @@ APIH_BPEL_COMMUNICATE_ERROR=\
MSO-APIH-9005E|\
Exception during BPEL POST|\
Please check other logs for more detailed info|\
- Exception during BPEL POST
+ Exception during BPEL POST
APIH_SDNC_COMMUNICATE_ERROR=\
MSO-APIH-9006E|\
Exception when sending HTTP POST request to SDNC Adapter|\
Please check other logs for more detailed info|\
- Exception when sending HTTP POST request to SDNC Adapter
+ Exception when sending HTTP POST request to SDNC Adapter
APIH_SDNC_RESPONSE_ERROR=\
MSO-APIH-9007E|\
IOException getting SDNC Adapter response body|\
Please check other logs for more detailed info|\
- IOException getting SDNC Adapter response body
+ IOException getting SDNC Adapter response body
APIH_JAXB_MARSH_ERROR=\
MSO-APIH-9008E|\
Exception when translating query results into string with Jaxb|\
Please check other logs for more detailed info|\
- Exception when translating query results into string with Jaxb
+ Exception when translating query results into string with Jaxb
APIH_JAXB_UNMARSH_ERROR=\
MSO-APIH-9009E|\
Exception when formatting for VNF outputs with Jaxb|\
Please check other logs for more detailed info|\
- Exception when formatting for VNF outputs
+ Exception when formatting for VNF outputs
APIH_DOM2STR_ERROR=\
MSO-APIH-9010E|\
Error converting xml Document to String|\
diff --git a/common/src/main/resources/BPMN.properties b/common/src/main/resources/BPMN.properties
index 9e8a7e7189..848135e716 100644
--- a/common/src/main/resources/BPMN.properties
+++ b/common/src/main/resources/BPMN.properties
@@ -51,12 +51,12 @@ BPMN_GENERAL_INFO=\
MSO-BPEL-5100I|\
INFO: {0}|\
No resolution needed|\
- General info
+ General info
BPMN_GENERAL_WARNING=\
MSO-BPEL-5101W|\
WARNING: {0}|\
Please check other logs for more information|\
- General warning
+ General warning
BPMN_AUDIT_EXEC=\
MSO-BPEL-5102I|\
Executing method: {0}. {1}|\
@@ -76,7 +76,7 @@ BPMN_VARIABLE_NULL=\
MSO-BPEL-5107W|\
Variable {0} is null; skipped|\
No resolution needed|\
- Variable is null
+ Variable is null
BPMN_GENERAL_EXCEPTION_ARG=\
MSO-BPEL-9100E|\
Exception: {0}|\
@@ -86,7 +86,7 @@ BPMN_GENERAL_EXCEPTION=\
MSO-BPEL-9101E|\
Exception encountered|\
Please check other logs for more information|\
- Exception encountered
+ Exception encountered
BPMN_CALLBACK_EXCEPTION=\
MSO-BPEL-9102E|\
{0} Exception occurred processing callback to BPMN process {1}|\
diff --git a/common/src/main/resources/GenericMessages.properties b/common/src/main/resources/GenericMessages.properties
index 26403235c9..a9aa13f61a 100644
--- a/common/src/main/resources/GenericMessages.properties
+++ b/common/src/main/resources/GenericMessages.properties
@@ -51,52 +51,52 @@ GENERAL_WARNING=\
MSO-GENERAL-5401W|\
WARNING: {0}|\
Please check other logs for more detailed info|\
- General warning
+ General warning
AUDIT_EXEC=\
MSO-GENERAL-5402I|\
Executing method: {0}. {1}|\
No resolution needed|\
- Executing method
+ Executing method
GENERAL_METRICS=\
MSO-GENERAL-5405I|\
Executed method: {0}. {1}|\
No resolution needed|\
- Generate information for Metric events
+ Generate information for Metric events
LOGGER_SETUP=\
MSO-GENERAL-5406I|\
Request received to update logger level|\
No resolution needed|\
- Request received to update logger level
+ Request received to update logger level
LOGGER_NOT_FOUND=\
MSO-GENERAL-5407I|\
Logger Servlet: Logger not found: : {0}|\
No resolution needed|\
- Logger not found
+ Logger not found
LOGGER_UPDATE_SUC=\
MSO-GENERAL-5408I|\
Successfully update Logger: {0} from level {1} to level {2}|\
No resolution needed|\
- Generate information for Metric events
+ Generate information for Metric events
LOGGER_UPDATE_DEBUG=\
MSO-GENERAL-5409I|\
Request received to update debug mode|\
No resolution needed|\
- Request received to update debug mode
+ Request received to update debug mode
LOGGER_UPDATE_DEBUG_SUC=\
MSO-GENERAL-5410I|\
Successfully {0} debug mode|\
No resolution needed|\
- Successfully updated debug mode
+ Successfully updated debug mode
LOAD_PROPERTIES_SUC=\
MSO-GENERAL-5411I|\
Properties file loaded successfully from file {0}|\
No resolution needed|\
- Properties file loaded successfully
+ Properties file loaded successfully
NO_PROPERTIES=\
MSO-GENERAL-5412E|\
Missing or invalid properties file: {0}|\
Please verify whether properties file exist or readable|\
- Missing or invalid properties file
+ Missing or invalid properties file
LOAD_PROPERTIES_FAIL=\
MSO-GENERAL-5413E|\
Failed loading properties file: {0}|\
@@ -106,17 +106,17 @@ INIT_LOGGER=\
MSO-GENERAL-5414I|\
Prepare to initialize loggers from {0}|\
No resolution needed|\
- Prepare to initialize loggers
+ Prepare to initialize loggers
MADATORY_PARAM_MISSING=\
MSO-GENERAL-5415E|\
Not able to get mandatory parameter: {0} from file {1}|\
No resolution needed|\
- Mandatory parameter missing
+ Mandatory parameter missing
IDENTITY_SERVICE_NOT_FOUND=\
MSO-GENERAL-5416E|\
Identity service not found: region={0} ,cloud={1}|\
Please check other logs for more detailed info|\
- Identity service not found
+ Identity service not found
GENERAL_EXCEPTION_ARG=\
MSO-GENERAL-9400E|\
Exception: {0}|\
@@ -126,7 +126,7 @@ GENERAL_EXCEPTION=\
MSO-GENERAL-9401E|\
Exception encountered|\
Please check other logs for more detailed info|\
- Exception encountered
+ Exception encountered
INIT_LOGGER_FAIL=\
MSO-GENERAL-9402E|\
Failed to initialize loggers|\
diff --git a/common/src/main/resources/ResourceAdapter.properties b/common/src/main/resources/ResourceAdapter.properties
index 0dbbb3c936..8eed3857d7 100644
--- a/common/src/main/resources/ResourceAdapter.properties
+++ b/common/src/main/resources/ResourceAdapter.properties
@@ -56,42 +56,42 @@ RA_DELETE_STACK_TIMEOUT=\
MSO-RA-2201E|\
Delete Stack - Polling timeout exceeded. cloud={0}, tenant={1}, stack={2}, status={3}|\
Please check other logs for more detailed info|\
- Delete Stack timeout
+ Delete Stack timeout
RA_UPDATE_STACK_TIMEOUT=\
MSO-RA-2202E|\
Update Stack - Polling timeout exceeded. cloud={0}, tenant={1}, stack={2}, status={3}|\
Please check other logs for more detailed info|\
- Delete Stack timeout
+ Delete Stack timeout
RA_MISSING_PARAM=\
MSO-RA-4200I|\
Missing Required parameter: {0}|\
No resolution needed|\
- Mandatory Parameter Missing
+ Mandatory Parameter Missing
RA_PARSING_ERROR=\
MSO-RA-4201E|\
Error parsing file {0}|\
No resolution needed|\
- Error parsing file
+ Error parsing file
RA_MARSHING_ERROR=\
MSO-RA-4202E|\
Error marshalling callback request with JaxB|\
Please check other logs for more detailed info|\
- Error marshalling callback request
+ Error marshalling callback request
RA_PARSING_REQUEST_ERROR=\
MSO-RA-4203E|\
Error parsing request:{0}|\
Please check other logs for more detailed info|\
- Error parsing request
+ Error parsing request
RA_VLAN_PARSE=\
MSO-RA-4204E|\
Error parsing VLAN parameter in network stack {0}:{1}|\
Please check other logs for more detailed info|\
- Error parsing VLAN parameter in network stack
+ Error parsing VLAN parameter in network stack
RA_GENERAL_WARNING=\
MSO-RA-5201W|\
WARNING: {0}|\
Please check other logs for more detailed info|\
- General warning
+ General warning
RA_AUDIT_EXEC=\
MSO-RA-5202I|\
Executing method: {0}. {1}|\
@@ -101,52 +101,52 @@ RA_GENERAL_METRICS=\
MSO-RA-5205I|\
Executed method: {0}. {1}|\
No resolution needed|\
- Generate information for Metric events
+ Generate information for Metric events
RA_PROPERTIES_NOT_FOUND=\
MSO-RA-5206E|\
Properties file: {0} not found|\
Please verify whether properties file exist or readable|\
- Properties file not found
+ Properties file not found
RA_LOAD_PROPERTIES_SUC=\
MSO-RA-5207I|\
Properties file loaded successfully from file {0}|\
No resolution needed|\
- Properties file loaded successfully
+ Properties file loaded successfully
RA_PARAM_NOT_FOUND=\
MSO-RA-5208E|\
Attribute {0} not found in DB. For {1}={2}|\
No resolution needed|\
- Attribute not found in DB
+ Attribute not found in DB
RA_UNKOWN_PARAM=\
MSO-RA-5209E|\
Unknown {0}:{1}|\
Please check other logs for more detailed info|\
- Unknown attribute
+ Unknown attribute
RA_CONFIG_EXC=\
MSO-RA-5210E|\
Configuration error:{0}|\
Please check other logs for more detailed info|\
- Configuration Error
+ Configuration Error
RA_CONFIG_NOT_FOUND=\
MSO-RA-5211E|\
Could not found configuration file:{0}|\
Please verify whether configuration file exist or readable|\
- Configuration file not found
+ Configuration file not found
RA_SEND_REQUEST_SDNC=\
MSO-RA-5212I|\
Sending request to SDNC:{0}|\
No resolution needed|\
- Sending request to SDNC
+ Sending request to SDNC
RA_RESPONSE_FROM_SDNC=\
MSO-RA-5213I|\
Response received from SDNC:{0}|\
No resolution needed|\
- Response received from SDNC
+ Response received from SDNC
RA_CALLBACK_BPEL=\
MSO-RA-5218E|\
Callback to BPEL:{0} |\
Please check other logs for more detailed info|\
- Callback to BPEL
+ Callback to BPEL
RA_NETWORK_ALREADY_EXIST=\
MSO-RA-5240W|\
Network already exists: {0} in {1}/{2}|\
@@ -156,117 +156,117 @@ RA_NETWORK_NOT_FOUND=\
MSO-RA-5241E|\
Network doesn't exist: {0} in {1}/{2}|\
Please check other logs for more detailed info|\
- Network doesn't exist
+ Network doesn't exist
RA_NETWORK_ORCHE_MODE_NOT_SUPPORT=\
MSO-RA-5243E|\
Network Type Orchestrated mode:{0} is not supported|\
Please check other logs for more detailed info|\
- Network Type Orchestrated mode
+ Network Type Orchestrated mode
RA_ROLLBACK_NULL=\
MSO-RA-5249W|\
Rollback: No action to perform|\
No resolution needed|\
- Rollback: No action to perform
+ Rollback: No action to perform
RA_ASYNC_ROLLBACK=\
MSO-RA-5251I|\
Async Rollback Network {0}|\
No resolution needed|\
- Async Rollback Network
+ Async Rollback Network
RA_WSDL_NOT_FOUND=\
MSO-RA-5252E|\
Unable to find wsdl file {0} in classpath|\
No resolution needed|\
- Unable to find wsdl file in classpath
+ Unable to find wsdl file in classpath
RA_CALLBACK_BPEL_COMPLETE=\
MSO-RA-5258I|\
Completed processing BPEL request|\
No resolution needed|\
- Completed processing BPEL request
+ Completed processing BPEL request
RA_SDNC_MISS_CONFIG_PARAM=\
MSO-RA-5259E|\
Missing configuration for:{0}|\
Please check other logs for more detailed info|\
- Missing configuration for
+ Missing configuration for
RA_SDNC_INVALID_CONFIG=\
MSO-RA-5260W|\
Invalid configuration(most requests require atleast 3 params:method,timeout,action) for Key:{0} Value:{1}|\
Please check other logs for more detailed info|\
- Invalid configuration
+ Invalid configuration
RA_TENANT_NOT_FOUND=\
MSO-RA-5263E|\
Tenant not found: tenant={0}, cloudSiteId={1}|\
Please check other logs for more detailed info|\
- Tenant not found
+ Tenant not found
RA_PRINT_URL=\
MSO-RA-5264I|\
{0} URL:{1}|\
No resolution needed|\
- Log the URL
+ Log the URL
RA_RECEIVE_SDNC_NOTIF=\
MSO-RA-5268I|\
Received SDNC Notification. XML:{0}|\
No resolution needed|\
- Received SDNC Notification
+ Received SDNC Notification
RA_INIT_SDNC_ADAPTER=\
MSO-RA-5269I|\
Initializing mso-sdnc-adapter|\
No resolution needed|\
- Initializing mso-sdnc-adapter
+ Initializing mso-sdnc-adapter
RA_RECEIVE_BPEL_REQUEST=\
MSO-RA-5270I|\
BPEL request received [{0}] with callback URL [{1}]|\
No resolution needed|\
- BPEL request received
+ BPEL request received
RA_SEND_REQUEST_SDNC_ERR=\
MSO-RA-5271E|\
Error sending request to SDNC. Failed to start SDNC Client thread|\
Please check other logs for more detailed info|\
- Error sending request to SDNC
+ Error sending request to SDNC
RA_TENANT_ALREADY_EXIST=\
MSO-RA-5272E|\
Tenant {0} already exists in {1}|\
No resolution needed|\
- Tenant alaredy exists
+ Tenant alaredy exists
RA_SEND_REQUEST_APPC_ERR=\
MSO-RA-5273E|\
Error sending request to APPC|\
Please check other logs for more detailed info|\
- Error sending request to APPC
+ Error sending request to APPC
RA_VNF_ALREADY_EXIST=\
MSO-RA-5275E|\
Stack {0} already exists in {1}/{2}|\
No resolution needed|\
- VNF already exists
+ VNF already exists
RA_VNF_UNKNOWN_PARAM=\
MSO-RA-5276E|\
Unknown {0}:{1}|\
No resolution needed|\
- Uknown parameter
+ Uknown parameter
RA_VNF_EXTRA_PARAM=\
MSO-RA-5277E|\
Create Stack ({0}) extra input params received:{1}|\
Please check other logs for more detailed info|\
- Extra input params received
+ Extra input params received
RA_VNF_NOT_EXIST=\
MSO-RA-5278E|\
Stack {0} does not exist in {1}/{2}|\
No resolution needed|\
- Stack does not exist
+ Stack does not exist
RA_ASYNC_CREATE_VNF=\
MSO-RA-5282I|\
Async Create VNF :{0} of type {1} in {2}/{3}|\
No resolution needed|\
- Async Create VNF
+ Async Create VNF
RA_SEND_VNF_NOTIF_ERR=\
MSO-RA-5283E|\
Error sending createVnf notification|\
Please check other logs for more detailed info|\
- Error sending createVnf notification
+ Error sending createVnf notification
RA_ASYNC_CREATE_VNF_COMPLETE=\
MSO-RA-5284I|\
Completed createVnfA|\
No resolution needed|\
- Completed createVnfA
+ Completed createVnfA
RA_ASYNC_UPDATE_VNF=\
MSO-RA-5285I|\
Async Update VNF :{0} of type {1} in {2}/{3}|\
@@ -276,7 +276,7 @@ RA_ASYNC_UPDATE_VNF_COMPLETE=\
MSO-RA-5286I|\
Completed updateVnfA|\
No resolution needed|\
- Completed updateVnfA
+ Completed updateVnfA
RA_ASYNC_QUERY_VNF=\
MSO-RA-5287I|\
Async Query VNF :{0} of type {1} in {2}/{3}|\
@@ -286,7 +286,7 @@ RA_ASYNC_QUERY_VNF_COMPLETE=\
MSO-RA-5288I|\
Completed queryVnfA|\
No resolution needed|\
- Completed queryVnfA
+ Completed queryVnfA
RA_ASYNC_DELETE_VNF=\
MSO-RA-5289I|\
Async Delete VNF :{0} of type {1} in {2}/{3}|\
@@ -296,7 +296,7 @@ RA_ASYNC_DELETE_VNF_COMPLETE=\
MSO-RA-5290I|\
Completed deleteVnfA|\
No resolution needed|\
- Completed deleteVnfA
+ Completed deleteVnfA
RA_ASYNC_ROLLBACK_VNF=\
MSO-RA-5291I|\
Async Rollback VNF|\
@@ -306,7 +306,7 @@ RA_ASYNC_ROLLBACK_VNF_COMPLETE=\
MSO-RA-5292I|\
Completed rollbackVnfA|\
No resolution needed|\
- Completed rollbackVnfA
+ Completed rollbackVnfA
RA_DB_INVALID_STATUS=\
MSO-RA-5293E|\
Invalid status value|\
@@ -316,12 +316,12 @@ RA_DB_REQUEST_NOT_EXIST=\
MSO-RA-5294E|\
Request ID={0} does not exist in DB|\
Please check other logs for more detailed info|\
- Record does not exist in DB
+ Record does not exist in DB
RA_CANT_UPDATE_REQUEST=\
MSO-RA-5295E|\
Enable to update {0} in DB for Request ID={1}|\
Please check other logs for more detailed info|\
- Enable to update DB
+ Enable to update DB
RA_CONFIG_LOAD=\
MSO-RA-5296I|\
Configuration loaded from {0}|\
@@ -331,42 +331,42 @@ RA_RECEIVE_WORKFLOW_MESSAGE=\
MSO-RA-5297I|\
Received Workflow Message: {0}|\
No resolution needed|\
- Received Workflow Message
+ Received Workflow Message
RA_NS_EXC=\
MSO-RA-5298I|\
VFC Adatper Message: {0}|\
No resolution needed|\
- VFC Adatper Message
+ VFC Adatper Message
RA_GENERAL_EXCEPTION_ARG=\
MSO-RA-9200E|\
Exception: {0}|\
Please check other logs for more detailed info|\
- General exception with reason
+ General exception with reason
RA_GENERAL_EXCEPTION=\
MSO-RA-9201E|\
Exception encountered|\
Please check other logs for more detailed info|\
- Exception encountered
+ Exception encountered
RA_CONNECTION_EXCEPTION=\
MSO-RA-9202E|\
Exception communicating with {0}: {1}|\
Please check other logs for more detailed info|\
- Communication Exception
+ Communication Exception
RA_EXCEPTION_COMMUNICATE_SDNC=\
MSO-RA-9203E|\
Exception while processing request to SDNC|\
Please check other logs for more detailed info|\
- Exception while processing request to SDNC
+ Exception while processing request to SDNC
RA_EVALUATE_XPATH_ERROR=\
MSO-RA-9204E|\
Error while evaluating xpath {0} - {1}|\
Please check other logs for more detailed info|\
- Error while evaluating xpath
+ Error while evaluating xpath
RA_ANALYZE_ERROR_EXC=\
MSO-RA-9205E|\
Problem analyzing error returned by SDN-C|\
Please check other logs for more detailed info|\
- Problem analyzing error returned by SDN-C
+ Problem analyzing error returned by SDN-C
RA_ERROR_GET_RESPONSE_SDNC=\
MSO-RA-9206E|\
Error getting response code from errored SDNC request|\
@@ -381,7 +381,7 @@ RA_CREATE_STACK_ERR=\
MSO-RA-9208E|\
Create Stack Error: {0}|\
Please check other logs for more detailed info|\
- Create Stack Error
+ Create Stack Error
RA_UPDATE_STACK_ERR=\
MSO-RA-9209E|\
Update Stack Error - Polling complete with non-success status: {0}, {1}|\
@@ -391,17 +391,17 @@ RA_UPDATE_NETWORK_ERR=\
MSO-RA-9210E|\
Exception while update network, {0} in {1}/{2}|\
Please check other logs for more detailed info |\
- Update Network Error
+ Update Network Error
RA_QUERY_NETWORK_EXC=\
MSO-RA-9211E|\
Exception while query network: {0} in {1}/{2}|\
Please check other logs for more detailed info|\
- Exception while query network:
+ Exception while query network:
RA_CREATE_NETWORK_EXC=\
MSO-RA-9212E|\
Exception while create network: {0} in {1}/{2}|\
Please check other logs for more detailed info|\
- Create Network Error
+ Create Network Error
RA_DELETE_NETWORK_EXC=\
MSO-RA-9213E|\
Exception while delete network: {0} in {1}/{2}|\
@@ -416,12 +416,12 @@ RA_WSDL_URL_CONVENTION_EXC=\
MSO-RA-9215E|\
{0} URL converion failed|\
Please check other logs for more detailed info|\
- WSDL URL converion failed
+ WSDL URL converion failed
RA_INIT_NOTIF_EXC=\
MSO-RA-9216E|\
Caught exception initializing Notification Url|\
Please check other logs for more detailed info|\
- Caught exception initializing Notification Url
+ Caught exception initializing Notification Url
RA_SET_CALLBACK_AUTH_EXC=\
MSO-RA-9217E|\
Unable to set authorization in callback request|\
@@ -431,7 +431,7 @@ RA_FAULT_INFO_EXC=\
MSO-RA-9218E|\
Exception caught while getting fault info|\
Please check other logs for more detailed info|\
- Exception caught while getting fault info
+ Exception caught while getting fault info
RA_CALLBACK_BPEL_EXC=\
MSO-RA-9219E|\
Error sending BPEL Callback request|\
@@ -441,7 +441,7 @@ RA_CREATE_TENANT_ERR=\
MSO-RA-9220E|\
Create Tenant Error: {0}|\
Please check other logs for more detailed info|\
- Create Tenant Error
+ Create Tenant Error
RA_DELETE_TEMAMT_ERR=\
MSO-RA-9221E|\
Delete Tenant Error: {0}|\
@@ -451,12 +451,12 @@ RA_ERROR_CREATE_SDNC_REQUEST=\
MSO-RA-9222E|\
Error creating SDNC request|\
Please check other logs for more detailed info|\
- Error creating SDNC request
+ Error creating SDNC request
RA_ERROR_CREATE_SDNC_RESPONSE=\
MSO-RA-9223E|\
Error creating SDNC response|\
Please check other logs for more detailed info|\
- Error creating SDNC response
+ Error creating SDNC response
RA_ERROR_CONVERT_XML2STR=\
MSO-RA-9224E|\
Error converting xml Document to String|\
@@ -466,12 +466,12 @@ RA_UPDATE_TENANT_ERR=\
MSO-RA-9225E|\
Update Tenant Error: {0}|\
Please check other logs for more detailed info|\
- Update Tenant Error
+ Update Tenant Error
RA_ROLLBACK_TENANT_ERR=\
MSO-RA-9226E|\
Rollback Tenant Error: {0}|\
Please check other logs for more detailed info|\
- Rollback Tenant Error
+ Rollback Tenant Error
RA_QUERY_VNF_ERR=\
MSO-RA-9227E|\
Exception while query VNF:{0} in {1}/{2}|\
@@ -481,12 +481,12 @@ RA_UPDATE_VNF_ERR=\
MSO-RA-9228E|\
Exception while update VNF:{0} in {1}/{2}|\
Please check other logs for more detailed info|\
- Exception while update VNF
+ Exception while update VNF
RA_DELETE_VNF_ERR=\
MSO-RA-9229E|\
Exception while delete VNF:{0} in {1}/{2}|\
Please check other logs for more detailed info|\
- Exception while delete VNF
+ Exception while delete VNF
RA_CREATE_VNF_ERR=\
MSO-RA-9230E|\
Exception while create VNF:{0} in {1}/{2}|\
@@ -496,4 +496,4 @@ RA_ROLLBACK_VNF_ERR=\
MSO-RA-9231E|\
Exception while rollback VNF|\
Please check other logs for more detailed info|\
- Exception while rollback VNF
+ Exception while rollback VNF