diff options
| author | Samuel Tardieu <sam@rfc1149.net> | 2014-03-31 15:06:25 +0200 |
|---|---|---|
| committer | Samuel Tardieu <sam@rfc1149.net> | 2014-03-31 15:06:25 +0200 |
| commit | 46675dfdcb4c7b511b4c35e4a2242e47d4678fd4 (patch) | |
| tree | 4dbec27998729b792d90ac6b0ee49648f77ccf3a /main/src/cgeo/geocaching/connector | |
| parent | 4f8a1c6aeef324547ddd9e48ed726b57bfe8cf51 (diff) | |
| download | cgeo-46675dfdcb4c7b511b4c35e4a2242e47d4678fd4.zip cgeo-46675dfdcb4c7b511b4c35e4a2242e47d4678fd4.tar.gz cgeo-46675dfdcb4c7b511b4c35e4a2242e47d4678fd4.tar.bz2 | |
fix #3707: missing method in Android < 2.3
Diffstat (limited to 'main/src/cgeo/geocaching/connector')
| -rw-r--r-- | main/src/cgeo/geocaching/connector/ConnectorFactory.java | 28 |
1 files changed, 4 insertions, 24 deletions
diff --git a/main/src/cgeo/geocaching/connector/ConnectorFactory.java b/main/src/cgeo/geocaching/connector/ConnectorFactory.java index 18344f5..35eae81 100644 --- a/main/src/cgeo/geocaching/connector/ConnectorFactory.java +++ b/main/src/cgeo/geocaching/connector/ConnectorFactory.java @@ -28,10 +28,7 @@ import org.apache.commons.lang3.StringUtils; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; -import rx.Observable; -import rx.schedulers.Schedulers; import rx.functions.Func1; -import rx.functions.Func2; import java.util.ArrayList; import java.util.Arrays; @@ -181,28 +178,11 @@ public final class ConnectorFactory { } /** @see ISearchByViewPort#searchByViewport */ - public static Observable<SearchResult> searchByViewport(final @NonNull Viewport viewport, final MapTokens tokens) { - return Observable.from(searchByViewPortConns).filter(new Func1<ISearchByViewPort, Boolean>() { + public static SearchResult searchByViewport(final @NonNull Viewport viewport, final MapTokens tokens) { + return SearchResult.parallelCombineActive(searchByViewPortConns, new Func1<ISearchByViewPort, SearchResult>() { @Override - public Boolean call(final ISearchByViewPort connector) { - return connector.isActive(); - } - }).parallel(new Func1<Observable<ISearchByViewPort>, Observable<SearchResult>>() { - @Override - public Observable<SearchResult> call(final Observable<ISearchByViewPort> connector) { - return connector.map(new Func1<ISearchByViewPort, SearchResult>() { - @Override - public SearchResult call(final ISearchByViewPort connector) { - return connector.searchByViewport(viewport, tokens); - } - }); - } - }, Schedulers.io()).reduce(new SearchResult(), new Func2<SearchResult, SearchResult, SearchResult>() { - - @Override - public SearchResult call(final SearchResult result, final SearchResult searchResult) { - result.addSearchResult(searchResult); - return result; + public SearchResult call(ISearchByViewPort connector) { + return connector.searchByViewport(viewport, tokens); } }); } |
