18 lines
529 B
Go
18 lines
529 B
Go
package task
|
|
|
|
import (
|
|
"git.huangwc.com/pig/pig-farm-controller/internal/infra/models"
|
|
"git.huangwc.com/pig/pig-farm-controller/internal/infra/task"
|
|
)
|
|
|
|
// TaskFactory 是一个任务组装工厂, 可以根据Task类型获取到对应的初始化函数
|
|
var TaskFactory = func(tt models.TaskType) task.Task {
|
|
switch tt {
|
|
case models.TaskTypeWaiting:
|
|
return &DelayTask{}
|
|
default:
|
|
// 出现位置任务类型说明业务逻辑出现重大问题, 一个异常任务被创建了出来
|
|
panic("发现未知任务类型")
|
|
}
|
|
}
|