org.apache.http.impl.client.cache
Class CachingHttpAsyncClient

java.lang.Object
  extended by org.apache.http.impl.client.cache.CachingHttpAsyncClient
All Implemented Interfaces:
HttpAsyncClient

@Contract(threading=SAFE)
public class CachingHttpAsyncClient
extends Object
implements HttpAsyncClient


Constructor Summary
CachingHttpAsyncClient()
           
CachingHttpAsyncClient(org.apache.http.impl.client.cache.CacheConfig config)
           
CachingHttpAsyncClient(HttpAsyncClient client)
           
CachingHttpAsyncClient(HttpAsyncClient client, org.apache.http.impl.client.cache.CacheConfig config)
           
CachingHttpAsyncClient(HttpAsyncClient client, org.apache.http.client.cache.HttpCacheStorage storage, org.apache.http.impl.client.cache.CacheConfig config)
           
CachingHttpAsyncClient(HttpAsyncClient client, org.apache.http.client.cache.ResourceFactory resourceFactory, org.apache.http.client.cache.HttpCacheStorage storage, org.apache.http.impl.client.cache.CacheConfig config)
           
 
Method Summary
<T> Future<T>
execute(org.apache.http.nio.protocol.HttpAsyncRequestProducer requestProducer, org.apache.http.nio.protocol.HttpAsyncResponseConsumer<T> responseConsumer, org.apache.http.concurrent.FutureCallback<T> callback)
          Initiates asynchronous HTTP request execution using the default context.
<T> Future<T>
execute(org.apache.http.nio.protocol.HttpAsyncRequestProducer requestProducer, org.apache.http.nio.protocol.HttpAsyncResponseConsumer<T> responseConsumer, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<T> callback)
          Initiates asynchronous HTTP request execution using the given context.
 Future<org.apache.http.HttpResponse> execute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> callback)
          Initiates asynchronous HTTP request execution against the given target.
 Future<org.apache.http.HttpResponse> execute(org.apache.http.HttpHost target, org.apache.http.HttpRequest originalRequest, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> futureCallback)
          Initiates asynchronous HTTP request execution against the given target using the given context.
 Future<org.apache.http.HttpResponse> execute(org.apache.http.client.methods.HttpUriRequest request, org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> callback)
          Initiates asynchronous HTTP request execution.
 Future<org.apache.http.HttpResponse> execute(org.apache.http.client.methods.HttpUriRequest request, org.apache.http.protocol.HttpContext context, org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> callback)
          Initiates asynchronous HTTP request execution using the given context.
 long getCacheHits()
          Reports the number of times that the cache successfully responded to an HttpRequest without contacting the origin server.
 long getCacheMisses()
          Reports the number of times that the cache contacted the origin server because it had no appropriate response cached.
 long getCacheUpdates()
          Reports the number of times that the cache was able to satisfy a response by revalidating an existing but stale cache entry.
 boolean isSharedCache()
          Reports whether this CachingHttpClient is configured as a shared (public) or non-shared (private) cache.
 boolean supportsRangeAndContentRangeHeaders()
          Reports whether this CachingHttpClient implementation supports byte-range requests as specified by the Range and Content-Range headers.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CachingHttpAsyncClient

public CachingHttpAsyncClient()
                       throws org.apache.http.nio.reactor.IOReactorException
Throws:
org.apache.http.nio.reactor.IOReactorException

CachingHttpAsyncClient

public CachingHttpAsyncClient(org.apache.http.impl.client.cache.CacheConfig config)
                       throws org.apache.http.nio.reactor.IOReactorException
Throws:
org.apache.http.nio.reactor.IOReactorException

CachingHttpAsyncClient

public CachingHttpAsyncClient(HttpAsyncClient client)

CachingHttpAsyncClient

public CachingHttpAsyncClient(HttpAsyncClient client,
                              org.apache.http.impl.client.cache.CacheConfig config)

CachingHttpAsyncClient

public CachingHttpAsyncClient(HttpAsyncClient client,
                              org.apache.http.client.cache.ResourceFactory resourceFactory,
                              org.apache.http.client.cache.HttpCacheStorage storage,
                              org.apache.http.impl.client.cache.CacheConfig config)

CachingHttpAsyncClient

public CachingHttpAsyncClient(HttpAsyncClient client,
                              org.apache.http.client.cache.HttpCacheStorage storage,
                              org.apache.http.impl.client.cache.CacheConfig config)
Method Detail

getCacheHits

public long getCacheHits()
Reports the number of times that the cache successfully responded to an HttpRequest without contacting the origin server.

Returns:
the number of cache hits

getCacheMisses

public long getCacheMisses()
Reports the number of times that the cache contacted the origin server because it had no appropriate response cached.

Returns:
the number of cache misses

getCacheUpdates

