package com.moovel.injection;

import android.location.Location;

import rx.Observable;
import rx.Single;

public interface LocationManager {
    /**
     * starts silent location updates
     */
    void startLocationUpdates();

    /**
     * stops silent location updates
     */
    void stopLocationUpdates();

    /**
     * @return a hot observable emitting location updates
     * @throws IllegalStateException when there's no valid provider available
     */
    Observable<Location> getLocationUpdates();

    /**
     * starts silent is location enabled updates
     */
    void startIsLocationEnabledUpdates();

    /**
     * stops silent is location enabled updates
     */
    void stopIsLocationEnabledUpdates();

    /**
     * @return an observable emitting location enabled state
     */
    Observable<Boolean> getIsLocationEnabled();

    /**
     * Fetches a single item location provider
     * @return a single containing the name of the provider
     */
    Single<String> getLocationProvider();
}

@@ -5,28 +5,28 @@
 age 
-com.moovel.injection
+ro.cluj.totemz.utils
 ;%0A%0Ai
@@ -66,17 +66,27 @@
 %0Aimport 
-r
+io.reactive
 x.Observ
@@ -98,17 +98,27 @@
 %0Aimport 
-r
+io.reactive
 x.Single
@@ -920,24 +920,31 @@
 on provider%0A
+     *%0A
      * @retu

optimize imports