diff --git a/webinterface/build.gradle b/webinterface/build.gradle index 5001067..1c469b8 100644 --- a/webinterface/build.gradle +++ b/webinterface/build.gradle @@ -1,5 +1,5 @@ group = 'asys' -version = '0.18-SNAPSHOT' +version = '0.18.1-SNAPSHOT' buildscript { repositories { diff --git a/webinterface/src/main/java/asys/webinterface/IndexHandler.java b/webinterface/src/main/java/asys/webinterface/IndexHandler.java index 822249d..ffc0c28 100644 --- a/webinterface/src/main/java/asys/webinterface/IndexHandler.java +++ b/webinterface/src/main/java/asys/webinterface/IndexHandler.java @@ -35,6 +35,11 @@ public class IndexHandler implements HttpHandler { @Override public void handle(HttpExchange httpExchange) throws IOException { + if (httpExchange.getRequestURI().getPath().equals("/favicon.ico")) { + favicon(httpExchange); + return; + } + String[] requestURIParts = getRequestURIParts(httpExchange.getRequestURI()); if (requestURIParts.length > 0) { logger.debug("Module request: {}", requestURIParts[0]); @@ -79,4 +84,19 @@ public class IndexHandler implements HttpHandler { return result; } } + + private void favicon(HttpExchange httpExchange) throws IOException { + httpExchange.getResponseHeaders().add("Context-Type","image/x-icon"); + httpExchange.sendResponseHeaders(200, 0); + OutputStream outputStream = httpExchange.getResponseBody(); + InputStream inputStream = getClass().getResourceAsStream("/static/favicon.ico"); + final byte[] buffer = new byte[0x10000]; + int len; + while((len = inputStream.read(buffer)) > 0) { + outputStream.write(buffer, 0, len); + } + outputStream.flush(); + outputStream.close(); + inputStream.close(); + } } diff --git a/webinterface/src/main/resources/static/favicon.ico b/webinterface/src/main/resources/static/favicon.ico new file mode 100644 index 0000000..56015e4 Binary files /dev/null and b/webinterface/src/main/resources/static/favicon.ico differ