package jobs import ( "backend/providers/job" "git.ipao.vip/rogeecn/atom" "git.ipao.vip/rogeecn/atom/container" "git.ipao.vip/rogeecn/atom/contracts" "git.ipao.vip/rogeecn/atom/utils/opt" "github.com/riverqueue/river" ) func Provide(opts ...opt.Option) error { if err := container.Container.Provide(func() (contracts.CronJob, error) { obj := &CronJob{} if err := obj.Prepare(); err != nil { return nil, err } return obj, nil }, atom.GroupCronJob); err != nil { return err } if err := container.Container.Provide(func( __job *job.Job, ) (contracts.Initial, error) { obj := &SortWorker{} if err := river.AddWorkerSafely(__job.Workers, obj); err != nil { return nil, err } return obj, nil }, atom.GroupInitial); err != nil { return err } if err := container.Container.Provide(func( __job *job.Job, ) (contracts.Initial, error) { obj := &PostVideoCutJobWorker{} if err := river.AddWorkerSafely(__job.Workers, obj); err != nil { return nil, err } return obj, nil }, atom.GroupInitial); err != nil { return err } if err := container.Container.Provide(func( __job *job.Job, ) (contracts.Initial, error) { obj := &PostVideoExtractAudioJobWorker{} if err := river.AddWorkerSafely(__job.Workers, obj); err != nil { return nil, err } return obj, nil }, atom.GroupInitial); err != nil { return err } return nil }