I am using Moya and Moya-ObjectMapper with Rxswift to make network requests.
My network request is below.
let provider = RxMoyaProvider<APIClient>()
requestHospitalButton.rx_tap
.withLatestFrom(hospitalCode)
.flatMapLatest { [unowned self] code in
self.provider.request(.Hospital(code: code))
}
.mapObject(Hospital)
.subscribe { [unowned self] event in
switch event {
case .Next(let hospital):
// success
case .Error(let error):
// error
default: break
}
}
.addDisposableTo(rx_disposeBag)
If the error occurs, then my hospital request Observable terminates and I can never make my hospital request again.
How can I retry my hospital request when the requestHospitalButton is tapped?