task handler

This commit is contained in:
nquidox 2026-03-08 14:07:10 +03:00
parent 03bcda8eab
commit 338802339c
3 changed files with 119 additions and 4 deletions

44
internal/task/service.go Normal file
View file

@ -0,0 +1,44 @@
package task
import (
log "github.com/sirupsen/logrus"
"google.golang.org/protobuf/types/known/emptypb"
"merch-api/internal/common"
tt "merch-api/pkg/taskTransport/v1"
)
type service struct {
tt.UnimplementedTaskProcessorServer
merchProvider common.MerchProvider
}
func newService(mp common.MerchProvider) *service {
return &service{
merchProvider: mp,
}
}
func (s *service) RequestTasks(_ *emptypb.Empty, stream tt.TaskProcessor_RequestTasksServer) error {
tasks, err := s.merchProvider.GetTasks(stream.Context())
if err != nil {
log.WithError(err).Errorf("%v Failed to get tasks", pkgLogHeader)
return err
}
for _, task := range tasks {
if err = stream.Send(&tt.Task{
MerchUuid: task.MerchUuid,
Origins: task.Origins,
}); err != nil {
log.WithError(err).Errorf("%v Failed to send tasks", pkgLogHeader)
return err
}
}
return nil
}
func (s *service) SendResults(stream tt.TaskProcessor_SendResultsServer) error {
//TODO
return nil
}