/[projects]/android/TrainInfoServiceGoogle/src/dk/thoerup/traininfoservice/TestServlet.java
ViewVC logotype

Annotation of /android/TrainInfoServiceGoogle/src/dk/thoerup/traininfoservice/TestServlet.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1080 - (hide annotations) (download)
Mon Sep 20 20:11:55 2010 UTC (13 years, 8 months ago) by torben
File size: 2465 byte(s)
Add a copy with partial support for google app engine
1 torben 735 package dk.thoerup.traininfoservice;
2    
3     import java.io.IOException;
4     import java.sql.SQLException;
5     import java.util.Random;
6    
7     import javax.servlet.ServletException;
8     import javax.servlet.http.HttpServlet;
9     import javax.servlet.http.HttpServletRequest;
10     import javax.servlet.http.HttpServletResponse;
11    
12 torben 1080
13 torben 735 public class TestServlet extends HttpServlet {
14     private static final long serialVersionUID = 1L;
15 torben 851
16     Random r = new Random();
17 torben 735
18 torben 852 //South-West corner= 54.5, 8.0
19 torben 853 //North-East corner= 57.8, 12.7
20     //Latitude span=3.3
21     //Longitude span=4.7
22 torben 851 void testFindNearest(int count) throws SQLException {
23 torben 735
24     StationDAO db = new StationDAO();
25    
26    
27 torben 736 for (int i=0; i<count; i++) {
28 torben 853 float lat = (r.nextFloat()*3.3F) + 54.5F;
29     float lng = (r.nextFloat()*4.7F) + 8.0F;
30 torben 735 db.getByLocation(lat, lng);
31     }
32    
33    
34    
35     }
36    
37 torben 736 void testFindName(int count) throws SQLException {
38 torben 735
39     StationDAO db = new StationDAO();
40    
41 torben 736 for (int i=0; i<count; i++) {
42 torben 735 char c1 = ((char)r.nextInt(26));
43     c1 += 'a';
44     char c2 = ((char)r.nextInt(26)) ;
45     c2 += 'a';
46    
47     String search = "" + c1 + c2;
48     System.out.println(search);
49    
50     db.getByName(search);
51     }
52 torben 740 }
53    
54     void testFindFavorites(int count) throws SQLException {
55    
56     StationDAO db = new StationDAO();
57    
58     for (int i=0; i<count; i++) {
59     final int MAX = 8;
60    
61     StringBuilder sb = new StringBuilder();
62     sb.append('(');
63     for (int j=0; j<MAX;j++) {
64     if (j>0)
65     sb.append(',');
66     sb.append(r.nextInt(400));
67     }
68     sb.append(')');
69 torben 735
70    
71 torben 740 db.getByList(sb.toString());
72     }
73 torben 735 }
74    
75     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
76 torben 736
77 torben 1080 if (true) {
78    
79     return;
80     }
81 torben 736
82     String test = request.getParameter("test");
83     String strCount = request.getParameter("count");
84     int count = Integer.parseInt(strCount);
85    
86    
87 torben 735 try {
88     long start = System.currentTimeMillis();
89 torben 736
90     if ( test.equals("name") ) {
91     testFindName(count);
92     } else if ( test.equals("nearest") ) {
93     testFindNearest(count);
94 torben 740 } else if ( test.equals("favorites") ) {
95     testFindFavorites(count);
96 torben 736 } else {
97     throw new ServletException("No parameter test");
98     }
99    
100 torben 735 long stop = System.currentTimeMillis();
101    
102     long elapsed = stop-start;
103    
104 torben 736 float avg = ((float)elapsed) / count;
105 torben 735
106 torben 736 String out = "Count=" + count + "\n" +
107 torben 735 "Elapsed=" + elapsed + "\n" +
108     "Avg.=" + avg;
109    
110     response.getWriter().print( out );
111    
112    
113     } catch (Exception e) {
114     throw new ServletException(e);
115     }
116     }
117    
118     }

  ViewVC Help
Powered by ViewVC 1.1.20