定义ReleaseFeedWeightTask并注入依赖
This commit is contained in:
@@ -20,22 +20,15 @@ type DelayTask struct {
|
||||
logger *logs.Logger
|
||||
}
|
||||
|
||||
func NewDelayTask() Task {
|
||||
return &DelayTask{}
|
||||
func NewDelayTask(logger *logs.Logger, executionTask *models.TaskExecutionLog) Task {
|
||||
return &DelayTask{
|
||||
executionTask: executionTask,
|
||||
logger: logger,
|
||||
}
|
||||
}
|
||||
|
||||
// Execute 执行延迟任务,等待指定的时间
|
||||
func (d *DelayTask) Execute() error {
|
||||
d.logger.Infof("任务 %v: 开始延迟 %v...", d.executionTask.TaskID, d.duration)
|
||||
time.Sleep(d.duration)
|
||||
d.logger.Infof("任务 %v: 延迟结束。", d.executionTask.TaskID)
|
||||
return nil
|
||||
}
|
||||
|
||||
func (d *DelayTask) ParseParams(logger *logs.Logger, executionTask *models.TaskExecutionLog) error {
|
||||
d.logger = logger
|
||||
d.executionTask = executionTask
|
||||
|
||||
if d.executionTask.Task.Parameters == nil {
|
||||
d.logger.Errorf("任务 %v: 缺少参数", d.executionTask.TaskID)
|
||||
return fmt.Errorf("任务 %v: 参数不全", d.executionTask.TaskID)
|
||||
@@ -54,6 +47,10 @@ func (d *DelayTask) ParseParams(logger *logs.Logger, executionTask *models.TaskE
|
||||
}
|
||||
|
||||
d.duration = time.Duration(duration) * time.Second
|
||||
|
||||
d.logger.Infof("任务 %v: 开始延迟 %v...", d.executionTask.TaskID, d.duration)
|
||||
time.Sleep(d.duration)
|
||||
d.logger.Infof("任务 %v: 延迟结束。", d.executionTask.TaskID)
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user