public class CronScheduleBuilder extends ScheduleBuilder<CronTrigger>
CronScheduleBuilder
is a ScheduleBuilder
that defines
CronExpression
-based schedules for Trigger
s.
Quartz provides a builder-style API for constructing scheduling-related
entities via a Domain-Specific Language (DSL). The DSL can best be utilized
through the usage of static imports of the methods on the classes
TriggerBuilder
, JobBuilder
,
DateBuilder
, JobKey
, TriggerKey
and
the various ScheduleBuilder
implementations.
Client code can then use the DSL to write code such as this:
JobDetail job = newJob(MyJob.class).withIdentity("myJob").build(); Trigger trigger = newTrigger() .withIdentity(triggerKey("myTrigger", "myTriggerGroup")) .withSchedule(dailyAtHourAndMinute(10, 0)) .startAt(futureDate(10, MINUTES)).build(); scheduler.scheduleJob(job, trigger);
Modifier | Constructor and Description |
---|---|
protected |
CronScheduleBuilder(CronExpression cronExpression) |
Modifier and Type | Method and Description |
---|---|
static CronScheduleBuilder |
atHourAndMinuteOnGivenDaysOfWeek(int hour,
int minute,
Integer... daysOfWeek)
Create a CronScheduleBuilder with a cron-expression that sets the
schedule to fire at the given day at the given time (hour and minute) on
the given days of the week.
|
MutableTrigger |
build()
Build the actual Trigger -- NOT intended to be invoked by end users, but
will rather be invoked by a TriggerBuilder which this ScheduleBuilder is
given to.
|
static CronScheduleBuilder |
cronSchedule(CronExpression cronExpression)
Create a CronScheduleBuilder with the given cron-expression.
|
static CronScheduleBuilder |
cronSchedule(String cronExpression)
Create a CronScheduleBuilder with the given cron-expression string -
which is presumed to be a valid cron expression (and hence only a
RuntimeException will be thrown if it is not).
|
static CronScheduleBuilder |
cronScheduleNonvalidatedExpression(String cronExpression)
Create a CronScheduleBuilder with the given cron-expression string -
which may not be a valid cron expression (and hence a ParseException will
be thrown if it is not).
|
static CronScheduleBuilder |
dailyAtHourAndMinute(int hour,
int minute)
Create a CronScheduleBuilder with a cron-expression that sets the
schedule to fire every day at the given time (hour and minute).
|
CronScheduleBuilder |
inTimeZone(TimeZone timezone)
The
TimeZone in which to base the schedule. |
static CronScheduleBuilder |
monthlyOnDayAndHourAndMinute(int dayOfMonth,
int hour,
int minute)
Create a CronScheduleBuilder with a cron-expression that sets the
schedule to fire one per month on the given day of month at the given
time (hour and minute).
|
static CronScheduleBuilder |
weeklyOnDayAndHourAndMinute(int dayOfWeek,
int hour,
int minute)
Create a CronScheduleBuilder with a cron-expression that sets the
schedule to fire one per week on the given day at the given time (hour
and minute).
|
CronScheduleBuilder |
withMisfireHandlingInstructionDoNothing()
If the Trigger misfires, use the
CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING instruction. |
CronScheduleBuilder |
withMisfireHandlingInstructionFireAndProceed()
If the Trigger misfires, use the
CronTrigger.MISFIRE_INSTRUCTION_FIRE_ONCE_NOW instruction. |
CronScheduleBuilder |
withMisfireHandlingInstructionIgnoreMisfires()
If the Trigger misfires, use the
Trigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY instruction. |
protected CronScheduleBuilder(CronExpression cronExpression)
public MutableTrigger build()
build
in class ScheduleBuilder<CronTrigger>
TriggerBuilder.withSchedule(ScheduleBuilder)
public static CronScheduleBuilder cronSchedule(String cronExpression)
cronExpression
- the cron expression string to base the schedule on.RuntimeException
- wrapping a ParseException if the expression is invalidCronExpression
public static CronScheduleBuilder cronScheduleNonvalidatedExpression(String cronExpression) throws ParseException
cronExpression
- the cron expression string to base the schedule on.ParseException
- if the expression is invalidCronExpression
public static CronScheduleBuilder cronSchedule(CronExpression cronExpression)
cronExpression
- the cron expression to base the schedule on.CronExpression
public static CronScheduleBuilder dailyAtHourAndMinute(int hour, int minute)
hour
- the hour of day to fireminute
- the minute of the given hour to fireCronExpression
public static CronScheduleBuilder atHourAndMinuteOnGivenDaysOfWeek(int hour, int minute, Integer... daysOfWeek)
daysOfWeek
- the dasy of the week to firehour
- the hour of day to fireminute
- the minute of the given hour to fireCronExpression
,
DateBuilder.MONDAY
,
DateBuilder.TUESDAY
,
DateBuilder.WEDNESDAY
,
DateBuilder.THURSDAY
,
DateBuilder.FRIDAY
,
DateBuilder.SATURDAY
,
DateBuilder.SUNDAY
public static CronScheduleBuilder weeklyOnDayAndHourAndMinute(int dayOfWeek, int hour, int minute)
dayOfWeek
- the day of the week to firehour
- the hour of day to fireminute
- the minute of the given hour to fireCronExpression
,
DateBuilder.MONDAY
,
DateBuilder.TUESDAY
,
DateBuilder.WEDNESDAY
,
DateBuilder.THURSDAY
,
DateBuilder.FRIDAY
,
DateBuilder.SATURDAY
,
DateBuilder.SUNDAY
public static CronScheduleBuilder monthlyOnDayAndHourAndMinute(int dayOfMonth, int hour, int minute)
dayOfMonth
- the day of the month to firehour
- the hour of day to fireminute
- the minute of the given hour to fireCronExpression
public CronScheduleBuilder inTimeZone(TimeZone timezone)
TimeZone
in which to base the schedule.timezone
- the time-zone for the schedule.CronExpression.getTimeZone()
public CronScheduleBuilder withMisfireHandlingInstructionIgnoreMisfires()
Trigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY
instruction.Trigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY
public CronScheduleBuilder withMisfireHandlingInstructionDoNothing()
CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING
instruction.CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING
public CronScheduleBuilder withMisfireHandlingInstructionFireAndProceed()
CronTrigger.MISFIRE_INSTRUCTION_FIRE_ONCE_NOW
instruction.CronTrigger.MISFIRE_INSTRUCTION_FIRE_ONCE_NOW
Copyright 2001-2019, Terracotta, Inc.