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.services.heattotosca.UnifiedComposition;
8 import org.openecomp.sdc.translator.services.heattotosca.UnifiedCompositionService;
10 import java.util.ArrayList;
11 import java.util.List;
12 import java.util.Optional;
14 public class UnifiedCompositionScalingInstances implements UnifiedComposition {
16 private UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
19 public void createUnifiedComposition(ServiceTemplate serviceTemplate,
20 ServiceTemplate nestedServiceTemplate,
21 List<UnifiedCompositionData> unifiedCompositionDataList,
22 TranslationContext context) {
23 if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
28 Optional<ServiceTemplate> substitutionServiceTemplate =
29 unifiedCompositionService.createUnifiedSubstitutionServiceTemplate(serviceTemplate,
30 unifiedCompositionDataList, context, index);
32 if (!substitutionServiceTemplate.isPresent()) {
36 String abstractNodeTemplateId = unifiedCompositionService
37 .createAbstractSubstituteNodeTemplate(serviceTemplate, substitutionServiceTemplate.get(),
38 unifiedCompositionDataList, context, index);
40 unifiedCompositionService
41 .updateCompositionConnectivity(serviceTemplate, unifiedCompositionDataList, context);
43 unifiedCompositionService
44 .cleanUnifiedCompositionEntities(serviceTemplate, unifiedCompositionDataList, context);
46 unifiedCompositionService.cleanNodeTypes(serviceTemplate, unifiedCompositionDataList, context);