mirror of
https://github.com/WuXiaolong/AndroidMVPSample.git
synced 2025-12-19 18:15:41 +08:00
update
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
package com.wuxiaolong.androidmvpsample.rxjava;
|
||||
|
||||
import retrofit2.adapter.rxjava.HttpException;
|
||||
import rx.Subscriber;
|
||||
|
||||
/**
|
||||
* Created by Administrator
|
||||
* on 2016/5/18.
|
||||
*/
|
||||
public class SubscriberCallBack<T> extends Subscriber<T> {
|
||||
private ApiCallback<T> apiCallback;
|
||||
|
||||
public SubscriberCallBack(ApiCallback<T> apiCallback) {
|
||||
this.apiCallback = apiCallback;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCompleted() {
|
||||
apiCallback.onCompleted();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(Throwable e) {
|
||||
e.printStackTrace();
|
||||
if (e instanceof HttpException) {
|
||||
HttpException httpException = (HttpException) e;
|
||||
//httpException.response().errorBody().string()
|
||||
int code = httpException.code();
|
||||
String msg = httpException.getMessage();
|
||||
if (code == 504) {
|
||||
msg = "网络不给力";
|
||||
}
|
||||
apiCallback.onFailure(code, msg);
|
||||
} else {
|
||||
apiCallback.onFailure(0, e.getMessage());
|
||||
}
|
||||
apiCallback.onCompleted();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNext(T t) {
|
||||
apiCallback.onSuccess(t);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user