woj-server/internal/api/consumer/handler.go

37 lines
839 B
Go
Raw Normal View History

package consumer
import (
"context"
2023-07-14 21:47:11 +08:00
"git.0x7f.app/WOJ/woj-server/internal/global"
"git.0x7f.app/WOJ/woj-server/internal/service/problem"
"git.0x7f.app/WOJ/woj-server/internal/service/status"
"git.0x7f.app/WOJ/woj-server/internal/service/task"
"github.com/hibiken/asynq"
"go.uber.org/zap"
)
var _ Handler = (*handler)(nil)
type Handler interface {
ProblemUpdate(_ context.Context, t *asynq.Task) error
SubmitUpdate(_ context.Context, t *asynq.Task) error
}
type handler struct {
log *zap.Logger
problemService problem.Service
statusService status.Service
taskService task.Service
}
func NewConsumer(g *global.Global) Handler {
hnd := &handler{
log: g.Log,
problemService: problem.NewService(g),
statusService: status.NewService(g),
taskService: task.NewService(g),
}
return hnd
}