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

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

Parent Directory Parent Directory | Revision Log Revision Log


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

  ViewVC Help
Powered by ViewVC 1.1.20