96a6fc1ad09f32c58eccc0cf84387fbba52c0568
[ccsdk/features.git] /
1 /*******************************************************************************
2  * ============LICENSE_START========================================================================
3  * ONAP : ccsdk feature sdnr wt
4  * =================================================================================================
5  * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6  * =================================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8  * in compliance with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software distributed under the License
13  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14  * or implied. See the License for the specific language governing permissions and limitations under
15  * the License.
16  * ============LICENSE_END==========================================================================
17  ******************************************************************************/
18 package org.onap.ccsdk.features.sdnr.wt.dataprovider.http;
19
20 import java.io.IOException;
21
22 import javax.servlet.ServletException;
23 import javax.servlet.http.HttpServlet;
24 import javax.servlet.http.HttpServletRequest;
25 import javax.servlet.http.HttpServletResponse;
26
27 import org.slf4j.Logger;
28 import org.slf4j.LoggerFactory;
29
30 public class ReadyHttpServlet extends HttpServlet {
31
32         /**
33          * 
34          */
35         private static final long serialVersionUID = 1L;
36         private static final Logger LOG = LoggerFactory.getLogger(ReadyHttpServlet.class);
37         private static boolean status;
38
39         @Override
40         protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
41         
42                 if(isReady()) {
43                         resp.setStatus(HttpServletResponse.SC_OK);
44                 }
45                 else {
46                 
47                         try {
48                                 resp.sendError(HttpServletResponse.SC_NOT_FOUND);
49                         }catch(IOException | IllegalStateException e) {
50                                 LOG.warn("unable to write out 404 res not found: {}",e);
51                         }
52                 }
53         }
54
55         private static boolean isReady() {
56                 return status;
57         }
58
59         public static void setStatus(boolean s) {
60                 status = s;
61                 LOG.info("status is set to ready: {}",status);
62         }
63 }