From 7f7b1c8e7a8fba8e73786cb158f1ebfa5b11a8c4 Mon Sep 17 00:00:00 2001 From: vasraz Date: Tue, 20 Oct 2020 18:16:28 +0100 Subject: Add substitution_mapping attributes mapping Add support of mapping the outputs to attributes in substitution_mapping Change-Id: Ifbe95a1fdfd476aa7aca17502ee9b30bea906874 Signed-off-by: Vasyl Razinkov Issue-ID: SDC-3320 --- .../openecomp/sdc/be/tosca/ToscaExportHandler.java | 19 +++++ .../sdc/be/tosca/model/SubstitutionMapping.java | 1 + .../be/tosca/model/SubstitutionMappingTest.java | 99 ---------------------- 3 files changed, 20 insertions(+), 99 deletions(-) delete mode 100644 catalog-be/src/test/java/org/openecomp/sdc/be/tosca/model/SubstitutionMappingTest.java (limited to 'catalog-be') 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 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 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> getProxyNodeTypeProperties(Component proxyComponent, Map 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 requirements; private NodeFilter substitution_filter; private Map properties; + private Map attributes; } diff --git a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/model/SubstitutionMappingTest.java b/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/model/SubstitutionMappingTest.java deleted file mode 100644 index 8898259ee6..0000000000 --- a/catalog-be/src/test/java/org/openecomp/sdc/be/tosca/model/SubstitutionMappingTest.java +++ /dev/null @@ -1,99 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * SDC - * ================================================================================ - * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - */ - -package org.openecomp.sdc.be.tosca.model; - -import org.junit.Test; - -import java.util.Map; - - -public class SubstitutionMappingTest { - - private SubstitutionMapping createTestSubject() { - return new SubstitutionMapping(); - } - - - @Test - public void testGetNode_type() throws Exception { - SubstitutionMapping testSubject; - String result; - - // default test - testSubject = createTestSubject(); - result = testSubject.getNode_type(); - } - - - @Test - public void testSetNode_type() throws Exception { - SubstitutionMapping testSubject; - String node_type = ""; - - // default test - testSubject = createTestSubject(); - testSubject.setNode_type(node_type); - } - - - @Test - public void testGetCapabilities() throws Exception { - SubstitutionMapping testSubject; - Map result; - - // default test - testSubject = createTestSubject(); - result = testSubject.getCapabilities(); - } - - - @Test - public void testSetCapabilities() throws Exception { - SubstitutionMapping testSubject; - Map capabilities = null; - - // default test - testSubject = createTestSubject(); - testSubject.setCapabilities(capabilities); - } - - - @Test - public void testGetRequirements() throws Exception { - SubstitutionMapping testSubject; - Map result; - - // default test - testSubject = createTestSubject(); - result = testSubject.getRequirements(); - } - - - @Test - public void testSetRequirements() throws Exception { - SubstitutionMapping testSubject; - Map requirements = null; - - // default test - testSubject = createTestSubject(); - testSubject.setRequirements(requirements); - } -} -- cgit 1.2.3-korg