Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package tech.vault.android
- import io.reactivex.Maybe
- import io.reactivex.Observable
- import io.reactivex.rxkotlin.subscribeBy
- import java.util.concurrent.TimeUnit
- class RxClass {
- fun run() {
- Observable.timer(1, TimeUnit.SECONDS).flatMap {
- return@flatMap observable(it).onErrorResumeNext(Observable.never())
- }.onErrorResumeNext(Observable.just(999L)).subscribeBy(onError = {
- println(">>>> $it")
- }, onNext = {
- println(">>>> next $it")
- }, onComplete = {
- println(">>>> complete")
- })
- }
- fun observable(i: Long): Observable<Long> {
- if (i % 4L == 0L) {
- throw Exception("4")
- }
- if (i % 3L == 0L) {
- return Observable.empty()
- }
- return Observable.just(i)
- }
- fun maybe(i: Long): Maybe<Long> {
- if (i % 4L == 0L) {
- throw Exception("4")
- }
- if (i % 3L == 0L) {
- return Maybe.empty()
- }
- return Maybe.just(i)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement