MCPcopy Index your code
hub / github.com/codnect/chrono / Schedule

Method Schedule

task.go:211–231  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

209}
210
211func (task *TriggerTask) Schedule() (ScheduledTask, error) {
212 task.triggerContextMu.Lock()
213 defer task.triggerContextMu.Unlock()
214
215 task.nextTriggerTime = task.trigger.NextExecutionTime(task.triggerContext)
216
217 if task.nextTriggerTime.IsZero() {
218 return nil, errors.New("could not schedule task because of the fact that schedule time is zero")
219 }
220
221 initialDelay := task.nextTriggerTime.Sub(time.Now())
222
223 currentScheduledTask, err := task.executor.Schedule(task.Run, initialDelay)
224
225 if err != nil {
226 return nil, err
227 }
228
229 task.currentScheduledTask = currentScheduledTask.(*ScheduledRunnableTask)
230 return task, nil
231}
232
233func (task *TriggerTask) Run(ctx context.Context) {
234 task.triggerContextMu.Lock()

Callers 2

ScheduleWithCronMethod · 0.95
RunMethod · 0.95

Calls 2

NextExecutionTimeMethod · 0.65
ScheduleMethod · 0.65

Tested by

no test coverage detected