public final class ConcurrencyLimitingHttpClient extends ConcurrencyLimitingClient<HttpRequest,HttpResponse>
Client
decorator that limits the concurrent number of active HTTP requests.
For example:
ClientBuilder builder = new ClientBuilder(...);
builder.decorator(HttpRequest.class, HttpResponse.class, ConcurrencyLimitingHttpClient.newDecorator(16));
client = builder.build(...);
ConcurrencyLimitingClient.Deferred<O extends Response>
Modifier and Type | Method and Description |
---|---|
protected ConcurrencyLimitingClient.Deferred<HttpResponse> |
defer(ClientRequestContext ctx,
HttpRequest req)
Defers the specified
Request . |
static java.util.function.Function<Client<? super HttpRequest,? extends HttpResponse>,ConcurrencyLimitingHttpClient> |
newDecorator(int maxConcurrency)
Creates a new
Client decorator that limits the concurrent number of active HTTP requests. |
static java.util.function.Function<Client<? super HttpRequest,? extends HttpResponse>,ConcurrencyLimitingHttpClient> |
newDecorator(int maxConcurrency,
long timeout,
java.util.concurrent.TimeUnit unit)
Creates a new
Client decorator that limits the concurrent number of active HTTP requests. |
execute, numActiveRequests
delegate, toString
public static java.util.function.Function<Client<? super HttpRequest,? extends HttpResponse>,ConcurrencyLimitingHttpClient> newDecorator(int maxConcurrency)
Client
decorator that limits the concurrent number of active HTTP requests.public static java.util.function.Function<Client<? super HttpRequest,? extends HttpResponse>,ConcurrencyLimitingHttpClient> newDecorator(int maxConcurrency, long timeout, java.util.concurrent.TimeUnit unit)
Client
decorator that limits the concurrent number of active HTTP requests.protected ConcurrencyLimitingClient.Deferred<HttpResponse> defer(ClientRequestContext ctx, HttpRequest req) throws java.lang.Exception
ConcurrencyLimitingClient
Request
.defer
in class ConcurrencyLimitingClient<HttpRequest,HttpResponse>
ConcurrencyLimitingClient.Deferred
which provides the interface for updating the result of
Request
execution later.java.lang.Exception