本文整理了Java中io.reactivex.Observable.firstOrError()
方法的一些代码示例,展示了Observable.firstOrError()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Observable.firstOrError()
方法的具体详情如下:
包路径:io.reactivex.Observable
类名称:Observable
方法名:firstOrError
[英]Returns a Single that emits only the very first item emitted by this Observable or signals a NoSuchElementException if this Observable is empty.
Scheduler: firstOrError does not operate by default on a particular Scheduler.
[中]返回一个单一值,该值仅发出此可观察对象发出的第一个项,或者如果此可观察对象为空,则发出NosTouchElementException信号。
调度程序:默认情况下,firstOrError不会在特定调度程序上运行。
代码示例来源:origin: trello/RxLifecycle
@Override
public SingleSource<T> apply(Single<T> upstream) {
return upstream.takeUntil(observable.firstOrError());
}
代码示例来源:origin: alibaba/Tangram-Android
@Override
public SingleSource<T> apply(Single<T> upstream) {
return upstream.takeUntil(mObservable.firstOrError());
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
public Single<RxBleDeviceServices> apply(TimeoutConfiguration timeoutConf) {
final ServiceDiscoveryOperation operation = operationProvider
.provideServiceDiscoveryOperation(timeoutConf.timeout, timeoutConf.timeoutTimeUnit);
return operationQueue.queue(operation)
.firstOrError();
}
};
代码示例来源:origin: Polidea/RxAndroidBle
@Override
protected Single<RxBleDeviceServices> getCallback(RxBleGattCallback rxBleGattCallback) {
return rxBleGattCallback.getOnServicesDiscovered().firstOrError()
.doOnSuccess(new Consumer<RxBleDeviceServices>() {
@Override
public void accept(RxBleDeviceServices rxBleDeviceServices) throws Exception {
bleServicesLogger.log(rxBleDeviceServices, bluetoothGatt.getDevice());
}
});
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
public Single<byte[]> readDescriptor(@NonNull BluetoothGattDescriptor descriptor) {
return operationQueue
.queue(operationsProvider.provideReadDescriptor(descriptor))
.firstOrError()
.map(new Function<ByteAssociation<BluetoothGattDescriptor>, byte[]>() {
@Override
public byte[] apply(ByteAssociation<BluetoothGattDescriptor> bluetoothGattDescriptorPair) {
return bluetoothGattDescriptorPair.second;
}
});
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
public Single<byte[]> writeCharacteristic(@NonNull BluetoothGattCharacteristic characteristic, @NonNull byte[] data) {
return illegalOperationChecker.checkAnyPropertyMatches(
characteristic,
PROPERTY_WRITE | PROPERTY_WRITE_NO_RESPONSE | PROPERTY_SIGNED_WRITE
).andThen(operationQueue.queue(operationsProvider.provideWriteCharacteristic(characteristic, data)))
.firstOrError();
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void noReentrantDispose() {
final AtomicInteger disposeCalled = new AtomicInteger();
final BehaviorSubject<Integer> s = BehaviorSubject.create();
s.doOnDispose(new Action() {
@Override
public void run() throws Exception {
disposeCalled.incrementAndGet();
s.onNext(2);
}
})
.firstOrError()
.subscribe()
.dispose();
assertEquals(1, disposeCalled.get());
}
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
protected Single<ByteAssociation<BluetoothGattDescriptor>> getCallback(RxBleGattCallback rxBleGattCallback) {
return rxBleGattCallback
.getOnDescriptorRead()
.filter(descriptorPredicate(bluetoothGattDescriptor))
.firstOrError();
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
public Single<Integer> requestMtu(int mtu) {
return operationQueue.queue(operationsProvider.provideMtuChangeOperation(mtu)).firstOrError();
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorMultipleElements() {
Observable.just(1, 2, 3)
.firstOrError()
.test()
.assertNoErrors()
.assertValue(1);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorOneElement() {
Observable.just(1)
.firstOrError()
.test()
.assertNoErrors()
.assertValue(1);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorOneElementObservable() {
Observable.just(1)
.firstOrError()
.toObservable()
.test()
.assertNoErrors()
.assertValue(1);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorMultipleElementsObservable() {
Observable.just(1, 2, 3)
.firstOrError()
.toObservable()
.test()
.assertNoErrors()
.assertValue(1);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorError() {
Observable.error(new RuntimeException("error"))
.firstOrError()
.test()
.assertNoValues()
.assertErrorMessage("error")
.assertError(RuntimeException.class);
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
protected Single<byte[]> getCallback(RxBleGattCallback rxBleGattCallback) {
return rxBleGattCallback
.getOnDescriptorWrite()
.filter(descriptorPredicate(bluetoothGattDescriptor))
.firstOrError()
.map(getBytesFromAssociation());
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorNoElement() {
Observable.empty()
.firstOrError()
.test()
.assertNoValues()
.assertError(NoSuchElementException.class);
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorErrorObservable() {
Observable.error(new RuntimeException("error"))
.firstOrError()
.toObservable()
.test()
.assertNoValues()
.assertErrorMessage("error")
.assertError(RuntimeException.class);
}
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
protected Single<byte[]> getCallback(RxBleGattCallback rxBleGattCallback) {
return rxBleGattCallback
.getOnCharacteristicWrite()
.filter(characteristicUUIDPredicate(bluetoothGattCharacteristic.getUuid()))
.firstOrError()
.map(getBytesFromAssociation());
}
代码示例来源:origin: Polidea/RxAndroidBle
@Override
protected Single<byte[]> getCallback(RxBleGattCallback rxBleGattCallback) {
return rxBleGattCallback
.getOnCharacteristicRead()
.filter(characteristicUUIDPredicate(bluetoothGattCharacteristic.getUuid()))
.firstOrError()
.map(getBytesFromAssociation());
}
代码示例来源:origin: ReactiveX/RxJava
@Test
public void firstOrErrorNoElementObservable() {
Observable.empty()
.firstOrError()
.toObservable()
.test()
.assertNoValues()
.assertError(NoSuchElementException.class);
}
内容来源于网络,如有侵权,请联系作者删除!