From f4798a290d97e824e0815b911682a3ede181c1e7 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sun, 29 Apr 2012 08:06:46 +0000 Subject: --- src/favicon.ico | Bin 0 -> 1150 bytes src/org/traccar/http/WebServer.java | 25 ++++++++++++++++++++++--- 2 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 src/favicon.ico (limited to 'src') diff --git a/src/favicon.ico b/src/favicon.ico new file mode 100644 index 000000000..6fd696c25 Binary files /dev/null and b/src/favicon.ico differ diff --git a/src/org/traccar/http/WebServer.java b/src/org/traccar/http/WebServer.java index a99f6e11b..d42f8fe2c 100644 --- a/src/org/traccar/http/WebServer.java +++ b/src/org/traccar/http/WebServer.java @@ -41,6 +41,8 @@ public class WebServer { private DataManager dataManager; + public static final int BUFFER_SIZE = 1024; + public WebHandler(DataManager dataManager) { this.dataManager = dataManager; } @@ -53,7 +55,23 @@ public class WebServer { InputStream in = this.getClass().getClassLoader().getResourceAsStream("index.html"); OutputStream out = response.getOutputStream(); - byte[] buffer = new byte[1024]; // Magic number + byte[] buffer = new byte[BUFFER_SIZE]; + int count; + while ((count = in.read(buffer)) != -1) { + out.write(buffer, 0, count); + } + out.flush(); + } + + public void handleIcon(String target,Request baseRequest,HttpServletRequest request,HttpServletResponse response) + throws IOException, ServletException { + + response.setContentType("image/x-icon"); + + InputStream in = this.getClass().getClassLoader().getResourceAsStream("favicon.ico"); + OutputStream out = response.getOutputStream(); + + byte[] buffer = new byte[BUFFER_SIZE]; int count; while ((count = in.read(buffer)) != -1) { out.write(buffer, 0, count); @@ -90,8 +108,7 @@ public class WebServer { Position position = i.next(); out.format("{'device_id':%d,'time':'%tF %tT','valid':%b,'latitude':%f,'longitude':%f,'speed':%f,'course':%f}", position.getDeviceId(), - position.getTime(), - position.getTime(), + position.getTime(), position.getTime(), position.getValid(), position.getLatitude(), position.getLongitude(), @@ -121,6 +138,8 @@ public class WebServer { { if (target.equals("/") || target.equals("/index.html")) { handleIndex(target, baseRequest, request, response); + } else if (target.matches("/favicon.ico")) { + handleIcon(target, baseRequest, request, response); } else if (target.matches("/.+\\.json")) { handleData(target, baseRequest, request, response); } else { -- cgit v1.2.3