package com.doumee.lib_coremodel.http.callback;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.HttpException;
import retrofit2.Response;
import timber.log.Timber;
/**
* @author Jenly
*/
public abstract class ApiCallback implements Callback {
@Override
public void onResponse(Call call, Response response) {
if(response.isSuccessful()){
T result = response.body();
Timber.d("Response:" + result);
onResponse(call,result);
}else{
onError(call,new HttpException(response));
}
}
@Override
public void onFailure(Call call, Throwable t) {
Timber.w(t);
onError(call,t);
}
public abstract void onResponse(Call call, T result);
public abstract void onError(Call call, Throwable t);
}