32 lines
807 B
Go
32 lines
807 B
Go
package scheduler
|
|
|
|
import (
|
|
"gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/algo"
|
|
"gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/types"
|
|
"gitlink.org.cn/jcce-pcm/pcm-coordinator/model"
|
|
"gitlink.org.cn/jcce-pcm/utils/tool"
|
|
)
|
|
|
|
type aiScheduler struct {
|
|
yamlString string
|
|
}
|
|
|
|
func NewAiScheduler(val string) *aiScheduler {
|
|
return &aiScheduler{yamlString: val}
|
|
}
|
|
|
|
func (as *aiScheduler) getNewStructForDb(task *types.TaskInfo, participantId int64) (interface{}, error) {
|
|
ai := model.Ai{
|
|
ParticipantId: participantId,
|
|
TaskId: task.TaskId,
|
|
Status: "Saved",
|
|
YamlString: as.yamlString,
|
|
}
|
|
tool.Convert(task.Metadata, &ai)
|
|
return ai, nil
|
|
}
|
|
|
|
func (as *aiScheduler) pickOptimalStrategy(task *algo.Task, providers ...*algo.Provider) (*algo.Task, error) {
|
|
return nil, nil
|
|
}
|