From 447fa891f14d0c6e379ca4d5bf326802aa91bb62 Mon Sep 17 00:00:00 2001 From: wsliwka Date: Wed, 25 Sep 2019 13:13:32 +0200 Subject: [PATCH] Extend service model extend service model by adding orchestrationType Issue-ID: AAI-2594 Signed-off-by: wsliwka Signed-off-by: Bartosz Gardziejewski Change-Id: I34de40005b6ddad0cd71ccb20fae94f7f45c6257 --- .../babel/xml/generator/api/AaiModelGenerator.java | 1 + .../onap/aai/babel/xml/generator/model/Model.java | 12 ++++- .../xml/generator/api/AaiModelGeneratorTest.java | 52 ++++++++++++++++++++++ .../AAI-Grouping Service for Test-service-1.0.xml | 3 +- .../AAI-Port Mirror_Test-service-1.0.xml | 3 +- ...ortest..ResourceInstanceGroup..0-resource-1.xml | 2 +- 6 files changed, 69 insertions(+), 4 deletions(-) create mode 100644 src/test/java/org/onap/aai/babel/xml/generator/api/AaiModelGeneratorTest.java diff --git a/src/main/java/org/onap/aai/babel/xml/generator/api/AaiModelGenerator.java b/src/main/java/org/onap/aai/babel/xml/generator/api/AaiModelGenerator.java index 0aaf8fc..384d87d 100644 --- a/src/main/java/org/onap/aai/babel/xml/generator/api/AaiModelGenerator.java +++ b/src/main/java/org/onap/aai/babel/xml/generator/api/AaiModelGenerator.java @@ -101,6 +101,7 @@ public class AaiModelGenerator { modelVer.setModelVersion(model.getModelVersion()); modelVer.setModelVersionId(model.getModelNameVersionId()); modelVer.setModelElements(new ModelElements()); + modelVer.setOrchestrationType(model.getInstantiationType()); return modelVer; } diff --git a/src/main/java/org/onap/aai/babel/xml/generator/model/Model.java b/src/main/java/org/onap/aai/babel/xml/generator/model/Model.java index 84b5489..c33127e 100644 --- a/src/main/java/org/onap/aai/babel/xml/generator/model/Model.java +++ b/src/main/java/org/onap/aai/babel/xml/generator/model/Model.java @@ -67,6 +67,12 @@ public abstract class Model { model.modelDescription = value; } }, + ORCHESTRATION_TYPE("instantiationType"){ + @Override + public void populate(Model model, String value) { + model.instantiationType = value; + } + }, NAME_AND_DESCRIPTION("providing_service_name") { @Override public void populate(Model model, String value) { @@ -103,7 +109,7 @@ public abstract class Model { private String modelNameVersionId; // model-version-id private String modelVersion; private String modelDescription; - + private String instantiationType; protected Set resources = new HashSet<>(); protected Set widgets = new HashSet<>(); @@ -208,6 +214,10 @@ public abstract class Model { return modelNameVersionId; } + public String getInstantiationType() { + return instantiationType; + } + /** * Gets widget version id. * diff --git a/src/test/java/org/onap/aai/babel/xml/generator/api/AaiModelGeneratorTest.java b/src/test/java/org/onap/aai/babel/xml/generator/api/AaiModelGeneratorTest.java new file mode 100644 index 0000000..db01cb6 --- /dev/null +++ b/src/test/java/org/onap/aai/babel/xml/generator/api/AaiModelGeneratorTest.java @@ -0,0 +1,52 @@ +/** + * ============LICENSE_START======================================================= + * org.onap.aai + * ================================================================================ + * Copyright (c) 2019 Nokia. 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.onap.aai.babel.xml.generator.api; + + +import org.apache.groovy.util.Maps; +import org.junit.Test; +import org.onap.aai.babel.util.ArtifactTestUtils; +import org.onap.aai.babel.xml.generator.XmlArtifactGenerationException; +import org.onap.aai.babel.xml.generator.model.Model; +import org.onap.aai.babel.xml.generator.model.Service; + +import java.io.IOException; + +import static org.assertj.core.api.Assertions.assertThat; + +public class AaiModelGeneratorTest { + + private AaiModelGenerator generator = new AaiModelGenerator(); + + @Test + public void shouldGenerateModelWithInstantiationType() throws XmlArtifactGenerationException, IOException { + new ArtifactTestUtils().loadWidgetMappings(); + Model model = new Service(); + model.populateModelIdentificationInformation(Maps.of("instantiationType", "macro")); + + + String generatedXml = generator.generateModelFor(model); + + assertThat(generatedXml).containsSubsequence(" \n" + + " \n" + + " macro"); + } +} diff --git a/src/test/resources/generatedXml/AAI-Grouping Service for Test-service-1.0.xml b/src/test/resources/generatedXml/AAI-Grouping Service for Test-service-1.0.xml index 4133aa3..81cd94d 100644 --- a/src/test/resources/generatedXml/AAI-Grouping Service for Test-service-1.0.xml +++ b/src/test/resources/generatedXml/AAI-Grouping Service for Test-service-1.0.xml @@ -7,6 +7,7 @@ Grouping Service for Test 1.0 xxx + A-la-carte T @@ -66,4 +67,4 @@ - \ No newline at end of file + diff --git a/src/test/resources/generatedXml/AAI-Port Mirror_Test-service-1.0.xml b/src/test/resources/generatedXml/AAI-Port Mirror_Test-service-1.0.xml index f66e638..9c841ac 100644 --- a/src/test/resources/generatedXml/AAI-Port Mirror_Test-service-1.0.xml +++ b/src/test/resources/generatedXml/AAI-Port Mirror_Test-service-1.0.xml @@ -7,6 +7,7 @@ Port Mirror_Test 1.0 Port Mirror_Test + A-la-carte T @@ -48,4 +49,4 @@ - \ No newline at end of file + diff --git a/src/test/resources/generatedXml/AAI-groupingservicefortest..ResourceInstanceGroup..0-resource-1.xml b/src/test/resources/generatedXml/AAI-groupingservicefortest..ResourceInstanceGroup..0-resource-1.xml index a939a5d..7f78367 100644 --- a/src/test/resources/generatedXml/AAI-groupingservicefortest..ResourceInstanceGroup..0-resource-1.xml +++ b/src/test/resources/generatedXml/AAI-groupingservicefortest..ResourceInstanceGroup..0-resource-1.xml @@ -29,4 +29,4 @@ - \ No newline at end of file + -- 2.16.6