rachmadi

CustomRequest.java

Jun 30th, 2016
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.91 KB | None | 0 0
  1. import com.android.volley.NetworkResponse;
  2. import com.android.volley.ParseError;
  3. import com.android.volley.Request;
  4. import com.android.volley.Response;
  5. import com.android.volley.Response.ErrorListener;
  6. import com.android.volley.Response.Listener;
  7. import com.android.volley.toolbox.HttpHeaderParser;
  8.  
  9. import org.json.JSONException;
  10. import org.json.JSONObject;
  11.  
  12. import java.io.UnsupportedEncodingException;
  13. import java.util.Map;
  14.  
  15. public class CustomRequest extends Request<JSONObject>{
  16.  
  17.     private Listener<JSONObject> listener;
  18.     private Map<String, String> params;
  19.  
  20.     public CustomRequest(String url, Listener<JSONObject> reponseListener, ErrorListener errorListener) {
  21.         super(Method.GET, url, errorListener);
  22.         this.listener = reponseListener;
  23.  
  24.     }
  25.  
  26.     public CustomRequest(int method, String url, Map<String, String> params,
  27.                          Listener<JSONObject> reponseListener, ErrorListener errorListener) {
  28.         super(method, url, errorListener);
  29.         this.listener = reponseListener;
  30.         this.params = params;
  31.     }
  32.  
  33.     @Override
  34.     protected Map<String, String> getParams() throws com.android.volley.AuthFailureError {
  35.         return params;
  36.     };
  37.  
  38.     @Override
  39.     protected void deliverResponse(JSONObject response) {
  40.         listener.onResponse(response);
  41.     }
  42.  
  43.     @Override
  44.     protected Response<JSONObject> parseNetworkResponse(NetworkResponse response) {
  45.         try {
  46.             String jsonString = new String(response.data,
  47.                     HttpHeaderParser.parseCharset(response.headers));
  48.             return Response.success(new JSONObject(jsonString),
  49.                     HttpHeaderParser.parseCacheHeaders(response));
  50.         } catch (UnsupportedEncodingException e) {
  51.             return Response.error(new ParseError(e));
  52.         } catch (JSONException je) {
  53.             return Response.error(new ParseError(je));
  54.         }
  55.     }
  56.  
  57. }
Add Comment
Please, Sign In to add comment