Class CronSequenceGenerator
- java.lang.Object
- org.springframework.scheduling.support.CronSequenceGenerator
public class CronSequenceGenerator extends Object
Date sequence generator for a Crontab pattern, allowing clients to specify a pattern that the sequence matches.The pattern is a list of six single space-separated fields: representing second, minute, hour, day, month, weekday. Month and weekday names can be given as the first three letters of the English names.
Example patterns:
- "0 0 * * * *" = the top of every hour of every day.
- "*/10 * * * * *" = every ten seconds.
- "0 0 8-10 * * *" = 8, 9 and 10 o'clock of every day.
- "0 0 6,19 * * *" = 6:00 AM and 7:00 PM every day.
- "0 0/30 8-10 * * *" = 8:00, 8:30, 9:00, 9:30, 10:00 and 10:30 every day.
- "0 0 9-17 * * MON-FRI" = on the hour nine-to-five weekdays
- "0 0 0 25 12 ?" = every Christmas Day at midnight
- Since:
- 3.0
- Author:
- Dave Syer, Juergen Hoeller, Ruslan Sibgatullin
- See Also:
CronTrigger
Constructor Summary
Constructors Constructor Description CronSequenceGenerator(String expression)
Construct aCronSequenceGenerator
from the pattern provided, using the defaultTimeZone
.CronSequenceGenerator(String expression, TimeZone timeZone)
Construct aCronSequenceGenerator
from the pattern provided, using the specifiedTimeZone
.
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object other)
int
hashCode()
static boolean
isValidExpression(String expression)
Determine whether the specified expression represents a valid cron pattern.Date
next(Date date)
Get the nextDate
in the sequence matching the Cron pattern and after the value provided.String
toString()
Constructor Detail
CronSequenceGenerator
public CronSequenceGenerator(String expression)
Construct aCronSequenceGenerator
from the pattern provided, using the defaultTimeZone
.- Parameters:
expression
- a space-separated list of time fields- Throws:
IllegalArgumentException
- if the pattern cannot be parsed- See Also:
TimeZone.getDefault()
CronSequenceGenerator
public CronSequenceGenerator(String expression, TimeZone timeZone)
Construct aCronSequenceGenerator
from the pattern provided, using the specifiedTimeZone
.- Parameters:
expression
- a space-separated list of time fieldstimeZone
- the TimeZone to use for generated trigger times- Throws:
IllegalArgumentException
- if the pattern cannot be parsed
Method Detail
next
public Date next(Date date)
Get the nextDate
in the sequence matching the Cron pattern and after the value provided. The return value will have a whole number of seconds, and will be after the input value.- Parameters:
date
- a seed value- Returns:
- the next value matching the pattern
isValidExpression
public static boolean isValidExpression(String expression)
Determine whether the specified expression represents a valid cron pattern.- Parameters:
expression
- the expression to evaluate- Returns:
true
if the given expression is a valid cron expression- Since:
- 4.3