diff options
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 Adapter V1 " 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 |