[PORTAL-16 PORTAL-18] Widget ms; staging
[portal.git] / ecomp-portal-BE-common / src / main / java / org / openecomp / portalapp / portal / service / MicroserviceProxyService.java
1 /*-
2  * ================================================================================
3  * ECOMP Portal
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ================================================================================
19  */
20 package org.openecomp.portalapp.portal.service;
21
22 import javax.servlet.http.HttpServletRequest;
23
24 import org.openecomp.portalapp.portal.domain.EPUser;
25 import org.springframework.web.client.RestClientException;
26
27 public interface MicroserviceProxyService {
28
29         /**
30          * Gets the specific microservice from table ep_microservice, communicates
31          * to microservice with the specified security type. The microservice sends
32          * back the response.
33          * 
34          * Gets the data while testing the microservice with no widget associated with
35          * 
36          * @param serviceId
37          *            Id of microservice to be used
38          * @return response sent from microservice
39          * @throws Exception
40          */
41         String proxyToDestination(long serviceId, EPUser user, HttpServletRequest request) throws Exception;
42         
43         
44         
45         /**
46          * Gets the microservice data based on the user id and widget id. Different
47          * users have his/her own parameters for one widget. The method sends back
48          * the response.
49          * 
50          * @param widgetId
51          *                        Id of widget to be used
52          * @param user
53          *                        User information
54          * @param request
55          * @return response sent from microserivce 
56          * @throws Exception
57          */
58         String proxyToDestinationByWidgetId(long widgetId, EPUser user, HttpServletRequest request) throws Exception;
59 }