Slide 40
Slide 40 text
Retrofit and RxJava, sitting in a tree
mWebService.fetchPosts()
// Split posts list to individual items
.flatMap(posts -> Observable.from(posts))
// Process each item
.doOnNext(post -> storeToLocalDatabase(post))
// Take just the last post
.last()
// Configure threads properly
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
// Handle final results
.subscribe(post -> {
updateUI(post);
}, (error) -> {
Log.e(TAG, "Network error!", error);
}
);