Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3734)

Unified Diff: device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java

Issue 2832983003: Revert of GeoLocation: add support for GmsCore location provider (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
diff --git a/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java b/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
index 956dd679297e04f4ae58e084d74d80b76c608930..3ffc36af9dbcdfa4e6d41a423772a568009bad44 100644
--- a/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
+++ b/device/geolocation/android/java/src/org/chromium/device/geolocation/LocationProviderFactory.java
@@ -9,7 +9,8 @@
import org.chromium.base.VisibleForTesting;
/**
- * Factory to create a LocationProvider to allow us to inject a mock for tests.
+ * Factory to create a LocationProvider to allow us to inject
+ * a mock for tests.
*/
public class LocationProviderFactory {
private static LocationProviderFactory.LocationProvider sProviderImpl;
@@ -19,9 +20,8 @@
*/
public interface LocationProvider {
/**
- * Start listening for location updates. Calling several times before stop() is interpreted
- * as restart.
- * @param enableHighAccuracy Whether or not to enable high accuracy location.
+ * Start listening for location updates.
+ * @param enableHighAccuracy Whether or not to enable high accuracy location providers.
*/
public void start(boolean enableHighAccuracy);
@@ -40,15 +40,12 @@
@VisibleForTesting
public static void setLocationProviderImpl(LocationProviderFactory.LocationProvider provider) {
+ assert sProviderImpl == null;
sProviderImpl = provider;
}
public static LocationProvider create(Context context) {
- if (sProviderImpl != null) return sProviderImpl;
-
- if (LocationProviderGmsCore.isGooglePlayServicesAvailable(context)) {
- sProviderImpl = new LocationProviderGmsCore(context);
- } else {
+ if (sProviderImpl == null) {
sProviderImpl = new LocationProviderAndroid(context);
}
return sProviderImpl;

Powered by Google App Engine
This is Rietveld 408576698