aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java
diff options
context:
space:
mode:
authorKrupaNagabhushan <krupa.nagabhushan@est.tech>2020-09-17 15:11:30 +0100
committerS�bastien Determe <sebastien.determe@intl.att.com>2020-10-23 14:49:33 +0000
commita5a46f26d043b70cd9a44fed05b0e8ba184318fb (patch)
tree97582d3263a48658f8a84367684e1eb40ba4624e /catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java
parent9714961d2950d00ae66be01e20c1ebb8552a82e9 (diff)
Fix for substitution filter properties
Issue-ID: SDC-3325 Change-Id: If26bf895a0a2f914fb9c2b36e53466df9b7999fe Signed-off-by: KrupaNagabhushan <krupa.nagabhushan@est.tech>
Diffstat (limited to 'catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java')
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java38
1 files changed, 19 insertions, 19 deletions
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java
index 533ed7a6f0..0907dd1f9b 100644
--- a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java
@@ -57,6 +57,7 @@ import org.openecomp.sdc.be.datatypes.elements.ListDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.RequirementNodeFilterCapabilityDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.RequirementNodeFilterPropertyDataDefinition;
+import org.openecomp.sdc.be.datatypes.elements.RequirementSubstitutionFilterCapabilityDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.RequirementSubstitutionFilterPropertyDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.SubstitutionFilterDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.ToscaArtifactDataDefinition;
@@ -314,7 +315,6 @@ public class ToscaExportHandler {
component.getComponentInstancesProperties();
Map<String, List<ComponentInstanceInterface>> componentInstanceInterfaces =
component.getComponentInstancesInterfaces();
- SubstitutionMapping substitutionMapping = new SubstitutionMapping();
if (CollectionUtils.isNotEmpty(componentInstances)) {
final Either<Map<String, ToscaNodeTemplate>, ToscaError> nodeTemplates =
convertNodeTemplates(component, componentInstances,
@@ -325,10 +325,11 @@ public class ToscaExportHandler {
}
log.debug("node templates converted");
topologyTemplate.setNode_templates(nodeTemplates.left().value());
-
- convertSubstitutionMappingFilter(componentInstances, substitutionMapping);
}
+ SubstitutionMapping substitutionMapping = new SubstitutionMapping();
+ convertSubstitutionMappingFilter(component, substitutionMapping);
+
addGroupsToTopologyTemplate(component, topologyTemplate);
try {
@@ -377,19 +378,13 @@ public class ToscaExportHandler {
return Either.left(toscaNode);
}
- private void convertSubstitutionMappingFilter(final List<ComponentInstance> componentInstances,
+ private void convertSubstitutionMappingFilter(final Component component,
final SubstitutionMapping substitutionMapping) {
- componentInstances.stream()
- .filter(componentInstance -> hasSubstitutionFilterDataDefinition(componentInstance.getSubstitutionFilter()))
- .forEach(componentInstance -> substitutionMapping
- .setSubstitution_filter(convertToSubstitutionFilterComponent(componentInstance.getSubstitutionFilter())));
- }
-
- private boolean hasSubstitutionFilterDataDefinition(
- final SubstitutionFilterDataDefinition substitutionFilterDataDefinition) {
-
- return substitutionFilterDataDefinition != null && substitutionFilterDataDefinition.getProperties() != null
- && CollectionUtils.isNotEmpty(substitutionFilterDataDefinition.getProperties().getListToscaDataDefinition());
+ if(component.getSubstitutionFilter() != null
+ && (component.getSubstitutionFilter().getProperties()).getListToscaDataDefinition() != null) {
+ substitutionMapping
+ .setSubstitution_filter(convertToSubstitutionFilterComponent(component.getSubstitutionFilter()));
+ }
}
private void addGroupsToTopologyTemplate(Component component, ToscaTopolgyTemplate topologyTemplate) {
@@ -1521,18 +1516,23 @@ public class ToscaExportHandler {
private NodeFilter convertToSubstitutionFilterComponent(
final SubstitutionFilterDataDefinition substitutionFilterDataDefinition) {
+ if (substitutionFilterDataDefinition == null) {
+ return null;
+ }
NodeFilter nodeFilter = new NodeFilter();
- final List<Map<String, List<Object>>> propertiesCopy = new ArrayList<>();
- copySubstitutionFilterProperties(substitutionFilterDataDefinition.getProperties(), propertiesCopy);
+ ListDataDefinition<RequirementSubstitutionFilterPropertyDataDefinition> origProperties =
+ substitutionFilterDataDefinition.getProperties();
+ List<Map<String, List<Object>>> propertiesCopy = new ArrayList<>();
+
+ copySubstitutionFilterProperties(origProperties, propertiesCopy);
if (CollectionUtils.isNotEmpty(propertiesCopy)) {
nodeFilter.setProperties(propertiesCopy);
}
nodeFilter.setTosca_id(cloneToscaId(substitutionFilterDataDefinition.getTosca_id()));
- nodeFilter = (NodeFilter) cloneObjectFromYml(nodeFilter, NodeFilter.class);
- return nodeFilter;
+ return (NodeFilter) cloneObjectFromYml(nodeFilter, NodeFilter.class);
}
private Object cloneToscaId(Object toscaId) {