package in.srain.cube.request; /** * @author http://www.liaohuqiu.net */ public class SimpleRequest<T> extends RequestBase<T> implements IRequest<T> { private RequestHandler<T> mRequestHandler; public SimpleRequest() { } public SimpleRequest(RequestHandler<T> handler) { setRequestHandler(handler); } public SimpleRequest setRequestHandler(RequestHandler<T> handler) { mRequestHandler = handler; return this; } @Override protected void doSendRequest() { SimpleRequestManager.sendRequest(this); } @Override protected void prepareRequest() { } @Override public void onRequestSuccess(T data) { if (null != mRequestHandler) { mRequestHandler.onRequestFinish(data); } } @Override public void onRequestFail(FailData failData) { if (null != mRequestHandler) { mRequestHandler.onRequestFail(failData); } } @Override public T processOriginDataFromServer(JsonData rawData) { if (null != mRequestHandler) { return mRequestHandler.processOriginData(rawData); } return null; } }