/[projects]/android/TrainInfoService/src/dk/thoerup/traininfoservice/RequestPlotter.java
ViewVC logotype

Contents of /android/TrainInfoService/src/dk/thoerup/traininfoservice/RequestPlotter.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 796 - (show annotations) (download)
Thu Jun 3 14:21:35 2010 UTC (13 years, 11 months ago) by torben
File size: 2259 byte(s)
Log any errors
1 package dk.thoerup.traininfoservice;
2
3 import java.io.BufferedReader;
4 import java.io.FileInputStream;
5 import java.io.IOException;
6 import java.io.InputStreamReader;
7 import java.util.logging.Level;
8 import java.util.logging.Logger;
9
10
11 import javax.servlet.ServletException;
12 import javax.servlet.http.HttpServlet;
13 import javax.servlet.http.HttpServletRequest;
14 import javax.servlet.http.HttpServletResponse;
15
16 public class RequestPlotter extends HttpServlet {
17 private static final long serialVersionUID = 1L;
18
19 static final Logger log = Logger.getLogger(RequestPlotter.class.getName());
20
21 protected String getKml() {
22 StringBuilder sb = new StringBuilder();
23 try {
24 FileInputStream fis = new FileInputStream("/var/log/apache2/access.log");
25 BufferedReader in = new BufferedReader( new InputStreamReader(fis) );
26
27
28 sb.append( "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" );
29 sb.append( "<kml xmlns=\"http://www.opengis.net/kml/2.2\">\n" );
30 sb.append( "<Document>\n" );
31
32 String line;
33 while ( (line=in.readLine()) != null) {
34 if (line.indexOf("LocateStation") == -1 ){
35 continue;
36 }
37
38 if (line.indexOf("latitude") == -1 ) {
39 continue;
40 }
41
42 String toks[] = line.split(" ");
43 String ip = toks[0];
44 String time = toks[3].replace("[", "");
45 String argpart = toks[6].split("?")[1];
46
47 String args[] = argpart.split("&");
48
49 String lat = args[0].split("=")[1];
50 String lng = args[0].split("=")[1];
51
52 sb.append( " <Placemark>" );
53 sb.append( " <description>IP=" + ip + " Time=" + time + "</description>" );
54 sb.append( " <Point><coordinates>" + lng + "," + lat + ",0</coordinates></Point>" );
55 sb.append( " </Placemark>" );
56
57 }
58
59 sb.append( "</Document>\n" );
60 sb.append( "</kml>\n" );
61
62 } catch (Exception e) {
63 sb.append("<!-- error -->");
64 log.log(Level.SEVERE, "getKml()", e);
65 }
66
67 return sb.toString();
68 }
69
70 @Override
71 protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
72 resp.setContentType("application/vnd.google-earth.kml");
73 resp.getWriter().print( getKml() );
74 }
75
76
77
78 }

  ViewVC Help
Powered by ViewVC 1.1.20