master
parent
62b10566cf
commit
8d3562c5ee
3 changed files with 42 additions and 0 deletions
@ -0,0 +1,39 @@ |
||||
package xserver |
||||
|
||||
import ( |
||||
"context" |
||||
"github.com/robfig/cron" |
||||
) |
||||
|
||||
type cronServer struct { |
||||
cr *cron.Cron |
||||
err error |
||||
} |
||||
|
||||
func NewCron() *cronServer { |
||||
cr := cron.New() |
||||
return &cronServer{ |
||||
cr: cr, |
||||
} |
||||
} |
||||
|
||||
func (c *cronServer) Register(spec string, fun func()) error { |
||||
return c.cr.AddFunc(spec, fun) |
||||
} |
||||
|
||||
func (c *cronServer) Start() error { |
||||
if c.err != nil { |
||||
return c.err |
||||
} |
||||
c.cr.Start() |
||||
return nil |
||||
} |
||||
|
||||
func (c *cronServer) Shutdown(ctx context.Context) error { |
||||
c.cr.Stop() |
||||
return nil |
||||
} |
||||
|
||||
func (c *cronServer) Name() string { |
||||
return "cron" |
||||
} |
Loading…
Reference in new issue