Replace Hard Coded Function 94/74294/1
authorSmokowski, Steve (ss835w) <ss835w@us.att.com>
Wed, 5 Dec 2018 19:43:36 +0000 (14:43 -0500)
committerSmokowski, Steve (ss835w) <ss835w@us.att.com>
Wed, 5 Dec 2018 19:43:37 +0000 (14:43 -0500)
- Replaced the VNFC hardcoded Function with the function value that is
set on the node template.

Change-Id: Id3b2e3a05c5dc9392509972fdf557ec1fc6c3beb
Issue-ID: SO-1279
Signed-off-by: Smokowski, Steve (ss835w) <ss835w@us.att.com>
asdc-controller/src/main/java/org/onap/so/asdc/installer/heat/ToscaResourceInstaller.java

index c8f7f05..ac15fb9 100644 (file)
@@ -1152,7 +1152,7 @@ public class ToscaResourceInstaller {
        }
        
        protected VnfcInstanceGroupCustomization createVNFCInstanceGroup(NodeTemplate vnfcNodeTemplate, Group group,
-                       VnfResourceCustomization vnfResourceCustomization) {
+                       VnfResourceCustomization vnfResourceCustomization, ToscaResourceStructure toscaResourceStructure) {
 
                        Metadata instanceMetadata = group.getMetadata();
                        // Populate InstanceGroup
@@ -1172,7 +1172,17 @@ public class ToscaResourceInstaller {
                        vfcInstanceGroupCustom.setModelCustomizationUUID(vnfResourceCustomization.getModelCustomizationUUID());
                        vfcInstanceGroupCustom.setModelUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
                        vfcInstanceGroupCustom.setDescription(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_DESCRIPTION));
-                       vfcInstanceGroupCustom.setFunction("FUNCTION");
+                                               
+                       String getInputName = null;
+                       String groupProperty = toscaResourceStructure.getSdcCsarHelper().getGroupPropertyLeafValue(group, "vfc_instance_group_function"); 
+                       if (groupProperty != null) { 
+                       int getInputIndex = groupProperty.indexOf("{get_input="); 
+                               if (getInputIndex > -1) { 
+                                       getInputName = groupProperty.substring(getInputIndex+11, groupProperty.length()-1); 
+                               } 
+                       }
+                       vfcInstanceGroupCustom.setFunction(toscaResourceStructure.getSdcCsarHelper().getNodeTemplatePropertyLeafValue(vnfcNodeTemplate, getInputName));
+                       
                        vfcInstanceGroupCustom.setInstanceGroup(vfcInstanceGroup);
                        vfcInstanceGroupCustom.setVnfResourceCust(vnfResourceCustomization);            
                        
@@ -1595,7 +1605,7 @@ public class ToscaResourceInstaller {
                                
                        for (Group group : groupList) { 
                                
-                                       VnfcInstanceGroupCustomization vnfcInstanceGroupCustomization = createVNFCInstanceGroup(vfNodeTemplate, group, vnfResourceCustomization);
+                                       VnfcInstanceGroupCustomization vnfcInstanceGroupCustomization = createVNFCInstanceGroup(vfNodeTemplate, group, vnfResourceCustomization, toscaResourceStructure);
                                        
                                        vnfcInstanceGroupCustomizationRepo.saveAndFlush(vnfcInstanceGroupCustomization);                                
                        }