Advertisement
shyhjie

Untitled

Mar 5th, 2019
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 1.05 KB | None | 0 0
  1. package tech.vault.android
  2.  
  3. import io.reactivex.Maybe
  4. import io.reactivex.Observable
  5. import io.reactivex.rxkotlin.subscribeBy
  6. import java.util.concurrent.TimeUnit
  7.  
  8. class RxClass {
  9.  
  10.     fun run() {
  11.         Observable.timer(1, TimeUnit.SECONDS).flatMap {
  12.             return@flatMap observable(it).onErrorResumeNext(Observable.never())
  13.         }.onErrorResumeNext(Observable.just(999L)).subscribeBy(onError = {
  14.             println(">>>> $it")
  15.         }, onNext = {
  16.             println(">>>> next $it")
  17.         }, onComplete = {
  18.             println(">>>> complete")
  19.         })
  20.     }
  21.  
  22.     fun observable(i: Long): Observable<Long> {
  23.         if (i % 4L == 0L) {
  24.             throw Exception("4")
  25.         }
  26.         if (i % 3L == 0L) {
  27.             return Observable.empty()
  28.         }
  29.         return Observable.just(i)
  30.     }
  31.  
  32.     fun maybe(i: Long): Maybe<Long> {
  33.         if (i % 4L == 0L) {
  34.             throw Exception("4")
  35.         }
  36.         if (i % 3L == 0L) {
  37.             return Maybe.empty()
  38.         }
  39.         return Maybe.just(i)
  40.     }
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement