package com.phodev.http.tools.receivers;
import com.phodev.http.tools.RequestReceiver;
public abstract class RichRequestReceiver implements RequestReceiver {
@Override
public final void onResult(int resultCode, int reqId, Object tag,
String resp) {
onBeforeDispatch(reqId, resultCode, resp);
if (!doResult(reqId, resultCode, resp)) {
if (resultCode == RequestReceiver.RESULT_STATE_OK) {
doSuccess(reqId, resultCode, resp);
} else {
doFailed(reqId, resultCode, resp);
}
}
onEndDispatch(reqId, resultCode, resp);
}
/**
* 在Result开始分发之前
*/
public void onBeforeDispatch(int reqId, int resultCode, String resp) {
}
/**
* 在Result开始分发之后
*/
public void onEndDispatch(int reqId, int resultCode, String resp) {
}
public boolean doResult(int reqId, int resultCode, String resp) {
return false;
}
public void doSuccess(int reqId, int resultCode, String resp) {
}
public void doFailed(int reqId, int resultCode, String errorResp) {
}
}