Class CacheConfig.Builder
java.lang.Object
org.apache.hc.client5.http.impl.cache.CacheConfig.Builder
- Enclosing class:
CacheConfig
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intprivate booleanprivate booleanprivate floatprivate org.apache.hc.core5.util.TimeValueprivate intprivate longprivate intprivate booleanprivate booleanprivate booleanprivate boolean -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()setAllow303Caching(boolean allow303Caching) Deprecated.Has no effect.setAsynchronousWorkers(int asynchronousWorkers) Sets the maximum number of threads to allow for background revalidations due to thestale-while-revalidatedirective.setFreshnessCheckEnabled(boolean freshnessCheckEnabled) setHeuristicCachingEnabled(boolean heuristicCachingEnabled) Enables or disables heuristic caching.setHeuristicCoefficient(float heuristicCoefficient) Sets coefficient to be used in heuristic freshness caching.setHeuristicDefaultLifetime(org.apache.hc.core5.util.TimeValue heuristicDefaultLifetime) Sets default lifetime to be used if heuristic freshness calculation is not possible.setMaxCacheEntries(int maxCacheEntries) Sets the maximum number of cache entries the cache will retain.setMaxObjectSize(long maxObjectSize) Specifies the maximum response body size that will be eligible for caching.setMaxUpdateRetries(int maxUpdateRetries) Sets the number of times to retry a cache processChallenge on failuresetNeverCacheHTTP10ResponsesWithQueryString(boolean neverCacheHTTP10ResponsesWithQuery) Sets whether the cache should never cache HTTP 1.0 responses with a query string or not.setNeverCacheHTTP11ResponsesWithQueryString(boolean neverCacheHTTP11ResponsesWithQuery) Sets the flag indicating whether HTTP/1.1 responses with a query string should never be cached.setSharedCache(boolean sharedCache) Sets whether the cache should behave as a shared cache or not.setStaleIfErrorEnabled(boolean enabled) Enables or disables the stale-if-error cache directive.setWeakETagOnPutDeleteAllowed(boolean weakETagOnPutDeleteAllowed) Deprecated.No longer applicable.
-
Field Details
-
maxObjectSize
private long maxObjectSize -
maxCacheEntries
private int maxCacheEntries -
maxUpdateRetries
private int maxUpdateRetries -
heuristicCachingEnabled
private boolean heuristicCachingEnabled -
heuristicCoefficient
private float heuristicCoefficient -
heuristicDefaultLifetime
private org.apache.hc.core5.util.TimeValue heuristicDefaultLifetime -
freshnessCheckEnabled
private boolean freshnessCheckEnabled -
asynchronousWorkers
private int asynchronousWorkers -
neverCacheHTTP10ResponsesWithQuery
private boolean neverCacheHTTP10ResponsesWithQuery -
neverCacheHTTP11ResponsesWithQuery
private boolean neverCacheHTTP11ResponsesWithQuery -
staleIfErrorEnabled
private boolean staleIfErrorEnabled
-
-
Constructor Details
-
Builder
Builder()
-
-
Method Details
-
setMaxObjectSize
Specifies the maximum response body size that will be eligible for caching.- Parameters:
maxObjectSize- size in bytes- Returns:
- this instance.
-
setMaxCacheEntries
Sets the maximum number of cache entries the cache will retain.- Returns:
- this instance.
-
setMaxUpdateRetries
Sets the number of times to retry a cache processChallenge on failure- Returns:
- this instance.
-
setAllow303Caching
Deprecated.Has no effect. Do not use.- Returns:
- this instance.
-
setWeakETagOnPutDeleteAllowed
@Deprecated public CacheConfig.Builder setWeakETagOnPutDeleteAllowed(boolean weakETagOnPutDeleteAllowed) Deprecated.No longer applicable. Do not use.- Returns:
- this instance.
-
setHeuristicCachingEnabled
Enables or disables heuristic caching.- Parameters:
heuristicCachingEnabled- should betrueto permit heuristic caching,falseto enable it.- Returns:
- this instance.
-
setHeuristicCoefficient
Sets coefficient to be used in heuristic freshness caching. This is interpreted as the fraction of the time between theLast-ModifiedandDateheaders of a cached response during which the cached response will be considered heuristically fresh.- Parameters:
heuristicCoefficient- should be between0.0and1.0.- Returns:
- this instance.
-
setHeuristicDefaultLifetime
public CacheConfig.Builder setHeuristicDefaultLifetime(org.apache.hc.core5.util.TimeValue heuristicDefaultLifetime) Sets default lifetime to be used if heuristic freshness calculation is not possible. Explicit cache control directives on either the request or origin response will override this, as will the heuristicLast-Modifiedfreshness calculation if it is available.- Parameters:
heuristicDefaultLifetime- is the number to consider a cache-eligible response fresh in the absence of other information. Set this to0to disable this style of heuristic caching.- Returns:
- this instance.
-
setAsynchronousWorkers
Sets the maximum number of threads to allow for background revalidations due to thestale-while-revalidatedirective.- Parameters:
asynchronousWorkers- number of threads; a value of 0 disables background revalidations.- Returns:
- this instance.
-
setNeverCacheHTTP10ResponsesWithQueryString
public CacheConfig.Builder setNeverCacheHTTP10ResponsesWithQueryString(boolean neverCacheHTTP10ResponsesWithQuery) Sets whether the cache should never cache HTTP 1.0 responses with a query string or not.- Parameters:
neverCacheHTTP10ResponsesWithQuery- true to never cache responses with a query string, false to cache if explicit cache headers are found. Set this totrueto better emulate IE, which also never caches responses, regardless of what caching headers may be present.- Returns:
- this instance.
-
setStaleIfErrorEnabled
Enables or disables the stale-if-error cache directive. If this option is enabled, cached responses that have become stale due to an error (such as a server error or a network failure) will be returned instead of generating a new request. This can help to reduce the load on the origin server and improve performance.By default, the stale-if-error directive is disabled.
- Parameters:
enabled- a boolean value indicating whether the stale-if-error directive should be enabled.- Returns:
- this instance.
-
setFreshnessCheckEnabled
-
setNeverCacheHTTP11ResponsesWithQueryString
public CacheConfig.Builder setNeverCacheHTTP11ResponsesWithQueryString(boolean neverCacheHTTP11ResponsesWithQuery) Sets the flag indicating whether HTTP/1.1 responses with a query string should never be cached.- Parameters:
neverCacheHTTP11ResponsesWithQuery- whether to never cache HTTP/1.1 responses with a query string- Returns:
- this instance.
-
build
-