public class SimpleEventScheduler extends Object implements EventScheduler
EventScheduler implementation that uses Java's ScheduledExecutorService as scheduling and triggering
mechanism.
Note that this mechanism is non-persistent. Scheduled tasks will be lost when the JVM is shut down, unless special
measures have been taken to prevent that. For more flexible and powerful scheduling options, see QuartzEventScheduler.QuartzEventScheduler| Modifier and Type | Class and Description |
|---|---|
static class |
SimpleEventScheduler.Builder
Builder class to instantiate a
SimpleEventScheduler. |
| Modifier | Constructor and Description |
|---|---|
protected |
SimpleEventScheduler(SimpleEventScheduler.Builder builder)
Instantiate a
SimpleEventScheduler based on the fields contained in the SimpleEventScheduler.Builder. |
| Modifier and Type | Method and Description |
|---|---|
static SimpleEventScheduler.Builder |
builder()
Instantiate a Builder to be able to create a
SimpleEventScheduler. |
void |
cancelSchedule(ScheduleToken scheduleToken)
Cancel the publication of a scheduled event.
|
ScheduleToken |
schedule(Duration triggerDuration,
Object event)
Schedule the given
event for publication after the given triggerDuration. |
ScheduleToken |
schedule(Instant triggerDateTime,
Object event)
Schedule the given
event for publication at the given triggerDateTime. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitrescheduleprotected SimpleEventScheduler(SimpleEventScheduler.Builder builder)
SimpleEventScheduler based on the fields contained in the SimpleEventScheduler.Builder.
Will assert that the ScheduledExecutorService, EventBus and TransactionManager are not
null, and will throw an AxonConfigurationException if any of them is null.
builder - the SimpleEventScheduler.Builder used to instantiate a SimpleEventScheduler instancepublic static SimpleEventScheduler.Builder builder()
SimpleEventScheduler.
The TransactionManager is defaulted to a NoTransactionManager. The
ScheduledExecutorService and EventBus are a hard requirements and as such should be
provided.
SimpleEventSchedulerpublic ScheduleToken schedule(Instant triggerDateTime, Object event)
EventSchedulerevent for publication at the given triggerDateTime. The returned
ScheduleToken can be used to cancel the planned publication.
The given event may be any object, as well as an EventMessage. In the latter case, the instance
provided is the donor for the payload and Meta Data of the actual message being dispatched. In the former case,
the given event will be wrapped as the payload of an EventMessage.schedule in interface EventSchedulertriggerDateTime - The moment to trigger publication of the eventevent - The event to publishpublic ScheduleToken schedule(Duration triggerDuration, Object event)
EventSchedulerevent for publication after the given triggerDuration. The
returned ScheduleToken can be used to cancel the planned publication.
The given event may be any object, as well as an EventMessage. In the latter case, the instance
provided is the donor for the payload and Meta Data of the actual message being dispatched. In the former case,
the given event will be wrapped as the payload of an EventMessage.schedule in interface EventSchedulertriggerDuration - The amount of time to wait before publishing the eventevent - The event to publishpublic void cancelSchedule(ScheduleToken scheduleToken)
EventSchedulercancelSchedule in interface EventSchedulerscheduleToken - the token returned when the event was scheduledCopyright © 2010–2018. All rights reserved.