package com.android.volley.examples.toolbox.updated; import java.io.File; import org.json.JSONObject; import android.content.Context; import android.os.Bundle; import android.util.Log; import com.android.volley.Request; import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.examples.toolbox.MultipartRequest; import com.android.volley.examples.toolbox.MyVolley; import com.android.volley.toolbox.JsonObjectRequest; /** * Common class for requesting network query or uploading file. * * @author DearDhruv */ public class JSONMultipleImgRequestResponse { boolean hasMultipleFiles = false; public JSONMultipleImgRequestResponse(Context cntx) { mContext = cntx; } @SuppressWarnings("unused") private final Context mContext; private int reqCode; private IJSONParseListener listner; private boolean isFile = false; private String file_path = "", key = ""; private Bundle fileBundle; public void getResponse(String url, final int requestCode, IJSONParseListener mParseListener) { getResponse(url, requestCode, mParseListener, null); } public void getResponse(String url, final int requestCode, IJSONParseListener mParseListener, Bundle params) { this.listner = mParseListener; this.reqCode = requestCode; Response.Listener<JSONObject> sListener = new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { if (listner != null) { listner.SuccessResponse(response, reqCode); } } }; Response.ErrorListener eListener = new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { if (listner != null) { listner.ErrorResponse(error, reqCode); } } }; if (!isFile) { JsonObjectRequest jsObjRequest = new JsonObjectRequest(Request.Method.GET, url, null, sListener, eListener); MyVolley.getRequestQueue().add(jsObjRequest); } else { if (file_path != null) { File mFile = new File(file_path); MultipartRequest multipartRequest; if (hasMultipleFiles) { multipartRequest = new MultipartRequest(url, eListener, sListener, fileBundle, params); } else { multipartRequest = new MultipartRequest(url, eListener, sListener, key, mFile, params); } MyVolley.getRequestQueue().add(multipartRequest); } else { throw new NullPointerException("File path is null"); } } } /** * @return the isFile */ public boolean isFile() { return isFile; } /** * @param isFile the File to set */ public void setFile(String param, String path) { hasMultipleFiles = false; if (path != null && param != null) { key = param; file_path = path; this.isFile = true; } } public void setFile(Bundle b) { hasMultipleFiles = true; fileBundle = b; this.isFile = true; if (fileBundle != null && fileBundle.size() > 0) { for (String key : fileBundle.keySet()) { if (key != null) { String value = ""; Object object = fileBundle.get(key); if (object != null) { value = String.valueOf(object); } try { Log.i("System out", "Image path :-" + key); Log.i("System out", "Image path :-" + value); } catch (Exception e) { e.printStackTrace(); } } } } } }