123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package cron
- import (
- "time"
- )
- // Option represents a modification to the default behavior of a Cron.
- type Option func(*Cron)
- // WithLocation overrides the timezone of the cron instance.
- func WithLocation(loc *time.Location) Option {
- return func(c *Cron) {
- c.location = loc
- }
- }
- // WithSeconds overrides the parser used for interpreting job schedules to
- // include a seconds field as the first one.
- func WithSeconds() Option {
- return WithParser(NewParser(
- Second | Minute | Hour | Dom | Month | Dow | Descriptor,
- ))
- }
- // WithParser overrides the parser used for interpreting job schedules.
- func WithParser(p ScheduleParser) Option {
- return func(c *Cron) {
- c.parser = p
- }
- }
- // WithChain specifies Job wrappers to apply to all jobs added to this cron.
- // Refer to the Chain* functions in this package for provided wrappers.
- func WithChain(wrappers ...JobWrapper) Option {
- return func(c *Cron) {
- c.chain = NewChain(wrappers...)
- }
- }
- // WithLogger uses the provided logger.
- func WithLogger(logger Logger) Option {
- return func(c *Cron) {
- c.logger = logger
- }
- }
|