Reputation: 175
I would get requset from dataBase and same time get request from network .Request from network to save in DateBase,I thought but it doesn't work right
fun loadMovie(id: Int): Single<AboutMovie> = database.getMovie(id = id)
.onErrorResumeNext( aboutMovieService.getMovie(movieId = id) )
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
Upvotes: 0
Views: 170
Reputation: 626
I'm not fully understand what you are trying to achieve, but let me provide you with that code.
fun loadMovie(id: Int): Single<Movie> =
database.getMovie(id = id) // get cached entry from database
.onErrorResumeNext { // if any error occured
getNetworkMovie(id = id) // do network request
.doOnSuccess { database.saveMovie(movie) } // on network request success save to database
}
Upvotes: 1