так что у меня есть Сингл, который уже был инициализирован как член класса.он инициализируется следующим образом:
var myObservable: Single = Observable.empty (). toSingle ()
это определяется как член класса.
Впоследствии, позже, после того, как класс уже инициализирован, я наконец получаю фактический ответ, и я хочу, чтобы этот myObservable теперь был ответом:
private fun callback(response:Response) {
myObservable= Single.just(response)//now look, myObservable got changed, but im watching it in the zipWith call. how can i tell zip to watch this one now instead of the empty one i initialized ?
}
, но проблема в том, что яЯ заархивирую два obervable в самом начале вызова класса (и один из них myObservable), и я пытаюсь выслушать изменения в обоих и предпринять действия.вот функция zipWith:
someApi.fetchOrders(orderNumber).zipWith<MyResponse,Pair<OrdersResponse,MyResponse>>(myObservable) { t1, t2 ->Pair(t1,t2)}
, но я вызвал это, когда myObservable был еще инициализирован, чтобы опустошить.позже, когда я получил ответ, я изменил его, но на самом деле я присвоил наблюдаемому новое ЗНАЧЕНИЕ, я не сохранил того же, которое наблюдал в почтовом индексе.Как я могу ОБНОВИТЬ myObservable, но сохранить ту же ссылку, которую наблюдает zipWith?
я попытался изменить myObservable на тему, а затем, когда я заархивировал его, он выглядит следующим образом:
someApi.fetchOrders (orderNumber) .zipWith> (myObservable.toSingle ()) {t1,t2 -> Pair (t1, t2)}
, но никогда не выполняет лямбда-функцию.