From 6d3836e41493f89c5b8700cca34111319e9fa41a Mon Sep 17 00:00:00 2001 From: ulrich Date: Sat, 27 Mar 2021 16:41:01 +0000 Subject: [PATCH] Kommentare ergaenzt --- src/de/uhilger/minsrv/App.java | 36 +++++++++++++++++++++--------------- src/de/uhilger/minsrv/handler/StopServerHandler.java | 12 ++++++++++++ src/de/uhilger/minsrv/Server.java | 4 ++-- 3 files changed, 35 insertions(+), 17 deletions(-) diff --git a/src/de/uhilger/minsrv/App.java b/src/de/uhilger/minsrv/App.java index c49f385..0e41848 100644 --- a/src/de/uhilger/minsrv/App.java +++ b/src/de/uhilger/minsrv/App.java @@ -23,7 +23,26 @@ import java.util.logging.Logger; /** - * Die Hauptklasse des mini-server + * <p>Die Hauptklasse des mini-server</p> + * + * <p>Folgende Kommandozeilenparameter werden verarbeitet </p> + * + * <p>ctx - Kontext des Servers <br> + * www-data - lokales Datenverzeichnis <br> + * port - Port</p>> + * + * <p>Beispiel: <code>java -jar mini-server.jar ctx="srv" www-data="/home/fred/www" + * port=9090</code></p> + * + * <p>Startet den Server auf http://localhost:9090/srv und liefert Inhalte aus + * dem Verzeichnis <code>/home/fred/www</code> aus. + * + * Ein Aufruf von http://localhost:9090/srv/pfad/zum/inhalt/index.html liefert + * also die Datei 'index.html' aus dem Ordner /home/fred/www/pfad/zum/inhalt + * aus.</p> + * + * <p>Mit http://localhost:9090/srv/server/stop werden Server und App + * beendet.</p> * * @author Ulrich Hilger * @version 0.1, 25.03.2021 @@ -39,20 +58,7 @@ private static HashMap initParams; /** - * Start-Methode dieser Anwendung - * - * Folgende Kommandozeilenparameter werden verarbeitet ctx - Kontext des - * Servers www-data - lokales Datenverzeichnis port - Port - * - * Beispiel: java -jar mini-server.jar ctx="srv" www-data="/home/fred/www" - * port=9090 - * - * Startet den Server auf http://localhost:9090/srv und liefert Inhalte aus - * dem Verzeichnis /home/fred/www aus. - * - * Ein Aufruf von http://localhost:9090/srv/pfad/zum/inhalt/index.html liefert - * also die Datei 'index.html' aus dem Ordner /home/fred/www/pfad/zum/inhalt - * aus. + * <p>Start-Methode dieser Anwendung</p> * * @param args Kommandozeilenparameter */ diff --git a/src/de/uhilger/minsrv/Server.java b/src/de/uhilger/minsrv/Server.java index 7db0ba5..95cf04c 100644 --- a/src/de/uhilger/minsrv/Server.java +++ b/src/de/uhilger/minsrv/Server.java @@ -38,7 +38,7 @@ private static final Logger logger = Logger.getLogger(Server.class.getName()); public static final String STR_SLASH = "/"; - + public static final String CMD_SERVER_STOP = "/server/stop"; private int port; @@ -86,7 +86,7 @@ HttpServer server = HttpServer.create(new InetSocketAddress(port), 0); server.createContext(ctx + STR_SLASH, new FileHandler(App.getInitParameter(App.IP_WWW_DATA))); - server.createContext(ctx + "/server/stop", new StopServerHandler()); + server.createContext(ctx + CMD_SERVER_STOP, new StopServerHandler()); server.setExecutor(Executors.newFixedThreadPool(20)); server.start(); } diff --git a/src/de/uhilger/minsrv/handler/StopServerHandler.java b/src/de/uhilger/minsrv/handler/StopServerHandler.java index 400b0d2..1d21ae0 100644 --- a/src/de/uhilger/minsrv/handler/StopServerHandler.java +++ b/src/de/uhilger/minsrv/handler/StopServerHandler.java @@ -33,6 +33,14 @@ */ public class StopServerHandler implements HttpHandler { + /** + * Den Server geordnet herunterfahren und + * dann die Anwendung beenden. + * + * @param e das Objekt mit Methoden zur Untersuchung der Anfrage sowie zum + * Anfertigen und Senden der Antwort + * @throws IOException falls etwas schief geht entsteht dieser Fehler + */ @Override public void handle(HttpExchange e) throws IOException { Logger.getLogger(StopServerHandler.class.getName()).info(e.getRequestURI().toString()); @@ -48,6 +56,10 @@ timer.schedule(new AppStopper(), 2000); } + /** + * Die Klasse AppStopper ermöglicht das asnychrone bzw. + * zeitgesteuerte Stoppen der Anwendung. + */ class AppStopper extends TimerTask { @Override -- Gitblit v1.9.3