Enable ControllerExecutionBB for service scope
[so.git] / bpmn / MSOCommonBPMN / src / main / java / org / onap / so / client / cds / ConfigureInstanceParamsForPnf.java
index 0d79dbb..f393d2a 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.onap.so.client.cds;
 
+import static org.onap.so.client.cds.ConfigureInstanceParamsUtil.applyParamsToObject;
 import com.google.gson.JsonObject;
 import org.onap.so.client.exception.PayloadGenerationException;
 import org.onap.so.serviceinstancebeans.Service;
@@ -51,13 +52,17 @@ public class ConfigureInstanceParamsForPnf {
     public void populateInstanceParams(JsonObject jsonObject, List<Map<String, Object>> userParamsFromRequest,
             String modelCustomizationUuid) throws PayloadGenerationException {
         try {
-            Service service = extractServiceFromUserParameters.getServiceFromRequestUserParams(userParamsFromRequest);
-            List<Map<String, String>> instanceParamsList = getInstanceParamForPnf(service, modelCustomizationUuid);
+            Optional<Service> service =
+                    extractServiceFromUserParameters.getServiceFromRequestUserParams(userParamsFromRequest);
 
-            instanceParamsList.stream().flatMap(instanceParamsMap -> instanceParamsMap.entrySet().stream())
-                    .forEachOrdered(entry -> jsonObject.addProperty(entry.getKey(), entry.getValue()));
+            if (service.isPresent()) {
+                List<Map<String, String>> instanceParamsList =
+                        getInstanceParamForPnf(service.get(), modelCustomizationUuid);
+
+                applyParamsToObject(instanceParamsList, jsonObject);
+            }
         } catch (Exception exception) {
-            throw new PayloadGenerationException("Couldn't able to resolve instance parameters", exception);
+            throw new PayloadGenerationException("Failed to resolve instance parameters", exception);
         }
     }