https://github.com/satoshun/rxkeeporder
RxKeepOrder keeps ordering of RxJava Streams(Observable, Flowable, Single and Maybe)
https://github.com/satoshun/rxkeeporder
android kotlin rxjava rxjava-streams
Last synced: about 1 month ago
JSON representation
RxKeepOrder keeps ordering of RxJava Streams(Observable, Flowable, Single and Maybe)
- Host: GitHub
- URL: https://github.com/satoshun/rxkeeporder
- Owner: satoshun
- License: apache-2.0
- Created: 2017-06-12T13:59:19.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2018-10-11T07:15:42.000Z (over 7 years ago)
- Last Synced: 2025-02-07T12:48:47.563Z (over 1 year ago)
- Topics: android, kotlin, rxjava, rxjava-streams
- Language: Java
- Homepage:
- Size: 294 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://maven-badges.herokuapp.com/maven-central/com.github.satoshun.RxKeepOrder/rxkeeporder)
[](https://circleci.com/gh/satoshun/RxKeepOrder)
# RxKeepOrder
keeps ordering of RxJava Streams(Observable, Flowable, Single and Maybe)
## motivation
concatArrayEager is so useful. But doesn't support multi observable type(Observable, Flowable, Completable and Maybe)
This library can be executed parallel and keep order emit items multi observable types!!
## usage
Java simple example.
```java
// set default observeOn scheduler, almost mainThread when Android Platform
seed = RxKeepOrder().setObserveScheduler(AndroidSchedulers.mainThread());
// evaluate parallel observable1, observable2 and observable3
// But evaluate subscribe keep order!!
observable1
.compose(seed.attach())
.subscribe();
observable2
.compose(seed.attach())
.subscribe();
observable3
.compose(seed.attach())
.subscribe();
...
```
Kotlin simple example.
```kotlln
// set default observeOn scheduler, almost mainThread when Android Platform
seed = RxKeepOrder().setObserveScheduler(AndroidSchedulers.mainThread());
// evaluate parallel observable1, observable2 and observable3
// But evaluate subscribe keep order!!
observable1
.keepOrder(seed)
.subscribe();
observable2
.keepOrder(seed)
.subscribe();
observable3
.keepOrder(seed)
.subscribe();
...
```
## install
```groovy
implementation 'com.github.satoshun.RxKeepOrder:rxkeeporder:0.3.0'
// kotlin
implementation 'com.github.satoshun.RxKeepOrder:rxkeeporder-kotlin:0.3.0'
```