Managing the Request Queue
The RestClient class internally uses an instance
of the OkHttpClient class to manage REST API requests.
You can access underlying OkHttp objects directly to cancel pending requests. To manage a
specific request, you can use the OkHttp Call object
returned by the RestClient.sendAsync()
Mobile SDK method.
Example
The following examples show how to perform some common network
operations with OkHttpClient.
- Common Imports
-
1import okhttp3.Headers; 2import okhttp3.HttpUrl; 3import okhttp3.OkHttpClient; 4import okhttp3.Call; 5import okhttp3.Dispatcher; 6import okhttp3.Request; 7import okhttp3.RequestBody; 8import okhttp3.Response; - Obtain the Current OkHttp Client Handle
- To get the handle of the OkHttpClient that the
current RestClient instance is using:
- Kotlin
-
1var okClient = restClient.getOkHttpClient() - Java
-
1OkHttpClient okClient = restClient.getOkHttpClient();
- Obtain the OkHttp Dispatcher
-
- Kotlin
-
1var dispatcher = restClient.getOkHttpClient().dispatcher() - Java
-
1Dispatcher dispatcher = restClient.getOkHttpClient().dispatcher();
- Cancel All Pending Calls
-
- Kotlin
-
1var dispatcher = restClient.getOkHttpClient().dispatcher() 2dispatcher.cancelAll() - Java
-
1Dispatcher dispatcher = restClient.getOkHttpClient().dispatcher(); 2 dispatcher.cancelAll();
- Store the OkHttp Handle to a REST Request
-
- Kotlin
-
1var call = restClient.sendAsync(restRequest, callback) - Java
-
1Call call = restClient.sendAsync(restRequest, callback);
- Cancel a Specific REST Request Using a Stored Handle
-
- Kotlin
-
1var call = restClient.sendAsync(restRequest, callback) - Java
-
1Call call = restClient.sendAsync(restRequest, callback); 2 ... 3 call.cancel();
For more information, see square.github.io/okhttp/.