From b1624f6b0addb51fb0c540e7d11a748cab9e6c3c Mon Sep 17 00:00:00 2001 From: Andreas Schildbach Date: Thu, 13 Sep 2018 16:48:52 +0200 Subject: [PATCH] AbstractHafasMobileProvider: Handle 'HCI Service: request failed' error in jsonLocGeoPos() and jsonLocMatch(). --- .../src/de/schildbach/pte/AbstractHafasMobileProvider.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/enabler/src/de/schildbach/pte/AbstractHafasMobileProvider.java b/enabler/src/de/schildbach/pte/AbstractHafasMobileProvider.java index 929c122d..8cf4acdc 100644 --- a/enabler/src/de/schildbach/pte/AbstractHafasMobileProvider.java +++ b/enabler/src/de/schildbach/pte/AbstractHafasMobileProvider.java @@ -183,6 +183,9 @@ public abstract class AbstractHafasMobileProvider extends AbstractHafasProvider final String err = svcRes.getString("err"); if (!"OK".equals(err)) { final String errTxt = svcRes.getString("errTxt"); + log.debug("Hafas error: {} {}", err, errTxt); + if ("FAIL".equals(err) && "HCI Service: request failed".equals(errTxt)) + return new NearbyLocationsResult(header, NearbyLocationsResult.Status.SERVICE_DOWN); throw new RuntimeException(err + " " + errTxt); } final JSONObject res = svcRes.getJSONObject("res"); @@ -356,6 +359,9 @@ public abstract class AbstractHafasMobileProvider extends AbstractHafasProvider final String err = svcRes.getString("err"); if (!"OK".equals(err)) { final String errTxt = svcRes.getString("errTxt"); + log.debug("Hafas error: {} {}", err, errTxt); + if ("FAIL".equals(err) && "HCI Service: request failed".equals(errTxt)) + return new SuggestLocationsResult(header, SuggestLocationsResult.Status.SERVICE_DOWN); throw new RuntimeException(err + " " + errTxt); } final JSONObject res = svcRes.getJSONObject("res");