public class RequestExecutor
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static interface |
RequestExecutor.Request |
static interface |
RequestExecutor.RequestPermit |
static class |
RequestExecutor.ScheduledRequest
A
RequestExecutor.Request implementation that reschedules itself after execution, attempting to run periodically
at the provided rate, until cancelled. |
static class |
RequestExecutor.TimedRequest
A
RequestExecutor.Request implementation that times the its execution using a provided Timer. |
| Constructor and Description |
|---|
RequestExecutor(int concurrency,
java.util.concurrent.ScheduledExecutorService executor,
java.lang.String metricContext,
com.codahale.metrics.MetricRegistry metricRegistry) |
RequestExecutor(java.util.concurrent.ScheduledExecutorService executor,
java.lang.String metricContext,
com.codahale.metrics.MetricRegistry metricRegistry) |
| Modifier and Type | Method and Description |
|---|---|
void |
execute(RequestExecutor.Request request)
Execute a
RequestExecutor.Request as soon as possible, given the concurrency restraints. |
com.codahale.metrics.Timer |
getAggregateTimer() |
void |
schedule(RequestExecutor.Request request,
long delayNanos)
Scheduled a
RequestExecutor.Request to be executed after a given delay. |
public RequestExecutor(java.util.concurrent.ScheduledExecutorService executor,
java.lang.String metricContext,
com.codahale.metrics.MetricRegistry metricRegistry)
public RequestExecutor(int concurrency,
java.util.concurrent.ScheduledExecutorService executor,
java.lang.String metricContext,
com.codahale.metrics.MetricRegistry metricRegistry)
public void execute(RequestExecutor.Request request)
RequestExecutor.Request as soon as possible, given the concurrency restraints.request - the RequestExecutor.Request to execute.public void schedule(RequestExecutor.Request request, long delayNanos)
RequestExecutor.Request to be executed after a given delay.
When the delay expires, execution will take place subject to the concurrency restraints.
request - the RequestExecutor.Request to execute.delayNanos - the delay, in nanoseconds, before execution.public com.codahale.metrics.Timer getAggregateTimer()