oday
12/08/2020, 10:31 AMpurchaseFlowStore
.getTransaction(transactionId)
.takeUntil { it.state == "done" || it.state == "error" || it.state == "authorized" }
.doOnError {
logger.debug("TransactionInfo error! $it")
}
.repeatWhen { Observable.timer(5, TimeUnit.SECONDS) }
.viewModelSubscription({
logger.debug("TransactionInfo is ${it.state}")
when (it.state) {
"done", "authorized" -> {
getOrder()
}
"error" -> {
ShowRequestFailedDialog()
}
}
}, {
logger.debug("TransactionInfo error! $it")
})
StavFX
12/08/2020, 6:32 PM.repeatWhen { completed -> completed.delay(5, TimeUnit.SECONDS) }
or
.repeatWhen { completed ->
completed.flatMap { Observable.timer(5, TimeUnit.SECONDS) }
}