Package org.quartz

Class CronScheduleBuilder


  • public class CronScheduleBuilder
    extends ScheduleBuilder<CronTrigger>
    CronScheduleBuilder is a ScheduleBuilder that defines CronExpression-based schedules for Triggers.

    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);
     
     
    See Also:
    CronExpression, CronTrigger, ScheduleBuilder, SimpleScheduleBuilder, CalendarIntervalScheduleBuilder, TriggerBuilder
    • Constructor Detail

      • CronScheduleBuilder

        protected CronScheduleBuilder​(CronExpression cronExpression)
    • Method Detail

      • cronSchedule

        public static CronScheduleBuilder cronSchedule​(java.lang.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).
        Parameters:
        cronExpression - the cron expression string to base the schedule on.
        Returns:
        the new CronScheduleBuilder
        Throws:
        java.lang.RuntimeException - wrapping a ParseException if the expression is invalid
        See Also:
        CronExpression
      • cronScheduleNonvalidatedExpression

        public static CronScheduleBuilder cronScheduleNonvalidatedExpression​(java.lang.String cronExpression)
                                                                      throws java.text.ParseException
        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).
        Parameters:
        cronExpression - the cron expression string to base the schedule on.
        Returns:
        the new CronScheduleBuilder
        Throws:
        java.text.ParseException - if the expression is invalid
        See Also:
        CronExpression
      • cronSchedule

        public static CronScheduleBuilder cronSchedule​(CronExpression cronExpression)
        Create a CronScheduleBuilder with the given cron-expression.
        Parameters:
        cronExpression - the cron expression to base the schedule on.
        Returns:
        the new CronScheduleBuilder
        See Also:
        CronExpression
      • dailyAtHourAndMinute

        public 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).
        Parameters:
        hour - the hour of day to fire
        minute - the minute of the given hour to fire
        Returns:
        the new CronScheduleBuilder
        See Also:
        CronExpression
      • monthlyOnDayAndHourAndMinute

        public 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).
        Parameters:
        dayOfMonth - the day of the month to fire
        hour - the hour of day to fire
        minute - the minute of the given hour to fire
        Returns:
        the new CronScheduleBuilder
        See Also:
        CronExpression
      • inTimeZone

        public CronScheduleBuilder inTimeZone​(java.util.TimeZone timezone)
        The TimeZone in which to base the schedule.
        Parameters:
        timezone - the time-zone for the schedule.
        Returns:
        the updated CronScheduleBuilder
        See Also:
        CronExpression.getTimeZone()