Class AbstractScheduledService.CustomScheduler
java.lang.Object
com.google.common.util.concurrent.AbstractScheduledService.Scheduler
com.google.common.util.concurrent.AbstractScheduledService.CustomScheduler
- Enclosing class:
AbstractScheduledService
public abstract static class AbstractScheduledService.CustomScheduler
extends AbstractScheduledService.Scheduler
A
AbstractScheduledService.Scheduler
that provides a convenient way for the AbstractScheduledService
to
use a dynamically changing schedule. After every execution of the task, assuming it hasn't been
cancelled, the getNextSchedule()
method will be called.- Since:
- 11.0
- Author:
- Luke Sandberg
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static final class
A value object that represents an absolute delay until a task should be invoked. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected abstract AbstractScheduledService.CustomScheduler.Schedule
Calculates the time at which to next invoke the task.Methods inherited from class com.google.common.util.concurrent.AbstractScheduledService.Scheduler
newFixedDelaySchedule, newFixedDelaySchedule, newFixedRateSchedule, newFixedRateSchedule
-
Constructor Details
-
CustomScheduler
public CustomScheduler()Constructor for use by subclasses.
-
-
Method Details
-
getNextSchedule
protected abstract AbstractScheduledService.CustomScheduler.Schedule getNextSchedule() throws ExceptionCalculates the time at which to next invoke the task.This is guaranteed to be called immediately after the task has completed an iteration and on the same thread as the previous execution of
AbstractScheduledService.runOneIteration()
.- Returns:
- a schedule that defines the delay before the next execution.
- Throws:
Exception
-