// // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler) // package com.gesoftoa.common; import android.content.Context; import android.widget.Toast; import com.android.volley.DefaultRetryPolicy; import com.android.volley.RetryPolicy; import com.android.volley.VolleyError; import com.android.volley.Cache.Entry; import com.android.volley.Response.ErrorListener; import com.android.volley.Response.Listener; import com.gesoftoa.base.BaseApplication; import com.gesoftoa.common.JsonObjectPostRequest; import com.gesoftoa.common.LogUtils; import com.gesoftoa.common.T; import java.util.Map; import org.json.JSONException; import org.json.JSONObject; public class HttpUtils { public static String URL = "http://www.gytaobao.cn:9218/gephoneServer/json/"; public static final String URL_LOGIN; public static final String URL_ATTENDANCE_MONTH; public static final String URL_ATTENDANCE_DAY; public static final String URL_ATTENDANCE_DAY_ADD; public static final String URL_ATTENDANCE_DAY_UPDATE; public static final String URL_ATTENDANCE_DAY_DELETE; public static final String URL_ATTENDANCE_COMMENT; public static final String URL_ATTENDANCE_COMMENT_ADD; public static final String URL_ATTENDANCE_COMMENT_UPDATE; public static final String URL_ATTENDANCE_VS_PRINT; public static final String URL_ATTENDANCE_VS_PRINT_UPDATE; public static final String URL_ATTENDANCE_VS_PRINT_AGAIN_UPDATE; public static final String URL_ATTENDANCE_VS_PRINT_AGAIN_ONEKEY; public static final String URL_FLOW_PRINT; private static Context mContext; private static HttpUtils.MyReqeustsFinish mRequestsFinish; private static HttpUtils http; private static RetryPolicy mRetryPolicy; private HttpUtils() { } public static HttpUtils getInstance() { return http; } public static HttpUtils getInstance(Context context) { mContext = context; return http; } public void setOnRequestsFinish(HttpUtils.MyReqeustsFinish requestsFinish) { mRequestsFinish = requestsFinish; } /** @deprecated */ @Deprecated public void requestPost(String url, Map mapAjax, Listener listener, ErrorListener errorListener) { this.getRequestJson(url, mapAjax, listener, errorListener); } /** @deprecated */ @Deprecated public void requestPost(String url, Map mapAjax, Listener listener) { this.getRequestJson(url, mapAjax, listener, new ErrorListener() { public void onErrorResponse(VolleyError error) { } }); } public void requestPost(String url, Map mapAjax, final HttpUtils.MyResponse myresponse, final HttpUtils.MyResponseError myResponseError) { this.getRequestJson(url, mapAjax, new Listener() { public void onResponse(JSONObject response) { try { myresponse.onResponse(response); } catch (Exception var3) { LogUtils.error(var3); } } }, new ErrorListener() { public void onErrorResponse(VolleyError error) { try { myResponseError.onErrorResponse(error); } catch (Exception var3) { LogUtils.error(var3); } } }); } public static boolean isResponse(Context context, JSONObject response) { if("1".equals(response.optString("sign"))) { return true; } else { Toast.makeText(context, response.optString("msg"), 0).show(); return false; } } public void requestPostDefault(String url, Map mapAjax, final HttpUtils.MyResponse myresponse) { this.getRequestJson(url, mapAjax, new Listener() { public void onResponse(JSONObject response) { try { if(BaseApplication.isFinishRquests() && HttpUtils.mRequestsFinish != null) { HttpUtils.mRequestsFinish.onFinish(response); } myresponse.onResponse(response); } catch (Exception var3) { LogUtils.error(var3); } } }, new ErrorListener() { public void onErrorResponse(VolleyError error) { String str = ""; if(BaseApplication.isFinishRquests() && HttpUtils.mRequestsFinish != null) { HttpUtils.mRequestsFinish.onFinish(error); } if(error.networkResponse == null) { str = "未知错误"; } else { str = HttpUtils.getHttpStatusCn(error.networkResponse.statusCode); } T.show(str); } }); } public static String getHttpCache(String url) { Entry entry = BaseApplication.getRequestQueue().getCache().get(url); return entry == null?null:new String(entry.data); } public static String getHttpStatusCn(int statusCode) { String strMsg = ""; if(statusCode == 401) { strMsg = "未授权"; } else if(statusCode == 404) { strMsg = "未找到路径"; } else if(statusCode == 406) { strMsg = "无法访问"; } else if(statusCode == 408) { strMsg = "请求超时"; } else { strMsg = "错误代码" + statusCode; } return strMsg; } private JsonObjectPostRequest getRequestJson(String url, Map mapAjax, final Listener listener, final ErrorListener errorListener) { Listener success = new Listener() { public void onResponse(JSONObject response) { BaseApplication.finishCurrentRequest(); listener.onResponse(response); if(BaseApplication.isFinishRquests() && HttpUtils.mRequestsFinish != null) { HttpUtils.mRequestsFinish.onFinish(response); } } }; ErrorListener error = new ErrorListener() { public void onErrorResponse(VolleyError error) { BaseApplication.finishCurrentRequest(); errorListener.onErrorResponse(error); if(BaseApplication.isFinishRquests() && HttpUtils.mRequestsFinish != null) { try { JSONObject e = new JSONObject(); e.put("volleyerror", error); HttpUtils.mRequestsFinish.onFinish(e); } catch (JSONException var3) { LogUtils.error(var3); } } } }; JsonObjectPostRequest requestJson = new JsonObjectPostRequest(url, mapAjax, success, error); requestJson.setRetryPolicy(mRetryPolicy); BaseApplication.addRequestQueue(requestJson); return requestJson; } public static void setRetryPolicy(RetryPolicy retryPolicy) { mRetryPolicy = retryPolicy; } static { URL_LOGIN = URL + "phone_login.action?action=1"; URL_ATTENDANCE_MONTH = URL + "phone_attendance.action?action=1"; URL_ATTENDANCE_DAY = URL + "phone_attendance.action?action=2"; URL_ATTENDANCE_DAY_ADD = URL + "phone_attendance.action?action=3"; URL_ATTENDANCE_DAY_UPDATE = URL + "phone_attendance.action?action=4"; URL_ATTENDANCE_DAY_DELETE = URL + "phone_attendance.action?action=5"; URL_ATTENDANCE_COMMENT = URL + "phone_attendance.action?action=8"; URL_ATTENDANCE_COMMENT_ADD = URL + "phone_attendance.action?action=6"; URL_ATTENDANCE_COMMENT_UPDATE = URL + "phone_attendance.action?action=7"; URL_ATTENDANCE_VS_PRINT = URL + "phone_attendance.action?action=9"; URL_ATTENDANCE_VS_PRINT_UPDATE = URL + "phone_attendance.action?action=10"; URL_ATTENDANCE_VS_PRINT_AGAIN_UPDATE = URL + "phone_attendance.action?action=11"; URL_ATTENDANCE_VS_PRINT_AGAIN_ONEKEY = URL + "phone_attendance.action?action=12"; URL_FLOW_PRINT = URL + "phone_flow.action?action=8"; http = new HttpUtils(); mRetryPolicy = new DefaultRetryPolicy(10000, 1, 1.0F); } public interface MyResponseError { void onErrorResponse(VolleyError var1) throws Exception; } public interface MyReqeustsFinish { void onFinish(Object var1); } public interface MyResponse { void onResponse(JSONObject var1) throws Exception; } }