Class TimeTriggerBuilder
java.lang.Object
com.inet.taskplanner.server.api.trigger.TimeTriggerBuilder
This can be used to easily create
TimeTrigger definition.
Example usage:
TaskDefinition task = new TaskDefinition( "mytask" ); //from tomorrow on each workday at 8:30 TriggerDefinition timeTrigger = new TimeTriggerBuilder().withStartDate( ZonedDateTime.now().plusDays( 1 ) ).withHourAndMinute( 8, 30 ).withRepeating( RepeatInterval.WORKDAYS ).create(); task.addTrigger( timeTrigger ); // .. add jobs and actions ... TaskPlanner.getInstance().addTask( task, userID );
- Since:
- taskplanner 3.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreate()Finishes the configuration of the time trigger and creates aTriggerDefinitionthat can be added totasks.withHourAndMinute(int hour, int minute) Set the hour and minute of the day when the trigger must start the task.
The hour and minute are part of the start date and determine the time of day when the task is triggered.withMonthlyDay(@Nonnull MonthlyDay monthlyDay) If you have set therepeat intervaltoRepeatInterval.MONTHLY, then you can configure the day of the month on which the task must be executed.
The default value isMonthlyDay.INITIAL, which means the day from thestartDateis used.withRepeating(@Nonnull RepeatInterval repeatInterval) Set the repeating interval.withStartDate(@Nonnull ZonedDateTime startDateAndTime) Set the start date and time to the given date.
-
Constructor Details
-
TimeTriggerBuilder
public TimeTriggerBuilder()
-
-
Method Details
-
withStartDate
Set the start date and time to the given date.The trigger will start at this point in time or later depending on the
repeat interval.The hour and minute of this date define the time of day when the task will be executed for all future executions. For many
repeat intervals, the start date also has an impact on future executions, like onweeklyinterval it determines the day of week for all future executions.- Parameters:
startDateAndTime- Date and time to use as start point- Returns:
- this builder instance
- Throws:
IllegalArgumentException- if given startDateAndTime is null.- Since:
- taskplanner 3.0
-
withHourAndMinute
Set the hour and minute of the day when the trigger must start the task.
The hour and minute are part of the start date and determine the time of day when the task is triggered.- Parameters:
hour- hour of the day when to trigger (0..23)minute- minute of the hour when to trigger (0..59)- Returns:
- this builder instance
- Throws:
DateTimeException- if given hour or minute are invalid- Since:
- taskplanner 3.0
- See Also:
-
withRepeating
Set the repeating interval. The default value isRepeatInterval.NONE. SeeRepeatIntervalfor details about each interval.- Parameters:
repeatInterval- the desired repeat interval for this trigger- Returns:
- this builder instance
- Throws:
IllegalArgumentException- if given repeatInterval is null.- Since:
- taskplanner 3.0
-
withMonthlyDay
If you have set therepeat intervaltoRepeatInterval.MONTHLY, then you can configure the day of the month on which the task must be executed.
The default value isMonthlyDay.INITIAL, which means the day from thestartDateis used. For otherrepeating intervalsother thanRepeatInterval.MONTHLY, this setting has no effect.- Parameters:
monthlyDay- the day of the month when execution is desired- Returns:
- this builder instance
- Throws:
IllegalArgumentException- if given monthlyDay is null.- Since:
- taskplanner 3.0
- See Also:
-
create
Finishes the configuration of the time trigger and creates aTriggerDefinitionthat can be added totasks.- Returns:
- a new
TriggerDefinitionwith settings from this builder. - Since:
- taskplanner 3.0
-