Re-implement model type value for Resource Mapping
[aai/babel.git] / src / main / java / org / onap / aai / babel / xml / generator / api / AaiModelGeneratorImpl.java
index 488faae..5c6488c 100644 (file)
@@ -2,8 +2,8 @@
  * ============LICENSE_START=======================================================
  * org.onap.aai
  * ================================================================================
- * Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
- * Copyright © 2017-2018 European Software Marketing Ltd.
+ * Copyright (c) 2017-2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (c) 2017-2019 European Software Marketing Ltd.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -18,6 +18,7 @@
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
+
 package org.onap.aai.babel.xml.generator.api;
 
 import java.io.StringWriter;
@@ -28,6 +29,7 @@ import javax.xml.bind.JAXBException;
 import javax.xml.bind.Marshaller;
 import org.onap.aai.babel.logging.ApplicationMsgs;
 import org.onap.aai.babel.logging.LogHelper;
+import org.onap.aai.babel.xml.generator.XmlArtifactGenerationException;
 import org.onap.aai.babel.xml.generator.model.Resource;
 import org.onap.aai.babel.xml.generator.model.Service;
 import org.onap.aai.babel.xml.generator.model.Widget;
@@ -52,11 +54,13 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
     /**
      * Method to generate the AAI model for a Service.
      *
-     * @param service Java object model representing an AAI {@link Service} model
+     * @param service
+     *            Java object model representing an AAI {@link Service} model
      * @return XML representation of the service model in String format
+     * @throws XmlArtifactGenerationException 
      */
     @Override
-    public String generateModelFor(Service service) {
+    public String generateModelFor(Service service) throws XmlArtifactGenerationException {
         // Create a JAXB Model for AAI service model
         Model aaiServiceModel = new Model();
         log.debug("Generating Model for Service with ModelName: " + service.getModelName());
@@ -71,7 +75,7 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
         modelVer.setModelElements(new ModelElements());
         ModelElements modelElements = modelVer.getModelElements();
         // Populate basic model details
-        aaiServiceModel.setModelType(service.getModelType().name().toLowerCase()); // Using enum name as model type
+        aaiServiceModel.setModelType(service.getModelTypeName());
         List<ModelElement> modelElementList = modelElements.getModelElement();
 
         // Add service base widget model element
@@ -111,11 +115,13 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
     /**
      * Method to generate the AAI model for a Resource.
      *
-     * @param resource Java object model representing an AAI {@link Resource} model
+     * @param resource
+     *            Java object model representing an AAI {@link Resource} model
      * @return XML representation of the resource model in String format
+     * @throws XmlArtifactGenerationException 
      */
     @Override
-    public String generateModelFor(Resource resource) {
+    public String generateModelFor(Resource resource) throws XmlArtifactGenerationException {
         // Create a JAXB Model for AAI Resource model
         Model aaiResourceModel = new Model();
         log.debug("Generating Model for Resource with ModelName: " + resource.getModelName());
@@ -128,7 +134,7 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
         modelVer.setModelVersionId(resource.getModelNameVersionId());
         modelVer.setModelElements(new ModelElements());
         ModelElements modelElements = modelVer.getModelElements();
-        aaiResourceModel.setModelType(resource.getModelType().name().toLowerCase()); // Using enum name as model type
+        aaiResourceModel.setModelType(resource.getModelTypeName());
         List<ModelElement> modelElementList = modelElements.getModelElement();
 
         // Add resource base widget model element
@@ -164,10 +170,11 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
     /**
      * Method to create the <model-element></model-element> holding the relationship value for a resource/widget model.
      *
-     * @param newDataDelFlag Value of the <new-data-del-flag></new-data-del-flag> attribute for a widget/resource in the
-     *        model xml
-     * @param relationshipValue Value of the <relationship-value></relationship-value> attribute for the widget/resource
-     *        in the model xml
+     * @param newDataDelFlag
+     *            Value of the <new-data-del-flag></new-data-del-flag> attribute for a widget/resource in the model xml
+     * @param relationshipValue
+     *            Value of the <relationship-value></relationship-value> attribute for the widget/resource in the model
+     *            xml
      * @return Java object representation for the <model-element></model-element> holding the relationship
      */
     private ModelElement createRelationshipModelElement(String newDataDelFlag, String modelVersionId,
@@ -200,8 +207,10 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
      * Method to create the child model elements of the widget. Handles the generation of recursive child widget
      * elements (if any)
      *
-     * @param parent Reference to the parent widget model element
-     * @param widgetChildrenSet Set of children obtained from the tosca/widget definition
+     * @param parent
+     *            Reference to the parent widget model element
+     * @param widgetChildrenSet
+     *            Set of children obtained from the tosca/widget definition
      */
     private void generateWidgetChildren(ModelElement parent, Set<Widget> widgetChildrenSet) {
         for (Widget widget : widgetChildrenSet) {
@@ -223,21 +232,19 @@ public class AaiModelGeneratorImpl implements AaiModelGenerator {
     /**
      * Converts the data delete flag value from boolean to String as per AAI model.
      *
-     * @param delFlag Boolean value as true/false from the annotation
+     * @param delFlag
+     *            Boolean value as true/false from the annotation
      * @return Converted value to a flag as per AAI model
      */
     private String getNewDataDelFlagValue(boolean delFlag) {
-        if (delFlag) {
-            return "T";
-        } else {
-            return "F";
-        }
+        return delFlag ? "T" : "F";
     }
 
     /**
      * JAXB marshalling helper method to convert the Java object model to XML String.
      *
-     * @param model Java Object model of a service/widget/resource
+     * @param model
+     *            Java Object model of a service/widget/resource
      * @return XML representation of the Java model in String format
      */
     private String getModelAsString(Model model) {