This repository has been archived on 2022-09-04. You can view files and clone it, but cannot push or open issues or pull requests.
2021-04-25 18:24:26 +00:00
|
|
|
package queue
|
|
|
|
|
|
|
|
import (
|
2021-06-05 07:14:17 +00:00
|
|
|
"github.com/go-pg/pg/v10"
|
2021-04-25 18:24:26 +00:00
|
|
|
"github.com/go-redis/redis/v8"
|
|
|
|
"github.com/pkg/errors"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Config struct {
|
|
|
|
Redis redis.UniversalClient
|
|
|
|
WorkerLimit int
|
2021-06-05 07:14:17 +00:00
|
|
|
DB *pg.DB
|
2021-04-25 18:24:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
func validateConfig(cfg *Config) error {
|
|
|
|
if cfg == nil || cfg.Redis == nil {
|
2021-05-14 12:57:05 +00:00
|
|
|
return errors.New("cfg.Redis is required")
|
2021-04-25 18:24:26 +00:00
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|
2021-06-05 07:14:17 +00:00
|
|
|
|
|
|
|
type registerTasksConfig struct {
|
|
|
|
DB *pg.DB
|
2021-07-11 06:16:46 +00:00
|
|
|
Queue *Queue
|
2021-06-05 07:14:17 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
func validateRegisterTasksConfig(cfg *registerTasksConfig) error {
|
|
|
|
if cfg == nil || cfg.DB == nil {
|
|
|
|
return errors.New("cfg.DB is required")
|
|
|
|
}
|
|
|
|
if cfg.Queue == nil {
|
|
|
|
return errors.New("cfg.Queue is required")
|
|
|
|
}
|
|
|
|
return nil
|
|
|
|
}
|