Interface HttpCache
-
- All Known Implementing Classes:
BasicHttpCache
interface HttpCache- Since:
- 4.1
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CloseableHttpResponsecacheAndReturnResponse(org.apache.http.HttpHost host, org.apache.http.HttpRequest request, CloseableHttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived)Store aHttpResponsein the cache if possible, and returnorg.apache.http.HttpResponsecacheAndReturnResponse(org.apache.http.HttpHost host, org.apache.http.HttpRequest request, org.apache.http.HttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived)Store aHttpResponsein the cache if possible, and returnvoidflushCacheEntriesFor(org.apache.http.HttpHost host, org.apache.http.HttpRequest request)Clear all matchingHttpCacheEntrys.voidflushInvalidatedCacheEntriesFor(org.apache.http.HttpHost host, org.apache.http.HttpRequest request)Clear invalidated matchingHttpCacheEntrysvoidflushInvalidatedCacheEntriesFor(org.apache.http.HttpHost host, org.apache.http.HttpRequest request, org.apache.http.HttpResponse response)Clear any entries that may be invalidated by the given response to a particular request.HttpCacheEntrygetCacheEntry(org.apache.http.HttpHost host, org.apache.http.HttpRequest request)Retrieve matchingHttpCacheEntryfrom the cache if it existsjava.util.Map<java.lang.String,Variant>getVariantCacheEntriesWithEtags(org.apache.http.HttpHost host, org.apache.http.HttpRequest request)Retrieve all variants from the cache, if there are no variants then an emptyMapis returnedvoidreuseVariantEntryFor(org.apache.http.HttpHost target, org.apache.http.HttpRequest req, Variant variant)Specifies cache should reuse the given cached variant to satisfy requests whose varying headers match those of the given client request.HttpCacheEntryupdateCacheEntry(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, HttpCacheEntry stale, org.apache.http.HttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived)Update aHttpCacheEntryusing a 304HttpResponse.HttpCacheEntryupdateVariantCacheEntry(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, HttpCacheEntry stale, org.apache.http.HttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived, java.lang.String cacheKey)Update a specificHttpCacheEntryrepresenting a cached variant using a 304HttpResponse.
-
-
-
Method Detail
-
flushCacheEntriesFor
void flushCacheEntriesFor(org.apache.http.HttpHost host, org.apache.http.HttpRequest request) throws java.io.IOExceptionClear all matchingHttpCacheEntrys.- Parameters:
host-request-- Throws:
java.io.IOException
-
flushInvalidatedCacheEntriesFor
void flushInvalidatedCacheEntriesFor(org.apache.http.HttpHost host, org.apache.http.HttpRequest request) throws java.io.IOExceptionClear invalidated matchingHttpCacheEntrys- Parameters:
host-request-- Throws:
java.io.IOException
-
flushInvalidatedCacheEntriesFor
void flushInvalidatedCacheEntriesFor(org.apache.http.HttpHost host, org.apache.http.HttpRequest request, org.apache.http.HttpResponse response)Clear any entries that may be invalidated by the given response to a particular request.- Parameters:
host-request-response-
-
getCacheEntry
HttpCacheEntry getCacheEntry(org.apache.http.HttpHost host, org.apache.http.HttpRequest request) throws java.io.IOException
Retrieve matchingHttpCacheEntryfrom the cache if it exists- Parameters:
host-request-- Returns:
- the matching
HttpCacheEntryornull - Throws:
java.io.IOException
-
getVariantCacheEntriesWithEtags
java.util.Map<java.lang.String,Variant> getVariantCacheEntriesWithEtags(org.apache.http.HttpHost host, org.apache.http.HttpRequest request) throws java.io.IOException
Retrieve all variants from the cache, if there are no variants then an emptyMapis returned- Parameters:
host-request-- Returns:
- a
Mapmapping Etags to variant cache entries - Throws:
java.io.IOException
-
cacheAndReturnResponse
org.apache.http.HttpResponse cacheAndReturnResponse(org.apache.http.HttpHost host, org.apache.http.HttpRequest request, org.apache.http.HttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived) throws java.io.IOExceptionStore aHttpResponsein the cache if possible, and return- Parameters:
host-request-originResponse-requestSent-responseReceived-- Returns:
- the
HttpResponse - Throws:
java.io.IOException
-
cacheAndReturnResponse
CloseableHttpResponse cacheAndReturnResponse(org.apache.http.HttpHost host, org.apache.http.HttpRequest request, CloseableHttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived) throws java.io.IOException
Store aHttpResponsein the cache if possible, and return- Parameters:
host-request-originResponse-requestSent-responseReceived-- Returns:
- the
HttpResponse - Throws:
java.io.IOException
-
updateCacheEntry
HttpCacheEntry updateCacheEntry(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, HttpCacheEntry stale, org.apache.http.HttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived) throws java.io.IOException
Update aHttpCacheEntryusing a 304HttpResponse.- Parameters:
target-request-stale-originResponse-requestSent-responseReceived-- Returns:
- the updated
HttpCacheEntry - Throws:
java.io.IOException
-
updateVariantCacheEntry
HttpCacheEntry updateVariantCacheEntry(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, HttpCacheEntry stale, org.apache.http.HttpResponse originResponse, java.util.Date requestSent, java.util.Date responseReceived, java.lang.String cacheKey) throws java.io.IOException
Update a specificHttpCacheEntryrepresenting a cached variant using a 304HttpResponse.- Parameters:
target- host for client requestrequest- actual request from upstream clientstale- current variant cache entryoriginResponse- 304 response received from originrequestSent- when the validating request was sentresponseReceived- when the validating response was receivedcacheKey- where in the cache this entry is currently stored- Returns:
- the updated
HttpCacheEntry - Throws:
java.io.IOException
-
reuseVariantEntryFor
void reuseVariantEntryFor(org.apache.http.HttpHost target, org.apache.http.HttpRequest req, Variant variant) throws java.io.IOExceptionSpecifies cache should reuse the given cached variant to satisfy requests whose varying headers match those of the given client request.- Parameters:
target- host of the upstream client requestreq- request sent by upstream clientvariant- variant cache entry to reuse- Throws:
java.io.IOException- may be thrown during cache update
-
-