--- android/TrainInfoService/src/dk/thoerup/traininfoservice/banedk/DepartureFetcher.java 2013/11/23 10:27:01 2076 +++ android/TrainInfoService/src/dk/thoerup/traininfoservice/banedk/DepartureFetcher.java 2013/11/23 10:43:25 2077 @@ -41,6 +41,7 @@ Map cache; StationDAO stationDao = new StationDAO(); + TritinfoFetcher tritinfo; private TraininfoSettings settings; @@ -82,6 +83,8 @@ public DepartureFetcher(TraininfoSettings settings) { this.settings = settings; cache = new TimeoutMap( settings.getCacheTimeout() ); + + tritinfo = new TritinfoFetcher(settings); } @@ -138,7 +141,7 @@ //System.out.println("Trit: " + settings.isTritinfoEnabled() + " " + station.getTritStation() ); if ( settings.isTritinfoEnabled() && station.getTritStation() != -1) { try { - injectTritinfoData(departureBean, station); + tritinfo.injectTritinfoData(departureBean, station); } catch (Exception ex) { //det er ikke kritisk at vi får perron numre med logger.warning("tritinfo failed with " + ex.getClass().getName() + ": " + ex.getMessage() ); } @@ -553,50 +556,6 @@ return number; } - - private void injectTritinfoData(DepartureBean departureBean, StationEntry station) throws Exception { - String uri = "http://tritinfo.pallas.dk/webtavle?page=stationcontent&staid=" + station.getTritStation(); - logger.fine("URI:" + uri); - - - JsoupInvocation wrapper = new JsoupInvocation( new URL(uri), settings.getReplyTimeout() ); - CircuitBreaker breaker = CircuitBreakerManager.getManager().getCircuitBreaker("tritinfo"); - - Element page = (Element) breaker.invoke(wrapper); - - Element table = page.getElementsByClass("passages").get(0); - - Elements trains = table.getElementsByClass("train"); - - for (int i=0; i