0
私は新しいAndriodプロジェクトでrxJava2と併せて改造を使用しています。私はrxJava 1の経験が限られています。これはrxJava2で行われますか?
私の質問には次のようなものがあります。私は間違っているかもしれないが、これはちょうどdoesn't私の訓練を受けていない目に非常にrxish見る:
public Single<Response<List<ProviderVO>>> getProviders(){
if(Connectivity.isConnected(mContext)){ // test internet connection
return mRetrofitHelper.getProviderList()
.map(response -> {
if(response.code() == 200){
return Response.success(response.body().getProviders()
,response.raw());
} else {
return Response.<List<ProviderVO>>error(response.code()
,response.errorBody());
}
})
.doOnSuccess(response -> {
if(response.code() == 200){
mPreferencesHelper.putProviderList(response.body());
}
});
} else { // use cached providers when not connected to the internet
List<ProviderVO> list = mPreferencesHelper.getProviderList();
if (list != null){
return Single.create(e -> e.onSuccess(Response.success(list)));
} else {
return Single.create(e -> e.onSuccess(Response.<List<ProviderVO>>error(400
,ResponseBody.create(MediaType.parse("text/plain"), ""))));
}
}
}
おかげで入力を。 :) – zetain