f3871a5c490c0623cfc752b3cfe6df3e1c4aa72d
[ccsdk/features.git] / sdnr / wt / apigateway / provider / src / main / java / org / onap / ccsdk / features / sdnr / wt / apigateway / EsServlet.java
1 /*
2  * ============LICENSE_START=======================================================
3  * ONAP : CCSDK.apps.sdnr.wt.apigateway
4  * ================================================================================
5  * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property.
6  * All rights reserved.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21 package org.onap.ccsdk.features.sdnr.wt.apigateway;
22
23 import java.io.IOException;
24 import javax.servlet.ServletException;
25 import javax.servlet.http.HttpServletRequest;
26 import javax.servlet.http.HttpServletResponse;
27
28 public class EsServlet extends BaseServlet {
29
30     private static final long serialVersionUID = -3996363343749995011L;
31     private static final String OFFLINE_RESPONSE_MESSAGE = "Database interface is offline";
32
33     private static boolean trustAll = false;
34
35     public EsServlet() {
36         super();
37     }
38
39     @Override
40     protected void doOptions(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
41         if (MyProperties.getInstance().corsEnabled()) {
42             resp.addHeader("Access-Control-Allow-Origin", "*");
43             resp.addHeader("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE");
44             resp.addHeader("Access-Control-Allow-Headers", "Content-Type, Authorization");
45         }
46         resp.setStatus(200);
47     }
48
49     @Override
50     protected String getOfflineResponse() {
51         return OFFLINE_RESPONSE_MESSAGE;
52     }
53
54     @Override
55     protected boolean isOff() {
56         return MyProperties.getInstance().isEsOff();
57     }
58
59     @Override
60     protected String getRemoteUrl(String uri) {
61         if (uri != null && uri.length() > 0) {
62             uri = uri.substring("/database".length());
63         }
64         return MyProperties.getInstance().getEsBaseUrl() + uri;
65     }
66
67     @Override
68     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
69         super.doGet(req, resp);
70     }
71
72     @Override
73     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
74         super.doPost(req, resp);
75     }
76
77     @Override
78     protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
79         super.doPut(req, resp);
80     }
81
82     @Override
83     protected void doDelete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
84         super.doDelete(req, resp);
85     }
86
87     @Override
88     protected boolean doTrustAll() {
89         return trustAll;
90     }
91
92     @Override
93     protected void trustAll(boolean trust) {
94         trustAll = trust;
95     }
96 }