From cee02ad925760296cde31bed0b9b8a58b4a165c1 Mon Sep 17 00:00:00 2001 From: Oleg Date: Fri, 6 Oct 2017 14:23:57 +0300 Subject: [PATCH 1/2] add new method --- .../java/ru/touchin/templates/DeviceUtils.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/java/ru/touchin/templates/DeviceUtils.java b/src/main/java/ru/touchin/templates/DeviceUtils.java index 3df2cb0..6836125 100644 --- a/src/main/java/ru/touchin/templates/DeviceUtils.java +++ b/src/main/java/ru/touchin/templates/DeviceUtils.java @@ -37,6 +37,7 @@ import java.io.UnsupportedEncodingException; import java.util.UUID; import java.util.concurrent.TimeUnit; +import io.reactivex.Completable; import io.reactivex.Observable; import io.reactivex.ObservableEmitter; import ru.touchin.roboswag.core.log.Lc; @@ -212,6 +213,20 @@ public final class DeviceUtils { : processObservable); } + /** + * Create an Observable that depends on network connection. + * + * @param processObservable - Observable to which we subscribe in the availability of the Internet; + */ + @NonNull + public static Observable createNetworkDependentObservable(@NonNull final Context context, @NonNull final Completable processObservable) { + return DeviceUtils.observeIsNetworkConnected(context) + .debounce(100, TimeUnit.MILLISECONDS) + .switchMap(connected -> !connected + ? Observable.empty() + : processObservable.toObservable()); + } + private DeviceUtils() { } From f0965d3dfa407713562900b3152e2c1bc133895d Mon Sep 17 00:00:00 2001 From: Oleg Date: Fri, 6 Oct 2017 15:29:18 +0300 Subject: [PATCH 2/2] small fix --- src/main/java/ru/touchin/templates/DeviceUtils.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/main/java/ru/touchin/templates/DeviceUtils.java b/src/main/java/ru/touchin/templates/DeviceUtils.java index 6836125..f05253f 100644 --- a/src/main/java/ru/touchin/templates/DeviceUtils.java +++ b/src/main/java/ru/touchin/templates/DeviceUtils.java @@ -220,11 +220,7 @@ public final class DeviceUtils { */ @NonNull public static Observable createNetworkDependentObservable(@NonNull final Context context, @NonNull final Completable processObservable) { - return DeviceUtils.observeIsNetworkConnected(context) - .debounce(100, TimeUnit.MILLISECONDS) - .switchMap(connected -> !connected - ? Observable.empty() - : processObservable.toObservable()); + return createNetworkDependentObservable(context, processObservable.toObservable()); } private DeviceUtils() {