RxJava - создайте последовательность из двух одинарных наблюдаемых - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть два сингла:

  1. выборка данных о пользователях из Facebook.
  2. выполнить регистрацию пользователя на моем сервере с информацией, полученной из Facebook.

Я хочу, чтобы второй сингл запускался сразу после первого, вызванного onSuccess, второй сингл зависит от данныхот первой.Я ищу подходящего оператора для достижения этой цели.Любая рекомендация?

Ответы [ 2 ]

0 голосов
/ 13 июня 2019

Другой способ сделать это с zip

 public Single<List<DataEntry>> getting(String rawSearchText) {
    Single single1 = dbSearch(rawSearchText);
    Single single2 = onlineSearch(rawSearchText);
    return Single.zip(single1, single2, (b1, b2) -> CombineTwoLists(b1, b2))
            .subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread());
 }
0 голосов
/ 26 ноября 2018

Попробуйте плоскую карту:

fetchUser
    .flatmap(user -> registerUser(user))
    .subscribe()

public Single<User> fetchUser() {...}
public Single<?> registerUser (User user) {...}
...