private @Nullable Response getCacheOnlyResponse(Request request) { if (!post && client.cache() != null) { try { Request cacheRequest = request.newBuilder().cacheControl(CacheControl.FORCE_CACHE).build(); Response cacheResponse = client.newCall(cacheRequest).execute(); if (cacheResponse.code() != 504) { return cacheResponse; } } catch (IOException ioe) { // Failures are ignored as we can fallback to the network // and hopefully repopulate the cache. } } return null; }
@Override public void destroy() throws IOException { if (this.defaultClient) { // Clean up the client if we created it in the constructor Cache cache = this.client.cache(); if (cache != null) { cache.close(); } this.client.dispatcher().executorService().shutdown(); } }
@Override public void destroy() throws IOException { if (this.defaultClient) { // Clean up the client if we created it in the constructor Cache cache = this.client.cache(); if (cache != null) { cache.close(); } this.client.dispatcher().executorService().shutdown(); } }
/** * Initializes AndroidNetworking with the specified config. * * @param context The context * @param okHttpClient The okHttpClient */ public static void initialize(Context context, OkHttpClient okHttpClient) { if (okHttpClient != null && okHttpClient.cache() == null) { okHttpClient = okHttpClient .newBuilder() .cache(Utils.getCache(context.getApplicationContext(), ANConstants.MAX_CACHE_SIZE, ANConstants.CACHE_DIR_NAME)) .build(); } InternalNetworking.setClient(okHttpClient); ANRequestQueue.initialize(); ANImageLoader.initialize(); }
.getOkHttpClient() .newBuilder() .cache(InternalNetworking.sHttpClient.cache()) .addNetworkInterceptor(new Interceptor() { @Override
.getOkHttpClient() .newBuilder() .cache(InternalNetworking.sHttpClient.cache()) .addNetworkInterceptor(new Interceptor() { @Override
.getOkHttpClient() .newBuilder() .cache(InternalNetworking.sHttpClient.cache()) .build() .newCall(okHttpRequest));
.getOkHttpClient() .newBuilder() .cache(InternalNetworking.sHttpClient.cache()) .build() .newCall(okHttpRequest));
request.setCall(request.getOkHttpClient() .newBuilder() .cache(sHttpClient.cache()) .build() .newCall(okHttpRequest));
okHttpClient = request.getOkHttpClient().newBuilder().cache(sHttpClient.cache()) .addNetworkInterceptor(new Interceptor() { @Override
public OkHttp3Downloader(OkHttpClient client) { this.client = client; this.cache = client.cache(); }
request.setCall(request.getOkHttpClient().newBuilder().cache(sHttpClient.cache()).build().newCall(okHttpRequest)); } else { request.setCall(sHttpClient.newCall(okHttpRequest));
final Cache cache = okHttpClient.cache(); logger.debug("OkHttp ETag cache metrics :: Request Count: {} | Network Count: {} | Hit Count: {}", new Object[] {cache.requestCount(), cache.networkCount(), cache.hitCount()});
.getOkHttpClient() .newBuilder() .cache(InternalNetworking.sHttpClient.cache()) .build() .newCall(okHttpRequest));
.getOkHttpClient() .newBuilder() .cache(InternalNetworking.sHttpClient.cache()) .build() .newCall(okHttpRequest));
private void clearCache() { try { client.cache().evictAll(); } catch (IOException e) { e.printStackTrace(); } }
private int networkCount() { return client.cache().networkCount(); }
private int writeSuccessCount() { return client.cache().writeSuccessCount(); }
private int writeAbortCount() { return client.cache().writeAbortCount(); }
private int requestCount() { return client.cache().requestCount(); }