package com.smartalk.gank.presenter; import android.content.Context; import com.smartalk.gank.http.PanClient; import com.smartalk.gank.model.BatteryData; import com.smartalk.gank.view.IBatteryView; import rx.android.schedulers.AndroidSchedulers; import rx.functions.Action1; import rx.schedulers.Schedulers; /** * Battery * Created by panl on 16/1/5. */ public class BatteryFragmentPresenter extends BasePresenter<IBatteryView> { public BatteryFragmentPresenter(Context context, IBatteryView iView) { super(context, iView); } @Override public void release() { subscription.unsubscribe(); } public void loadGank(String type, int page) { iView.showProgressBar(); subscription = PanClient.getGankRetrofitInstance().getBatteryData(type, page) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Action1<BatteryData>() { @Override public void call(BatteryData batteryData) { iView.hideProgressBar(); if (batteryData.results.size() == 0) { iView.showNoMoreData(); } else { iView.showListView(batteryData.results); } } }, new Action1<Throwable>() { @Override public void call(Throwable throwable) { iView.hideProgressBar(); iView.showErrorView(); } }); } }