Class BasicHttpAsyncCache
java.lang.Object
org.apache.hc.client5.http.impl.cache.BasicHttpAsyncCache
- All Implemented Interfaces:
HttpAsyncCache
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final HttpAsyncCacheInvalidatorprivate final CacheKeyGeneratorprivate final CacheUpdateHandlerprivate static final org.slf4j.Loggerprivate final HttpAsyncCacheStorage -
Constructor Summary
ConstructorsConstructorDescriptionBasicHttpAsyncCache(ResourceFactory resourceFactory, HttpAsyncCacheStorage storage) BasicHttpAsyncCache(ResourceFactory resourceFactory, HttpAsyncCacheStorage storage, CacheKeyGenerator cacheKeyGenerator) BasicHttpAsyncCache(ResourceFactory resourceFactory, HttpAsyncCacheStorage storage, CacheKeyGenerator cacheKeyGenerator, HttpAsyncCacheInvalidator cacheInvalidator) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.hc.core5.concurrent.CancellablecreateCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse originResponse, org.apache.hc.core5.util.ByteArrayBuffer content, Instant requestSent, Instant responseReceived, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Store aHttpResponsein the cache if possible, and returnorg.apache.hc.core5.concurrent.CancellableflushCacheEntriesFor(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) Clear all matchingHttpCacheEntrys.org.apache.hc.core5.concurrent.CancellableflushCacheEntriesInvalidatedByExchange(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse response, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) FlushHttpCacheEntrys invalidated by the given message exchange.org.apache.hc.core5.concurrent.CancellableflushCacheEntriesInvalidatedByRequest(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) FlushHttpCacheEntrys invalidated by the given requestgenerateKey(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, HttpCacheEntry cacheEntry) org.apache.hc.core5.concurrent.CancellablegetCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Retrieve matchingHttpCacheEntryfrom the cache if it existsorg.apache.hc.core5.concurrent.CancellablegetVariantCacheEntriesWithEtags(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<Map<String, Variant>> callback) Retrieve all variants from the cache, if there are no variants then an emptyorg.apache.hc.core5.concurrent.CancellablereuseVariantEntryFor(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, Variant variant, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) Specifies cache should reuse the given cached variant to satisfy requests whose varying headers match those of the given client request.(package private) org.apache.hc.core5.concurrent.CancellablestoreEntry(String cacheKey, HttpCacheEntry entry, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) (package private) org.apache.hc.core5.concurrent.CancellablestoreInCache(String cacheKey, org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, HttpCacheEntry entry, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) (package private) org.apache.hc.core5.concurrent.CancellablestoreVariantEntry(String cacheKey, org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest req, HttpCacheEntry entry, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) org.apache.hc.core5.concurrent.CancellableupdateCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, HttpCacheEntry stale, org.apache.hc.core5.http.HttpResponse originResponse, Instant requestSent, Instant responseReceived, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Update aHttpCacheEntryusing a 304HttpResponse.org.apache.hc.core5.concurrent.CancellableupdateVariantCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse originResponse, Variant variant, Instant requestSent, Instant responseReceived, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Update a specificHttpCacheEntryrepresenting a cached variant using a 304HttpResponse.
-
Field Details
-
LOG
private static final org.slf4j.Logger LOG -
cacheUpdateHandler
-
cacheKeyGenerator
-
cacheInvalidator
-
storage
-
-
Constructor Details
-
BasicHttpAsyncCache
public BasicHttpAsyncCache(ResourceFactory resourceFactory, HttpAsyncCacheStorage storage, CacheKeyGenerator cacheKeyGenerator, HttpAsyncCacheInvalidator cacheInvalidator) -
BasicHttpAsyncCache
public BasicHttpAsyncCache(ResourceFactory resourceFactory, HttpAsyncCacheStorage storage, CacheKeyGenerator cacheKeyGenerator) -
BasicHttpAsyncCache
-
-
Method Details
-
generateKey
public String generateKey(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, HttpCacheEntry cacheEntry) - Specified by:
generateKeyin interfaceHttpAsyncCache
-
flushCacheEntriesFor
public org.apache.hc.core5.concurrent.Cancellable flushCacheEntriesFor(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) Description copied from interface:HttpAsyncCacheClear all matchingHttpCacheEntrys.- Specified by:
flushCacheEntriesForin interfaceHttpAsyncCache
-
flushCacheEntriesInvalidatedByRequest
public org.apache.hc.core5.concurrent.Cancellable flushCacheEntriesInvalidatedByRequest(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) Description copied from interface:HttpAsyncCacheFlushHttpCacheEntrys invalidated by the given request- Specified by:
flushCacheEntriesInvalidatedByRequestin interfaceHttpAsyncCache
-
flushCacheEntriesInvalidatedByExchange
public org.apache.hc.core5.concurrent.Cancellable flushCacheEntriesInvalidatedByExchange(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse response, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) Description copied from interface:HttpAsyncCacheFlushHttpCacheEntrys invalidated by the given message exchange.- Specified by:
flushCacheEntriesInvalidatedByExchangein interfaceHttpAsyncCache
-
storeInCache
org.apache.hc.core5.concurrent.Cancellable storeInCache(String cacheKey, org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, HttpCacheEntry entry, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) -
storeEntry
org.apache.hc.core5.concurrent.Cancellable storeEntry(String cacheKey, HttpCacheEntry entry, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) -
storeVariantEntry
org.apache.hc.core5.concurrent.Cancellable storeVariantEntry(String cacheKey, org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest req, HttpCacheEntry entry, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) -
reuseVariantEntryFor
public org.apache.hc.core5.concurrent.Cancellable reuseVariantEntryFor(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, Variant variant, org.apache.hc.core5.concurrent.FutureCallback<Boolean> callback) Description copied from interface:HttpAsyncCacheSpecifies cache should reuse the given cached variant to satisfy requests whose varying headers match those of the given client request.- Specified by:
reuseVariantEntryForin interfaceHttpAsyncCache
-
updateCacheEntry
public org.apache.hc.core5.concurrent.Cancellable updateCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, HttpCacheEntry stale, org.apache.hc.core5.http.HttpResponse originResponse, Instant requestSent, Instant responseReceived, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Description copied from interface:HttpAsyncCacheUpdate aHttpCacheEntryusing a 304HttpResponse.- Specified by:
updateCacheEntryin interfaceHttpAsyncCache
-
updateVariantCacheEntry
public org.apache.hc.core5.concurrent.Cancellable updateVariantCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse originResponse, Variant variant, Instant requestSent, Instant responseReceived, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Description copied from interface:HttpAsyncCacheUpdate a specificHttpCacheEntryrepresenting a cached variant using a 304HttpResponse.- Specified by:
updateVariantCacheEntryin interfaceHttpAsyncCache
-
createCacheEntry
public org.apache.hc.core5.concurrent.Cancellable createCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.http.HttpResponse originResponse, org.apache.hc.core5.util.ByteArrayBuffer content, Instant requestSent, Instant responseReceived, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Description copied from interface:HttpAsyncCacheStore aHttpResponsein the cache if possible, and return- Specified by:
createCacheEntryin interfaceHttpAsyncCache
-
getCacheEntry
public org.apache.hc.core5.concurrent.Cancellable getCacheEntry(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<HttpCacheEntry> callback) Description copied from interface:HttpAsyncCacheRetrieve matchingHttpCacheEntryfrom the cache if it exists- Specified by:
getCacheEntryin interfaceHttpAsyncCache
-
getVariantCacheEntriesWithEtags
public org.apache.hc.core5.concurrent.Cancellable getVariantCacheEntriesWithEtags(org.apache.hc.core5.http.HttpHost host, org.apache.hc.core5.http.HttpRequest request, org.apache.hc.core5.concurrent.FutureCallback<Map<String, Variant>> callback) Description copied from interface:HttpAsyncCacheRetrieve all variants from the cache, if there are no variants then an empty- Specified by:
getVariantCacheEntriesWithEtagsin interfaceHttpAsyncCache
-