I have tried to create the async task using the RxJAVA2. The code is working fine. WHat enhancement can I do in this code?
private void createObservable(){
progressDialog =new ProgressDialog(ProductActivityRx.this);
progressDialog.setTitle("Data fetching...");
progressDialog.setCanceledOnTouchOutside(false);
progressDialog.show();
Observable<List<Product>> booksObservable =Observable.fromCallable(new Callable<List<Product>>() {
@Override
public List<Product> call() throws Exception {
return getProductList();
}
}).doOnNext(new Consumer<List<Product>>() {
@Override
public void accept(List<Product> strings) throws Exception {
}
});
productSubscription = booksObservable.
subscribeOn(Schedulers.io()).
observeOn(AndroidSchedulers.mainThread()).
subscribe(new Consumer<List<Product>>() {
@Override
public void accept(List<Product> productList) throws Exception {
displayData(productList);
}
});
}
I am updating the UI in displayData().