Reputation: 8550
Is there a RxJava way to connect to observers?
By that I mean, instead of:
Observer<Object> observer1 = new Observer<Object>() { // ... }
Observer<Object> observer2 = new Observer<Object>() {
@Override
public void onNext(Object event) {
observer1.onNext(event);
}
// ...
};
So that the observers are chained together (when the originating onNext() is called, the secondary onNext() is called).
Upvotes: 1
Views: 86
Reputation: 13471
If you want to run your second observer in your first observer onNext it wont be more simple just use flatMap?.
Or maybe I dont understand what you want to do.
Observable.just(object)
.flatMap(Observable.just(object2))--> Do whatever you need
.subscribe(); --> First observer
If you want to see some practicle examples about how to use RxJava look here https://github.com/politrons/reactive
Upvotes: 1
Reputation: 24452
I would recommend you use a Processor, which is both an Observable and an Observer.
In your example:
//Your observable
Observable observable = Observable.just(...);
Observer<Object> observer1 = new Observer<Object>() { // ... }
PublishSubject<Object> observer2 = PublishSubject.create();
// observer1 will receive all onNext and onCompleted events
observer2.subscribe(observer1);
//observer2 will get items from observable and propagate them to observer1
observable.subscribe(observer2);
Upvotes: 1