Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorАлександр Зацепин <az@mapswithme.com>2017-07-03 18:09:00 +0300
committerArsentiy Milchakov <milcars@mapswithme.com>2017-07-03 18:46:07 +0300
commitcfe437c62b0de3ff3d1cca7ba133121198b03d65 (patch)
treec2ed23eeabb49584fccb0c9e34a1bee511b90be8
parentf45872efb7f8f9b1a056231fbc524f3a8983e284 (diff)
[android] Added handling the No_Providers case in taxibeta-889
-rw-r--r--android/src/com/mapswithme/maps/routing/RoutingController.java13
-rw-r--r--android/src/com/mapswithme/maps/routing/RoutingPlanController.java2
-rw-r--r--android/src/com/mapswithme/maps/taxi/TaxiManager.java9
-rw-r--r--android/src/com/mapswithme/util/statistics/Statistics.java7
4 files changed, 28 insertions, 3 deletions
diff --git a/android/src/com/mapswithme/maps/routing/RoutingController.java b/android/src/com/mapswithme/maps/routing/RoutingController.java
index 38924418e2..34b5d58279 100644
--- a/android/src/com/mapswithme/maps/routing/RoutingController.java
+++ b/android/src/com/mapswithme/maps/routing/RoutingController.java
@@ -937,4 +937,17 @@ public class RoutingController implements TaxiManager.TaxiListener
Statistics.INSTANCE.trackTaxiError(error);
}
}
+
+ @Override
+ public void onNoTaxiProviders()
+ {
+ mTaxiPlanning = false;
+ mLogger.e(TAG, "onNoTaxiProviders");
+ if (isTaxiRouterType() && mContainer != null)
+ {
+ mContainer.onTaxiError(TaxiManager.ErrorCode.NoProviders);
+ completeTaxiRequest();
+ Statistics.INSTANCE.trackNoTaxiProvidersError();
+ }
+ }
}
diff --git a/android/src/com/mapswithme/maps/routing/RoutingPlanController.java b/android/src/com/mapswithme/maps/routing/RoutingPlanController.java
index e7a6697acd..56e3d5d0a8 100644
--- a/android/src/com/mapswithme/maps/routing/RoutingPlanController.java
+++ b/android/src/com/mapswithme/maps/routing/RoutingPlanController.java
@@ -232,7 +232,7 @@ public class RoutingPlanController extends ToolbarController
case RemoteError:
showError(R.string.dialog_taxi_error);
break;
- case NoProvider:
+ case NoProviders:
showError(R.string.taxi_no_providers);
break;
default:
diff --git a/android/src/com/mapswithme/maps/taxi/TaxiManager.java b/android/src/com/mapswithme/maps/taxi/TaxiManager.java
index 4e4963e15b..b4a2c3516f 100644
--- a/android/src/com/mapswithme/maps/taxi/TaxiManager.java
+++ b/android/src/com/mapswithme/maps/taxi/TaxiManager.java
@@ -47,7 +47,11 @@ public class TaxiManager
throw new AssertionError("Must be called from UI thread!");
if (providers.length == 0)
- throw new AssertionError("Taxi provider array must be non-empty!");
+ {
+ if (mListener != null)
+ mListener.onNoTaxiProviders();
+ return;
+ }
mProviders.clear();
mProviders.addAll(Arrays.asList(providers));
@@ -107,12 +111,13 @@ public class TaxiManager
public enum ErrorCode
{
- NoProducts, RemoteError, NoProvider
+ NoProducts, RemoteError, NoProviders
}
public interface TaxiListener
{
void onTaxiProviderReceived(@NonNull TaxiInfo provider);
void onTaxiErrorReceived(@NonNull TaxiInfoError error);
+ void onNoTaxiProviders();
}
}
diff --git a/android/src/com/mapswithme/util/statistics/Statistics.java b/android/src/com/mapswithme/util/statistics/Statistics.java
index c298910e4d..0d05acdf57 100644
--- a/android/src/com/mapswithme/util/statistics/Statistics.java
+++ b/android/src/com/mapswithme/util/statistics/Statistics.java
@@ -558,6 +558,13 @@ public enum Statistics
trackEvent(EventName.ROUTING_TAXI_ROUTE_BUILT, params);
}
+ public void trackNoTaxiProvidersError()
+ {
+ Statistics.ParameterBuilder params = Statistics.params();
+ params.add(ERROR_CODE, TaxiManager.ErrorCode.NoProviders.name());
+ trackEvent(EventName.ROUTING_TAXI_ROUTE_BUILT, params);
+ }
+
public void trackRestaurantEvent(@NonNull String eventName, @NonNull Sponsored restaurant,
@NonNull MapObject mapObject)
{