Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- val list1 = mutableListOf<SomeClass1>(
- SomeClass1("1", 1), SomeClass1("2", 2), SomeClass1("3", 3),
- SomeClass1("4", 4), SomeClass1("5", 5), SomeClass1("6", 6),
- SomeClass1("7", 7), SomeClass1("8", 8), SomeClass1("9", 9)
- )
- val list2 = mutableListOf<SomeClass2>(
- SomeClass2(1.00), SomeClass2(2.00), SomeClass2(3.00),
- SomeClass2(4.00), SomeClass2(5.00), SomeClass2(6.00),
- SomeClass2(7.00), SomeClass2(8.00), SomeClass2(9.00)
- )
- val someClass1Observable = Observable
- .fromIterable(list1)
- .zipWith(Observable.interval(2, TimeUnit.SECONDS),
- BiFunction { item: SomeClass1, _: Long -> item })
- val someClass2Observable = Observable
- .fromIterable(list2)
- .zipWith(Observable.interval(2, TimeUnit.SECONDS),
- BiFunction { item: SomeClass2, _: Long -> item })
- someClass1Observable.subscribe {
- Log.v("someClass1", it.toString())
- }
- someClass2Observable.subscribe {
- Log.v("someClass2", it.toString())
- }
- Observable.merge(someClass1Observable, someClass2Observable)
- .buffer(10, TimeUnit.SECONDS)
- .repeat()
- .doOnSubscribe { Log.v("parentObservable", "STARTED") }
- .subscribe { t: MutableList<Parent> ->
- Log.v("parentObservable", "onNext")
- t.forEach { Log.v("onNext", it.toString()) }
- }
- Thread.sleep(30000)
- Log.v("AFTER_SLEEP", "AFTER_SLEEP")
- someClass1Observable.subscribe {
- Log.v("someClass1", it.toString())
- }
- someClass2Observable.subscribe {
- Log.v("someClass2", it.toString())
- }
- val someClass1Obs = Observable
- .interval(2, TimeUnit.SECONDS)
- .map { SomeClass1("$it", it.toInt()) } // <-- create objects on demand
Add Comment
Please, Sign In to add comment