Use the configurationId associated to vnfc if 63/95763/1
authorBonkur, Venkat <venkat.bonkur@att.com>
Mon, 16 Sep 2019 18:09:16 +0000 (14:09 -0400)
committerBenjamin, Max (mb388a) <mb388a@att.com>
Mon, 16 Sep 2019 18:09:16 +0000 (14:09 -0400)
Use the configurationId associated to vnfc if present.
removing the  autowiring of the Configuration bean class

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

bpmn/so-bpmn-tasks/src/main/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasks.java
bpmn/so-bpmn-tasks/src/test/java/org/onap/so/bpmn/infrastructure/workflow/tasks/WorkflowActionBBTasksTest.java

index d579815..f5bbcf5 100644 (file)
@@ -38,6 +38,7 @@ import org.onap.so.bpmn.servicedecomposition.entities.ExecuteBuildingBlock;
 import org.onap.so.bpmn.servicedecomposition.entities.WorkflowResourceIds;
 import org.onap.so.bpmn.servicedecomposition.tasks.BBInputSetupUtils;
 import org.onap.so.client.aai.AAIObjectType;
+import org.onap.so.client.aai.entities.Configuration;
 import org.onap.so.client.exception.ExceptionBuilder;
 import org.onap.so.db.catalog.beans.CvnfcConfigurationCustomization;
 import org.onap.so.db.catalog.client.CatalogDbClient;
@@ -398,7 +399,7 @@ public class WorkflowActionBBTasks {
                 if (fabricConfig != null && fabricConfig.getConfigurationResource() != null
                         && fabricConfig.getConfigurationResource().getToscaNodeType() != null
                         && fabricConfig.getConfigurationResource().getToscaNodeType().contains(FABRIC_CONFIGURATION)) {
-                    String configurationId = UUID.randomUUID().toString();
+                    String configurationId = getConfigurationId(vnfc);
                     ConfigurationResourceKeys configurationResourceKeys = new ConfigurationResourceKeys();
                     configurationResourceKeys.setCvnfcCustomizationUUID(modelCustomizationId);
                     configurationResourceKeys.setVfModuleCustomizationUUID(vfModuleCustomizationUUID);
@@ -429,6 +430,17 @@ public class WorkflowActionBBTasks {
         }
     }
 
+    protected String getConfigurationId(Vnfc vnfc) {
+        List<Configuration> configurations =
+                workflowAction.getRelatedResourcesInVnfc(vnfc, Configuration.class, AAIObjectType.CONFIGURATION);
+        if (!configurations.isEmpty()) {
+            Configuration configuration = configurations.get(0);
+            return configuration.getConfigurationId();
+        } else {
+            return UUID.randomUUID().toString();
+        }
+    }
+
     protected ExecuteBuildingBlock getExecuteBBForConfig(String bbName, ExecuteBuildingBlock ebb,
             String configurationId, ConfigurationResourceKeys configurationResourceKeys) {
         ExecuteBuildingBlock configBB = new ExecuteBuildingBlock();
index aac09b4..1df4ad7 100644 (file)
@@ -417,4 +417,22 @@ public class WorkflowActionBBTasksTest extends BaseTaskTest {
         workflowActionBBTasks.updateInstanceId(execution);
         Mockito.verify(reqMock, Mockito.times(1)).setServiceInstanceId(instanceId);
     }
+
+    @Test
+    public void getConfigurationId() {
+        org.onap.aai.domain.yang.Vnfc vnfc = new org.onap.aai.domain.yang.Vnfc();
+        vnfc.setModelInvariantId("modelInvariantId");
+        vnfc.setVnfcName("testVnfcName");
+        List<org.onap.aai.domain.yang.Configuration> configurations =
+                new ArrayList<org.onap.aai.domain.yang.Configuration>();
+        org.onap.aai.domain.yang.Configuration configuration = new org.onap.aai.domain.yang.Configuration();
+        configuration.setConfigurationId("configurationId");
+        configuration.setModelCustomizationId("modelCustimizationId");
+        configuration.setConfigurationName("testConfigurationName");
+        configurations.add(configuration);
+        doReturn(configurations.get(0).getConfigurationId()).when(workflowActionBBTasks).getConfigurationId(vnfc);
+        assertEquals(workflowActionBBTasks.getConfigurationId(vnfc), "configurationId");
+    }
+
+
 }