本文整理了Java中io.reactivex.Single.filter()
方法的一些代码示例,展示了Single.filter()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Single.filter()
方法的具体详情如下:
包路径:io.reactivex.Single
类名称:Single
方法名:filter
[英]Filters the success item of the Single via a predicate function and emitting it if the predicate returns true, completing otherwise.
Scheduler: filter does not operate by default on a particular Scheduler.
[中]通过谓词函数过滤单个的成功项,并在谓词返回true时发出它,否则完成。
调度程序:默认情况下,过滤器不会在特定调度程序上运行。
代码示例来源:origin: Polidea/RxAndroidBle
private Maybe<List<BluetoothGattService>> getListOfServicesFromGatt() {
return Single.fromCallable(new Callable<List<BluetoothGattService>>() {
@Override
public List<BluetoothGattService> call() {
return bluetoothGatt.getServices();
}
})
.filter(new Predicate<List<BluetoothGattService>>() {
@Override
public boolean test(List<BluetoothGattService> bluetoothGattServices) {
return bluetoothGattServices.size() > 0;
}
});
}
代码示例来源:origin: ReactiveX/RxJava
@Override
public MaybeSource<Object> apply(Single<Object> v) throws Exception {
return v.filter(Functions.alwaysTrue());
}
});
代码示例来源:origin: ReactiveX/RxJava
@Test(expected = NullPointerException.class)
public void singleFilterNull() {
Single.just(1).filter(null);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void singleFilterThrows() {
Single.just(1).filter(new Predicate<Integer>() {
@Override
public boolean test(Integer v) throws Exception {
throw new IOException();
}
}).test().assertFailure(IOException.class);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void singleFilterFalse() {
Single.just(2).filter(new Predicate<Integer>() {
@Override
public boolean test(Integer v) throws Exception {
return v == 1;
}
}).test().assertResult();
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void singleFilterTrue() {
Single.just(1).filter(new Predicate<Integer>() {
@Override
public boolean test(Integer v) throws Exception {
return v == 1;
}
}).test().assertResult(1);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void justConditional() {
Single.just(1)
.doAfterSuccess(afterSuccess)
.filter(Functions.alwaysTrue())
.subscribeWith(to)
.assertResult(1);
assertEquals(Arrays.asList(1, -1), values);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void dispose() {
TestHelper.checkDisposed(PublishSubject.create().singleOrError().filter(Functions.alwaysTrue()));
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void testIssue1522() {
// https://github.com/ReactiveX/RxJava/issues/1522
assertNull(Observable
.empty()
.count()
.filter(new Predicate<Long>() {
@Override
public boolean test(Long v) {
return false;
}
})
.blockingGet());
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void errorConditional() {
Single.<Integer>error(new TestException())
.doAfterSuccess(afterSuccess)
.filter(Functions.alwaysTrue())
.subscribeWith(to)
.assertFailure(TestException.class);
assertTrue(values.isEmpty());
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void error() {
Single.error(new TestException())
.filter(Functions.alwaysTrue())
.test()
.assertFailure(TestException.class);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void justConditional() {
Single.just(1)
.doAfterTerminate(afterTerminate)
.filter(Functions.alwaysTrue())
.subscribeWith(to)
.assertResult(1);
assertAfterTerminateCalledOnce();
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void errorConditional() {
Single.<Integer>error(new TestException())
.doAfterTerminate(afterTerminate)
.filter(Functions.alwaysTrue())
.subscribeWith(to)
.assertFailure(TestException.class);
assertAfterTerminateCalledOnce();
}
代码示例来源:origin: pockethub/PocketHub
private void refreshGist() {
refreshGistTaskFactory.create(getActivity(), gistId)
.refresh()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.filter(fullGist -> isAdded())
.as(AutoDisposeUtils.bindToLifecycle(this))
.subscribe(fullGist -> {
FragmentActivity activity = getActivity();
if (activity instanceof OnLoadListener) {
((OnLoadListener<Gist>) activity).loaded(fullGist.getGist());
}
starred = fullGist.getStarred();
loadFinished = true;
gist = fullGist.getGist();
comments = fullGist.getComments();
updateList(fullGist.getGist(), fullGist.getComments());
}, e -> ToastUtils.show(getActivity(), R.string.error_gist_load));
}
代码示例来源:origin: WaylonBrown/LifecycleAwareRx
/**
* NOTE: This throws a NoSuchElementException if the item is filtered out since a Single can't be empty, so the
* onError is called after onDestroy() when using Single().
*
* @param upstream
* @return
*/
@Override
public SingleSource<T> apply(Single<T> upstream) {
Single<T> transformedStream = upstream
.cache() // Cache to replay emitted values to late subscriber
.filter(filterIfDestroyedPredicate) // Filter to stop emitting items once LifecycleOwner is destroyed
.toSingle();
setReactiveType((R)transformedStream);
return transformedStream;
}
代码示例来源:origin: io.reactivex.rxjava2/rxjavafx
public static <T> Maybe<T> fromDialogSource(final Dialog<T> dialog) {
return Single.fromCallable(dialog::showAndWait)
.subscribeOn(JavaFxScheduler.platform())
.filter(Optional::isPresent)
.map(Optional::get);
}
代码示例来源:origin: radixdlt/radixdlt-java
public Observable<RadixJsonRpcClient> getRadixClients(Set<Long> shards) {
return peers.flatMapMaybe(peer -> peer.servesShards(shards)).map(RadixPeer::getRadixClient)
.flatMapMaybe(client -> client.checkAPIVersion().filter(b -> b).map(b -> client));
}
代码示例来源:origin: gravitee-io/graviteeio-access-management
private Single<List<Client>> upgradeClients(Domain domain) {
return clientService.findByDomain(domain.getId())
.filter(clients -> clients != null)
.flatMapObservable(clients -> Observable.fromIterable(clients))
.filter(this::mustBeUpgraded)
.flatMapSingle(this::upgradeClient)
.toList();
}
代码示例来源:origin: gravitee-io/graviteeio-access-management
private Single<List<Scope>> createRoleScopes(Domain domain) {
return roleService.findByDomain(domain.getId())
.filter(roles -> roles != null)
.flatMapObservable(roles -> Observable.fromIterable(roles))
.filter(role -> role.getPermissions() != null)
.flatMap(role -> Observable.fromIterable(role.getPermissions()))
.flatMapSingle(scope -> createScope(domain.getId(), scope))
.toList();
}
代码示例来源:origin: gravitee-io/graviteeio-access-management
private Single<List<Scope>> createClientScopes(Domain domain) {
return clientService.findByDomain(domain.getId())
.filter(clients -> clients != null)
.flatMapObservable(clients -> Observable.fromIterable(clients))
.filter(client -> client.getScopes() != null)
.flatMap(client -> Observable.fromIterable(client.getScopes()))
.flatMapSingle(scope -> createScope(domain.getId(), scope))
.toList();
}
内容来源于网络,如有侵权,请联系作者删除!