aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/utils/RxUtils.java
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2014-05-29 12:39:18 +0200
committerSamuel Tardieu <sam@rfc1149.net>2014-06-01 10:46:34 +0200
commite4b5fb28b996383736fed065b94348645bde8d3d (patch)
treecfd832eea58cb10dc31fef1293a00326ac717402 /main/src/cgeo/geocaching/utils/RxUtils.java
parent1e914068d75298b46a6ccf2f6474eb5368edcb65 (diff)
downloadcgeo-e4b5fb28b996383736fed065b94348645bde8d3d.zip
cgeo-e4b5fb28b996383736fed065b94348645bde8d3d.tar.gz
cgeo-e4b5fb28b996383736fed065b94348645bde8d3d.tar.bz2
Add more parallelism in static maps downloads
Diffstat (limited to 'main/src/cgeo/geocaching/utils/RxUtils.java')
-rw-r--r--main/src/cgeo/geocaching/utils/RxUtils.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/utils/RxUtils.java b/main/src/cgeo/geocaching/utils/RxUtils.java
index deba573..a5cdc5f 100644
--- a/main/src/cgeo/geocaching/utils/RxUtils.java
+++ b/main/src/cgeo/geocaching/utils/RxUtils.java
@@ -1,6 +1,8 @@
package cgeo.geocaching.utils;
+import rx.Observable;
import rx.Scheduler;
+import rx.observables.BlockingObservable;
import rx.schedulers.Schedulers;
public class RxUtils {
@@ -9,4 +11,13 @@ public class RxUtils {
private RxUtils() {}
public final static Scheduler computationScheduler = Schedulers.computation();
+
+ public static <T> void waitForCompletion(final BlockingObservable<T> observable) {
+ observable.lastOrDefault(null);
+ return;
+ }
+
+ public static void waitForCompletion(final Observable<?>... observables) {
+ waitForCompletion(Observable.merge(observables).toBlockingObservable());
+ }
}