1 package org.onap.vid.services;
4 import org.onap.vid.model.SOWorkflow;
5 import org.onap.vid.model.SOWorkflows;
6 import org.onap.vid.mso.MsoResponseWrapper2;
7 import org.onap.vid.mso.rest.MockedWorkflowsRestClient;
8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.stereotype.Service;
12 public class ExtWorkflowsServiceImpl implements ExtWorkflowsService {
14 private MockedWorkflowsRestClient mockedWorkflowsRestClient;
17 public ExtWorkflowsServiceImpl(MockedWorkflowsRestClient mockedWorkflowsRestClient) {
18 this.mockedWorkflowsRestClient = mockedWorkflowsRestClient;
22 public List<SOWorkflow> getWorkflows(String vnfName) {
23 MsoResponseWrapper2<SOWorkflows> msoResponse = mockedWorkflowsRestClient.getWorkflows(vnfName);
24 if (msoResponse.getStatus() >= 400 || msoResponse.getEntity() == null) {
25 throw new BadResponseFromMso(msoResponse);
27 return convertMsoResponseToWorkflowList(msoResponse);
30 private List<SOWorkflow> convertMsoResponseToWorkflowList(MsoResponseWrapper2<SOWorkflows> msoResponse) {
31 SOWorkflows soWorkflows = (SOWorkflows) msoResponse.getEntity();
32 return soWorkflows.getWorkflows();
35 public static class BadResponseFromMso extends RuntimeException {
36 private final MsoResponseWrapper2<SOWorkflows> msoResponse;
38 public BadResponseFromMso(MsoResponseWrapper2<SOWorkflows> msoResponse) {
39 this.msoResponse = msoResponse;
42 public MsoResponseWrapper2<SOWorkflows> getMsoResponse() {