Ich habe folgende Ströme:Erste Teilergebnisse nach auf Observablen mit concat
Observable<SomeResponseObject> method(){
List<MyPojo> stream1...
Observable<List<MyPojo>> stream2...
return Observable.concat(Observable.from(stream1).toList(),stream2).map(users->
createSomeResponseObject(users);
}
jedoch, wenn ich SomeResponseObject debuggen nur ich die Ergebnisse stream1 (fehlende Ergebnisse stream2) sehen
es die Ausführung über die Einheit-Testings:
myClass.method().toBlocking().first();
stream2 erstellt auf diese Weise:
return Observable.from(Arrays.asList(new MyPojo("user7"))).toList();
Was fehlt mir bei der Verkettung dieser beiden Listen?
Sind Sie sicher, dass die erste beobachtbare abgeschlossen ist? 'concat' wird die Elemente vom ersten Observablen bis zum Abschluss ausstrahlen, dann wird es mit den Elementen des zweiten Observablen beginnen. http://rxmarbles.com/#concat – LordRaydenMK
@LordRaydenMK der erste, den ich bin in beobachtbar im laufenden Betrieb. wenn ich 'Benutzer' auf Debugger überprüfe, sehe ich nur die von Stream1 - das ist der erste richtig? – rayman
Ja. Stream 2 sollte starten, nachdem Stream 1 abgeschlossen ist. Sie sollten 'merge' verwenden, wenn Sie Werte von beiden bei ihrem Eintreffen kombinieren möchten. – LordRaydenMK