summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwsliwka <wojciech.sliwka@nokia.com>2019-09-25 13:13:32 +0200
committerBartosz Gardziejewski <bartosz.gardziejewski@nokia.com>2020-06-23 07:57:02 +0200
commit447fa891f14d0c6e379ca4d5bf326802aa91bb62 (patch)
tree673a3fb82a114bf1a3dd97f6f9d2f56ae3bddde0
parentbe074cb3a1d77adeb6a8f9b560e705e343b7638d (diff)
Extend service model
extend service model by adding orchestrationType Issue-ID: AAI-2594 Signed-off-by: wsliwka <wojciech.sliwka@nokia.com> Signed-off-by: Bartosz Gardziejewski <bartosz.gardziejewski@nokia.com> Change-Id: I34de40005b6ddad0cd71ccb20fae94f7f45c6257
-rw-r--r--src/main/java/org/onap/aai/babel/xml/generator/api/AaiModelGenerator.java1
-rw-r--r--src/main/java/org/onap/aai/babel/xml/generator/model/Model.java12
-rw-r--r--src/test/java/org/onap/aai/babel/xml/generator/api/AaiModelGeneratorTest.java52
-rw-r--r--src/test/resources/generatedXml/AAI-Grouping Service for Test-service-1.0.xml3
-rw-r--r--src/test/resources/generatedXml/AAI-Port Mirror_Test-service-1.0.xml3
-rw-r--r--src/test/resources/generatedXml/AAI-groupingservicefortest..ResourceInstanceGroup..0-resource-1.xml2
6 files changed, 69 insertions, 4 deletions
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<Resource> resources = new HashSet<>();
protected Set<Widget> 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(" <model-vers>\n" +
+ " <model-ver>\n" +
+ " <orchestration-type>macro</orchestration-type>");
+ }
+}
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 @@
<model-name>Grouping Service for Test</model-name>
<model-version>1.0</model-version>
<model-description>xxx</model-description>
+ <orchestration-type>A-la-carte</orchestration-type>
<model-elements>
<model-element>
<new-data-del-flag>T</new-data-del-flag>
@@ -66,4 +67,4 @@
</model-elements>
</model-ver>
</model-vers>
-</model> \ No newline at end of file
+</model>
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 @@
<model-name>Port Mirror_Test</model-name>
<model-version>1.0</model-version>
<model-description>Port Mirror_Test</model-description>
+ <orchestration-type>A-la-carte</orchestration-type>
<model-elements>
<model-element>
<new-data-del-flag>T</new-data-del-flag>
@@ -48,4 +49,4 @@
</model-elements>
</model-ver>
</model-vers>
-</model> \ No newline at end of file
+</model>
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 @@
</model-elements>
</model-ver>
</model-vers>
-</model> \ No newline at end of file
+</model>