Sending workflow data from UI to SO
[vid.git] / vid-app-common / src / main / java / org / onap / vid / mso / rest / MsoRestClientNew.java
index 8dac0ce..ff7acff 100644 (file)
@@ -22,6 +22,7 @@ package org.onap.vid.mso.rest;
 
 import com.google.common.collect.ImmutableMap;
 import io.joshworks.restclient.http.HttpResponse;
+import io.joshworks.restclient.http.JsonNode;
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -36,6 +37,7 @@ import org.onap.portalsdk.core.util.SystemProperties;
 import org.onap.vid.aai.util.HttpsAuthClient;
 import org.onap.vid.changeManagement.MsoRequestDetails;
 import org.onap.vid.changeManagement.RequestDetailsWrapper;
+import org.onap.vid.changeManagement.WorkflowRequestDetail;
 import org.onap.vid.client.SyncRestClient;
 import org.onap.vid.model.RequestReferencesContainer;
 import org.onap.vid.mso.MsoInterface;
@@ -443,6 +445,20 @@ public class MsoRestClientNew extends RestMsoImplementation implements MsoInterf
         }
     }
 
+    @Override
+    public MsoResponseWrapper invokeWorkflow(WorkflowRequestDetail workflowRequestDetail, String invokeWorkflowsPath, Map<String, String> extraHeaders) {
+        String path = baseUrl + invokeWorkflowsPath;
+        Map<String, String> finalHeader = new HashMap<>();
+
+        finalHeader.putAll(commonHeaders);
+        finalHeader.putAll(extraHeaders);
+
+        RequestDetailsWrapper<WorkflowRequestDetail> requestDetailsWrapper = new RequestDetailsWrapper<>(workflowRequestDetail);
+
+        HttpResponse<JsonNode> response = client.post(path, finalHeader, requestDetailsWrapper);
+        return MsoUtil.wrapResponse(response);
+    }
+
     @Override
     public <T> HttpResponse<T> get(String endpoint, Class<T> responseClass) {
         String path = baseUrl + endpoint;