Fix sonar issues
[dcaegen2/platform.git] / mod / bpgenerator / onap / src / main / java / org / onap / blueprintgenerator / service / common / AppConfigService.java
index 494620c..a64c297 100644 (file)
@@ -27,7 +27,7 @@
 package org.onap.blueprintgenerator.service.common;
 
 import org.onap.blueprintgenerator.model.common.Appconfig;
-import org.onap.blueprintgenerator.model.common.Dmaap;
+import org.onap.blueprintgenerator.model.common.BaseStream;
 import org.onap.blueprintgenerator.model.common.GetInput;
 import org.onap.blueprintgenerator.model.componentspec.OnapComponentSpec;
 import org.onap.blueprintgenerator.model.componentspec.common.Calls;
@@ -43,8 +43,7 @@ import java.util.TreeMap;
 
 /**
  * @author : Ravi Mantena
- * @date 10/16/2020 Application: ONAP - Blueprint Generator Common ONAP Service used to create App
- * Config
+ * @date 10/16/2020 Application: ONAP - Blueprint Generator Common ONAP Service used to create App Config
  */
 @Service("onapAppConfigService")
 public class AppConfigService {
@@ -58,17 +57,18 @@ public class AppConfigService {
     @Autowired
     private StreamService streamService;
 
+
     /**
-     * Creates Inputs section under App Config with Publishes, Subscribes, Parameters sections by
-     * checking Datarouter/MessageRouter/override/Dmaap values
+     * Creates Inputs section under App Config with Publishes, Subscribes, Parameters sections by checking
+     * Datarouter/MessageRouter/override/Dmaap values
      *
-     * @param inputs Inputs
+     * @param inputs            Inputs
      * @param onapComponentSpec Onap Component Specification
-     * @param isDmaap Dmaap Argument
+     * @param isDmaap           Dmaap Argument
      * @return
      */
     public Map<String, Object> createAppconfig(
-        Map<String, LinkedHashMap<String, Object>> inputs,
+        Map<String, Map<String, Object>> inputs,
         OnapComponentSpec onapComponentSpec,
         boolean isDmaap) {
 
@@ -78,9 +78,9 @@ public class AppConfigService {
         Calls[] call = new Calls[0];
         appconfig.setService_calls(call);
 
-        Map<String, Dmaap> streamPublishes = streamService.createStreamPublishes(
+        Map<String, BaseStream> streamPublishes = streamService.createStreamPublishes(
             onapComponentSpec, blueprintHelperService, dmaapService, inputs, isDmaap);
-        Map<String, Dmaap> streamSubscribes = streamService.createStreamSubscribes(
+        Map<String, BaseStream> streamSubscribes = streamService.createStreamSubscribes(
             onapComponentSpec, blueprintHelperService, dmaapService, inputs, isDmaap);
 
         appconfig.setStreams_publishes(streamPublishes);
@@ -94,8 +94,7 @@ public class AppConfigService {
                 paramInput.setBpInputName(pName);
                 parameters.put(pName, paramInput);
                 if (!"".equals(p.getValue())) {
-                    LinkedHashMap<String, Object> pInputs =
-                        blueprintHelperService.createStringInput(p.getValue());
+                    Map<String, Object> pInputs = createInputFromParameter(p);
                     inputs.put(pName, pInputs);
                 } else {
                     LinkedHashMap<String, Object> pInputs = new LinkedHashMap<>();
@@ -122,4 +121,10 @@ public class AppConfigService {
         response.put("inputs", inputs);
         return response;
     }
+
+    private Map<String, Object> createInputFromParameter(Parameters parameter) {
+        String inputType = parameter.getType() == null ? "string" : parameter.getType();
+
+        return blueprintHelperService.createInputByType(inputType, parameter.getValue());
+    }
 }