From 79608200a9de56e6f5696b32b1ac2b3c3f4a7cbe Mon Sep 17 00:00:00 2001 From: Andreas Schildbach Date: Sat, 7 Apr 2012 15:41:52 +0200 Subject: [PATCH] handle 'service down' for Germany --- enabler/src/de/schildbach/pte/BahnProvider.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/enabler/src/de/schildbach/pte/BahnProvider.java b/enabler/src/de/schildbach/pte/BahnProvider.java index 6215c4b8..07e63e9a 100644 --- a/enabler/src/de/schildbach/pte/BahnProvider.java +++ b/enabler/src/de/schildbach/pte/BahnProvider.java @@ -271,8 +271,6 @@ public final class BahnProvider extends AbstractHafasProvider private static final Pattern P_PRE_ADDRESS = Pattern.compile( "", Pattern.DOTALL); private static final Pattern P_ADDRESSES = Pattern.compile("]*>\\s*(.*?)\\s*", Pattern.DOTALL); - private static final Pattern P_CHECK_CONNECTIONS_ERROR = Pattern - .compile("(zu dicht beieinander|mehrfach vorhanden oder identisch)|(keine geeigneten Haltestellen)|(keine Verbindung gefunden)|(derzeit nur Auskünfte vom)|(zwischenzeitlich nicht mehr gespeichert)"); @Override public QueryConnectionsResult queryConnections(final Location from, final Location via, final Location to, final Date date, final boolean dep, @@ -344,6 +342,8 @@ public final class BahnProvider extends AbstractHafasProvider + "(\\d{1,2}:\\d{2})
(\\d{1,2}:\\d{2}).+?" // departureTime, arrivalTime + "(.*?)
.*?" // line , Pattern.DOTALL); + private static final Pattern P_CHECK_CONNECTIONS_ERROR = Pattern + .compile("(zu dicht beieinander|mehrfach vorhanden oder identisch)|(keine geeigneten Haltestellen)|(keine Verbindung gefunden)|(derzeit nur Auskünfte vom)|(konnte leider nicht verarbeitet werden)|(zwischenzeitlich nicht mehr gespeichert)"); private QueryConnectionsResult queryConnections(final String uri, final CharSequence page) throws IOException { @@ -359,6 +359,8 @@ public final class BahnProvider extends AbstractHafasProvider if (mError.group(4) != null) return new QueryConnectionsResult(null, QueryConnectionsResult.Status.INVALID_DATE); if (mError.group(5) != null) + return new QueryConnectionsResult(null, QueryConnectionsResult.Status.SERVICE_DOWN); + if (mError.group(6) != null) throw new SessionExpiredException(); }