INTERNAL API
INTERNAL API
In lack of a better name, common base type for the classes that describes when to run a cron job
A set of different time points, for example "0,15,45"
A set of different time points, for example "0,15,45"
A range that is scoped by it's position/unit, for minute it would allow "0-59" for example.
A range that is scoped by it's position/unit, for minute it would allow "0-59" for example.
Execute something at one single point in time, do not repeat.
Execute something at one single point in time, do not repeat.
All time points in the unit, the "*" in minute position would trigger each minute when the other units are matching
All time points in the unit, the "*" in minute position would trigger each minute when the other units are matching
Provides a simplified subset of the time expression part of the V7 cron expression standard.
Provides a simplified subset of the time expression part of the V7 cron expression standard.
Expressions are in the format:
[minute] [hour] [day of month] [month] [day of week]
field allowed values ----- -------------- minute 0-59 hour 0-23 day of month 1-31 month 1-12 (or names, see below) day of week 0-7 (0 or 7 is Sun, or use names)
Month names are the three first letters, case insensitive: jan, feb etc. Day names are the three first letters, case insensitive: mon, tue, wed
Both month and days can be defined with numbers as well, months starting with 1 for january and days 0 for sunday up until 7 for sunday again.
Star '*' means minimum to maximum value (or all values)
Intervals can be defined like this '*\/20' which would mean "every twentieth".
Multiple values can be listed comma separated: '10,20,30'
The simple crontab actor looses its state upon stop, does not remember what jobs has already been run.
The simple crontab actor looses its state upon stop, does not remember what jobs has already been run. Only useful in a single actor system.
Allows for a concise type safe declaration of cron expressions.
Allows for a concise type safe declaration of cron expressions. Example:
import DSL._ val expr = CronExpression(*, * / 20, many(mon, tue, wed), , *)