From ad4fa14c98a05dfa0a97fa03f845ab29dc69c6e1 Mon Sep 17 00:00:00 2001 From: "andreas.schildbach@gmail.com" Date: Wed, 22 Feb 2012 20:00:30 +0000 Subject: [PATCH] handle 'unknown from/to' git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@955 0924bc21-9374-b0fa-ee44-9ff1593b38f0 --- src/de/schildbach/pte/AbstractHafasProvider.java | 6 ++++-- src/de/schildbach/pte/dto/QueryConnectionsResult.java | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/de/schildbach/pte/AbstractHafasProvider.java b/src/de/schildbach/pte/AbstractHafasProvider.java index f4fadccf..6fa97cf4 100644 --- a/src/de/schildbach/pte/AbstractHafasProvider.java +++ b/src/de/schildbach/pte/AbstractHafasProvider.java @@ -825,14 +825,16 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider if (XmlPullUtil.test(pp, "Err")) { final String code = XmlPullUtil.attr(pp, "code"); + if (code.equals("K9260")) // Departure station does not exist + return new QueryConnectionsResult(header, QueryConnectionsResult.Status.UNKNOWN_FROM); + if (code.equals("K9300")) // Arrival station does not exist + return new QueryConnectionsResult(header, QueryConnectionsResult.Status.UNKNOWN_TO); if (code.equals("K9380") || code.equals("K895")) // Departure/Arrival are too near return new QueryConnectionsResult(header, QueryConnectionsResult.Status.TOO_CLOSE); if (code.equals("K9220")) // Nearby to the given address stations could not be found return new QueryConnectionsResult(header, QueryConnectionsResult.Status.UNRESOLVABLE_ADDRESS); if (code.equals("K9240")) // Internal error return new QueryConnectionsResult(header, QueryConnectionsResult.Status.SERVICE_DOWN); - if (code.equals("K9260")) // Departure station does not exist - return new QueryConnectionsResult(header, QueryConnectionsResult.Status.NO_CONNECTIONS); if (code.equals("K890")) // No connections found return new QueryConnectionsResult(header, QueryConnectionsResult.Status.NO_CONNECTIONS); if (code.equals("K891")) // No route found (try entering an intermediate station) diff --git a/src/de/schildbach/pte/dto/QueryConnectionsResult.java b/src/de/schildbach/pte/dto/QueryConnectionsResult.java index e9a86b29..41fbb4d6 100644 --- a/src/de/schildbach/pte/dto/QueryConnectionsResult.java +++ b/src/de/schildbach/pte/dto/QueryConnectionsResult.java @@ -27,7 +27,7 @@ public final class QueryConnectionsResult implements Serializable { public enum Status { - OK, AMBIGUOUS, TOO_CLOSE, UNRESOLVABLE_ADDRESS, NO_CONNECTIONS, INVALID_DATE, SERVICE_DOWN; + OK, AMBIGUOUS, TOO_CLOSE, UNKNOWN_FROM, UNKNOWN_TO, UNRESOLVABLE_ADDRESS, NO_CONNECTIONS, INVALID_DATE, SERVICE_DOWN; } public final ResultHeader header;