--- android/TrainInfoService/src/dk/thoerup/traininfoservice/banedk/CompareStations.java 2012/02/29 13:03:30 1699
+++ android/TrainInfoService/src/dk/thoerup/traininfoservice/banedk/CompareStations.java 2012/02/29 14:20:31 1700
@@ -36,13 +36,19 @@
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
-
- String data = getData(request);
+ String data = "";
+ String uri = request.getParameter("uri");
+
+ if (uri != null) {
+ boolean require = Boolean.parseBoolean( request.getParameter("requiredata") );
+ data = hasData(uri, require);
+ } else {
+ data = getData(request);
+ }
PrintWriter out = response.getWriter();
out.print(data);
- System.out.println("CompareStations completed");
} catch (Exception e) {
throw new ServletException(e);
}
@@ -58,7 +64,11 @@
StringBuilder sb = new StringBuilder();
sb.append("");
- sb.append("
");
+ sb.append("");
+ sb.append("\n");
+ sb.append("\n");
+
+ sb.append("");
sb.append("");
StationDAO dao = new StationDAO();
@@ -84,20 +94,20 @@
for (StationEntry station : bean.entries) {
if (station.isRegional() || station.isStrain()) {
if (station.isRegional() ) {
- String id = URLEncoder.encode(station.getRegional(), "ISO-8859-1");
+ //String id = URLEncoder.encode(station.getRegional(), "ISO-8859-1");
+ String id = station.getRegional();
String uri = "/Trafikinformation/AfgangAnkomst/Afgang/" + id + "/Fjerntog";
- String data = hasData(uri, true);
- sb.append( "" + station.getName() + " " + data + "\n" );
+ sb.append( "" + station.getName() + " \n" );
}
if (station.isStrain() ) {
- String id = URLEncoder.encode(station.getStrain(), "ISO-8859-1");
+ //String id = URLEncoder.encode(station.getStrain(), "ISO-8859-1");
+ String id = station.getStrain();
String uri = "/Trafikinformation/AfgangAnkomst/Afgang/" + id + "/S-Tog";
- String data = hasData(uri, true);
- sb.append( "" + station.getName() + " " + data + "\n" );
+ sb.append( "" + station.getName() + " \n" );
}
dbStations.add(station.getName());
@@ -122,7 +132,7 @@
for(String s : tmpBanedkStations) {
String uri = banedkStations.get(s);
String disabled = "";
- String data = hasData(uri, false);
+ //String data = hasData(uri, false);
try {
boolean tmpdisabled = dao.hasDisabledStation(s);
@@ -132,7 +142,7 @@
throw new ServletException(e);
}
- sb.append( "" + s + " " + data + "" + disabled + "\n" );
+ sb.append( "" + s + " " + disabled + "\n" );
}
sb.append("");
@@ -173,9 +183,13 @@
String hasDataWorker(String uri, boolean requiredata) throws Exception {
String returnVal = "";
+ String parts[] = uri.split("\\/");
+ String id = URLEncoder.encode(parts[4], "ISO-8859-1");
+ String uri2 = "/TrafikInformation/AfgangAnkomst/Afgang/" + id + "/" + parts[5];
+
CircuitBreaker cb = CircuitBreakerManager.getManager().getCircuitBreaker("banedk");
- JsoupInvocation jsoup = new JsoupInvocation(new URL("http://trafikinfo.bane.dk" + uri), 2000);
+ JsoupInvocation jsoup = new JsoupInvocation(new URL("http://trafikinfo.bane.dk" + uri2), 2000);
Document doc = (Document) cb.invoke(jsoup);