package me.weyye.todaynews.base;
import android.os.Handler;
import android.os.Looper;
import java.net.ConnectException;
import java.net.SocketException;
import java.net.SocketTimeoutException;
import me.weyye.todaynews.utils.ToastUtils;
import rx.Subscriber;
/**
* Created by Administrator on 2017/2/9 0009.
*/
public abstract class BaseCallBack<T> extends Subscriber<T> {
private Handler mDelivery;
public BaseCallBack() {
mDelivery = new Handler(Looper.getMainLooper());
}
@Override
public void onCompleted() {
mDelivery = null;
}
@Override
public void onError(final Throwable e) {
e.printStackTrace();
mDelivery.post(new Runnable() {
@Override
public void run() {
if (e instanceof SocketTimeoutException) {
ToastUtils.showToast("网络连接超时");
} else if (e instanceof SocketException) {
if (e instanceof ConnectException) {
ToastUtils.showToast("网络未连接");
} else {
ToastUtils.showToast("网络错误");
}
}
onError();
}
});
}
protected void onError() {
}
protected void onFailure(ResultResponse response) {
}
}