summaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java')
-rw-r--r--openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java176
1 files changed, 92 insertions, 84 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java
index 2dfa3c90f7..6cdee5a6c5 100644
--- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java
+++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortTemplateConsolidationData.java
@@ -19,116 +19,124 @@ package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolid
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.ListMultimap;
import com.google.common.collect.Multimaps;
+import java.util.List;
+import java.util.Objects;
+import java.util.Optional;
+
import org.apache.commons.collections4.CollectionUtils;
import org.openecomp.core.utilities.file.FileUtils;
import org.openecomp.sdc.heat.datatypes.model.Resource;
import org.openecomp.sdc.tosca.datatypes.ToscaNodeType;
import org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil;
-import java.util.List;
-import java.util.Objects;
-import java.util.Optional;
+public class PortTemplateConsolidationData extends EntityConsolidationData {
+ // key - sub-interface type - for ResourceGroup it is the nested file name
+ // value - List of sub-interfaces of that type in the port
+ private final ListMultimap<String, SubInterfaceTemplateConsolidationData> subInterfaceConsolidationData =
+ Multimaps.synchronizedListMultimap(ArrayListMultimap.create());
-/**
- * The type Port template consolidation data.
- */
-public class PortTemplateConsolidationData extends EntityConsolidationData {
+ private String networkRole;
+
+ public String getNetworkRole() {
+ return networkRole;
+ }
- // key - sub-interface type - for ResourceGroup it is the nested file name
- // value - List of sub-interfaces of that type in the port
- private final ListMultimap<String, SubInterfaceTemplateConsolidationData> subInterfaceConsolidationData =
- Multimaps.synchronizedListMultimap(ArrayListMultimap.create());
-
- private String networkRole;
-
- public String getNetworkRole() {
- return networkRole;
- }
-
- public void setNetworkRole(String networkRole) {
- this.networkRole = networkRole;
- }
-
- public boolean isPortBoundToSubInterface() {
- return !subInterfaceConsolidationData.isEmpty();
- }
-
- public SubInterfaceTemplateConsolidationData getSubInterfaceResourceTemplateConsolidationData(Resource resource,
- String subInterfaceNodeTemplateId,
- String parentPortNodeTemplateId) {
- String subInterfaceType = createSubInterfaceType(resource);
- List<SubInterfaceTemplateConsolidationData> subInterfaceTemplateConsolidationDataList =
- subInterfaceConsolidationData.get(subInterfaceType);
- SubInterfaceTemplateConsolidationData consolidationData = null;
- if (CollectionUtils.isNotEmpty(subInterfaceTemplateConsolidationDataList)) {
- Optional<SubInterfaceTemplateConsolidationData> optionalConsolidationData =
- subInterfaceTemplateConsolidationDataList.stream()
- .filter(s -> s.getNodeTemplateId().equals(subInterfaceNodeTemplateId))
- .findFirst();
- if (optionalConsolidationData.isPresent()) {
- consolidationData = optionalConsolidationData.get();
- }
+ public void setNetworkRole(String networkRole) {
+ this.networkRole = networkRole;
}
- if (Objects.isNull(consolidationData)) {
- consolidationData = createSubInterfaceConsolidationData(subInterfaceNodeTemplateId, parentPortNodeTemplateId);
- addSubInterfaceConsolidationData(subInterfaceType, consolidationData);
+ public boolean isPortBoundToSubInterface() {
+ return !subInterfaceConsolidationData.isEmpty();
}
- return consolidationData;
- }
- private String createSubInterfaceType(Resource resource) {
+ /**
+ * Create Sub interface template consolidation data base on given parameters - if it doesn't exist yet.
+ *
+ * @param resource resource of sub Interface
+ * @param subInterfaceNodeTemplateId template id of sub interface
+ * @param parentPortNodeTemplateId node template id of port node to which sub interface is related
+ * @return sub interface template consolidation data entity
+ */
+ public SubInterfaceTemplateConsolidationData addSubInterfaceTemplateConsolidationData(
+ Resource resource, String subInterfaceNodeTemplateId, String parentPortNodeTemplateId) {
+ String subInterfaceType = createSubInterfaceType(resource);
+ List<SubInterfaceTemplateConsolidationData> subInterfaceTemplateConsolidationDataList =
+ subInterfaceConsolidationData.get(subInterfaceType);
+ SubInterfaceTemplateConsolidationData consolidationData = null;
+ if (CollectionUtils.isNotEmpty(subInterfaceTemplateConsolidationDataList)) {
+ Optional<SubInterfaceTemplateConsolidationData> optionalConsolidationData =
+ subInterfaceTemplateConsolidationDataList.stream()
+ .filter(s -> s.getNodeTemplateId().equals(subInterfaceNodeTemplateId))
+ .findFirst();
+ if (optionalConsolidationData.isPresent()) {
+ consolidationData = optionalConsolidationData.get();
+ }
+ }
+
+ if (Objects.isNull(consolidationData)) {
+ consolidationData =
+ createSubInterfaceConsolidationData(subInterfaceNodeTemplateId, parentPortNodeTemplateId);
+ addSubInterfaceConsolidationData(subInterfaceType, consolidationData);
+ }
+ return consolidationData;
+ }
- return ToscaNodeType.VLAN_SUB_INTERFACE_RESOURCE_TYPE_PREFIX
- + FileUtils.getFileWithoutExtention(HeatToToscaUtil.getSubInterfaceResourceType(resource));
- }
+ private String createSubInterfaceType(Resource resource) {
+ return ToscaNodeType.VLAN_SUB_INTERFACE_RESOURCE_TYPE_PREFIX
+ + FileUtils.getFileWithoutExtention(
+ HeatToToscaUtil.getSubInterfaceResourceType(resource));
+ }
- private SubInterfaceTemplateConsolidationData createSubInterfaceConsolidationData(String subInterfaceNodeTemplateId, String parentPortNodeTemplateId) {
- SubInterfaceTemplateConsolidationData data = new SubInterfaceTemplateConsolidationData();
- data.setNodeTemplateId(subInterfaceNodeTemplateId);
- data.setParentPortNodeTemplateId(parentPortNodeTemplateId);
- return data;
- }
+ private SubInterfaceTemplateConsolidationData createSubInterfaceConsolidationData(
+ String subInterfaceNodeTemplateId, String parentPortNodeTemplateId) {
+ SubInterfaceTemplateConsolidationData data = new SubInterfaceTemplateConsolidationData();
+ data.setNodeTemplateId(subInterfaceNodeTemplateId);
+ data.setParentPortNodeTemplateId(parentPortNodeTemplateId);
+ return data;
+ }
- public void addSubInterfaceConsolidationData(String subPortType,
+ public void addSubInterfaceConsolidationData(String subPortType,
SubInterfaceTemplateConsolidationData
subInterfaceTemplateConsolidationData) {
- this.subInterfaceConsolidationData.put(subPortType, subInterfaceTemplateConsolidationData);
- }
+ this.subInterfaceConsolidationData.put(subPortType, subInterfaceTemplateConsolidationData);
+ }
- public boolean hasSameSubInterfaceTypes(PortTemplateConsolidationData other) {
- return other != null && this.subInterfaceConsolidationData.keySet().equals(
+ public boolean hasSameSubInterfaceTypes(PortTemplateConsolidationData other) {
+ return other != null && this.subInterfaceConsolidationData.keySet().equals(
other.subInterfaceConsolidationData.keySet());
- }
+ }
- public void copyMappedInto(ListMultimap<String, SubInterfaceTemplateConsolidationData> subInterfaceTypeToEntity) {
- subInterfaceTypeToEntity.putAll(this.subInterfaceConsolidationData);
- }
+ public void copyMappedInto(ListMultimap<String, SubInterfaceTemplateConsolidationData> subInterfaceTypeToEntity) {
+ subInterfaceTypeToEntity.putAll(this.subInterfaceConsolidationData);
+ }
- public void copyFlatInto(List<SubInterfaceTemplateConsolidationData> subInterfaceTemplateConsolidationDataList) {
- subInterfaceTemplateConsolidationDataList.addAll(subInterfaceConsolidationData.values());
- }
+ public void copyFlatInto(List<SubInterfaceTemplateConsolidationData> subInterfaceTemplateConsolidationDataList) {
+ subInterfaceTemplateConsolidationDataList.addAll(subInterfaceConsolidationData.values());
+ }
- public boolean isNumberOfSubInterfacesPerTypeSimilar(PortTemplateConsolidationData other) {
- return this.subInterfaceConsolidationData.isEmpty() && other.subInterfaceConsolidationData.isEmpty()
- || !this.subInterfaceConsolidationData.isEmpty() && !other.subInterfaceConsolidationData.isEmpty()
- && this.subInterfaceConsolidationData.keySet().stream().allMatch(
- subInterfaceType -> calculateSize(other.subInterfaceConsolidationData.get(subInterfaceType))
+ public boolean isNumberOfSubInterfacesPerTypeSimilar(PortTemplateConsolidationData other) {
+ return isBothSubInterfaceConsolidationDataEmpty(this, other)
+ || !isBothSubInterfaceConsolidationDataEmpty(this, other)
+ && this.subInterfaceConsolidationData.keySet().stream().allMatch(
+ subInterfaceType -> calculateSize(other.subInterfaceConsolidationData.get(subInterfaceType))
== calculateSize(this.subInterfaceConsolidationData.get(subInterfaceType)));
- }
-
- public boolean isSubInterfaceNodeTemplateIdParameter(String nodeTemplateType) {
- List<SubInterfaceTemplateConsolidationData> subInterfaceTemplateConsolidationDataList =
- this.subInterfaceConsolidationData.get(nodeTemplateType);
- return (Objects.nonNull(subInterfaceTemplateConsolidationDataList)
- && subInterfaceTemplateConsolidationDataList.size() > 1) ;
- }
+ }
- private int calculateSize(List<SubInterfaceTemplateConsolidationData> subInterfaces) {
- return subInterfaces == null ? 0 : subInterfaces.size();
- }
+ private boolean isBothSubInterfaceConsolidationDataEmpty(
+ PortTemplateConsolidationData object, PortTemplateConsolidationData other) {
+ return object.subInterfaceConsolidationData.isEmpty() && other.subInterfaceConsolidationData.isEmpty();
+ }
+ public boolean isSubInterfaceNodeTemplateIdParameter(String nodeTemplateType) {
+ List<SubInterfaceTemplateConsolidationData> subInterfaceTemplateConsolidationDataList =
+ this.subInterfaceConsolidationData.get(nodeTemplateType);
+ return (Objects.nonNull(subInterfaceTemplateConsolidationDataList)
+ && subInterfaceTemplateConsolidationDataList.size() > 1);
+ }
+ private int calculateSize(List<SubInterfaceTemplateConsolidationData> subInterfaces) {
+ return subInterfaces == null ? 0 : subInterfaces.size();
+ }
} \ No newline at end of file