org.xutils.http.app.RequestTracker
package org.xutils.http.app;
import org.xutils.http.RequestParams;
import org.xutils.http.request.UriRequest;
/**
* @author 注释者:王教成
* @version 注释版:1.0.0
* 请求追踪器接口,适合用来记录请求日志,所有回调方法都在主线程进行
* <p>
* 用法:
* 1.将RequestTracker实例设置给请求参数RequestParams
* 2.请求的callback参数同时实现RequestTracker接口
* 3.注册给UriRequestFactory的默认RequestTracker
* 注意:请求回调RequestTracker时优先级按照上面的顺序,找到一个RequestTracker的实现会忽略其他
*/
public interface RequestTracker {
/**
* 等待中回调方法
* @param params 请求参数
*/
void onWaiting(RequestParams params);
/**
* 开始回调方法
* @param params 请求参数
*/
void onStart(RequestParams params);
/**
* 请求已创建回调方法
* @param request Uri请求参数
*/
void onRequestCreated(UriRequest request);
/**
* 缓存回调方法
* @param request Uri请求参数
* @param result 结果对象
*/
void onCache(UriRequest request, Object result);
/**
* 成功回调方法
* @param request Uri请求参数
* @param result 结果对象
*/
void onSuccess(UriRequest request, Object result);
/**
* 已取消回调方法
* @param request Uri请求参数
*/
void onCancelled(UriRequest request);
/**
* 错误回调方法
* @param request Uri请求参数
* @param ex 异常
* @param isCallbackError 是否回调错误
*/
void onError(UriRequest request, Throwable ex, boolean isCallbackError);
/**
* 已完成方法
* @param request Uri请求参数
*/
void onFinished(UriRequest request);
}