1 package org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition;
3 import org.apache.commons.collections4.CollectionUtils;
4 import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
5 import org.openecomp.sdc.translator.datatypes.heattotosca.TranslationContext;
6 import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.UnifiedCompositionData;
7 import org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.composition.to.UnifiedCompositionTo;
8 import org.openecomp.sdc.translator.services.heattotosca.UnifiedComposition;
9 import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
11 import java.util.List;
13 public class UnifiedCompositionNestedSingleCompute implements UnifiedComposition {
15 // There is no consolidation in NestedSingleCompute implementation.
16 // In case of nested single compute, if there is more than one entry in the
17 // unifiedCompositionDataList, each one should be handed separately, no consolidation between
20 public void createUnifiedComposition(ServiceTemplate serviceTemplate,
21 ServiceTemplate nestedServiceTemplate,
22 List<UnifiedCompositionData> unifiedCompositionDataList,
23 TranslationContext context) {
24 UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
25 if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
29 UnifiedCompositionTo unifiedCompositionTo = new UnifiedCompositionTo(serviceTemplate, nestedServiceTemplate,
30 unifiedCompositionDataList, context, null);
31 for (UnifiedCompositionData unifiedCompositionData : unifiedCompositionDataList) {
32 unifiedCompositionService.handleUnifiedNestedDefinition(unifiedCompositionTo, unifiedCompositionData);
33 String nestedNodeTemplateId = unifiedCompositionData.getNestedTemplateConsolidationData().getNodeTemplateId();
34 unifiedCompositionService
35 .createNestedVfcInstanceGroup(nestedNodeTemplateId, unifiedCompositionTo, unifiedCompositionData);
36 unifiedCompositionService.updateUnifiedNestedConnectivity(unifiedCompositionTo, unifiedCompositionData);
37 unifiedCompositionService.cleanUnifiedNestedEntities(unifiedCompositionTo, unifiedCompositionData);
38 unifiedCompositionService.updateSubstitutionNodeTypePrefix(nestedServiceTemplate);