public long getCacheUpdates()
Reports the number of times that the cache was able to satisfy a response by revalidating an existing but stale cache entry.

Returns:
the number of cache revalidations

execute

public Future<org.apache.http.HttpResponse> execute(org.apache.http.HttpHost target,
                                                    org.apache.http.HttpRequest request,
                                                    org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> callback)
Description copied from interface: HttpAsyncClient
Initiates asynchronous HTTP request execution against the given target.

Specified by:
execute in interface HttpAsyncClient
Parameters:
target - the target host for the request. Implementations may accept null if they can still determine a route, for example to a default target or by inspecting the request.
request - the request to execute
callback - future callback.
Returns:
future representing pending completion of the operation.

execute

public <T> Future<T> execute(org.apache.http.nio.protocol.HttpAsyncRequestProducer requestProducer,
                             org.apache.http.nio.protocol.HttpAsyncResponseConsumer<T> responseConsumer,
                             org.apache.http.concurrent.FutureCallback<T> callback)
Description copied from interface: HttpAsyncClient
Initiates asynchronous HTTP request execution using the default context.

The request producer passed to this method will be used to generate a request message and stream out its content without buffering it in memory. The response consumer passed to this method will be used to process a response message without buffering its content in memory.

Specified by:
execute in interface HttpAsyncClient
Type Parameters:
T - the result type of request execution.
Parameters:
requestProducer - request producer callback.
responseConsumer - response consumer callaback.
callback - future callback.
Returns:
future representing pending completion of the operation.

execute

public <T> Future<T> execute(org.apache.http.nio.protocol.HttpAsyncRequestProducer requestProducer,
                             org.apache.http.nio.protocol.HttpAsyncResponseConsumer<T> responseConsumer,
                             org.apache.http.protocol.HttpContext context,
                             org.apache.http.concurrent.FutureCallback<T> callback)
Description copied from interface: HttpAsyncClient
Initiates asynchronous HTTP request execution using the given context.

The request producer passed to this method will be used to generate a request message and stream out its content without buffering it in memory. The response consumer passed to this method will be used to process a response message without buffering its content in memory.

Please note it may be unsafe to interact with the context instance while the request is still being executed.

Specified by:
execute in interface HttpAsyncClient
Type Parameters:
T - the result type of request execution.
Parameters:
requestProducer - request producer callback.
responseConsumer - response consumer callaback.
context - HTTP context
callback - future callback.
Returns:
future representing pending completion of the operation.

execute

public Future<org.apache.http.HttpResponse> execute(org.apache.http.client.methods.HttpUriRequest request,
                                                    org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> callback)
Description copied from interface: HttpAsyncClient
Initiates asynchronous HTTP request execution.

Specified by:
execute in interface HttpAsyncClient
Parameters:
request - the request to execute
callback - future callback.
Returns:
future representing pending completion of the operation.

execute

public Future<org.apache.http.HttpResponse> execute(org.apache.http.client.methods.HttpUriRequest request,
                                                    org.apache.http.protocol.HttpContext context,
                                                    org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> callback)
Description copied from interface: HttpAsyncClient
Initiates asynchronous HTTP request execution using the given context.

Please note it may be unsafe to interact with the context instance while the request is still being executed.

Specified by:
execute in interface HttpAsyncClient
Parameters:
request - the request to execute
context - HTTP context
callback - future callback.
Returns:
future representing pending completion of the operation.

execute

public Future<org.apache.http.HttpResponse> execute(org.apache.http.HttpHost target,
                                                    org.apache.http.HttpRequest originalRequest,
                                                    org.apache.http.protocol.HttpContext context,
                                                    org.apache.http.concurrent.FutureCallback<org.apache.http.HttpResponse> futureCallback)
Description copied from interface: HttpAsyncClient
Initiates asynchronous HTTP request execution against the given target using the given context.

Please note it may be unsafe to interact with the context instance while the request is still being executed.

Specified by:
execute in interface HttpAsyncClient
Parameters:
target - the target host for the request. Implementations may accept null if they can still determine a route, for example to a default target or by inspecting the request.
originalRequest - the request to execute
context - the context to use for the execution, or null to use the default context
futureCallback - future callback.
Returns:
future representing pending completion of the operation.

supportsRangeAndContentRangeHeaders

public boolean supportsRangeAndContentRangeHeaders()
Reports whether this CachingHttpClient implementation supports byte-range requests as specified by the Range and Content-Range headers.

Returns:
true if byte-range requests are supported

isSharedCache

public boolean isSharedCache()
Reports whether this CachingHttpClient is configured as a shared (public) or non-shared (private) cache. See CacheConfig.setSharedCache(boolean).

Returns:
true if we are behaving as a shared (public) cache


Copyright © 2010–2021 The Apache Software Foundation. All rights reserved.