public HttpResponse removeResponse(HttpRequest request) { String keyString = createKey(request); HttpResponse response = getResponseImpl(keyString); removeResponseImpl(keyString); if (responseStillUsable(response)) { return response; } return null; }
public HttpResponse removeResponse(HttpRequest request) { String keyString = createKey(request); HttpResponse response = getResponseImpl(keyString); removeResponseImpl(keyString); if (responseStillUsable(response)) { return response; } return null; }
public HttpResponse removeResponse(HttpRequest request) { String keyString = createKey(request); HttpResponse response = getResponseImpl(keyString); removeResponseImpl(keyString); if (responseStillUsable(response)) { return response; } return null; }
public final HttpResponse getResponse(HttpRequest request) { if (isCacheable(request)) { String keyString = createKey(request); HttpResponse cached = getResponseImpl(keyString); if (responseStillUsable(cached)) { return cached; } } return null; }
public final HttpResponse getResponse(HttpRequest request) { if (isCacheable(request)) { String keyString = createKey(request); HttpResponse cached = getResponseImpl(keyString); if (responseStillUsable(cached)) { return cached; } } return null; }
public HttpResponse getResponse(HttpRequest request) { if (isCacheable(request)) { String keyString = createKey(request); HttpResponse cached = getResponseImpl(keyString); if (responseStillUsable(cached) && (!cached.isStrictNoCache() || refetchStrictNoCacheAfterMs >= 0)) { return cached; } } return null; }
public boolean addResponse(HttpRequest request, HttpResponse response) { if (isCacheable(request, response)) { // Both are cacheable. Check for forced cache TTL overrides. HttpResponseBuilder responseBuilder = new HttpResponseBuilder(response); int forcedTtl = request.getCacheTtl(); if (forcedTtl != -1) { responseBuilder.setCacheTtl(forcedTtl); } response = responseBuilder.create(); String keyString = createKey(request); addResponseImpl(keyString, response); return true; } return false; }
public boolean addResponse(HttpRequest request, HttpResponse response) { if (isCacheable(request, response)) { // Both are cacheable. Check for forced cache TTL overrides. HttpResponseBuilder responseBuilder = new HttpResponseBuilder(response); int forcedTtl = request.getCacheTtl(); if (forcedTtl != -1) { responseBuilder.setCacheTtl(forcedTtl); } response = responseBuilder.create(); String keyString = createKey(request); addResponseImpl(keyString, response); return true; } return false; }
public HttpResponse addResponse(HttpRequest request, HttpResponse response) { HttpResponseBuilder responseBuilder; boolean storeStrictNoCacheResources = (refetchStrictNoCacheAfterMs >= 0); if (isCacheable(request, response, storeStrictNoCacheResources)) { if (storeStrictNoCacheResources && response.isStrictNoCache()) { responseBuilder = buildStrictNoCacheHttpResponse(response); } else { responseBuilder = new HttpResponseBuilder(response); } } else { return null; } int forcedTtl = request.getCacheTtl(); if (forcedTtl != -1 && !response.isError()) { responseBuilder.setCacheTtl(forcedTtl); } response = responseBuilder.create(); String keyString = createKey(request); addResponseImpl(keyString, response); return response; // cached and possibly modified }