diff options
author | vasraz <vasyl.razinkov@est.tech> | 2020-10-20 18:16:28 +0100 |
---|---|---|
committer | S�bastien Determe <sebastien.determe@intl.att.com> | 2020-11-05 11:22:14 +0000 |
commit | 7f7b1c8e7a8fba8e73786cb158f1ebfa5b11a8c4 (patch) | |
tree | 628454ed6ba923fcbcd28781f4deb331d9861ab3 /catalog-be/src/main/java/org | |
parent | a26f07d36732915193c56c8100e70680531b4d55 (diff) |
Add substitution_mapping attributes mapping
Add support of mapping the outputs to attributes in substitution_mapping
Change-Id: Ifbe95a1fdfd476aa7aca17502ee9b30bea906874
Signed-off-by: Vasyl Razinkov <vasyl.razinkov@est.tech>
Issue-ID: SDC-3320
Diffstat (limited to 'catalog-be/src/main/java/org')
-rw-r--r-- | catalog-be/src/main/java/org/openecomp/sdc/be/tosca/ToscaExportHandler.java | 19 | ||||
-rw-r--r-- | catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/SubstitutionMapping.java | 1 |
2 files changed, 20 insertions, 0 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 d0c14f77c5..08c3d18157 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 @@ -373,6 +373,11 @@ public class ToscaExportHandler { substitutionMapping.setProperties(propertyMappingMap); } + final Map<String, String[]> attributesMappingMap = buildSubstitutionMappingAttributesMapping(component); + if (!attributesMappingMap.isEmpty()) { + substitutionMapping.setAttributes(attributesMappingMap); + } + topologyTemplate.setSubstitution_mappings(substitutionMapping); toscaNode.setTopology_template(topologyTemplate); @@ -1751,6 +1756,20 @@ public class ToscaExportHandler { ); } + private Map<String, String[]> buildSubstitutionMappingAttributesMapping(final Component component) { + if (component == null || CollectionUtils.isEmpty(component.getOutputs())) { + return Collections.emptyMap(); + } + return component.getOutputs().stream() + .map(PropertyDataDefinition::getName) + .collect( + Collectors.toMap( + outputName -> outputName, + outputName -> new String[]{outputName}, + (outputName1, outputName2) -> outputName1) + ); + } + Optional<Map<String, ToscaProperty>> getProxyNodeTypeProperties(Component proxyComponent, Map<String, DataTypeDefinition> dataTypes) { diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/SubstitutionMapping.java b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/SubstitutionMapping.java index 1a2a13817b..7b70a0b5f4 100644 --- a/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/SubstitutionMapping.java +++ b/catalog-be/src/main/java/org/openecomp/sdc/be/tosca/model/SubstitutionMapping.java @@ -39,4 +39,5 @@ public class SubstitutionMapping { private Map<String, String[]> requirements; private NodeFilter substitution_filter; private Map<String, String[]> properties; + private Map<String, String[]> attributes; } |