@NotThreadSafe final class DelayableLimitedRescheduler extends java.lang.Object implements Rescheduler
Modifier and Type | Field and Description |
---|---|
private java.util.concurrent.Callable<java.lang.Void> |
callable |
private int |
delayInMillis |
private java.util.concurrent.ScheduledExecutorService |
executor |
private int |
maxReschedules |
private int |
reschedulesCounter |
Constructor and Description |
---|
DelayableLimitedRescheduler(TaskExecutorConfiguration config,
EPJExecutor executor) |
Modifier and Type | Method and Description |
---|---|
private boolean |
isExpired() |
java.util.concurrent.ScheduledFuture<java.lang.Void> |
reschedule() |
void |
setCallable(java.util.concurrent.Callable<java.lang.Void> callable) |
private final java.util.concurrent.ScheduledExecutorService executor
private java.util.concurrent.Callable<java.lang.Void> callable
private final int maxReschedules
private final int delayInMillis
private int reschedulesCounter
@Inject public DelayableLimitedRescheduler(TaskExecutorConfiguration config, EPJExecutor executor)
public java.util.concurrent.ScheduledFuture<java.lang.Void> reschedule()
reschedule
in interface Rescheduler
private boolean isExpired()
public void setCallable(java.util.concurrent.Callable<java.lang.Void> callable)
setCallable
in interface Rescheduler