--- android/TrainInfo/src/dk/thoerup/traininfo/provider/XmlDepartureProvider.java 2009/08/08 19:02:20 237 +++ android/TrainInfo/src/dk/thoerup/traininfo/provider/XmlDepartureProvider.java 2009/08/08 20:09:47 238 @@ -1,12 +1,6 @@ package dk.thoerup.traininfo.provider; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; import java.io.StringReader; -import java.net.URL; -import java.net.URLConnection; import java.util.ArrayList; import java.util.List; @@ -21,6 +15,7 @@ import android.util.Log; import dk.thoerup.traininfo.DepartureBean; +import dk.thoerup.traininfo.util.DownloadUtil; public class XmlDepartureProvider extends DefaultHandler implements DepartureProvider { @@ -34,8 +29,8 @@ public void lookupDepartures(String station) { departures.clear(); try - { - String doc = getUrlContents("http://t-hoerup.dk/tog/xml_display.php?stationname="+station); + { String url = "http://t-hoerup.dk/tog/xml_display.php?stationname="+station; + String doc = DownloadUtil.getContent(url, 30000, "ISO-8859-1"); InputSource source = new InputSource( new StringReader(doc)); @@ -56,26 +51,6 @@ public List getDepartures() { return departures; } - - private String getUrlContents(String uri) throws IOException - { - URL url = new URL(uri); - URLConnection conn = url.openConnection(); - conn.setConnectTimeout(5000); - InputStream stream = conn.getInputStream(); - - BufferedReader in = new BufferedReader(new InputStreamReader(stream, "ISO-8859-1"),8192); - - StringBuilder sbuilder = new StringBuilder(); - - String line; - while ( (line = in.readLine()) != null) { - sbuilder.append(line); - sbuilder.append("\r\n"); - } - - return sbuilder.toString(); - } // this can be called several times fore the same text-node if there are many chardata / lines @Override