Ein minimalistischer HTTP-Server
ulrich
2021-03-26 9c7249e7eabb1450d7f407b4330903a50b67356d
commit | author | age
9c7249 1 /*
U 2     mc2 - Mediacenter neu
3     Copyright (C) 2021  Ulrich Hilger
4
5     This program is free software: you can redistribute it and/or modify
6     it under the terms of the GNU Affero General Public License as
7     published by the Free Software Foundation, either version 3 of the
8     License, or (at your option) any later version.
9
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU Affero General Public License for more details.
14
15     You should have received a copy of the GNU Affero General Public License
16     along with this program.  If not, see <https://www.gnu.org/licenses/>.
17 */
18
19 package de.uhilger.minsrv.handler;
20
21 import com.sun.net.httpserver.HttpExchange;
22 import com.sun.net.httpserver.HttpHandler;
23 import de.uhilger.minsrv.App;
24 import java.io.IOException;
25 import java.io.OutputStream;
26 import java.util.logging.Logger;
27
28 /**
29  *
30  * @author ulrich
31  */
32 public class StopServerHandler implements HttpHandler {
33
34   @Override
35   public void handle(HttpExchange exchange) throws IOException {
36     Logger.getLogger(StopServerHandler.class.getName()).info(exchange.getRequestURI().toString());    
37     String response = "Server stopped";
38     exchange.sendResponseHeaders(200, response.length());
39     OutputStream os = exchange.getResponseBody();
40     os.write(response.getBytes());
41     os.flush();
42     os.close();
43     Logger.getLogger(StopServerHandler.class.getName()).info("stopping app.");    
44     App.stop();
45     //exchange.getHttpContext().getServer().stop(5);
46   }
47   
48   
49 }