03d7eb02dfa634078314020db737bcf67358bd8f
[sdc.git] / openecomp-be / lib / openecomp-sdc-translator-lib / openecomp-sdc-translator-core / src / main / java / org / openecomp / sdc / translator / services / heattotosca / impl / unifiedcomposition / UnifiedCompositionNestedSingleCompute.java
1 package org.openecomp.sdc.translator.services.heattotosca.impl.unifiedcomposition;
2
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;
9
10 import java.util.ArrayList;
11 import java.util.List;
12
13 public class UnifiedCompositionNestedSingleCompute implements UnifiedComposition {
14   @Override
15   public void createUnifiedComposition(ServiceTemplate serviceTemplate,
16                                        ServiceTemplate nestedServiceTemplate,
17                                        List<UnifiedCompositionData> unifiedCompositionDataList,
18                                        TranslationContext context) {
19     UnifiedCompositionService unifiedCompositionService = new UnifiedCompositionService();
20     if (CollectionUtils.isEmpty(unifiedCompositionDataList)) {
21       return;
22     }
23
24     for (int i = 0; i < unifiedCompositionDataList.size(); i++) {
25       List<UnifiedCompositionData> nestedUnifiedCompositionDataList = new ArrayList<>();
26       nestedUnifiedCompositionDataList.add(unifiedCompositionDataList.get(i));
27
28       unifiedCompositionService
29           .handleUnifiedNestedDefinition(serviceTemplate, nestedServiceTemplate,
30               unifiedCompositionDataList, context);
31       unifiedCompositionService
32           .updateUnifiedNestedConnectivity(serviceTemplate, nestedServiceTemplate,
33               nestedUnifiedCompositionDataList, context);
34       unifiedCompositionService
35           .cleanUnifiedNestedEntities(serviceTemplate, nestedUnifiedCompositionDataList, context);
36     }
37   }
38 }