实现task工厂

This commit is contained in:
2025-09-17 16:55:56 +08:00
parent 8b8c539e06
commit dde277c14d
7 changed files with 89 additions and 40 deletions

View File

@@ -0,0 +1,17 @@
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("发现未知任务类型")
}
}