// Path: teachlibrary/src/main/java/com/rock/teachlibrary/rxevent/RxSubscriber.java
// public abstract class RxSubscriber<T> extends Subscriber<T> {
// 
//     private Context mContext;
//     private String msg;
//     private boolean showDialog = true;
// 
//     /**
//      * 是否显示浮动dialog
//      */
//     public void showDialog() {
//         this.showDialog = true;
//     }
// 
//     public void hideDialog() {
//         this.showDialog = true;
//     }
// 
//     public RxSubscriber(Context context, String msg, boolean showDialog) {
//         this.mContext = context;
//         this.msg = msg;
//         this.showDialog = showDialog;
//     }
// 
//     public RxSubscriber(Context context) {
//         this(context, "加载中...", false);
//     }
// 
//     public RxSubscriber(Context context, boolean showDialog) {
//         this(context, "加载中", showDialog);
//     }
// 
//     @Override
//     public void onCompleted() {
//         if (showDialog)
//             LoadingDialog.cancelDialogForLoading();
//     }
// 
//     @Override
//     public void onStart() {
//         super.onStart();
//         if (showDialog) {
//             try {
//                 LoadingDialog.showDialogForLoading((Activity) mContext, msg, true);
//             } catch (Exception e) {
//                 e.printStackTrace();
//             }
//         }
//     }
// 
// 
//     @Override
//     public void onNext(T t) {
//         _onNext(t);
//     }
// 
//     @Override
//     public void onError(Throwable e) {
//         if (showDialog)
//             LoadingDialog.cancelDialogForLoading();
//         e.printStackTrace();
//         //网络
//         if (!NetWorkUtil.isNetConnected(Rock.getContext())) {
//             _onError("没有网络");
//         }
//         //服务器
//         else if (e instanceof ServerException) {
//             _onError(e.getMessage());
//         }
//         //其它
//         else {
//             _onError("状态异常");
//         }
//     }
// 
//     protected abstract void _onNext(T t);
// 
//     protected abstract void _onError(String message);
// 
// }
// 
// Path: vmovie/src/main/java/com/rock/vmovie/ui/channeldetail/contract/ChannelDetailContract.java
// public interface ChannelDetailContract {
// 
//      interface Model extends BaseModel{
// 
//          Observable<ChannelDetail> getChannelDetail(int page,int size,String cateid);
// 
//      }
// 
//     interface View extends BaseView{
// 
//         void returnChannelDetail(ChannelDetail channelDetail);
// 
//     }
// 
//     static abstract class Presenter extends BasePresenter<Model,View>{
// 
//         public abstract void getChannelDetailRequest(int page,int size,String cateid);
// 
//     }
// 
// }


import com.rock.teachlibrary.rxevent.RxSubscriber;
import com.rock.vmovie.bean.ChannelDetail;
import com.rock.vmovie.ui.channeldetail.contract.ChannelDetailContract;
package com.rock.vmovie.ui.channeldetail.presenter;


public class ChannelDetailPresenter extends ChannelDetailContract.Presenter {
    @Override
    public void getChannelDetailRequest(int page, int size, String cateid) {
        mRxManager.add(mModel.getChannelDetail(page, size, cateid).subscribe(new RxSubscriber<ChannelDetail>(mContext) {
            @Override
            protected void _onNext(ChannelDetail channelDetail) {
                mView.returnChannelDetail(channelDetail);
            }

// Path: teachlibrary/src/main/java/com/rock/teachlibrary/rxevent/RxSubscriber.java
// public abstract class RxSubscriber<T> extends Subscriber<T> {
// 
//     private Context mContext;
//     private String msg;
//     private boolean showDialog = true;
// 
//     /**
//      * 是否显示浮动dialog
//      */
//     public void showDialog() {
//         this.showDialog = true;
//     }
// 
//     public void hideDialog() {
//         this.showDialog = true;
//     }
// 
//     public RxSubscriber(Context context, String msg, boolean showDialog) {
//         this.mContext = context;
//         this.msg = msg;
//         this.showDialog = showDialog;
//     }
// 
//     public RxSubscriber(Context context) {
//         this(context, "加载中...", false);
//     }
// 
//     public RxSubscriber(Context context, boolean showDialog) {
//         this(context, "加载中", showDialog);
//     }
// 
//     @Override
//     public void onCompleted() {
//         if (showDialog)
//             LoadingDialog.cancelDialogForLoading();
//     }
// 
//     @Override
//     public void onStart() {
//         super.onStart();
//         if (showDialog) {
//             try {
//                 LoadingDialog.showDialogForLoading((Activity) mContext, msg, true);
//             } catch (Exception e) {
//                 e.printStackTrace();
//             }
//         }
//     }
// 
// 
//     @Override
//     public void onNext(T t) {
//         _onNext(t);
//     }
// 
//     @Override
//     public void onError(Throwable e) {
//         if (showDialog)
//             LoadingDialog.cancelDialogForLoading();
//         e.printStackTrace();
//         //网络
//         if (!NetWorkUtil.isNetConnected(Rock.getContext())) {
//             _onError("没有网络");
//         }
//         //服务器
//         else if (e instanceof ServerException) {
//             _onError(e.getMessage());
//         }
//         //其它
//         else {
//             _onError("状态异常");
//         }
//     }
// 
//     protected abstract void _onNext(T t);
// 
//     protected abstract void _onError(String message);
// 
// }
// 
// Path: vmovie/src/main/java/com/rock/vmovie/ui/channeldetail/contract/ChannelDetailContract.java
// public interface ChannelDetailContract {
// 
//      interface Model extends BaseModel{
// 
//          Observable<ChannelDetail> getChannelDetail(int page,int size,String cateid);
// 
//      }
// 
//     interface View extends BaseView{
// 
//         void returnChannelDetail(ChannelDetail channelDetail);
// 
//     }
// 
//     static abstract class Presenter extends BasePresenter<Model,View>{
// 
//         public abstract void getChannelDetailRequest(int page,int size,String cateid);
// 
//     }
// 
// }


// Path: vmovie/src/main/java/com/rock/vmovie/ui/channeldetail/presenter/ChannelDetailPresenter.java
import com.rock.teachlibrary.rxevent.RxSubscriber;
import com.rock.vmovie.bean.ChannelDetail;
import com.rock.vmovie.ui.channeldetail.contract.ChannelDetailContract;

package com.rock.vmovie.ui.channeldetail.presenter;


public class ChannelDetailPresenter extends ChannelDetailContract.Presenter {
    @Override
    public void getChannelDetailRequest(int page, int size, String cateid) {
        mRxManager.add(mModel.getChannelDetail(page, size, cateid).subscribe(new RxSubscriber<ChannelDetail>(mContext) {
            @Override
            protected void _onNext(ChannelDetail channelDetail) {
                mView.returnChannelDetail(channelDetail);
            }

            @Override