diff options
Diffstat (limited to 'src/main/java/com/android/volley/toolbox/JsonRequest.java')
-rw-r--r-- | src/main/java/com/android/volley/toolbox/JsonRequest.java | 127 |
1 files changed, 0 insertions, 127 deletions
diff --git a/src/main/java/com/android/volley/toolbox/JsonRequest.java b/src/main/java/com/android/volley/toolbox/JsonRequest.java deleted file mode 100644 index bc035ae..0000000 --- a/src/main/java/com/android/volley/toolbox/JsonRequest.java +++ /dev/null @@ -1,127 +0,0 @@ -/* - * Copyright (C) 2011 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.volley.toolbox; - -import androidx.annotation.GuardedBy; -import androidx.annotation.Nullable; -import com.android.volley.NetworkResponse; -import com.android.volley.Request; -import com.android.volley.Response; -import com.android.volley.Response.ErrorListener; -import com.android.volley.Response.Listener; -import com.android.volley.VolleyLog; -import java.io.UnsupportedEncodingException; - -/** - * A request for retrieving a T type response body at a given URL that also optionally sends along a - * JSON body in the request specified. - * - * @param <T> JSON type of response expected - */ -public abstract class JsonRequest<T> extends Request<T> { - /** Default charset for JSON request. */ - protected static final String PROTOCOL_CHARSET = "utf-8"; - - /** Content type for request. */ - private static final String PROTOCOL_CONTENT_TYPE = - String.format("application/json; charset=%s", PROTOCOL_CHARSET); - - /** Lock to guard mListener as it is cleared on cancel() and read on delivery. */ - private final Object mLock = new Object(); - - @Nullable - @GuardedBy("mLock") - private Listener<T> mListener; - - @Nullable private final String mRequestBody; - - /** - * Deprecated constructor for a JsonRequest which defaults to GET unless {@link #getPostBody()} - * or {@link #getPostParams()} is overridden (which defaults to POST). - * - * @deprecated Use {@link #JsonRequest(int, String, String, Listener, ErrorListener)}. - */ - @Deprecated - public JsonRequest( - String url, String requestBody, Listener<T> listener, ErrorListener errorListener) { - this(Method.DEPRECATED_GET_OR_POST, url, requestBody, listener, errorListener); - } - - public JsonRequest( - int method, - String url, - @Nullable String requestBody, - Listener<T> listener, - @Nullable ErrorListener errorListener) { - super(method, url, errorListener); - mListener = listener; - mRequestBody = requestBody; - } - - @Override - public void cancel() { - super.cancel(); - synchronized (mLock) { - mListener = null; - } - } - - @Override - protected void deliverResponse(T response) { - Response.Listener<T> listener; - synchronized (mLock) { - listener = mListener; - } - if (listener != null) { - listener.onResponse(response); - } - } - - @Override - protected abstract Response<T> parseNetworkResponse(NetworkResponse response); - - /** @deprecated Use {@link #getBodyContentType()}. */ - @Deprecated - @Override - public String getPostBodyContentType() { - return getBodyContentType(); - } - - /** @deprecated Use {@link #getBody()}. */ - @Deprecated - @Override - public byte[] getPostBody() { - return getBody(); - } - - @Override - public String getBodyContentType() { - return PROTOCOL_CONTENT_TYPE; - } - - @Override - public byte[] getBody() { - try { - return mRequestBody == null ? null : mRequestBody.getBytes(PROTOCOL_CHARSET); - } catch (UnsupportedEncodingException uee) { - VolleyLog.wtf( - "Unsupported Encoding while trying to get the bytes of %s using %s", - mRequestBody, PROTOCOL_CHARSET); - return null; - } - } -} |