(schedTime time.Time, job *mirrorJob)
| 48 | } |
| 49 | |
| 50 | func (q *scheduleQueue) AddJob(schedTime time.Time, job *mirrorJob) { |
| 51 | q.Lock() |
| 52 | defer q.Unlock() |
| 53 | if _, ok := q.jobs[job.Name()]; ok { |
| 54 | logger.Warningf("Job %s already scheduled, removing the existing one", job.Name()) |
| 55 | q.unsafeRemove(job.Name()) |
| 56 | } |
| 57 | q.jobs[job.Name()] = true |
| 58 | q.list.Set(schedTime, job) |
| 59 | logger.Debugf("Added job %s @ %v", job.Name(), schedTime) |
| 60 | } |
| 61 | |
| 62 | // pop out the first job if it's time to run it |
| 63 | func (q *scheduleQueue) Pop() *mirrorJob { |